• Deconceptualist@leminal.space
    link
    fedilink
    arrow-up
    1
    ·
    24 hours ago

    What’s awesome about them? I learned a bit of programming before containers were a thing but didn’t keep up the skills, but I remember most of the concepts.

    • Mikina@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      23 hours ago

      I mostly work in gamedev where they aren’t that much feasible so I don’t have much real experience working with them and I might be wrong but from when I looked into it a while back, it’s basically just a docker container that you specify in a .devcontainer file (at least for VSCode, but other IDEs probably have something similar) and when you need to develop, compile or run your code, it runs it in the container. It also doesn’t have to run locally on your machine, if you can run docker somewhere else (i.e on a more powerful shared server).

      I can see several advantages (but I never really tested it in practice, so I’m mostly guessing) - containers are usually quick to start, you have the same and stable and replicable dev/build environment for all devs (since you just commit .devcontainers), so there aren’t some hidden dependencies and “works on my machine” shouldn’t happen too often. It also helps you keep your OS clean, so you don’t end up with 5 versions of python, 3 JDKs and 20gb of random NPM packages installed in your OS after 5 years of development - which is the most important advantage for me.