Honestly my experience is basically the opposite: Maintaining a coherent development environment is what makes programming tedious.
I'd much prefer to just specify in a dockerfile that I need this compiler, these tools and these env-variables, and then I never have to worry about that stuff again.