Website Optimization Measures, Part XXIV

Published on June 11, 2024, filed under and (RSS feed for all categories).

That was quick! Over the last two weeks, I refactored a few more things on my websites. Chances are, you know what this series is about—if not, it’s where I share improvements and lessons from the work on my projects so that you can cherry-pick what you think could benefit yours.

  1. Switching to AVIF. After monitoring AVIF support for years, in May the time felt right to start an initiative to convert project imagery to AVIF. The first project, though with only a single image to be converted, was Frontend Dogma.

  2. Rolling back select AVIF changes. Exactly that first test then failed, when neither Mastodon nor Twitter/X seemed to be able to handle AVIFs. (This seemed to be confirmed when looking at common documentation, like OpenGraph’s guide.)

  3. Lowering book prices (let’s just make this a website thing 😅). I’m a believer in Germany’s idea of fixed book prices, even though it doesn’t apply to most (now perhaps any) of my titles. Over the last few years, keeping all prices the same turned out to be a problem for me, however, because Leanpub, my favorite book platform, increased minimum book prices twice. Not only did this mean that a platform kept pushing me, requiring me to run several unprompted and unwanted updates for many books on several platforms, it also had me set prices I didn’t stand behind. In May, I started hitting the brakes, coming up with a bit of a hack (using Leanpub’s causes to donate the money I didn’t want to charge) to lower prices to what I consider fair—most notably, my HTML optimization books as well as well as some philosophical self-help titles (check out the bundles!).

  4. Abandoning AI summary experiments. After starting to test monthly summaries of what was going on in frontend development (see the now-archived April edition), it quickly turned out that this wasn’t going to work in the long run. Google Gemini, which gave the best results, was either more or less repeating what was said in the respective previous update, or it would start hallucinating, suggesting developments for which the headlines gave no indication. That didn’t add value, which is why I ended the experiment.

  5. Debugging and optimizing Eleventy performance (for Frontend Dogma). While I still have the hastily written thread open, the gist is, don’t use git Last Modified. Really don’t—you’re likely to already feel the impact with only dozens of files. In Frontend Dogma’s case, ~600 of these requests led to ~140 seconds of extra export time until I refactored the approach and moved away from git Last Modified.

  6. Kicking out IE-only scripts and styles. When in 2019, I made Haiku Haiku Love (backstory) winter-proof by converting it into a static website (with valid HTML), I had missed how some of WordPress’s IE-related code was still stuck in there. On some testing and probing—which may suggest it’s useful to even look at dead projects at times, if they’re still reachable—, I found these references, and removed them and the respective files (another backstory).

  7. Cleaning up domain registrations. For a number of years I held stewardship over two domains; for some reason, for both of them, I could finally move forward and transfer them to who should really own them. (One of them was a family name domain, something to hold near and dear.) As if that wasn’t enough, I used the opportunity to move one of my domains from one provider to another, and to let another phase out. I’m not a domain hoarder, but I own a few, and, you name it, this, too, falls under maintenance and optimization.

  8. Optimizing site headers. Even though the site redesign is coming up, one problem I didn’t get out of my mind—the still relatively large logo. I couldn’t but take an evening to refactor the header and navigation, including some other small improvements, like handling on smaller screens. (And yet, further optimizations may now need to wait until I get to roll out the new design.)

  9. Replacing old toggle scripts with details/summary disclosure widgets. For the old and discontinued “Web Dev Report” cartoon series, I had back in the day worked with a homemade scripting solution. I’m not sure what took me so long to replace it by using native HTML functionality, that is, the details and summary elements. Done!

This is a part of an open article series. Check out some of the other posts!

Was this useful or interesting? Share (toot) this post, or maybe treat me to a coffee. Thanks!

About Me

Jens Oliver Meiert, on September 30, 2021.

I’m Jens (long: Jens Oliver Meiert), and I’m a frontend engineering leader and tech author/publisher. I’ve worked as a technical lead for companies like Google and as an engineering manager for companies like Miro, I’m close to W3C and WHATWG, and I write and review books for O’Reilly and Frontend Dogma.

I love trying things, not only in web development (and engineering management), but also in other areas like philosophy. Here on I share some of my views and experiences.

If you want to do me a favor, interpret charitably (I speak three languages, and they can collide), yet be critical and give feedback for me to learn and improve. Thank you!