By John Gruber
Instabug: Application Performance Monitoring Built for Mobile Apps
Jeffrey Zeldman’s new book, Designing With Web Standards, is out. Two free chapters are available, and they are exactly what you would expect from Mr. Zeldman: informative, enjoyable, and stylish. I have no qualms recommending the book wholeheartedly.
Good reference books are important in every field. In the field of standards-based web design, for example, Eric Meyer’s Cascading Style Sheets: The Definitive Guide is an excellent reference for CSS. Mr. Zeldman’s book, however, is not a reference. It is something else. A reference book answers the question What? Mr. Zeldman’s book answers the questions How? and Why?
You can lead a web designer to standards, but you can’t make him drink. Designing With Web Standards will make him thirsty.
Complexity is not new to the digital age. All professional crafts are complex. Web design is no different. HTML and CSS are complex standards, and their complexity is magnified significantly by the various differences and shortcomings of real-world web browsers.
This complexity is not an excuse for professional web designers not to learn HTML and CSS.
Designers, obviously, tend to be visual thinkers. Thus they are drawn to visually-oriented web design applications such as Dreamweaver and GoLive. But Dreamweaver and GoLive are extremely complex applications — in my (possibly biased) opinion, they are in fact more complex than the HTML and CSS languages they are ostensibly designed to simplify. (For example, books about Dreamweaver and GoLive tend to be much thicker than books about HTML and CSS.)
The idea, of course, is that designers are accustomed to visual design applications like QuarkXPress, Photoshop, FreeHand, and Illustrator. But the difference is that in print design, the output of design applications — usually Postscript — is a means to an end, not the end itself. When you create a print design project, the finished product is ink on paper. It doesn’t matter how many layers you used in your Photoshop images, or whether you set up proper style sheets in Quark — if the end result looks good, you can reasonably claim to have done a good job.
In web design, however, the end result is the markup itself. The final presentation of the markup is out of your hands. It is thus a misnomer to describe Dreamweaver and GoLive as “WYSIWYG” applications. What you see is what you get implies that you have complete control over the final presentation of your project. In print, this is possible. On the web, this is impossible.
It is true that learning to use Dreamweaver or GoLive is similar to learning to use Photoshop or Quark. Learning to hand-code HTML and CSS is very different, and thus, for many designers, intimidating.
Many designers also have the misconception that hand-coders perform visual design by typing out code — that starting with nothing more than an empty text editor window, they crank out stylish web pages. No wonder many designers are intimidated by hand coding — but it’s just not true. Hand-coding web designers design visually — they just don’t expect their visual tools to generate production-quality markup code. An architect draws extensive sketches first, before producing actual blueprints. So too with web designers.
Mr. Zeldman, for example, makes it very clear in Designing With Web Standards that he designs using Photoshop. Then he translates the design to HTML and CSS by hand. This process is, in my opinion, much easier than it sounds. Designing With Web Standards walks you through this process step-by-step. Mr. Zeldman is a master craftsman; reading his book is like serving as his apprentice.
Many web standards advocates — too many — make their case for standards compliance on the basis of politics and morality: that web standards are the Right Way, and thus non-standard markup is wrong. Their problem is not that they are wrong; their problem is that such arguments are not persuasive to people who do not already believe.
When your argument boils down to “just because”, it is indistinguishable from dogma, and dogma turns many people away.
Mr. Zeldman’s arguments for web standards, on the other hand, are pragmatic. Web standards make life easier for designers, and make better web sites for clients. Win-win, as they say.
This is not a book filled with zealotry. For example, Mr. Zeldman does not admonish us never to use table-based layouts. On the contrary, the example in Chapter 8 is about creating a table-based (but standards-compliant) layout. He of course also covers using CSS in lieu of tables for layout, but he does so with a full explanation of the trade-offs involved.
All design is about trade-offs. A web site that looks great but is slow to load, or only works in certain web browsers, is a failure. A web site that loads fast and works in all browsers, but which looks ugly or is hard to navigate, is also a failure. Good web design is the art of finding the sweet spot — fast, usable, attractive, compliant.
Mr. Zeldman’s book is about how to find that sweet spot.
You have likely noticed the small banner promoting Designing With Web Standards at the bottom of Daring Fireball’s sidebar menu. One of the numerous advantages to not boogering up your web site with superfluous graphics is that when you do display a graphic, it stands out.
Designing With Web Standards is worthy of this emphasis.
(The graphic is positioned using an update to this site’s style sheet; Safari users might need to reload the page to clear the old style sheet from that browser’s overzealous cache. If the graphic looks too close to the preceding section of the sidebar, hit reload.)
Clicking this graphic will take you Amazon.com, where you can purchase the book. By purchasing the book through this link, you’ll send a small referral fee to me. You’re certainly welcome to buy the book elsewhere, including through Mr. Zeldman’s own web site, throwing the referral fee his way instead of mine. I am likely to squander these earnings on beer and poker.