Archive for December, 2006

SpamSieve is my Bayesian lover

SpamSieve logo
At the November Portland Web Innovators meeting, someone complained about Spam. Then Ray said he’d been trying out SpamSieve, a Bayesian filter for Apple’s Mail, and it worked great.

The next morning (9:22, according to SpamSieve’s statistics) I installed the free trial and gave it a whirl. By the next day, I was sold. There are 150 Spam messages per day that I don’t have to see. The accuracy of its filtering is over 99%.

I’m told Apple will put Bayesian filtering in their next release of Mail. For me, I couldn’t wait after seeing what SpamSieve can do.

Always on vacation (or never taking a break)

I just got back to Oregon from a trip down to see family in California. I’m pretty lucky to not be required to hurry back, since I don’t have a real job.

I got coal in my stocking! (It’s gum, really):
I got coal

While I relaxed with my family, I kept in daily touch to make sure everything was a-okay with my work. This sort of flex time takes the new human resources trick of floating work hours a step farther. Rick Turoczy calls it unlimited vacation for everyone. Of course, it’s not really unlimited, but the idea is to set up a system where people work on their projects, not just put in their time.

That’s how I work. If I didn’t produce, it would be obvious. My stuff wouldn’t get done. Of course, this sometimes means that I work into the evenings, or go into the office for half a Saturday. I think it more than makes up for itself with the flexibility elsewhere.

Some people won’t want to work this way, but many superstars will. If I was in HR, I’d be talking to department managers to see whether they’d be willing to try it out.

Law 10: The One

This is part of a series looking at John Maeda’s ten Laws of Simplicity.

“Simplicity is about subtracting the obvious and adding the meaningful.”

With a great definition like that, it should be clear why I think simplicity is everyone’s job. There is enough complexity in the world without even trying. The more meaningful sites we can add to the Web, the better.

With this single law, he fixes a failure he acknowledged in the ninth law:

“Simplicity is hopelessly subtle and many of its defining characteristics are implicit (noting that it hides in simplicity)… When in doubt, turn to the tenth law: the one. It’s simpler that way.

When something is too obvious, it’s probably unneeded. With the obvious removed, the meaningful comes into view. Here are the other nine laws of simplicity, stated in terms of The One:

Reduce Removes unneeded features.
Organize Saves some of the features for when needed.
Time Speeding up a process removes unneeded waste of time.
Learn Remove unneeded confusion by explaining.
Differences If everything is meaningful, nothing is.
Context Make the meaningful subtle.
Emotion Sometimes something can be obvious and meaningful.
Trust When we trust that we’re seeing something meaningful, even more can be removed.
Failure Sometimes with only the meaningful remaining, it’s still complex.

Law 9: Failure

This is part of a series looking at John Maeda’s ten Laws of Simplicity.

“Some things can never be made simple.”

This is for the simplicity haters who insist on poking holes because simplicity does not work exactly the same in every situation. An earlier law says simple can’t exist with the complex. The law of failure says that some things can’t be simple.

Attempting to simplify a complex procedure is reasonable. It may end in failure or it could lead to a more usable product. Maeda says there is a “Return on Failure,” too. When I fail and I take the time to find out why, I learned a great lesson I can use later on. So, either I have made something simpler, or I have knowledge to help me do so in the future.

Google Maps revolutionized online mapping with its time-saving click-and-drag interface. The product was introduced in 2005, but would have ended in failure any time earlier because browser differences were so much greater.

Similarly, I worked a long time on creating Javascript sliders for BestPlaces in 2002. I made some that worked okay, but they were just too buggy cross-browser. Today, something similar is part of the Yahoo! UI Library.

In another turn for the simplicity haters, Maeda admits some failures of his book. The first four laws are filled with acronyms. The mnemonics didn’t really work for me, so I didn’t include them here.

The laws of differences, context, emotion, and trust are less logical and applicable compared to earlier laws. They are a little more touchy-feely, explaining more about the why than the how.

Maeda explains…

As the Laws progress in the book, the themes become increasingly ambiguous. In the second Law I introduce the concept of gestalt–or the ability of the mind to “fill in the blank”–which justifies my approach to allow creative interpretation. However this open explanation can be confusing if taken logically.

