0x01 - Minimizing Docker Image Sizes
With the rise in popularity of microservices, Docker has gained popularity and has become the standard for containerization. Its ease of use in software delivery using containers has put it ahead of other containerization technologies such as rkt and LXD.
I’ve lost count of the times I’ve come across popular official Docker images that were bloated and riddled with bugs and known vulnerabilities. This causes many developers to shun them in favor of building their own alternate images, causing duplication of effort, developer time and storage space and costs.
0x00 - Towards Leaner Software
In his 1995 article “A Plea for Lean Software”, Niklaus Wirth wrote:
Software expands to fill the available memory Software is getting slower more rapidly than hardware becomes faster Wirth explained that the two causes for bloating of software are the rapid growth in hardware performance and customers’ ignorance of features that are essential vs nice to have. 25 years on, Wirth’s Law still holds true. At a time when a software product’s power is measured based on the number of features, the rampant incorporation of all possible features that users may want messes up the software design and causes quality and performance to take a backseat.