Disempower yourself with GitHub Codespaces

20 November 2022

Developers: Are you sick of being in control of your own computing resources? Already a GitHub member? Sure. Let's get you started.

Microsoft GitHub is continuing its mission to embrace, extend and extinguish the Git distributed version control system by providing virtual development environments on Microsoft's computers which developers can use rather than *checks notes* writing software on their own computers. When you go to clone a repo you now get an option to create a "codespace" alongside the usual options to clone locally over SSH and HTTPS. There's a free tier, of course, and after that you pay. And while this ultimately is all about finding another way to charge rent to developers and/or their clients/bosses, the method is to take away another chunk of developers' autonomy.

How convenient... for Microsoft, and if you have a boss, them too. Forget about the bad old days of developers having minimal sysadmin skills which let them create development environments on their own computers. Now it can be all set up on Microsoft's virtual machines rather than your real machine. Putting development environments on Microsoft's servers means developers can use any computer to code, even a tablet or smartphone. So developers can work from anywhere, the corollary of which is that they will be expected to work everywhere. On the beach? Open up a codespace and put in half an hour on an "urgent" bug that your boss just can't find someone else to fix while you're nominally off work.

Developing for a *nix environment but need to work off a Windows machine? No problem, no local virtual machine required. Just fire up a codespace and get to work with Microsoft GitHub.

Pre-codespaces GitHub, even pre-Microsoft GitHub, was always a bad idea. Always about taking something that everyone could use on their own terms and turning it into something that everyone had to use on GitHub's terms. Always about disempowering developers to understand the actual version control system that's a key tool for our work and discouraging people from building their own ecosystem of tools around Git. Every issue you file and every commit you push to GitHub has always made GitHub a chunk of change. That $7 billion sale price didn't come from nowhere. Codespaces is another step towards a future where writing software without GitHub might literally be possible but is practically discouraged -- even assuming that developers still know how.

Here on rawtext.club we've got our own Gitea instance:

https://git.rawtext.club/

and the wider tildeverse has got Tildegit:

https://tildegit.org/

Many others are available too. Gitea, stagit, cgit and others (probably not GitLab) are easy to host and it'd be lovely if every free software developer had their own public code respositories on their own domains. Use it or lose it.