Jens Oliver Meiert

Web Development × Engineering Management × Philosophy (6)

Articles and books on the craft of web development (with a focus on HTML/CSS optimization and maintainability), engineering management, and philosophy.

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.

#469 · · development, html

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

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

#468 · · development, html, css, minimalism

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.

#467 · · development, html, css, conformance, quality

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.

#466 · · development, html, semantics

Website Optimization Measures, Part XII

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

#465 · · development, optimization

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.

#464 · · development, html

Reasons to Listen to Whom You Don’t Agree With

Our culture has become one of canceling, of reacting to what we disagree with and whom we dislike by ignoring, unfollowing, blocking, banning, ostracizing. Camouflaged as non-violent protest, it can well be passive-aggressive intolerance of views and people.

#463 · · misc, advocacy

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.

#462 · · development, management

CS:GO on macOS, an Amateur Setup

After a 20-year break, a collection of settings and thoughts on Counter-Strike.

#461 · · misc

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.

#460 · · development, html, css, conformance

Cover: 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.

#459 · · books, development, html, minimalism, optimization

Engineering Management Ă—12

Ideas and principles for managing engineering teams: From “googliness” and “competence, caring, conviction” to systems and processes to communication and delegation to team focus and health to trust and humility.

#458 · · management

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.

#457 · · development, 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.

#456 · · development

The Choice to F Up

On the things we are doing and not doing, how these things are not and cannot be accidents, and how it all revolves around choice.

#455 · · philosophy, misc

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?

#454 · · development, design

5 Tips for Your Next Promotion or Salary Raise

How do you approach promotions and salary raises? Are these tied to a cyclical event or do they depend on your initiative? Do you invest into building your case, or do you wing it? Here are a few ideas on what can improve your position and chances.

#453 · · management

The Internet Shedding a Free-Rider Problem

With more and more software and regulation limiting the data that we pay with for contents and services, we are, in a way, requiring these contents and services to be made truly free. This doesn’t appear sustainable, and the Web is likely to change.

#452 · · misc

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.

#451 · · development, 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.

#450 · · development, html, css, javascript, quality, design

2020

2020 has been a strange year, a year of challenges, but overall a—good year. Personal notes, professional highlights, a few numbers.

#449 · · misc

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.

#448 · · development

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.

#447 · · development, design, optimization

Notes on HTML 3.2

Would it still be useful to read the HTML 3.2 specification—from 1997? A few observations.

#446 · · development, html

Cover: Upgrade Your HTML II.

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.

#445 · · books, development, 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.

#444 · · development, html

People Care

It seems easy these days to lose faith in people. We’re destroying the planet, elect the least competent and least humane of our peers for presidents, kill our own people when we don’t kill people in other countries, etc.—and yet we all care.

#443 · · misc

A Day Is a Day

On a personal preference for Inbox 0, and doing, delegating, and deferring.

#442 · · misc

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.

#441 · · development, css

Love

Love is the essence, love is the emotion. Yet it’s striking how we talk about love, as if there was just one type of love. Aldous Huxley comes to mind, and After Many a Summer Dies the Swan.

#440 · · misc

Website Optimization Measures, Part X

9 TILs that I applied to my personal projects.

#439 · · development, 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—

#438 · · development, css

Caring About Comments

Maybe you’re like me, and comments have begun to mildly scare you. Maybe you’re skeptical about popular discussion culture, too. Maybe you can relate because you, too, have found yourself write something reasonable you care about and a shitstorm broke out. And yet you and I love feedback.

#437 · · misc

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?

#436 · · development, design

On Disclosing Our Salaries

For a year now I’ve been toying with the idea of publicly disclosing my salary, as well as my financial assets. Not because of me, but because I’ve come to believe that this step, if taken by others, too, would be a step towards more transparency.

#435 · · misc

The 29 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 shadowrootserializable.

#434 · · development, 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.

#433 · · development, 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.

#432 · · development, quality, html, javascript, design

Cover: The Web Development Glossary.

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.

#431 · · books, development

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—

#430 · · development, 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.

#429 · · development, javascript

Highlights From “The Crowd” (Gustave Le Bon)

“Crowds are only cognisant of simple and extreme sentiments; the opinions, ideas, and beliefs suggested to them are accepted or rejected as a whole, and considered as absolute truths or as not less absolute errors.”

#428 · · misc

Highlights From “An Introduction to Psychology” (Wilhelm Wundt)

“There cannot be the least contradiction in the idea that physical and psychical phenomena follow different laws, as long as these laws are not irreconcilable with the actual unity of the psycho-physical individual.”

#427 · · philosophy, misc

Round Table

I was late to discover Round Table, but joining this fine service association was one of the greatest decisions and experiences I’ve made in my life. Here’s my story co-founding and accompanying a new table, RT 233 Alster-Milchstraße, for almost four years.

#426 · · misc

Professional Agile Leadership (PAL) Reminders and Resources

Notes, refreshers, as well as an alternative overview over Scrum.org resources for PAL certification.

#425 · · management

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.

#424 · · development, html, css

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.”

#423 · · development, 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.

#422 · · development, design

2019

Another year, another retrospective. Factoids and data on life and work.

#421 · · misc

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.

#420 · · development, html, performance, optimization