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
The advantage is that you can have a reproducible development environment regardless of the underlying platform.
You use Debian and a workmate uses Fedora? No problem.
Someone joins with Mac or Windows? No problem.
Your laptop dies and you're using something temporary for a while? No problem.
No more differences of system libraries or "Well it works on my laptop" bullshit. Everyone is using the same libraries and compiler so there is no difference in any developer's experience.
So it's a different way to get a standard operating environment.
Could you not achieve something similar by making the build and test happen in the docker container, while keeping the IDE etc separate? Bundling the IDE seems a bit overkill.
Fwiw, in my experience, "it works on my laptop" is a great way to shake out bugs/API implementation quirks, so that's a benefit for our team. Plus we have a mishmash of IDEs, so prescribing one or the other would probably cause more problems than it solved.
Still, interesting solution for those who have the problem.