Concise and Comprehensive: an HTML5-focused Interview with Authors Klaus Förster and Bernd Öggl
Cameron Laird: HTML5 is a biiiiig subject; will the developers who come to your book read it "straight through" or learn one piece at a time?
Klaus Förster and Bernd Öggl: The chapters do not depend on each other, so you are free to read it as you like, from front to back, back to front or in any order, letting your curiosity guide you. Most readers will probably start with the topic they are interested in most or a topic they have heard of before and want to explore further.
Online resources are essential for a topic like HTML5. Nevertheless, it's good to have a comprehensive guide to HTML5's new elements and techniques with compact, practical and easy-to-understand examples at hand. In addition to that, the companion website at http://html5.komplett.cc provides all examples for downloading and links to web resources for new information and specification updates. This combination of concise introduction and comprehensive examples is the thing we are really proud of. It is what we did not find in other books.
Cameron: I personally like Chapter 2 for the care it takes in relating CSS—including CSS3—to semantic elements. I think you're right also in explaining the "overuse" of Canvas that results in, among other things, issues with accessibility.
I find it difficult, though, to generalize about HTML5 as a whole. Are there one or two big capabilities that most Web developers don't realize before reading HTML5 Guidelines? From your experience, how will HTML5 most expand developers' horizons?
Klaus and Bernd: One of the big capabilities that Web developers will realize is the fact that modern browsers are evolving to high-level runtime environments through HTML5. All you need is a text editor and the browser. That is fascinating—at least it was for us—when we discovered Canvas, Audio, Video, Geolocation, Websockets, Storage or Drag & Drop.
Cameron: How have you seen developers adopting HTML5? Do newcomers to HTML5 typically start with the DOCTYPE, or form elements, or canvas, or ...?
Klaus and Bernd: Well,
<!DOCTYPE html>
for sure
is the first thing to do. Google, Wikipedia and Apple have done
it already, so why not try it as well? If you then go and check
your document for validity using online tools like
validator.nu
you will be surprised to see how easy it is to write HTML5
valid code. That's due to the fact that HTML5 is backwards
compatible and the validator gives good hints on what to change.
The next step could be to add structure to your document using
header
, footer
, article
and the like. Video
is supported in all
major browsers by now as is canvas
.
If you develop applications for your company's internal intranet,
you can go even further and use all the HTML5 features the browser
of your choice has implemented already.
Cameron: What HTML5 validator(s) do you use?
Klaus:
http://validator.nu/
or
http://html5.validator.nu/,
both from
Henri Sivonen
who has written the first implementation for the HTML5 parser
algorithm. If you want to switch to HTML5 and have added
<!DOCTYPE html>
to your pages just there,
it will help you a lot to make the transition.
Bernd: The bookmarklet you can download at http://about.validator.nu is an essential tool for me. It is capable of validating the actual code in your browser with all modifications your script or your interaction made to the DOM.
Cameron: validator.nu
is
a great resource. I'm glad you mentioned the bookmarklet.
What are the problems with HTML5? What difficulties do your students have?
Klaus and Bernd: The audio, video codec dilemma is one of the things that is quite disappointing. It is sad that no free codec is required by the spec, although one exists: WebM. Besides that, it's also disappointing that there seems to be no viable solution for accessibility in Canvas.
Our previous experience showed that it is a big step for students from HTML formatting to modern object-oriented JavaScript programming. Interestingly, the DOM concept is picked up rather quickly and is implemented successfully by modifying existing code. But [a solid understanding of] script-logic is something many students find a hard nut to crack.
As far as websockets is concerned, full browser support is on the way. After solving the security problem with websockets in the IETF specification, browsers are turning on websockets again by default.
The ongoing discussion about Flash vs HTML5 is tiring, as the two are totally different technologies. Flash on one hand is a proprietary plugin, HTML5 an open standard. Both have their valid uses, but for us the decision was clear to go for the open standard. Flash will not vanish imediately, but the more HTML5 matures, the less important Flash will be. For the browsers it will be a huge win to get rid of a proprietary plugin dependence.
Firefox is quite active in implementing MathML, but other browsers are still a bit reluctant. The user base for MathML seems to be too small, as it is more or less restricted to the scientific community. We think this is the reason why there is not as much demand for MathML yet, as for other popular features like audio or video.
Cameron: What should developers know about SVG?
Klaus and Bernd: SVG is a huge specification, thus focusing on details of SVG's features is out of scope for this book. What you need to know in the context of HTML5 is how to include SVG markup in your code—that's what you will find in chapter six.
Cameron: Nearly everyone working with HTML5 also needs to know at least part of JavaScript, SVG, and CSS3; are there books you recommend for these three areas?
Klaus: Well, all books published by Addison-Wesley on those topics of course, as books by Addison-Wesley all guarantee high quality. Besides those I really like Pro Javascript Techniques by John Resig or JavaScript: The Definitive Guide (Definitive Guides) by David Flanagan. For SVG it's a bit harder, as I have not found really good (and up-to-date) books on that topic so far. The SVG Primer for Today's Browsers by David Dailey is definitely one of the best sources (although not available on paper). Given the transition of SVG to second edition as recommendation in the near future, it would be nice to see fresh books on that topic. Cameron, why don't you write one? As far as CSS3 is concerned I must admit, that I have not read any book on CSS3. All I know about this yet-to-be-finished piece of W3C art comes from online sites.