A Programmer's Guide to Design Tools and Techniques
Author: Brian P. Hogan
Format: Paperback, 300 pages
Publisher: Pragmatic Bookshelf; 1st edition (December 15, 2009)
While there can be some overlap between web designers and web developers, they tend to define their own specific worlds. However, what if a programmer would also like to be better at design? Where does he or she go? Turns out Brian Hogan and the folks at Pragmatic thought in that direction as well and came up with Web Design for Developers. I guess the title gives it away. But is this book just for programmers who want to learn design?
On the surface, the answer to that question seems to be "yes". You've created a killer web app but the appearance of said-killer app looks lousy...or at least doesn't look as good as you'd like it to be. Of course, you probably know someone who could help out with the design, but it might be nice to be able to do the job yourself. How to begin? The blurb on the back cover mentions magic words such as PhotoShop and CSS so I'm guessing that's where you'd start. I still can't imagine that a book like this is only for programmers, though. Let's dig a little deeper.
Well I'll be darned (or something). As I began looking through the book, the target audience seems to be folks who are cracker jack web developers but who really don't have much of a clue about how to actually design a web site. I point you to Chapter 9: Building the Home Page with HTML as proof of this. For people who've mastered the arcane intricacies of ASP, PHP, Python, and Ruby on Rails, I wouldn't think a simple markup language would be much of a chore, and for some programmers I know, it's not. Actually, for most programmers I know, it's not. On the other hand, while HTML might not be much of a basic challenge to a developer, creating a web site and making it look good could be an uphill climb, as it requires something of an artistic way of viewing the web.
That explains the earlier chapters in this book, which includes basics on style, color, fonts, and graphics. To my relief, Hogan did mention both GIMP and PhotoShop, so his book isn't a slave to proprietary software. That's good, because designing for the web can be done very expertly utilizing the world of open source tools. This also gets at what I was alluding to a few paragraphs ago. Do you have to be a programmer to benefit from this book? No.
What do at least some web developers and any one else who wants to design web sites but have little or not experience with the job have in common? The question provides the answer. There's nothing in the book's presentation of the topics involved that can only be understood by programmers. If a developer can read and understand font and typographic basics, so can the non-developer. The would-be web designer picking up this book will likely get the same information and skills practice as the programmer thumbing through the pages.
I particularly liked the section called Adding Graphics, which contained a number of chapters instructing the reader how to put together a mock-up site, focusing on structure and content. If you don't have experience making an image in your imagination turn into a real web site design, these chapters will help you operationalize your images and your dreams...and this comes before even one word about HTML and CSS.
Another nice feature in the book that I rarely (but not never) see is how to design for web browsers. The author slams Microsoft's Internet Explorer, and rightly so, but also addresses what you have to do to design for IE's tendency to work outside of accepted standards, particularly IE6 (which should just plain be abandoned). From designing for people who are visually impaired to designing for mobile devices, Hogan hits all the areas someone building for the web in 2010 needs to understand.
The mock-up site designed early in the book has a life throughout its pages and acts as an anchor for developing and refining all of the different tools and techniques practiced by the reader. Some content, such as testing and performance optimization (Chapter 20) might be more familiar to programmers than other folks, but, if you've gotten this far in the book, you'll probably be ready to tackle such tasks anyway.
I can't say the book is revolutionary or that I haven't seen its content in other books, but taken all by itself, Web Design for Developers is a good primer for anyone who would like to learn web design from a global perspective. From graphics, to color, to fonts, to HTML/CSS, and onward, Brian Hogan has written a solid little book that should get you off the ground and into web design, whether you're a programmer or not.