Jens Oliver Meiert

Web Development (3)

Website Optimization Measures, Part XVI

Spaces, HTTP headers, site generator exports, cite elements, variable fonts, social logos, no-break spaces, metadata—life is never boring when you run your own websites.

#300 · ·

Minimal Dark Mode

What’s the easiest and fastest way to set up dark mode? Depending on the setup, something from one declaration to two rules.

#299 · · ,

Vegan Web Developers

If you’re a vegan and a web developer, why not join us on a humble list of vegan web developers?

#298 · ·

Redo Websites Less Often (to Become a Better Developer)

You want to redo websites: The advantages are great, and the ability to put a website on a new foundation is a useful one to acquire. But—you also want to iterate, which means to constantly make small improvements over long periods of time. On how a bias for iteration contributes to becoming a better developer.

#297 · ·

HTML 2022: 20 Additional Observations From Analyzing the Web Almanac Data

After the initial analysis for the HTTP Archive’s 2022 Web Almanac, here are 20 more observations about HTML as it’s being used today. From (no) doctypes to conditional comment zombies to verbose form markup to viewports to javascript: links.

#296 · ·

Website Optimization Measures, Part XV

Automated lossless image compression, mini dark modes, favicon references, prerender, flat image folders, modest product promotions, compact navigation, theme colors—improvements to my own projects, maybe (or maybe not) of interest to your own.

#295 · ·

HTML Concepts: Browsing Contexts

Welcome to another episode of HTML Concepts! Today, browsing contexts—what is that?

#294 · ·

2022: 0 of the Global Top 100 Websites Use Valid HTML

When you looked at the top websites in 2021, you learned that 98% of them included invalid HTML. When you do the same for the Top 100 globally, this year, would things have improved? Updated data, with a look at our field’s inability to produce valid HTML output.

#293 · · , ,

An Attempt at Outlining the Many Factors Influencing Developer Experience

When looking at DX naively, it can seem that it depends on only one factor—DX = ƒ(x). But Developer Experience depends on many factors, and needs to be approached holistically. A quick attempt at sketching just what factors, each of which can tip the scale.

#292 ·

One-Dimensional Website Optimization Considered Harmful

There are many website optimization vectors—SEO, performance, accessibility, &c.—, but optimizing on only one dimension may not only be expensive, but also counter-productive. On optimizing optimizations.

#291 · ·

Website Optimization Measures, Part XIV

About link relationships, Twitterbot, dark mode, tags, addresses, social markup, color-scheme, and—FLoC.

#290 · · ,

Minimal Social Markup

Every website and app these days relies on so-called “social markup,” metadata for a richer and prettier display in social media and messaging tools. On the absolute minimum you may need.

#289 · · ,

Thoughts on an Accessibility “Get Well” Plan

Have you ever wondered how to anchor accessibility in an engineering team, one that isn’t yet producing accessible sites or apps? Some options to start with, for further refinement and discussion.

#288 · ·

The Machine-Illustrated Life of a Frontend Developer

You may know DALL·E, what you can do with it, what others do with it, and… be intrigued by that, too. And you may wonder, how would AI depict frontend developers?

#287 · ·

HTML Concepts: Focusable Areas

When you hear “focusable area,” what comes to your mind? Anchors and form elements that receive focus when being “tabbed through,” i.e., that are highlighted and that can be interacted with? That’s not a bad description!—but also not a complete one.

#286 · ·

Write HTML, the HTML Way (Not the XHTML Way)

You may not use XHTML (anymore), but when you write HTML, you may be more influenced by XHTML than you think. You are very likely writing HTML, the XHTML way.

#285 · · ,

Two Approaches to Accessibility on the Web

One can distinguish two approaches to accessibility on the Web: to produce accessible websites and apps (active accessibility), and to produce accessible-making software (passive accessibility). On how largely using one approach would stand in the way of a greater vision for web accessibility.

#284 · ·

The CSS Art Paradox

The fanciest CSS, standing on the shoulders of bloated HTML.

#283 · · , , , ,

3 [+1] Books to Become a Better Developer

When a frontend developer chooses A Philosophy of Software Design, The Pragmatic Programmer, and Clean Code.

#282 ·

HTML Concepts: Commands and Facets

On what you think they are, and something that what you think they are has.

#281 · ·

What Makes You a Professional Web Developer

On a starting point that involves committing to high standards (including validating, and exercising control over oneself), acting ethically, practicing, learning, taking care of oneself, and taking care of others.

#280 · ·

Website Optimization Measures, Part XIII

Lessons from running multiple websites, this time covering SVGs, HTML optimization, auto-completion, semantics tricks, code styling, favicon markup, and social images. Happy Saturday.

#279 · ·

25 Additional Web Development Terms You May Not Have Heard Of

__qems, cyclomatic complexity, homogenous migrations, NUIs, OOPIFs, and everything the web and software developer needs.

#278 ·

On the Peculiarities of Counting the Number of HTML Elements

How many HTML elements are there? What looks like a fairly simple question, isn’t one, because there isn’t one number of HTML elements.