The final flaw Maeda mentions with his approach to simplicity is that there are too many laws. He fixes that with the final law, The One, which boils down Simplicity into a single sentence.

Law 8: Trust

This is part of a series looking at John Maeda’s ten Laws of Simplicity.

“In simplicity we trust.”

This is my favorite chapter. It explains a connection between usability and simplicity that I always knew was there, but never tried to figure out. It also foreshadows privacy issues that are bound to be a bigger deal in 2007 and beyond.

Usability as trust
Like trust in people, in order for a Web site to gain trust it has to prove itself deserving. The other laws help because something simple to use is easier to trust.

There are a lot of Web sites that feel “breakable.” I have even built some of them. Many mistakes can cause that feeling: ugly designs, layout bugs, and shoddy error checking, to name a few. When users run into a problem it makes a little chink in the trust armor. A couple of those and users start seeing chinks where there is no defect.

When a Web site fails gracefully, this builds trust–especially when the error is fixable and non-fatal. Maeda devotes two pages to the concept of “undo:”

Computer tools give us the option to undo often, and no infinitely. Digital media is a forgiving media. Any visual mark, spoken utterance, or typed word entered into a the digital domain can just as easily be removed.

Undo on the Web is not nearly as ubiquitous as in desktop applications. In fact, I’d say it is nearly non-existant. At best, most Web sites only provide an undocumented and makeshift re-do option, where you can backtrack your steps and do it right.

Privacy as trust
Another side of trust is that it is increasingly common is related to personal data. Briefly at the end of law three I mentioned how much time we save by banking online. That greatly simplifies checking balances and transferring money between accounts. Online banking only works if we trust our data to the banks. They need to either keep us safe or keep our financials off the Web.

There are also other types of personal data that could be just as harmful in the wrong hands. The same information can be used to give us better browsing experiences.

Maeda gives us a trust continuum:
Law of Trust continuum

The left side, how much you need to know, is covered in usability above and law four, learn. As we get smarter stuff, the need to learn will decrease. With more of our services online, we’ll likely start questioning the right side of the continuum. How much does the system need to know about me?

If tools ask for too much, they’ll lose some of the trust they’ve built up. If tools get too personal before building trust, they’ll lose users before they even get a chance to build trust.

Be a Smarty pants

Smarty bookPackt Publishing sent me a copy of a book on Smarty templates, probably because of my 2004 article, Get Smarty with PHP Templates.

Check at the bottom of this post for how you can get your own free copy.

It looks like a great book for a couple types of people:

  • PHP programmers who want to templatize their projects
  • Teams of programmers and designers who don’t want to step on each others’ toes

The book spends a lot of time on the many powerful features included in Smarty. I’ve noted some troubles with templates before, but the benefits far outweigh any problems they cause. Painful and long find-and-replace stints aren’t good for anybody.

Honestly, I’ve lately taken to using frameworks like CodeIgniter, which makes Smarty a bit of an overkill. But learning a framework is almost as involved as learning a new programming language.

Of the templating systems for PHP, Smarty is your best bet, because it’s related to the PHP project. This book is about all there is for Smarty and it does a good job for those who already know PHP.

How do I get me a copy?

You can buy it at Amazon or… drop a comment below.

On Friday, I’ll randomly pick a commenter and give away the book ($40 value, U.S. only, please). Be sure to include one or more ways to contact you (relax–I won’t share your email address).

Law 7: Emotion

This is part of a series looking at John Maeda’s ten Laws of Simplicity.

“More emotions are better than less.”

Get ready designers. Like the law of context, this chapter is for you. The law of emotion makes flair okay. It allows for the flash intro and might even forgive MySpace their misgivings.

Okay, so designers won’t like that entire list, but Maeda is very specific:

“When emotions are considered above everything else, don’t be afraid to add more ornament or layers of meaning.”

Maeda admits that this appears to contradict reduction, the first law. To make sense of this, I imagine the simplest web page possible. I picture a heading and some text, all black on a white background.

Basic Web page

