this post was submitted on 29 Jun 2023
362 points (97.9% liked)
Programmer Humor
19817 readers
55 users here now
Welcome to Programmer Humor!
This is a place where you can post jokes, memes, humor, etc. related to programming!
For sharing awful code theres also Programming Horror.
Rules
- Keep content in english
- No advertisements
- Posts must be related to programming or programmer topics
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
How does the workflow works in practice? You just use the containers to compile your code, or do you actually have a whole dev environment with IDE and everything and work directly in the container? I can't imagine how does the workflow looks. Or is it possible to set up i.e. a JetBrains Rider to always spin up a container to compile the code in it? But then, if all the requirements and libraries are only on the container, how would it be able to do syntax highlithing and Intelisense (or what's the correct work for code completion), if it doesn't have the libraries on the host?
I'm probably missing something, but all the solutions I can figure out with my limited experience have issues - working on IDE in a VM sounds like a nightmare with moving files between VM and host, and the whole "spin up a VM, which takes time and it usually runs slower on the shitty company laptop, just to make a quick edit in one project". And I feel like setting up an IDE to use environment that's in a VM, but the IDE runs on a host sounds like a lot of work with linking and mounting folders. But maybe the IDEs do support it and it's actually easy and automated? If that's the case, then I'll definitely check it out!
Check out dev container in VSCode. Even better with Codespaces from Github. You can define the entire environment in code, including extensions, settings, and startup scripts along with a Docker container. Then it's just one button click and 5 min wait until it's built and running. Once you have built it you can start it up and suspend it in seconds, toss it out when you don't need it, or spin up multiple at once and work on multiple branches simultaneously.
Hmm, I wonder if this would be applicable for game development, which is my main field of work. But I do some projects here and there that don't require an actual engine, so I'll definitely check it out! It does sound pretty easy to set up. Thank you.
VS Code SSH extension (with errorlens and shellcheck/pylance) literally changed my life. I cannot praise that shit enough.
Part of that was a joke, but i do sometimes use a windows vm when i am working with a windows build, só i just have the vm openned on my second monitor and emacs open on my main machine, than i ssh within emacs into the vm and build and debug the code there, this way i don't need a whole dev enviroment, just git and the build tools