Web Development (4)
HTML Concepts: âBody-Okâ
âbody-okâ relates to link type keywords, and denotes what link
elements are okay to be used in the document body.
#254 ¡ ¡ html
Code in Quarantine
In the current paradigm, we often work with components and have a 1:1 relationship of HTML to CSS. This makes maintenance more predictable. However, it also pronounces the problem of rarely used codeâwhich can be useful to put in quarantine.
#253 ¡
33 Additional Web Development Terms You May Not Have Heard Of
As you know, Web Development has its own, special vocabulary that easily consists of several thousand terms. Do you like to try your knowledge again, on how many of the following 33 terms you know?
#252 ¡ ¡ design
HTML: The 16 Content Categories and Their Elements
HTML puts elements into content categories. This article serves as a boring, brief, but updated overview over the broad and overlapping categories of HTML, and which elements fall into them.
#251 ¡ ¡ html
In Critical Defense of Frontend Development
The field of frontend development is in another crisis, largely due to an incomplete, misinterpreted definition and a bizarre mess created by âweb development as a commodityâ and âweb development as software development.â How frontend development is more than development, and what we can (and should) do.
#250 ¡ ¡ html, css, javascript, quality, design
Ignore AMP
In 2018, my recommendation was to avoid AMP, to use AMP for the most relevant pages, or to use AMP only. In 2020 my recommendation is to ignore it, because AMP largely appears meaningless now. Upgrade Your HTML II gives an opinionated idea why.
#249 ¡
Website Optimization Measures, Part XI
Welcome to another round-up of possible website improvements, this time going from several types of link updates to table of contents CSS upgrades to CDN integration and privacy policy checks.
#248 ¡ ¡ design, optimization
Notes on HTML 3.2
Would it still be useful to read the HTML 3.2 specificationâfrom 1997? A few observations.
#247 ¡ ¡ html

Upgrade Your HTML II
If you care about HTML as a craft, if you consider yourself an HTML minimalist, if you believe in pushing for boundaries (and sometimes overdoing it), then this is a right book (and a right book series) for youâwith 10 new examples from the field that get inspected and improved.
#246 ¡ ¡ books, html, minimalism, optimization
On HTML (and HTML in 2020)
What seems noteworthy about HTML, and how weâre doing on that in the year 2020.
#245 ¡ ¡ html
Custom Properties: Questioning â:rootâ
For custom properties (aka CSS variables) we got into the habit of declaring variables in a rule with a :root
selector. Yet unless youâre working in an environment in which style sheets serve several document types (and roots), question this use of :root
.
#244 ¡ ¡ css
Website Optimization Measures, Part X
9 TILs that I applied to my personal projects.
#243 ¡ ¡ optimization
The Anti-Reset (to Reset to User Agent Styles)
I advise against resets. You donât need them. (We donât need them.) Yet whatâs the opposite of a reset? Of all resets? The anti-reset. It looks something like thisâ
#242 ¡ ¡ css
33 Web Development Terms You May Not Have Heard Of
Web Development has its own, special vocabulary that easily consists of several thousand terms. Even if youâre an experienced developer youâre unlikely to know all of them. Still, do you like to try your knowledge? How many of the following terms do you know?
#241 ¡ ¡ design
The 27 Boolean Attributes of HTML
What is a Boolean, what is a Boolean attribute, how does a Boolean attribute work, and what Boolean attributes are there? Meet the Boolean attributes, from allowfullscreen
to truespeed
.
#240 ¡ ¡ html
5 Tips to Get Your Dev Blog Running
If you know what you can deliver, if you keep at it, if you make it easy for your peers, if you talk about the effort, and if you measure and improve and employ a process, youâre likely to do well: thoughts on technical outreach.
#239 ¡ ¡ misc
The 4 Pillars of Good Embed Code
Embed code is third-party code to be integrated on websites and apps, like ads or social media widgets. There have been many problems with embed code for a very long time. This post covers the essence of what makes for good embed code.
#238 ¡ ¡ quality, html, javascript, design

