Jens Oliver Meiert

On Craft and Responsibility (7)

Website Optimization Measures, Part X

9 TILs that I applied to my personal projects.

#440 · · 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—

#439 · · 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.

#438 · · 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?

#437 · · 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.

#436 · · 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.

#435 · · 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.

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

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

Cover: The Web Development Glossary.

The Web Development Glossary

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.

#432 · · 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—

#431 · · 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.

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

#429 · · 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.”

#428 · · 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.

#427 · · misc

Professional Agile Leadership (PAL) Reminders and Resources

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

#426 · · 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.

#425 · · 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.”

#424 · · 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.

#423 · · development, design

2019

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

#422 · · 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.

#421 · · development, html, performance, optimization

On Codes of Conduct

On the idea, the wish, the vision of us treating each other well.

#420 · · misc, advocacy

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.

#419 · · design, usability, development

On Leadership

Leadership is important, and it can be learned.

#418 · · management

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…

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

#416 · · development, optimization

Cover: Upgrade Your HTML.

Upgrade Your HTML

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.

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

#414 · · development, html, quality

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.

#413 · · development, design

Definition of Web Developer

Web developer, n.: A person who—

#412 · · development

“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”?

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

#410 · · development, html, performance

Sources 2019

In 2014, for idealistic transparency and enthusiastic link love, I’ve shared the feed sources I was following at the time. I’m still a huge believer in and user of feeds. As I also still like to be transparent I thought to share an update.

#409 · · misc

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.

#408 · · development, html

13 Leadership Mistakes and How to Avoid Them

We’ve all seen approaches to team management and leadership that work, and others that don’t. A brief and scrappy list of the mistakes I’ve witnessed (or committed), together with thoughts on how not to make them.

#407 · · management

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.

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

#405 · · development, html, css, javascript

3 Reasons Against Ad Blockers

Ad blockers are popular. Yet, they’re also a problem. They’re a problem that can be broken into three sub-problems, sub-problems that speak not only against the use of ad blockers but argue against their existence.

#404 · · misc

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.

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

#402 · · development

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.

#401 · · development, maintainability

Counter the Happiness Assumption

It may be rather clear that life is not all about being happy.

#400 · · philosophy

Cover: 199 Love Haiku.

199 Love Haiku

In 2016, I wrote 1,000 short poems, haiku-style. I wrote those poems to challenge myself as a writer. I launched a website for the haiku and I shared the story. Today, I’ve published the 199 haiku that a few friends and I liked the most as a book.

#399 · · books, design, misc

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.

#398 · · development, css, design

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.

#397 · · development, html, accessibility

Highlights From “Free Thought and Official Propaganda” (Bertrand Russell)

“Our system of education turns young people out of the schools able to read, but for the most part unable to weigh evidence or to form an independent opinion.”

#396 · · philosophy

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.

#395 · · development, html, css, design

What Happened on Google+, the Philosophy Archives

Google+ is shutting down, pulling everything with it. I’ve used Google+. And although I’ve changed and would put a few things differently now, I decided to archive a few of the somewhat philosophical Google+ posts.

#394 · · philosophy, misc

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.

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

#392 · · development

2018

A retrospective.

#391 · · misc