The Image Compression Challenge (Donating Money for Excess-Free Projects)
Published on October 30, 2024 (↻ November 27, 2024), filed under Development (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.)
Update (November 27, 2024)
The way I designed the challenge, I cannot interpret the results. Of course, I kept my word.
About Me
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. (Please be critical, interpret charitably, and give feedback.)
Read More
Maybe of interest to you, too:
- Next: Everyone Can Set You Up for Failure, Not Everyone Sets You Up for Success
- Previous: Website Optimization Measures, Part XXVII
- More under Development
- More from 2024
- Most popular posts
Looking for a way to comment? Comments have been disabled, unfortunately.
Get a good look at web development? Try WebGlossary.info—and The Web Development Glossary 3K. With explanations and definitions for thousands of terms of web development, web design, and related fields, building on Wikipedia as well as MDN Web Docs. Available at Apple Books, Kobo, Google Play Books, and Leanpub.