A blank page might be simpler, but reduction is also about being as complex as necessary. Most designers, I would guess, would want to add something to the above Web page. If I took a poll of what it needs, I’d guess the number one answer would be color. Why?

As the law of context showed on the hiking trail, color can help point the way. The law of differences would say we need multiple colors to provide proper contrast between unlike elements. Indeed, white text on a white background would not be complex enough. Folding in the law of organize, it would be perfectly appropriate to use colors to separate different categories.

Slightly enhanced Web page

Still, I bet most designers would want to add to this. They would want different colors, or some sort of graphic. Asked why, one might say, “it just feels right.”

That is the law of emotion. If you are still skeptical, Maeda gets much deeper into it in his book.

Impromptu product for impromptu gaming

Three of my college friends have launched a fun product called DS Buttons. DS is Nintendo’s next generation GameBoy, a portable gaming device.

Says Sean:

The basic premise is that attaching a set of DS Buttons to an accessory will advertise to the world that you have a DS and are willing to engage in random, unsensored multiplayer action. 6 weeks ago we had an idea. Today we launch the buttons.

Calling this an impromptu product isn’t all that accurate, because they put a lot of planning into this. I love how quickly they took this simple idea live. Somewhere they also found the time to create an elegant site with a must-see, click-and-drag shopping cart.

Click-and-drag DS Buttons shopping cart

Tom dripped an introduction before he left for Chile. The world still awaits John’s announcement.

Great job, fellas!

Update: John has added his introduction, including a great peak at how he came up with the idea.

Law 6: Context

This is part of a series looking at John Maeda’s ten Laws of Simplicity.

“What lies in the periphery of simplicity is definitely not peripheral.”

Maeda is a designer and this is a designer’s chapter. Of course, designers already understand the importance of the periphery. If you think the design process is nothing more than making something look pretty, you’re a great candidate to read on.

Like some earlier chapters, Maeda provides a helpful continuum to explain the law of context:

Law of Context continuum

Somewhere in between the extremes is a place Maeda calls “comfortably lost.” It’s going to be different depending on the Web site. If it’s promoting a rapper’s new album, users are more willing (perhaps hoping) to be less directed. If it’s IRS.gov, then “just the facts, ma’am.”

It essentially comes down to ambiance. Maeda gives a great non-Web example about hiking a subtly-marked trail:

“I personally experiences this sensation of being “comfortably lost” on a recent vacation hike in Maine. I noted that the trails were marked with rectangles of bright blue paint. Each of the trails was highly navigable due to its good condition, but once in a while I would pause and wonder, “Where do I go next?” Almost like magic one of these blue markers that previously sat in the background of my perceptual field literally “popped” into the foreground.”

I think this law explains why “Have hay / Need hay” offends me (mentioned here). When it is translated to other types of sites they are too directed. Too dry. They become the equivalent of plastering blue signs on every inch of a forest hike.

Maeda concludes:

“At some point, with successive addition of more sophisticated elements, the true value of the untainted forest suddenly vanishes.”

The law of context says a designer should let visitors, whether to a Web site or state park, feel “comfortably lost.” Maybe that is the “feel” half of “look and feel?”

Joel on Simplicity

Joel Spolsky recently pseudo-attacked simplicity. I say pseudo because he makes great points and is only really down on being totalitarian about simplification.

Expressing simplicity is not always simple. What some call the simplicity cult have attempted to boil down good strategies for making things easy. The problem is that this can lead to generalizations that are misunderstood.

37Signals is a company with simple, lean products. They preach “less software,” but that doesn’t mean they never add features. As I’ve been noting in my Laws of Simplicity series, it’s a balancing act. There is no perfect approach.

Spolsky continues:

What works for bootstrapping, I believe, will not work as a good long term strategy, because there’s very little to prevent the next two-person startup from cloning your simple app, and because eventually you can’t fight human nature: “The people want the features,” says Norman. Just because handheld video was perfect for Blair Witch, doesn’t mean every Hollywood blockbuster will use it.

Again, I think this is just a misinterpretation of what it means to be simple. It also assumes that it’s easy to do something simply. A lot of people try and fail to copy the success of simple products. It’s hard to copy the balancing act. Having already achieved the difficult task is an advantage.

Next Page »