Development (6)

New Book: “The Little Book of HTML/CSS Coding Guidelines”
Out of the blue! My latest book, The Little Book of HTML/CSS Coding Guidelines, is now available. It’s a brief introduction into the theory and practice of coding standards. Emphasis, as the title suggests, is on HTML and CSS, and furthermore on Google’s guidelines…
#151 · · books
What I’ve Hated and What I’ve Loved About Web Development
In On Web Development and in other contexts I’ve alluded to wrapping up, ending my old career. That’s only correct to an extent. (In keeping with the intelligence community, always put everyone at risk by adding backdoors.)
#150 ·
The Problem of “Fire and Forget” in Web Design
If I were to pick the main issue in web design… I couldn’t answer immediately. I don’t think there are so many, but there are a few, they are very different, they operate on different scales, and so they’re hard to compare. One, however, is “fire and forget.”
The Law of User-Generated Code
Whenever you allow users to edit code of your website, you’re doomed. It’s only a matter of time until you need to give up and redo the entire website—and, adding insult to injury, alienate your users.
#148 · · maintainability
Analytics: Only When We Actually Use It
Here’s something so obvious, it isn’t anymore. Which is: We should only use analytics software when we actually use it. Not when we think we could might want to need it. And not when we only glance at it, every now and then.
#147 ·

New Book: “On Web Development”
I wrote another book. On Web Development. On Web Development is an ebook that collects most of the articles about web development (and web design) that I wrote between 2005 and 2015. Most articles as in most useful, most important, and also most controversial.
#146 · · books
Web Standards: We’re F’ing It Up
It’s a problem to just change specs. But it’s an increasingly bigger problem not to clean and prune them. The intimidating complexity of web standard specs should precisely be a motivation, not a threat, to come up with a plan. It follows the populist version.
#145 ·
A Vision of Web Development
There is one thing every web developer should aspire to: writing the most minimal, semantically appropriate, valid HTML, and then never changing it. “Never” not in a sense of denial and refusal, but in the sense of a guiding light…
#144 · · minimalism, semantics, conformance, maintainability, quality
The Two Ground Rules for Using a Framework
Follow the documentation, don’t overwrite framework code. These two rules are golden.
#143 · · frameworks
Remember: April 9 Is CSS Naked Day
CSS Naked Day is coming up! Why the excitement? Because CSS Naked Day is a magnificent custom; the magnificent custom to, on one day of the year, strip websites of all styling. It’s awesome because—
#142 · · maintainability
The Truth About “!important”
Sometimes I wake up at night, full of agony, tears in my eyes. The Holiest Alliance Against !important
is haunting me. I see their countless crusaders gallop at innocent web developers with merciless force, incessantly blowing their deafening horns…
#141 ·

