Remix.run Logo
globular-toast 3 days ago

I don't get how containers address "dependency hell". Is there some language that only supports installing libraries system wide? I've used a lot of different languages and yet to come across one.

I've worked on projects where the original dev has used containers for everything. It's super clunky and annoying. I don't want to use a different bash config just for working on that project. I've set my own up for a reason. All it makes me wonder is what are you afraid of? Why do you feel the need to isolate dev projects to this extent?

wiether 3 days ago | parent | next [-]

Isolation works both ways. By isolating your dev project, you don't expose your host to the mess the project can create... and you don't expose your project to the mess that can exist on your host.

With dev containers, you can define your ENV VAR, your aliases... independently from what exists on your host. And it will exists straight out the box: you checkout the project, launch the dev container and you're ready to go. As soon as you're done with this project, you delete the container and not a single trace of the project exists on your host. No matter how many custom things the project required to run.

neves 3 days ago | parent [-]

And since you have everything in a configuration file, it is breeze to transform your dev container in a production one.

Gabrys1 3 days ago | parent | prev [-]

C libraries are easiest to install system wide. The situation with multiple versions of libc is tricky to work with.

Not impossible, just not easy to comprehend by an average dev.

globular-toast 3 days ago | parent [-]

I'm kinda horrified to think there might be people writing C who don't know how to handle library versions. Somehow I don't think that is the target audience here, by I might be wrong.

Gabrys1 2 days ago | parent [-]

You might need to install libxml2 in order to use XML parsing library for your high level programming language.

You don't need to be writing C code to be affected by the dependency hell.