Like most developers (yes, I still consider myself a developer… at least to some extent), I’ve had my source code on GitHub for ages. It’s a little bit like the Google account I mentioned in my I Own This Now – Emails post. Nobody really NEEDS a Google account. But life is a bit easier if you have one. And I guess the same is true for developers and GitHub. Sure, you can live without it, but sometimes it’s just very convenient to have an account. And even while I was slowly getting into self-hosting and owning my own data, moving away from GitHub wasn’t on my list for quite some time. When Microsoft acquired GitHub in 2018, I started thinking about alternatives for the first time. Driven by this change, I took a look at codeberg.org and decided that if I were to turn my back on GitHub, Codeberg would be my place to go. Good, I found a new place. And of course… nothing happened. Well, not nothing. I kept Codeberg at a very prominent spot in my bookmarks. That’s something, isn’t it? 🙈 I guess, as a .NET developer, I still considered Microsoft somehow trustworthy. Not everything Microsoft did was bad, right? They open-sourced a ton of important .NET stuff back then. So maybe the acquisition of GitHub isn’t a problem…?
Well, my perspective changed significantly when Microsoft “disconnected” the Chief Prosecutor of the International Criminal Court from his email account. That’s not acceptable. Sure, it was the crazy orange clown in the white house who came up with and signed that bullshit in the first place, but that’s still not an excuse for actually executing it. It’s just wrong. I’m aware that nobody really cares about the code I write in my private time, but I still don’t want that code on a platform whose availability in Europe might depend on the mood of some immature, stubborn white house clown.
So here I am, escaping US-based SaaS offerings one service at a time. After moving my emails, my calendar, and also my contacts, it was time to finally do that Codeberg move. It took me some time, but I actually did it. About a month ago, I brought all my (relevant) repositories from GitHub over to Codeberg.
But Codeberg is not considered self-hosting!
You got me there. This series is called “I Own This Now” and not “I ditched US-based Hosting”. So why is this post part of it? Because that’s not the end of the story.
On July 23rd, Codeberg published changes to their Terms of Use, addressing the use of “artificial intelligence” and Large Language Models (LLMs). In the linked blog post, they explained the problems they are facing due to many repositories/maintainers making heavy use of LLMs and why they decided to discourage the use of LLMs. It’s a combination of ethical concerns, obvious negative environmental impact, and technical problems that originate from excessive use of LLMs. The changes are well thought out, reasonable, and understandable.
But still, these changes also made me think. Even though I still “hand-code” stuff from time to time, most of my code today is indeed AI-generated. Even for my personal projects. I really enjoy these new workflows, and I don’t want to go back to hand-coding everything.
In the announcement, Codeberg wrote:
We will also not spend significant amount of time and resources to automatically scan content on Codeberg. So while the following use cases are discouraged (similar to private repositories), they are likely to be tolerated in practice:
- Side projects and experiments with little resource usage
- Specific tools and custom scripts that would be unlikely to find a community anyway, even if they were not LLM-generated
That’s definitely where my repositories should be categorized. Small side projects with very little activity (even though I’m using AI for most of the coding these days). So my code is “likely to be tolerated in practice”, which means I could have stayed on Codeberg without any issues. But that’s not how I want to be. I don’t want to host my source code on a platform that actively discourages the way I work. And to be very clear: I’m not judging Codeberg here in any way. As I said before, the changes are well thought out and reasonable. I totally respect that. And because I respect that perspective and decision, I wanted to take my code somewhere else. And the only place with my own rules is my own server…
Forgejo on asteroids
Don’t ask me why, but this time, I didn’t run into my usual analysis paralysis. Even though there are a number of possible options, like GitLab, Gitea, and Gogs (just to name a few), it took me only about an hour to decide that I will be running Forgejo.
And yes, this is another one of those blog posts where I praise Uberspace and their documentation. The Forgejo lab was (just like the Radicale one) easy to follow and a great foundation for my installation.
That’s it. After more than a decade on GitHub and a month on Codeberg, I finally “own this now”. 😃