New Book: “The Little Book of HTML/CSS Frameworks”
It’s out! My new book, The Little Book of HTML/CSS Frameworks, is now available. I myself have been surprised by the sudden release, and while I’m still unsure about how print copies can be obtained, the book can now be downloaded for free at O’Reilly.
#140 · · books, frameworks
Web Design and Principles
Web design has become complex. More people, more ideas, more use cases, more technical innovations, more design variations, &c. pp. More makes for more complex. However, there’s a life line helping us with this complexity, as well as trends.
#139 · · design
Web Frameworks in a Nutshell
My next book is coming! “The Little Book of HTML/CSS Frameworks.” I’m wrapping it up with the team of O’Reilly as we speak. In the book, I share much of my experience architecting, developing, and maintaining web frameworks, as I’ve done for Google, Aperto, and GMX…
#138 · · frameworks, quality
On the Deterioration of HTML/CSS Practices
Presentational markup for everyone.
#137 ·
Maintainable Social Script Integration
In my book, a website embeds all those third-party “share” and “like” and “+1” scripts like: this.
#136 ·
CSS and Specificity
On one of CSS’ greatest features, going from using graphs for greater understanding to affirming fundamentals for saner coding.
#135 ·
Google and HTML/CSS Code Quality
For much of Google’s life time there have been few Google web pages of high code quality. That had changed over the last years, but now there are regressions. On the rise and fall of Google’s websites.
#134 · · quality
CSS, DRY, and Code Optimization
Why we should minimize repetition in style sheets—perhaps through using declarations just once—, focus more on CSS optimization, and consider that avoiding problems is also a way of solving them.
#133 · · maintainability
On Declaration Sorting in CSS
I keep on seeing people advocate to sort declarations “by type.” And every time I wonder, why is this idea still going around? Type sorting is extraordinarily ineffective, for it’s extremely slow and consistently unreliable…
#132 · · maintainability
HTML and Specifying Language
Questioning the importance and ways of marking up language in HTML documents, in particular changes in language.
#131 ·
Code Responsibly, Explained
A professional web developer focuses on at least ten priorities in his work. That’s the populist claim Code Responsibly has made since 2008. It was time to explain why these things matter.
#130 ·
On Web Documents and Web Apps
I’ve just elaborated about research and production code, and why that distinction matters. And I hinted at but put off another distinction: that between web documents and web apps. Pronounced distinction seems important to protect existing document practices…
#129 ·
All Code Is Not Equal: On Research and Production Code
Web development is at a point at which we need to make more fundamental distinctions. One of them is a more determined one between web documents and web apps, another one is between research and production code.
#128 · · quality
5 Questions Web Developers Always Need Answers For
In web development, just as in other fields, it can easily appear as if there are clear-cut solutions for everything. That’s at least the case for many of us neurotic perfectionists, as our world is built on clear-cut solutions. Alas, there aren’t always, and here are five general questions to consider.
#127 ·
On Links and Accessibility
Hyperlinks and the underlying ubiquitous <a>
elements are what make the Web. Just a few weeks back, Christian Heilmann wrote a little about why and how links are important; here it’s about accessibility aspects.
#126 · · accessibility
CSS: When to Use Generated Content
Generated content means a special option in CSS to embed content in documents. It’s achieved through the content property. Fast forward, generated content should only be used for non-critical content; there it can be a very sharp instrument.
#125 ·
HTML Explained in 123 Tweets: The Google #htmltuesday Archive
Did you know that Google’s Webmaster Team tweeted short statements about all HTML elements, every week, for two and a half years? It was called “#htmltuesday” and ran from 2011 to 2013. All of these tweets are now available in one place: here.
#124 · · semantics
On Writing a Book With Google Docs and Amazon KDP
Google Docs is okay to write short books and when making limited use of the comment feature. Amazon KDP’s HTML format is a technical disgrace, and Amazon needs to fix it. A few thoughts and tips on completing a book using either.
#123 · · misc
CSS, HTML, and the Problem of Spec Fragmentation
We have not one but two fundamental problems with CSS. One is unrestricted growth and complexity leading to poor understanding and poor code. Another one is spec fragmentation, also an issue with HTML, which results in inefficiencies. We should look for a better balance.
#122 ·
No to DRM in HTML
It’s been quiet around DRM lately so I like to share my opinion, in brief: DRM doesn’t belong into nor anywhere near HTML. For one, HTML is a language to describe documents and, since HTML 5, applications. I don’t deem DRM in scope for HTML…
#121 ·
The Curious Case of Breadcrumbs in HTML
We had an interesting thread about breadcrumbs on W3C’s public-html the other day. At first just targeting delimiters, it spawned a debate about the appropriate markup. Here’s my view on breadcrumbs in HTML.
#120 · · semantics
About Cost in Web Development
Cost is an interesting topic. Oftentimes we think of cost as in “this costs so-and-so much.” Like, the software license costs $2,500. Or three man hours cost $450. I’m not an economist but I like to think of this as something like primary cost. Yet, there’s more…
#119 ·
A URL Policy for Web Projects
Do your projects suffer from URL inconsistencies? I just noticed how mine do. I also noticed that I did some unnecessary things, like omitting protocols when they were actually useful. And I noticed that I’ve seen similar problems in corporate projects before. So I jotted down a quick “policy.”
#118 ·
Object-Oriented HTML, and OOCSS
“Object-oriented CSS” is the idea of treating page elements as objects, giving all these objects classes, treating objects’ classes as single entities in style sheets, and taking it from there. I reviewed the old OOCSS site and Smashing Magazine’s introduction.
#117 ·
How to Order CSS Selectors
There are a number of ways to write style sheets. The domain of style guides, many of them go into some detail. What I, despite my work on a number of guides, have so far missed, is a reference to sort selectors and rules, as proposed here.
#116 ·
The CSS Problem
CSS is growing too large while CSS 2 has not nearly been understood by authors. This non-sustainable growth is a big problem for CSS.
#115 ·
On Browser Testing
The primary goal for cross-browser testing is to make sure that documents are usable and consistent across different user agents and devices. Even if you understand this to include both functionality and design, the definition of “usable” is interesting.
#114 ·
HTML and Non-Script Styling
If you are to style a document differently based on whether certain technology is available, you should keep two things in mind: HTML itself is static and separation of concerns is important for maintainability…
#113 · · maintainability
Maintainability: One Story and Three Concerns
To make this a little story, for a long time in my career I wasn’t very concerned about maintainability. I was maintaining projects but didn’t have an idea about whether what I maintained was actually effective to maintain. I got a sense that things weren’t quite right…
#112 · · maintainability
“window.scrollTo()” or: When to Stay Clear of User Agents
If you were to ask me whether you as a web designer or developer should do anything about user agent issues, my answer was a clear “no.” It’s not your responsibility. You may lack important insight into decisions made on the user agent side…
#111 ·
On Semantics in HTML
As web developers we like to talk about “semantic markup,” a somehow inaccurate short form for “markup that is meaningful and used how it’s supposed to be used.” But where is all that meaning coming from? Let’s take a look.
#110 · · semantics
Print Style Sheets and URLs
Print style sheets are awesome. They’re easy to write, too. Site owners and developers who care about print typically know what to do. Alas there’s one thing that’s done rather the wrong than in any right way: printing URLs…
#109 · · design
Web Development Principles: Develop for What Is, Not What Could Be
For any given project, web developers fare best when focusing on what is, not what could be. To fend off the first misunderstandings, that focus includes what absolutely will be.
#108 ·
Exposing Reset Style Sheets
Finally, a Chrome extension to highlight alternative approaches to CSS.
#107 ·
HTML, “@width”, and “@height”
As the width and height attributes are to remain part of HTML, limit their use. The reason to avoid @width
and @height
is that they are presentational and hence constitute potential maintainability issues.
#106 · · maintainability
Testing Tricks: CSS Bookmarklets
On complex development environments and CSS bookmarklets as a testing complement. Complement as in you’ve done everything you can but want to err on the safe side.
#105 ·
One Photo: Reset Style Sheets
It never gets boring.
#104 ·
The Secret of Web Development
Playfulness.
#103 ·
CSS: How to Host Right-to-Left Styling
For international projects, don’t use separate style sheets for right-to-left (RTL) styling: use natural (@dir
) or artificial (@id
, @class
) hooks instead. The only exception are unbearable performance issues due to hundreds of RTL rules…
#102 · · maintainability