
XKCD on Docker - boffinism
https://xkcd.com/1988/
======
cs702
Ouch. The punchline is funny because in many cases it's painfully true...
especially in "enterprise" land.

Don't forget to hover over the comic.

~~~
azernik
On the one hand, yes. On the other hand, I think it's making the point that
this isn't necessarily a _bad_ thing, however aesthetically offensive it is.

"Enlightenment" indeed.

~~~
thecrash
Exactly, I think the enlightenment in this case is being at peace with the
idea that one cannot understand or fully manage everything in a technology
stack.

Success does not come from achieving total understanding, but from being able
to cleverly pick and choose what to manage and what to leave as a black box
based on the problem before you.

------
ohiovr
Because I can install nextcloud in a single cli line. With out it I need about
9 scripts worth of stuff (example of what I wrote to do it)
[https://github.com/OhioVR/nextcloud_debian_install_scripts/t...](https://github.com/OhioVR/nextcloud_debian_install_scripts/tree/master/installation%20bash%20scripts)

If you want to learn a whole software stack, building and administration to
just TRY a program ONCE I won't stop you. But there are better ways like using
docker.

~~~
zeta0134
I use docker for my build system for this very reason, as my chain depends on
a difficult to install Autodesk SDK, which requires a very specific version of
Python. I don't expect it to work properly on most modern Linux distributions
without virtualenv and other advanced trickery, and there's not even a chance
on Windows. With Docker though, once I had the environment set up, unfamiliar
newcomers on the three major platforms can then compile and run the project
with minimal fuss.

(Of course, in the future I'll be working to remove that odd dependency
entirely, but for now, this works.)

It helps that in my particular case, the build _target_ is an embedded
platform, so I don't need to worry about native details in the final
executable; hiding the environmental details in the container doesn't matter
all that much.

~~~
xtrapolate
I'd personally just prepare a small VirtualBox image with everything required
to build the code, and release that instead.

------
noxToken
A mod may want to update the URL from the homepage to a permalink[0]. The next
comic update will ruin this post.

[0]: [https://xkcd.com/1988/](https://xkcd.com/1988/)

~~~
dang
Done. Thanks!

------
newscracker
Someone needs to talk to Randall Munroe (author of xkcd) and update the
explanation for this. [1] I’m not sure if the comic is taking a dig at those
who use Docker or at Docker itself or both (in every case, putting together
things they don’t understand well but claiming to have accomplished
“enlightenment”).

[1]:
[https://www.explainxkcd.com/wiki/index.php/1988](https://www.explainxkcd.com/wiki/index.php/1988)

~~~
kelnos
My take is that it's not even really Docker-specific, but Docker users are a
convenient example. There are plenty of programmers (Docker-using and
otherwise) who just copy-paste code and glue together frameworks without
really understanding what they're doing.

~~~
kakwa_
CS is a magic blackbox and/or a magic cooking book for a lot of people in the
industry.

------
ropeadopepope
I remember when xkcd used to be funny.

~~~
optimuspaul
well good, your short term memory is in tact.

