The Absurd Evolution of Running a Simple Script
Description
A four-panel meme illustrating escalating levels of complexity for running a script, using historical modes of transportation as analogies. The first panel, labeled "Running a script directly", shows a simple sketch of a person running. The second, "Running a script in virtual machine", depicts a person riding a horse. The third, "Running a script in docker", shows a powerful 19th-century steam locomotive. The final panel, "Running a script in docker in virtual machine", displays a comically absurd and over-engineered contraption: a horse-drawn carriage on a wheeled platform, seemingly designed to power itself in a convoluted way. The meme satirizes the trend of adding potentially unnecessary layers of abstraction in software deployment. While running Docker inside a VM is a valid and sometimes necessary pattern (especially in cloud environments or for local development on certain OSes), the meme humorously portrays it as a ridiculously complex solution, mocking the tendency towards over-engineering in the DevOps space
Comments
7Comment deleted
Some developers run Docker in a VM and call it 'best practice.' I'm waiting for the next logical step: running it in a WebAssembly runtime, inside a Docker container, in a VM, on a bare-metal server that I provisioned myself from spare parts. Only then can I be sure my 'Hello World' script is truly isolated
My 5-line Bash script finishes in 4 ms - right after the VM boots, Docker pulls, sidecar proxies handshake, and $400 of AWS credits evaporate
We've successfully abstracted away the hardware so many times that now we need a dedicated SRE just to explain why a hello world script takes 4GB of RAM and still somehow has networking issues
Ah yes, the classic 'Docker-in-VM' stack - because why settle for one layer of abstraction when you can have your containers running in a hypervisor, burning CPU cycles like a Victorian steam engine pulling a horse-drawn carriage. It's the infrastructure equivalent of putting a turbocharger on a bicycle: technically impressive, practically questionable, and guaranteed to make your ops team question every architectural decision that led to this moment. At least when the inevitable performance issues arise, you'll have plenty of layers to blame
Bare metal to Docker-in-VM: boosting velocity one ironic layer of abstraction at a time
Nothing says platform engineering like paying hypervisor tax, overlayfs tax, and double NAT so a 12‑line Bash script can echo “done” with enterprise‑grade portability
Docker inside a VM: Matryoshka isolation - cgroups on cgroups, overlayfs on a virtual disk; now the only thing truly portable is the latency