HTML5 for Web Designers: Book Review
HTML5 is all the buzz right now: some people think you need to wait until it's "complete" to use it, while others are pushing the envelope and using what the browsers are supporting right now. If you're not following the HTML5 hype and aren't familiar with what's so exciting, today's book review will give you a great source to turn to: "HTML5 for Web Designers.
What's It About?
It should be obvious what this book is about: HTML5. However, that's a broad, tangential topic. More specifically, HTML5 for Web Designers is supposed to be a super-condensed, easy-reading version of the HTML5 spec, with a huge scoop of practicality stirred in. I've included a few quotes in this review so you can get an idea of what it's all about.
Who Wrote It?
HTML5 for Web Designers was penned (well, probably typed) by the brilliant Jeremy Keith. If you're not familiar with Jeremy Keith, you've been missing a lot on the web. He's an Irish web developer, the technical director at Clearleft, a web development firm in Brighton, England. He's done a lot of work with Microfomats; for more by Jeremy, you should really check out his blog, Adactio. Mr. Keith was interviewed by Dan Benjamin and Jeffrey Zeldman on the Big Web Show, talking about why the book was written, why Jeremy was chosen to write it, and a lot of other fun stuff.
Listening to that podcast, you'll agree that Jeremy Keith was definitely the right guy to write this book. If you've never read anything by Jeremy Keith before, then a small piece of your web-developer self has yet to be born. Nothing in this book could be more practically explained. The website says it well:
In this brilliant and entertaining user's guide, Jeremy Keith cuts to the chase, with crisp, clear, practical examples, and his patented twinkle and charm.
You have to love all the fun quips Mr. Keith sprinkled in, from the subtle "an array of programmers" to the more obvious "If you ever use the
autoplay attribute in this way, I will hunt you down."
What's In The Book?
The table of contents shows what exactly you'll read in this book:
- A Brief History of Markup
- The Design of HTML5
- Rich Media
- Web Forms 2.0
- Using HTML5 Today
Chapter 1: A Brief History of Markup
You might think such a concise book wouldn't have room for a chapter on the venerable past of HTML . . . but you couldn't be farther from the truth. In the very first chapter, Jeremy Keith takes you back to the beginning. He clearly explains the path from HTML 2.0 (there never was a version 1) right up to HTML5, visiting famous stops such as HTML 4, XHTML 1, and XHTML 2. He gives a great explanation of why it's not reasonable to wait for full HTML5 support before using it.
After HTML 4.01, the next revision to the language was called XHTML 1.0. The X stood for "eXtreme" and web developers were required to cross their arms in an X shape when speaking the letter. No, not really. The X stood for "eXtensible" and arm crossing was entirely optional.
Chapter 2: The Design of HTML5
With HTML5, anything goes. Uppercase, lowercase, quoted, unquoted, self-closing or not; it's entirely up to you.
Chapter 3: Rich Media
I think we'd all agree that the new media offerings in HTML5 are some of the most exciting additions . . . and some of the most controversial. If any of that controversy is caused by a lack of understanding, this chapter will make it all clear. Jeremy very clearly explains all you'd care to know about the
video tags. He'll steer your through the murky waters of patchy support and poor accessibility and show you how to use these features successfully.
Fortunately, there's a way to use the audio element without having to make a Sophie's Choice between file formats. Instead of using the src attribute in the opening <audio> tag, you can specify multiple file formats using the source element instead.
Chapter 4: Web Forms 2.0
This chapter is about one of the biggest parts of HTML5: forms. Usually, forms are a rather boring topic: not so in this book. Jeremy will take you through each one of the attributes and types of
input, as well as teach you how to check for a browser's support of these new features. You'll be enlightened to read about why HTML5 includes things like native form validation, and whether or not you should style the new UI elements (Well, you can't, but he answer the question "Should you want to?").
I can see why the autofocus attribute has been added to HTML5—it's paving a cowpath—but I worry about the usability of this pattern, be it scripted or native. This feature could be helpful, but it could just as easily be infuriating. Please think long and hard before implementing this pattern.
Chapter 5: Semantics
This is probably my favourite chapter; to start out, Mr. Keith discusses the issues behind the extensibility of HTML: should you be able to create your own tags, like in XML? Are there other ways to bring meaning to elements? He goes on from there to introduce several of the new elements that HTML5 brings to the table, and shows you how to use them correctly.
Before reading this book, I was somewhat confused about the roles of the new structural elements—things like
article. Well, colour me enlightened; Jeremy Keith's explanation will make it all clear. If you really want to challenge yourself, read his explanation of HTML5's outline algorithm.
Back in 2005, Google did some research to find out what kind of low-hanging fruit could be found on the cowpaths of the web.
A parser looked at over a billion web pages and tabulated the most common class names. The results were unsurprising. Class names such as "header," "footer," and "nav" were prevalent. These emergent semantics map nicely to some of the new structural elements introduced in HTML5.
Chapter 6: Using HTML5 Today
It's nice to know all the theories and specs, but can we really use it? today? As you'll see, the short answer is "yes"; the long answer is, well, you'll have to read the book. What's supported? What's can you use now? What workarounds are available? It's all in here, and you'll be up and running in no time.
I hope that this little sashay 'round HTML5 has encouraged you to start exploring this very exciting technology. I also hope that you will bring the fruits of your exploration back to the WHATWG.
It's amazing how much is actually covered on these subjects in only 85 pages. You'll learn everything from the history of HTML to how to correctly use the
<i> tags (eh? yes, their back in HTML5). If you want to "try before you buy," you can check out the first chapter at A List Apart.
Is there anything I'd change in this book? I can't find anything to complain about; both the publishers and the author are individuals known for their amazing quality of work, and HTML5 for Web Designers is just one more testament to their skill.
Who's the Book For?
If you're a web developer, you'll appreciate this book's practical knowledge and solid explanations of why things are the way they are. If you're primarily an experience designer, this book will give you a good grip on using HTML5 semantically and accessibly. If you're interested in the history of HTML, that's here. And if you just want a small but elegant book for your shelf, look no further.
In sum, if Nettuts+ is one of your regular web stops, you absolutely must buy HTML5 for Web Designers.
Or, what if you've already bought it . . . and read it. If that's the case, how's my analysis? Is there anything about the book that you would change?
HTML is the most important tool a web designer can wield. Without markup, the web wouldn't exist. I find it remarkable and wonderful that anybody can contribute to the evolution of this most vital of technologies.