The Image Compression Challenge (Donating Money for Excess-Free Projects)

Published on October 30, 2024, filed under (RSS feed for all categories).

Here’s a frontend challenge.

Navigate to your website’s or main project’s repository, and run an image compression tool capable of losslessly and near-losslessly compressing PNG, JPG, GIF, WebP, and AVIF images over the repository.

If you don’t have or know of such a tool, open a shell on your machine, navigate to said website’s or project’s repository, and run the following command (should I say “it’s safe”! *):

npx @j9t/imagemin-guard

(This takes care of lossless and near-lossless compression of the images in the folder. Perform this in a project under version control, to be able to diff-review the results and roll back if anything is not to your liking.)

If nothing is being compressed on the first run (or if you receive the message “Defensive base compression completed. You saved 0.00 KB.” with Imagemin Guard), email me. (I’ll assume that the folder contained images, and that you’re reaching out after the first run.)

For every email stating that nothing was compressed, I’ll donate $1 to the United Nations Relief and Works Agency for Palestine Refugees in the Near East (UNRWA). â€ 

For the compression results themselves, you can decide whether to keep the improvements, or to discard them. (If you like Imagemin Guard, you could also set up some automation.)


Why this challenge? Is it a promotion for Imagemin Guard? Yes and no. I do believe that Imagemin Guard is convenient and useful. I came up with the idea and have been driving the project after leaving sum.cumo in 2019. However, I also believe that there’s a high degree of acceptance of uncompressed images in our repos, many of which end up in production, unnecessarily wasting bandwidth and end user time. That’s where you come in, to prove me wrong.

I will follow up on this challenge in four weeks, on November 27, 2024. Since I’m only asking for positive cases of nothing being compressed, I won’t be able to learn how the situation really is out there. But you will, for your project(s). And that’s already cool.

As always, please share feedback. And if you like Imagemin Guard, keep using it, and help me make it better! đź™Ź

* I do say “it’s safe,” to the best of my knowledge, though I explicitly disclaim any responsibility or liability. If in doubt, review the package on Snyk Advisor (though offering limited insight due to limited usage), review the code yourself, or simply choose not to run it.

† Since I have no idea how many people will participate and how many of their projects will be perfectly losslessly compressed, I will cap the donation at $250. (Depending on the outcome, I might still raise that cap.)

Was this useful or interesting? Share (toot) this post, become a one-time nano-sponsor, or support my work by learning with my ebooks.

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 a contributor to several web standards, 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 meiert.com I share some of my experiences and views. (Be critical, interpret charitably, and give feedback.)