20 points

Why does this feel like it’s a flat-earth slide? I haven’t looked at any flat-earth propaganda, but I strongly suspect that it looks a lot like this.

That said, I’ll stick with my VMs regardless. I like simplicity.

permalink
report
reply
32 points

Are VMs really simpler? I’d say no.

permalink
report
parent
reply
18 points

I was so relieved to never need VM’s again after discovering Docker.

permalink
report
parent
reply
20 points

The absurd waste of resources VMs bring… LXC and Docker a godsend in that regard.

permalink
report
parent
reply
14 points

I would vote for docker as well. The last time I had to inherit a system that ran on virtual machines, it was quite a pain to figure out how the software was installed, what was where in the file system, and where all the configuration was coming from. Replicating that setup took months of preparation.

By contrast, with Docker, all your setup is documented. The commands that were used to install our software into the virtual machines and were long gone are present right there in the Docker file. And building the code? An even bigger win for Docker. In the VM project, the build environment for the C++ portion of our codebase was configured by about a dozen environment variables, none of which were documented. If it were built in Docker, all the necessary environment variables would have been right there in the build environment. Not to mention the build commands themselves would be there too, whereas with VMs, we would often have developers build locally and then copy it into the VM, which was terrible for reproducibility and onboarding new developers.

That said, this all comes down to execution - a well-managed VM system can easily be much better than a poorly managed Docker system. But in general, I feel that Docker tends to be easier to work with than a VM. While Docker is far from flawless, there are a lot more things that can make life harder with VMs, at least from my experience.

permalink
report
parent
reply
6 points

Nix has flakes; nix run can contain pretty much all of the needed dependencies. If that’s not enough, you can set up an entire container as a module.

permalink
report
parent
reply
75 points

Reject whale, join the kubernetes cluster.

We have fully automated gay space crashloopbackoff!

permalink
report
reply
8 points

Absolutely the best kind of space crashloopbackoff.

permalink
report
parent
reply
5 points

It also has the superior theme song.

permalink
report
parent
reply
2 points

I both love and hate this so much. The performance and recording is incredible but any super tech nerdy parody just causes me immense internal cringe. I couldn’t make it more than a third of the way through that and I love working with K8S.

permalink
report
parent
reply
3 points

Reject kubernetes, join the Juju cluster.

We have “save your wallet hundreds of thousands by not automatically spinning up a crapton of resources if your app does an oopsie”! And we have “simply run on any public cloud or in your own datacenter with MAAS or locally with LXD”!

permalink
report
parent
reply
72 points

For real though, containerization isn’t the only way to separate applications from each other but totally fine, it’s the “It works on my machine, so here’s my machine” mentality that doesn’t fill me with confidence. I’ve seen too much barely-working jank in containers that probably only get updated when a new version of the containerized application itself is released.

permalink
report
reply
37 points

Nix user arrives to the room.

permalink
report
parent
reply
10 points

Can you elaborate?

permalink
report
parent
reply
16 points

Nix can build you a bit-to-bit exact environment for your app. It is a superior environment, but is hard to use in the beginning and users can feel snobby sometimes. It is awesome, but YMMV.

permalink
report
parent
reply
5 points

How do you separate Nix programs from the rest of the system?

permalink
report
parent
reply
9 points
*

It creates a set of symlinks so every program sees exactly the dependencies it needs.

https://nixos.org/guides/nix-pills/09-automatic-runtime-dependencies#automatic-runtime-dependencies

You can also create a container:

https://nixos.wiki/wiki/NixOS_Containers

Or you can create reproducible docker containers with nix:

https://dev.to/anurag_vishwakarma/a-better-way-to-build-reproducible-docker-images-with-nix-2k59

The secret sauce with nix is reproducibility. If it builds once, it will continue building exactly like that forever. Bit by bit.

permalink
report
parent
reply
17 points

I like containers. But they do have a habit of nurturing cludgy temporary hacks into permanent infrastructure, by sweeping all the ugly bits under the big whale-shaped rug.

permalink
report
parent
reply
10 points
*

What gets me is people migrating from VMs treating it like an entire host machine.

There is a lack of knowledge among developers regarding precompiling assets and classes (if interpreted), and people are trying to do too much in startup scripts.

Another thing I hate is wrapping the entire process in a script because people want to kill the main process without restarting the container. Yikes!

permalink
report
parent
reply
29 points

Containers are a great way run applications.

Docker is a piece of garbage by a company way too far down the enshittification slide.

permalink
report
reply
16 points

I wish I understood this because it seems funny

permalink
report
reply
13 points

You ain’t missing much

permalink
report
parent
reply
6 points

Moral of the story: never make breaking changes. Always backwards compatible, always.

permalink
report
parent
reply
5 points

It’s worked for Windows?

permalink
report
parent
reply
7 points

When you’re 90% of the market you get away with telling everyone else to suck your dick.

permalink
report
parent
reply
19 points

It’s not that funny.

Docker is like a virtual machine, but you only run one specific program in it. About exactly what the meme describes.

permalink
report
parent
reply

Programmer Humor

!programmer_humor@programming.dev

Create post

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

  • Keep content in english
  • No advertisements
  • Posts must be related to programming or programmer topics

Community stats

  • 9.4K

    Monthly active users

  • 860

    Posts

  • 33K

    Comments