It’s now May — and I think it’s time to end this experiment. I learned a lot, but there are several reasons I’m no longer going to mark my Gitea instance as the primary place to find my code.
Here are some reasons for this move back to GitHub.
On a bare-machine install, I imagine Gitea is very pleasant to use. A friend was able to back up his Gitea instance in a couple of minutes just by reading the official docs — for the first time ever. They have backup and restore scripts to make those tasks very easy.
However, with a Docker layer in between, things become very ugly very quickly. There’s a steep increase in the complexity — not just for backups, but also for forwarding your typical SSH port (22), for example.
I’ve spent more than just a few minutes on tasks like these. Unfortunately, a VPS just for Gitea is not an option for me.
High barrier to collaboration.
I don’t have the time to learn how to write patches and co-ordinate that whole thing over e-mail, much less teach people to do the same just for me. I’ve certainly tried that workflow, and I think there is merit to it — but right now, not for me.
I’m currently going through a period where I am realizing I need to change tact and prioritize my life goals over my technology goals for the time being. I might write more on this later. Moving back to GitHub doesn’t change my belief that centralization is bad.
Anyway, a pull request works fine, and is a great workflow for beginners and experienced developers alike. Sometimes I can craft a PR entirely from GitHub’s user interface in a matter of two minutes or so, as I did just yesterday.
Does it really impress any employer?
A bonus point on self-hosting a Gitea instance was impressing potential employers with one’s ability to roll with their own toolkit. I think this was always a thin argument, but it was what nudged me over the line at the time.
In all honesty, I think I can’t keep fooling myself.
It’s also a very small thing that I can outplay very easily with my time and energy spent on an impressive side-project instead, for example.
If you are an employer, I’d love to hear some thoughts on this. Please email me if you’re comfortable with that. 😊
So, what now?
I’ll continue to self-host my Gitea instance, and it will mirror my projects from GitHub. I considered creating a couple of OAuth2 apps, but that still doesn’t solve the problem of maintenance and in fact, increases it!
This will act as a fail-safe so that in an adverse event or in due time when I feel like I have more energy and time to give to this endeavor, I can quickly move away from GitHub. Because it’s a fail-safe, I can worry a little less about it in the interim.
Edit (2021-05-16): I decided to shut down my Gitea server altogether.
They are also working on ActivityPub/ForgeFed support, so once that is complete, that might be a good time to join the decentralized git ecosystem back. 👩🚀
I’ve already updated my GitHub profile “readme” and moved any recent projects that were of any importance to GitHub, and set up mirroring for them on Gitea.
I don’t feel great about this move, to be honest. At the same time, I think I’m doing what’s right for me, at this time. Every one has to find a balance that works for them. Talking about it in the open is not always pleasant; and fluttering between two options is in fact an act of vulnerability.