Google and HTML/CSS Code Quality
Post from October 21, 2014 (↻ December 12, 2016), reflecting Jens the Developer.
This and many other posts are also available as a pretty, well-behaved e-book: On Web Development. And speaking of which, here’s a short treatise just about managing the quality of websites: The Little Book of Website Quality Control.
For much of Google’s life time there have been few Google web pages of high code quality (products are a different matter which I’m not going to discuss here). The easiest test has traditionally been to validate a Google page, and the result of that has almost always been negative. When I started working for Google, in 2008, I’ve been one of a few new hires, all specialists for modern web development, who made it their priority to increase output quality. And after a few months, still in 2008, we had made enough progress to publicly point out that things had markedly improved, and that Google also cared about quality HTML and CSS code.
Then much more changed, for the much better. We established systems to grade the overall quality of our web pages (side note: some now used by UITest.com’s Site Check), integrated if not created quality-related tools (for validation, performance, maintainability, even typography), set up guidelines and policies (not just team- but company-wide), and spread the word. (You notice that I say “we”: once a Googler, always a Googler.)
You may wonder, is that not leading up to a happy end? As the Tech Lead behind a number of Google’s tools and policies I’ve watched the situation since my departure last year, and have reason to believe no. Others of the evangelists on the team have left, too, and a very different department is in charge of Google’s web pages now.
When we look at some of Google’s key properties and with that extraordinarily popular sites, we get a first hunch that the quality winds are turning. We can, for example, observe regressions for Google’s Jobs, Mobile, Analytics, and Earth sites. All these sites were valid up until 2013. (Luckily, the Ads, Business, About, Policies, and Press sites are still—or again, as with the About page—valid.)
For campaign and landing pages the situation seems outright dire. It’s difficult to tell from the outside what the daily output in marketing pages is like these days, but of the ones I found that launched in the last months, thirteen in total, an already workable sample size, not a single one validates.
And so we see that of 9 infrequently changed major sites, 5 are technically acceptable, 4 aren’t. Of 13 microsites and landing pages, 0 are acceptable, 13 aren’t. When we go beyond validation as a quality factor—just like Google’s style guide—, all of these properties, whether key company sites or marketing pages, lack other signs of good code health. Given that validation is merely demonstrating entry-level knowledge of HTML syntax, that is a poor and little professional outcome. What is also worrying is the fact that key sites are falling from near-perfect to errors even caught in simple validation checks, so soon, and the fact that there is no campaign page on par with the state at which we shipped sites as far back as 2010 or 2011. Those seem to be clear negative signs for a shifting regard for HTML and CSS code quality, and for code excellence.
At Google we had invested much in code quality and leading by example. I believe, as a professional, that that’s the way to go, and one not to be left. As I love both Google and excellence I don’t want Google to fall back into the bad habits of earlier years. And as we’ve promoted our good deeds publicly, I’m also reminding of our commitment publicly. That’s also the reason to not wait for an even bigger sample (remember, any landing page Google launches right now appears faulty by the most basic quality standards). I want Google to bounce back so that we can marvel at how high of a bar Google sets also in website engineering prowess. Because this is Google, and engineering excellence is what has made Google Google.
About the Author
Jens Oliver Meiert is a philosopher and developer (Google, W3C, O’Reilly). He experiments with arts and adventure. Here on meiert.com he shares and generalizes and exaggerates some of his thoughts and experiences.