Top critical review
13 people found this helpful
Inaccuracies and lack of structure
on January 15, 2012
I can't understand the extreme popularity of this book. I think there are much better titles on the topic, from which "Web Standards: Mastering HTML5, CSS3, and XML" by Leslie F. Sikos is my new favourite, and it is superior compared to this book.
The readers od Designing with Web standards cannot learn the top reasons why so many websites are invalid, and--what's even more important--how to create fully-standard compliant websites while considering the most aspects without crossing the line of unreasonable support for obsolete browsers.
There are no skeleton documents that could be used for step-by-step development, especially when starting Web documents from scratch. Evidently, the authors are not true hand coders even if their knowledge and influence on Web standards are unquestionable.
Although Zeldman correctly interprets some advantages of XHTML over HTML, he recommeds the Transitional variant of XHTML 1.0, which actually allows strictly presentational elements and attributes that have been deprecated in the Transitional variant of HTML 4.01 way back in 1999. If you do not use them--which is exactly the right policy, there is no reason to prefer XHTML 1.0 Transitional over XHTML 1.0 Strict (although it is true that is was an unfortunate decision of the W3C to deprecate the fundamental target attribute of the anchor element in the Strict variant). He mentions HTML5, but do not really writes about its XML serialization, XHTML5, which is now the most advanced markup language. He evidently knows the advantages of the XML syntax, yet emphasizes HTML5 as the markup language of the future Web instead of XHTML5 (even if WC3 and other bodies suggest the HTML syntax too for general-purpose projects). According to the title, it should be a book for Web standardistas, not just for "ordinary" Web developers.
The book features color screenshots about entire webpages--thus occuping huge space--instead of the relevant portions of them. There is no reason to provide color images about almost empty screenshots (e.g., Figure 3.3). Actually, the book shows more bad examples than good ones. This holds for both the images and the code listings.
Although many standardized technologies are described in the book, they are not differentiated clearly from de facto and de jure standards, and non-finalized specifications. Moreover, the technology-specific discussions become obsolete quickly.
Several important topics are missing from the book. Writing a book on Web standards without chapters about validation, standardization bodies, conference and website resources, or step-by-step guides is pointless. Web standardization is much more than writing standard-compliant markup or style sheets. The RSS and especially the Atom news feed standards are also missing from the book. There is nothing about Semantic Web standards such as RDF.
The book has no structure at all. Even if a reader remembers a CSS technique read somewhere in the book, he won't find it later due to the lack of structure, the large overlapping between the various chapters, or the incorrect heading levels (e.g., the HTML markup language family, the XHTML markup language family, and HTML5 are on the same level although they should be on different levels).
Some vital concepts are also missing from the discussions, e.g., the Open Web Platform, which would make readers understand the relationship between a variety of Web standards.
The topics are in an illogical order. Terms should not be described without proper introduction. The relationship between topics should be taken into account, and those topics that rely on other ones should be described later.
The importance of Unicode in character encoding is not emphasized, and no special characters or ideographs are mentioned that are used by a large share of natural languages throughout the world.
In the typography chapter, some outdated, obsolete techniques are described in detail before the conclusion which clearly states: they should not be used because of their weaknesses. Bravo.
There are some serious errors in the chapter on accessibility. It is simply not true that table based layouts do not affect accessibility. They do. Just imagine the text the screen reader software of a blind user would speak out loud when it reaches a table used for layout (which is actually one of the worst practices in web development ever). Tables used for layout break the logical flow of the content. In spite of what is written in this book, the requirements of Section 508 and WCAG 1.0 are not compatible. The authors confuse machine-readability (semantic content) with accessibility, which is another huge mistake. And simply because they don't want to (or can't) describe Web accessibility in detail, they suggest three books instead. The newly introduced structuring elements of HTML5 add semantics (meaning) to elements, but you should not confuse this kind of meaning with machine-processable metadata used on the Semantic Web. The authors did.
Even if they might be rendered differently under very old, obsole browsers, declaring font size in pixels instead of ems is a well-known accessibility and usability barrier, yet used throughout the book.
There is a chapter about the DOM, but the tree representation is totally missing, and the book dives into DOM scripting from one sentence to another.
Some of the sample codes use entities instead of directly written UTF-8 characters, which is not the optimal solution (e.g., copyright sign).
The book is ridiculously verbose and redundant. For example, it is described correctly at the very beginning why using spacer GIF images is a very bad practice, but in the accessibility chapter there is a suggestion not to add attibute value to the alt attribute of spacer GIF images.
The "witty" comments and "jokes" are really annoying. What's more, the text flow is constantly interrupted by badly written, incomplete citations. Another common problem is that single-line, evident code fractions are described on whole pages, wasting paper and the reader's time.