The Web Development Glossary (More Than 2,000 Key Terms for Developers)
What is a BHO? Goanna? Hooking? How about a principal box? Or the Ten-Second Rule? Covering more than 2,000 terms ranging from A11Y to Zsh, and including explanations from Wikipedia and the MDN Web Docs, Iâm very happy to release the The Web Development Glossary.
#237 ¡ ¡ books
The Frameworks Paradox
The more complex a website, the bigger the need for a framework, the less effective an external framework. This is not new, and not even a paradox because an internalâhomemadeâHTML/CSS framework is always an option. Howeverâ
#236 ¡ ¡ frameworks
On the Responsibility That Comes With Good JavaScript Support
According to our data, the classic idea of making sure websites and apps work without JavaScript being enabled is dead; when we look only at support requirements, this was the end of the story. Itâs not, however, when we employ a broader look at JavaScript and its misuses.
#235 ¡ ¡ javascript
HTML and CSS and the 2019 Web Almanac
The HTTP Archiveâs Web Almanac is fantastic because it provides us with data about how we build what kinds of websites. While the release of the 2019 Almanac has been accompanied by some analysis, I had found it interesting to interpret the data, too.
If It Can Be Done Using an HTTP Header, Use an HTTP Header
The following is a (slightly modified) chapter from Upgrade Your HTML, which is âall about picking examples of HTML in the wild, and explaining how to make that code better.â
#233 ¡ ¡ maintainability
How Running Your Own Website Is Much Better for You Than You Think
The typical reason for why professionals donât have their own websites is that they donât want to make the commitment, and yet that misses how the disadvantages people see are actually advantages. Renewed thoughts on how running your own website is an asset.
#232 ¡ ¡ design
An HTML Optimizerâs Config for html-minifier
Jad Joubran asked me about my configuration for html-minifier the other week, and in a hurry I pointed him to the config I had worked out for sum.cumo. In my own projects, however, I work with a different, more ambitious setup.
#231 ¡ ¡ html, performance, optimization
When to Open Links in a New Tab
Always open links in the same tab unless doing so could 1) disrupt a process, 2) risk data loss, or 3) confuse users.
CSS: When to Use Logical Properties
Logical properties are great and long overdue. They are great because they solve an ugly problem of international, multi-directional web development in that directionality does not need to affect your writing and managing of CSS anymoreâŚ
#229 ¡ ¡ css
Website Optimization Measures, Part IX
Random improvements and notes around compression and caching, content security and feature policies, IndieWeb markup, protocols in links, entity references, image formats, and ISBNs in URL paths.
#228 ¡ ¡ optimization

