I have moved all my personal source code repositories to Codeberg! Codeberg is the free home for your free projects. Because free and open source software deserves a free and open source platform.
Codeberg.org is a provider for git source code hosting, based on the Gitea software. Gitea is open source, so there are many servers around, large and small, and there is no centralization. Gitea is very easy to use and it follows the same visual and conceptual paradigms that are common on other platforms. Git itself of course is and remains decentralized. For this reason I could easily switch many providers since I started using Git around 2008: repo.or.cz, gitorious. But that’s the technical side of it.
Codeberg is run by Codeberg e.V., a no profit organization based in Germany. That means the platform is not run with the purpose of making money (not a bad thing per se, of course) or gathering user data, or accumulating enough social klout to sell the entire platform. It’s a service for the community, just like Wikipedia and OpenStreetMap. And there’s more: you can join Codeberg e.V. and become an active member. You’ll need to pay a small annual fee (which helps cover the costs of infrastructure) and you can participate in the discussions and decisions that shape the future of Codeberg. When I decided to move my repositories to Codeberg, I thought it was an excellent opportunity to give a strong support to this initiative and encourage more users to join us.
Gitea is open source and it’s not difficult to run your own server. But, as any sysop knows, running thousands of separate servers doesn’t scale, that is, the costs of hosting 1000 repositories on 1000 separate servers are a lot higher that keeping those same 1000 repositories on 1 server only. Keeping a server running and up to date takes time, too. So I think it’s better to keep some of the advantages of centralized platforms and change what is really wrong with them: the software must be free, the governance must be open, the funding should come from users.
.org hosting on .com was a historical mistake we all made. Time to correct it!Andreas Shimokawa
I took the move to Codeberg as an opportunity to improve my good practice in software development and repository management:
- I’m not creating “vanity” organizations like I did in the past: all repositories are under the steko user and I will consider creating an organization only when there is an actual community around a project (like we did for Total Open Station)
- I’m trying to avoid overengineering with planned releases, issues, and anything that puts stress where fun and passion should be
- I’ll be signing all Git commits with my GPG key
- I will never again cite a source code repository in an academic paper: instead I will upload the snapshot to Zenodo, get a DOI and cite that (I did this mistake too many times in the past, even recently, only to realize how volatile these URLs can be)
If you are an open source developer, I encourage you to join me on Codeberg!
What’s wrong with GitHub?
In the past 10 years the (apparently) unstoppable trend has been of concentrating the development of most open source software on GitHub, a proprietary service that was acquired by Microsoft last year. When that happened, some people became worried upon realizing that one of the giant monopolies had taken possession of their favourite platform. However, GitHub was a proprietary service all along, and it was made possible by venture capital. It was silly to make it a sacred place, as was teaching students Git as merely the tool behind GitHub, or using GitHub Pages as the “best” option for your website. Yes, there are millions of developers using GitHub, and it makes a lot of things easy, for free… but that comes at a price. I had started deleting repositories from GitHub last year, now only a few ones remain but I will delete those as well. While my personal repositories are moving to Codeberg, at this time Total Open Station remains on GitHub (of course I will try to move it as well, but that’s not a decision I can take by myself and it’s not even on the table).
Some people moved to Gitlab.com, the flagship website of the company with the same name. The Community edition of Gitlab is open source, and it’s used by Debian, Gnome, Framasoft and other large projects. I had been using Gitlab.com for a few years and I dislike it from many points of view, mostly descending from the fact that it’s funded by venture capital. There were many revealing episodes: asking female employees to wear high heels; putting forward a ‘no politics at workplace’ stance, in order to keep quiet how much they’re looking for big contracts with all branches of the US government including Immigration and Customs Enforcement (ICE). They messed with users’ privacy and retracted introducing telemetry after public outrage. And I’m not even touching the technical side, since GitLab started as a simple GitHub clone and is now a behemoth all about putting your projects in Kubernetes. I have deleted and rectracted almost all repositories and I will delete everything shortly (my user account may remain there, empty, because I don’t like name squatting). In short, if you self host Gitlab, it may be fine, but I would never recommend putting your open source efforts on gitlab.com.
The old Bitbucket, where I had many of my early Mercurial repositories, is dropping support for Mercurial and suffers from all the same problems of other proprietary platforms. I converted all those repositories and I’m moving those as well, even the old ones that I consider archived, because I think there’s some value in them.