Archive for category Book Review

Don’t Make Me Think: Book Review Part 2

Nice example from the Don Norman school of tho...

Image by padday via Flickr

The first section of the book, called “Guiding Principles”, lays the foundation to begin thinking about usability. It explains the thought process that the end user takes; it’s never what you plan, but with proper design, you can help guide and funnel them in the right direction.

I’ve explained it in another post before: developers often think exactly like their application: we think, “if the user clicks X, they’ll see a menu for Y, which they can click to get to Z. Wire it up!” but in reality, the user isn’t a developer and doesn’t know the application end-to end. They have to muddle their way through the website, and if they’re lucky, they’ll manage to follow your carefully laid track. The only way we can have a hope to get them from X->Y->Z is by making each link, button, or step as clear as possible by developing controls that are self-explanatory in use. Buttons should look clickable, links should stand out from the text, headers should be obvious, and navigation should be clear. The user shouldn’t have to look up help text, experiment, or even pause to think in their quest to get to Z.

In other words, if you think, “we’ll just add explanatory text right here,” You’re Doing It Wrong.
Stay tuned for Part 3!

Tags: , ,

Don’t Make Me Think: Book Review Part 1

Cover of

Cover via Amazon

After a 4-month break in which I was too busy getting ready for, delivering, and caring for our second child (Penelope Rose- November 16, 2009), I return!

I’ve had some pretty strange and interesting things go on in the meantime. The first of which that I will relay on to you will be some thoughts on the fantastic book “Don’t Make Me Think” by the brilliant Steve Krug.

I used to think of usability like it was some horrible sea monster, constraining design and getting in the way of just plain moving forward. But then some space ray hit a neuron in my brain, and suddenly I was interested in usability. “Can you develop fast, beautifully, and usable? Is it all about plain blue underlined links, and Times New Roman, or is usability something else?”

My first stop was another excellent book, The Design of Everyday Things by Donald A. Norman. I started with this much heavier book when I saw it on Jeff Atwood‘s reading list; it’s a more general book that covers design everywhere, whether industrial design, architecture, interface design… it was about the obvious dos and don’ts. I think that even though it was a heavier book, if I did it again I’d still start with it. It explains very well that usability isn’t about killing desig- it’s about making design accessible.

Then, one day when I was browsing around Barnes and Nobles (my wife in the children’s section, me in the computer), I saw in big letters “Don’t Make Me Think.” Having recently finished helping redesign several key areas of our website, all because these specific areas were a little rocky to use, I was intrigued. So, I picked it up… and two hours later, the store started to close while I was leafing through mid-book, my Peppermint Mocha congealed and cold.

There are two key points to Don’t Make Me Think that make it a joy to read: it’s brevity and bluntness, and it’s humor. It’s less than 200 pages, and the entire book could be read in a 4-hour sitting; but the wealth of information contained within it will impact for a lifetime.  I’ll be posting more over the coming weeks pertaining to specific chapters and sections of the book. Yay Usability!

Reblog this post [with Zemanta]

Tags: , ,

The Library Museum

I was recently debating, with a friend, about the pervasiveness of technology; my point was that information should be available whenever, wherever, to whomever chooses to call upon it; my friend believes that the internet has a profound negative impact, breeding an obsession with instant gratification and dependency on the virtual world.

Where it began was when I read an older Wired article about a specific type of “body-modding”; I didn’t even know there was a group of people who claims body mods as their hobby until today. But it spawned a question: if I was given the opportunity to “upgrade” a body part- say, swap out my eyes for a pair of zoom-capable, infrared cameras, would I and should I?  My answer was yes, I would; why not upgrade my body? Why shouldn’t I treat my body as some sort of machine, ready to upgrade? Is my body anything other than a robot controlled by my

Toilet paper
Image via Wikipedia

brain? Is it something I should hold holy and sacred, or is it something I’ll just be throwing away in 70 years? But, rather than getting too philosophical on this leading note, we then turned to a similar discussion of optical implants that displayed data inside your eye; a kind of mini-projector that would project a computer’s display so that it seemed as if the world was one big HUD. “I want information,” I said, “and I want to be able to check user reviews on toilet paper at Target instantly.”

