14
A Modern C Development Environment
(interrupt.memfault.com)
Welcome to the C community!
C is quirky, flawed, and an enormous success.
... When I read commentary about suggestions for where C should go, I often think back and give thanks that it wasn't developed under the advice of a worldwide crowd.
... The only way to learn a new programming language is by writing programs in it.
🌐 https://en.cppreference.com/w/c
What is the benefit of these containerised dev environments?
I guess the biggest benefit is that you can ship it directly from there and don't have to rewrite your application because Debian ships with an outdated version of some core library
So it's not a dev environment at all. It's a runtime.
If your code only works on your machine, to the extent that you literally have to ship a copy of your entire machine, your code sucks.
"it works on my machine" is an excuse. And a shitty one at that.
edit, and this way, after a week or two, your container will be the one using an outdated version of a library, not the system.
I concur, there was a few problems that might come up on various platforms like Windows not implementing C11 standard threads and other stuff, you would instead use TinyCThread library that works like a polyfill.
All problems and challenges are workable, if the problem with Debian is out of date library, you could set up CI/CD for release build that rebuild your software when update occurs and static link the updated dependencies.
Back to your point, if they didn't design their code and architecture to be multiplatform like in C, they need to re-evaluate their design decisions.