4 ms·
The real problem that Codespace for stuff like the GitHub codebase solves, is not having to bring up the dev environment. Non trivial, organically certifiably g
by AYBABTME 5y ago
The real problem that Codespace for stuff like the GitHub codebase solves, is not having to bring up the dev environment. Non trivial, organically certifiably grown commercial software has bunch of services that all eat different things in winter. And things like the Rails monolith that GitHub's main service is, have a tendency of being rude to a dev's laptop, squatting the place with whatever port and file they want laying around, installing packages and software to variously namespaced-or-not locations. If you deal with any set of service, they'll all have various hygiene standards and run well or not on your machine, depending on wether your machine looks like the core dev's machine. And then everyone famously wants a custom work machine with freedom to manage it however they want.
Codespace stuff is a way out of insanity. It's a mediated common ground. You could standardize on Docker or Vagrant or whatever, but they come with a lot of pitfalls and the local dev story with them all kind of suck. Codespace on the other hand is a solution that mostly doesn't suck. It's actually a pretty decent experience.
- upbeat_general 5y agoI believe codespaces does directly rely on docker containers that you can customize…
- TheRealDunkirk 5y ago> And things like the Rails monolith that GitHub's main service is, have a tendency of being rude to a dev's laptop FUD. Everything is neatly handled by rvm (or rbenv) and bundler. You can even use gemsets if you want to be really anal about it. It all goes in version-controlled user directories. I keep my main Mac machine, my work Windows machine, and the production Linux boxes all running the same versioned stack just fine.
- AYBABTME 5y agoWhat do you mean FUD? Maybe you've got your own way of doing things that works well so far for you with your current projects, but a ton of people don't live with the same experience, and when they do reach a comfortable spot, it's only comfortable until they move to a new set of projects or company.
- TheRealDunkirk 5y agoI'm saying that, while a top-tier, software-as-a-service company might have a development environment that is hard to bootstrap -- because of all the ancillary things that run alongside the "monolith" -- your generalization that "Rails" makes a mess of a development machine is FUD. The Ruby/Rails part of this equation is not the issue. As always, YMMV and TACMA.
- AYBABTME 5y agoI didn't say Rails makes a mess of a dev machine. What I'm saying is that every project makes different sort of assumptions about how it's brought up in a dev environment, and these assumptions vary wildly between projects and stacks, and usually the older and more prominent a project is, odds are it will have the most unexpected impact on anyone's machine. This is going to be true for any combination of libraries, frameworks and programming languages. I'm not mounting an attack on Rails. Rails' fine. (Edit) I can't answer your reply. It seems there's many ways to read the quote you brought up. I'm clarifying that the meaning I intended wasn't an attack on Rails. Take it as you will. I'm a bit confused why my original comment, which I meant as a positive-to-neutral tone, is being perceived so negatively.
- TheRealDunkirk 5y ago> I didn't say Rails makes a mess of a dev machine. I literally quoted you saying that in my first post. But hey, what do I know?
- echelon 5y agoCodespaces doesn't magically solve that problem. You have to put in the work and ongoing maintenance effort either way.
- AYBABTME 5y agoYeah but if before we had MxN complexity: - M: number of devs with their own machine - N: number of projects with their own way of bringing up dev env Using stuff like Codespace reduces M to 1.
- BiteCode_dev 5y agoSure. Until you get your account banned because you went againts of obscure TOS clause, or because a powerful entity put pressure or paid their way into it. Can't wait for the equivalent of abusive dmca to be able to put down your entire dev team. It's really a way out of madness.
- zarkov99 5y agoDoesn't docker solve all of this? It has for my group, even using C++, which is notoriously finicky. You can version control your docker file and bootstrap a dev environment in minutes.