However, my friend disagreed. She believes that in instantly calling up knowledge, you lose important skills; by not having to put time and dedication into researching topics, and by having, instantly, anything you wanted, you could no longer appreciate your final work. When you have instant gratification on the internet, you begin to expect it everywhere. That it’s about the journey, not the final destination; “I’d rather live in a farm in Nicaragua,” she noted, “although you’d probably prefer Tokyo.”

We left our discussion in an agree-to-disagree state. I believe in efficiency, productivity, minimum effort for maximum effect; she believes in taking your time, enjoying the journey and doing things yourself. They both certainly have their merits; however, I do believe the world is rapidly spinning my way; we’ll trade character for progress, for better or for worse.

Reblog this post [with Zemanta]

Bookshelf

My bookshelf

My bookshelf

I’ve got a lot of books; just recently I ran to Ikea to pick up a huge shelf to manage the overflow. But, there’s a group of books that I keep by my bookshelf, just in case I need a quick reference, or just feel like reading. Here’s a breakdown, from right to left:

-Manual for an MSI K9A2 Platinum motherboard (honestly, not quite sure how that snuck in there)

-The Design of Everyday Things, an absolutely fantastic book; I’m only about 1/4 of the way through it, and already I love it. It’s about the tiny little nuances about designing user-friendly things; it’s not explicitly technical (more about physical objects than virtual ones), but it’s definitely easy to cross it over into the web development / designing realm. I picked it up on reccomendation of Jeff Atwood.

-Dreaming In Code, another really good book; I saw it in the library one day and decided to flip through it. It’s a fantastic rendition of the exploits of the developers of Chandler, a personal information manager, and explains in detail how many things can go wrong with a software project; software is never on time, and the author (a reporter) does a great job in explaining how this phenomenon occurs.

-The Art of War, by Sun Tzu; it’s hard to find a copy that’s just the Art of War, and not ‘the art of war in relation to business’ or some such. It’s pretty fascinating; it’s about military strategy. I couldn’t find this specific copy on Amazon; I think I got it from Barnes and Noble about two years back.

-jQuery in Action; I love jQuery, more and more as each day passes, and I figured it was about time I picked up the book. The online documentation will always be more up-to-date, but I can’t bring that in the car with me (without a 3G netbook, anyway), and the book is written so that I can read it from cover to cover. It has several interesting insights into the technical reasons of jQuery’s architecture.

-Comet and Reverse Ajax; one of the ‘reccomended books’ Amazon advertised to me while I was ordering jQuery in Action. It’s really, really short, but it explains how to do something I never really thought possible with HTTP protocol: use a server push, instead of a client pull. This may mean Neflaria gets a real-time chat.

-Red Hat Linux 8 for Dummies; picked it up a long time ago when I was first experimenting with Linux. It does a really good job at getting a Linux dummy up to speed.

-MCTS and MCPD books for .Net Framework 2.0 web development; a set of 3 books written to get my MCPD. I hate the whole idea of certifications (I’m a firm believer that skill > credentials), but I figure I should get them eventually (because very few other people believe that).

-MCTS for SQL Server 2005; see above. Although, has actually useful information, not garbage to memorize in the rare event that Visual Studio’s intellisense and Google collectively collapse.

Top to bottom on left stack:

-Wired magazines; Wired’s awesome. It’s like Gizmodo, only in more detail.

-Swing Hacks; when we (Don and I) were first looking at developing an MMORPG, we were trying to decide what language to use; consequently, I picked up a few Java books, this and the next two. I knew very little about Java at the time; it was the cross-platform compatibility that attracted me. It was the entire language that turned me off.

-Wicked Cool Java; has a lot of cool project ideas for developers at any stage. If you want to mess around with Java a bit, this is the book to get.

-Killer Game Programming in Java; what I expected, and yet somehow not. It takes you from developing your own graphical engine all the way through game mechanics, which is awesome; but, with the abundance of pre-made 3d/physics engines out there, it’s more than I needed, so I never got more than halfway.

-Starting out with Java 5; my CS classes were in Java, and this was the book I used. Highly reccomended for beginners.

The next book to go up there will be Digital Security, which is another amazing book; it totally opened my eyes, and changed the way I thought about security.  I’m only halfway through it now, so it’s by my bed instead of on my bookshelf.