For the most companies your specified reasons are used to start with a clean fresh new Version 2.
New System, new Language, use the good parts rewrite the bad parts.
And new Language would make it more interesting for "younger" developer that start with e.g. Rust / Go / Whatever. (That did not mean the code will be better)
But you assume that a container HAS full network access.
A firewall must be configured, but a firewall must be configured for a VM too.
My point is, that their is not so a huge difference for production systems.
The obvious question is: what's the real problem with that?
A container is a container, as long as docker itself has not bug, the container can only harm the containers content.
Most problems exists in the custom created software in the container (e.g. web-services with bugs, backdoors, ....), this will be a problem for Docker, VMs, Real-Servers, whatever too.
The real problem is the interoperability of different container, if you link the whole data, without any audit, to another container, you can have a problem, but this problem is not docker specific.
Not enough. Its more fun to create software, but documentation is the part that no one likes.
It is absolutely necessary, in particular when other work with your code.
And we have many stages of documentation: the project documentation (what is it, what does it, how, ...), the code doc, the rest-api doc. And it get really complex on further development.
I think that is one reason for the small JS project explosion on npm / github of the last years.
"fluid and intuitive" I must laugh at this too.
I need a search tool to find my installed programs and settings. Most of the time i need google to find out, if a changeable setting exists ;)
Operating systems are stupid since many years, on every new Version i think "god, please change not too much", cause on every new Version things not getting better and not easier and not smoother.
Yes, they look nicer, they have more "blink" and more animations, but all of this not help me to work better or faster.
The problem is, that they want sell you something that you have to pay again and again -> vendor lock, you must use their tools / services / clouds / whatever.
Things that just work for 10 or more years, omg! ;)
But you are absolutely right!. I did not automate anything at home with separate hard/software, because currently it solves no problem for me.
We need not a smart home, we need an intelligent home without controlling or programming everything.
A house/appartment has to recognize if nobody is at home and turn off the light or heating. I dont wanna do that with my smartphone and i dont want controll everything.
New System, new Language, use the good parts rewrite the bad parts.
And new Language would make it more interesting for "younger" developer that start with e.g. Rust / Go / Whatever. (That did not mean the code will be better)