Upgrade Your HTML (the Booklet)
Iâve written a very short book on improving HTML code: Upgrade Your HTML. Upgrade Your HTML is about one thing: Picking examples of HTML in the wild, and explaining how to make that code better. Kindly. Constructively. Thoroughly, as finding a balance between detail and brevity permits.
#227 ¡ ¡ books, html, minimalism, optimization
On Writing Better Markup
As HTML is so important and yet also so easy, everyone writes HTML, and everyone says they can write HTML. And with that they donât just mean they are able to write HTML, but that they write good HTML, where âgoodâ means âhigh quality.â That would be great news.
The Developerâs Fallacy of Close Collaboration With Designers
Working closely with designers makes sense and is awesome, notably for mutual understanding and efficiency. And yet there are also good reasons not to work closely with designers. For developers itâs important, for otherwise foolish, to be aware.
#225 ¡ ¡ design
Definition of Web Developer
Web developer, n.: A person whoâ
#224 ¡
âMust Work Without JavaScriptâ
That websites should work without JavaScript has a long professional tradition, and for apps much the same has been asked for. Yet with the success and ubiquity of scripting, how relevant is it to make sure sites and apps âwork without JavaScriptâ?
#223 ¡ ¡ javascript
Optional HTML: Everything You Need to Know
Optional HTML can be left out to improve performance, to guide code comprehension, and to hone the craft. An overview over all optional tags, rules around quotes for attribute values, and omissible attribute value defaults, as well as notes on pitfalls and tools.
#222 ¡ ¡ html, performance
When to Use âimg,â âimg@srcset,â and âpictureâ and âsourceâ
Iâve disliked srcset
and the whole family of ideas around it from the start because doing the same thing for the same purpose several times has usually looked like too much DX cost for too little UX gain to me. Two angles at what to use when.
#221 ¡ ¡ html
Image Compression: How to Super-Easily Set Up Automated Base Optimization
Setting up image compression tooling is easyâand for those who want to err on the safe side automatically employing lossless compression, itâs even easier with a solution from sum.cumo: Merlin.
#220 ¡ ¡ performance, optimization
The Problem With Web Development Checklists, or: The Frontend Checklist, Revised
Checklists are a great way to make sure nothing gets forgotten, yet they are problematic when they contain items that arenât important. A few general thoughts and a very specific review of The Frontend Checklistâof which 33 guidelines appear useful, and 41 not (yet).
#219 ¡ ¡ html, css, javascript
Understanding Image Compression: Tooling and Context
Image compression plays an important role in performance optimization. It seems straightforward but is a little deceptive, however, because it consists not of one but two partsâand itâs usually lack of understanding of one part that causes problems.
#218 ¡ ¡ performance, optimization
A Crime Called Favicon
16Ă16, 30Ă30, 32Ă32, 48Ă48, 57Ă57, 60Ă60, 64Ă64, 70Ă70, 72Ă72, 76Ă76, 90Ă90, 96Ă96, 114Ă114, 120Ă120, 128Ă128, 144Ă144, 150Ă150, 152Ă152, 160Ă160, 167Ă167, 180Ă180, 192Ă192, 195Ă195, 196Ă196, 228Ă228, 256Ă256, 270Ă270, 310Ă310, 558Ă558.
#217 ¡
How Can We Make Website Maintenance Work More Visible?
The maintenance and maintainability of websites is a much neglected topic. This is problematic because: We cannot not maintain. Yet primarily we may deal with a visibility problem that we could explore more options for.
#216 ¡ ¡ maintainability
Print Styling, the 3 Basics
Many sites are not prepared for print, and yet our users print, and they save through print. Therefore: Have a print style sheet, and be it a negative one. Hide whatâs not usable or useful. Always test, and tweak when you want better.
Optional â@langâ
The lang
attribute is one of HTMLâs global attributes. If one doesnât simply take it for granted, it begs a number of questionsâand these suggest to drop W3C requirements around it, and to demand software to do the job.
#214 ¡ ¡ html, accessibility
What Happened on Google+, the Web Development Archives
Following a few philosophy posts to be archived, here are past entries related to web development. Nothing more, nothing less.
HTML and Performance: Leave Out Optional Tags and Quotes
As experts we should know what code is optional and leave it out, and our production systems should do a better job assisting us with that. After all the years of neglecting basic HTML optimization, letâs think about taking the next step and not ship optional HTML markup.
#212 ¡ ¡ html, performance, minimalism
Google Lighthouse and PWA
A review of Lighthouseâs PWA audits and the PWA category as a whole. Just in time to see it be superseded by Lighthouse 4, the major update that solves some (unfortunately not all) of those issues.
#211 ¡
7 Questions for Jens Oliver Meiert About the GDE and Chrome Dev Summits 2018
#210 ¡ ¡ interviews
On Visions for Performance, or: Performance Optimization Is a Process
Itâs smart to have a vision for what one wishes to achieve for the performance of a site or app. Yet even the soundest approaches to performance visions have their problems, and in them we recognize that performance, or performance optimization, is indeed a process.
#209 ¡ ¡ performance, optimization
Should Designers Code
Arguments for a ânoâ to a recurring question: Why we may want to give designers all freedom in the world, not to be limited in what theyâre trained to do best.
#208 ¡ ¡ design
Performance Rule #1: Do What You Need to DoâBut Not More
Web Performance has over the age of the Web not only turned into a discipline by itself, but also a complex one at that. While important much less so for revenue but for user experience and accessibility reasons, thereâs a particular angle at performance that makes the matter very simple: the pragmatic angle.
#207 ¡ ¡ performance
How to Configure Lighthouse for Balanced Quality Websites
Googleâs Lighthouse is a great tool even though it has some issues. Fortunately, itâs possible to configure Lighthouse to oneâs own views on what matters. Hereâs the config that I like to use.
#206 ¡ ¡ quality
A Short Guide to Minimal Web Development
Thereâs an art and even a bit of magic around simple frontend code. Writing such code comes with a few preconditions: perhaps a firm understanding of core technologies, a lot of practice, public scrutiny, and then some. Thoughts.
#205 ¡ ¡ minimalism