#277 · ·

Reduce the Pressure on Young and Inexperienced Developers

Lower the expectations on young and inexperienced developers, and raise the expectations on their mentoring and coaching: on running gags, unrealistic expectations, and healthier hiring.

#276 · ·

HTML Concepts: Form Owners

Today in “HTML Concepts”: form owners. It’s not what you are when you put a form on a page. What are form owners? In essence, form elements that so-called form-associated elements are tied to.

#275 · ·

Web Frameworks, Coding Guidelines, Quality Control, and the Craft of Web Development

“Good frameworks aim to be tailored, usable, and extensible”? “Coding guidelines must be communicated, enforced, and reviewed”? “No website should go without a plan for quality control”?

#274 · · ,

The 6 Ways of Writing HTML (and Their Combinations)

There are 6 general ways of writing HTML: unsystematic, valid, semantic, accessible, required-only, and hyper-optimized. These types make for 19 combinations—the ways we write HTML.

#273 · · , , , ,

HTML Concepts: Common Idioms

Welcome to another brief post in the “HTML Concepts” series. Today we’re going to look at common idioms: popular design patterns for which HTML doesn’t have dedicated elements, but makes suggestions.

#272 · · ,

The Little Book of Little Books.

The Little Book of Little Books

The consolidated and updated version of The Little Book of HTML/CSS Frameworks, The Little Book of HTML/CSS Coding Guidelines, and The Little Book of Website Quality Control!

#271 · · , , , ,

Making the Web Developer’s Pilgrimage

Have you read the HTML specification? Have you marked highlights, taken notes, and reviewed what you learned? Have you reported issues and made suggestions to the HTML working group, giving back and improving the standard? On our field’s “pilgrimage.”

#270 · ·

Declaring Page Language—and Declaring Changes in Language

Popular screen readers don’t seem to pick up changes in language automatically. We may need a push on screen readers to improve detection of changes in language, and a shift of attention from declaration of page language to marking up changes in language.

#269 · · ,

Comparing Page Language Declaration Setups in Screen Readers

One best practice in web development is to declare the document language via the lang attribute, on the html start tag. That is useful, but also not the only option. How well are different setups supported in screen readers? A few data points.

#268 · · ,

Not Releasing Late on Fridays, a Matter of Courtesy

Why don’t we, in engineering departments, prefer not to release late on Fridays—or late on others days? Occasionally, developers and stakeholders believe that’s because of a lack of confidence in our code and our systems. The true reason is not that:—

#267 · ·

HTML Concepts: Indicators for Layout Tables

You use tables for data, and therefore not for layout purposes (as was popular in the past). But how would you recognize a layout table? That’s what we’re looking at today in “HTML Concepts.”

#266 · ·

5 Eleventy Tweaks That Make My Sites Better (and Maybe Yours)

Currently setting up my third site with Eleventy, I’ve run into a few things that proved useful. Here are five of them, including centrally defined layouts, title sorting, and easier hiding of posts.

#265 ·

One Favicon to Rule Them All

I think the situation around favicons sucks. For an HTML minimalist, the ideal world consists of this when it comes to defining a website or app icon: one image file—no code. This is the minimalist’s dream, and we aren’t there yet—or are we?

#264 · ·

HTML Concepts: Constraint Validation

When a form element has attributes that define requirements for the element’s value, then these requirements—constraints—are being validated by the user agent. On the validation of constraints, validity states, and a link to CSS.

#263 · ·

CSS: “:has()” and the Lost Paradigm

On the :has() pseudo-class and the forgotten school of ID- and class-less development.

#262 · · , ,

The 3-Second Frontend Developer Test

“Do you validate?” Be a frontend developer who ships valid HTML and CSS; hire frontend developers who ship valid HTML and CSS. End the time of unconditionally accepted sloppiness in professional frontend development.

#261 · · , , ,

Use the “i” Element, and Use It Appropriately

“Use em instead of i” is in the Top 25 of bad advice you can get in HTML development. The two elements have different meanings, the blunt rule ignores all context, and i is a valid element with legitimate use cases.

#260 · · ,

Website Optimization Measures, Part XII

Content security policies. Promotions. Words. Tracking. Link types. Meta information. VG WORT. Social markup. Living the dream.

#259 · ·

HTML Concepts: The “Nothing” Content Model

There’s a content model in HTML that contains—nothing. Details on what this means, and how it relates to “empty” or void elements.

#258 · ·

Thoughts for the Aging Web Developer

There may come a time when you feel “too old” for web development. When you begin to feel that, here are a few thoughts. They might not be all you need but—maybe they are of use.

#257 · ·

2021: 98% of the Top 100 U.S. Websites Use Invalid HTML

Is frontend development in the bad shape it’s said to be? Is it hyperbole when frontend developers are accused of poor quality work? When you look at the code of the most popular websites, the answer is clear.

#256 · · , ,

Upgrade Your HTML III.

Upgrade Your HTML III

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 fresh examples from the field that get inspected and improved.

#255 · · , , ,

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 · ·

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 · ·

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 · ·