To me one of the clear things that GitHub gave us was a structure around a person rather than a project. To me it felt liberating to quickly create a repository attached to my name than it was to go through the (what felt to me) very serious process of coming up with a project name and reserving it on sourceforge just to get a cvs or svn repository (along with website, mailing lists, issue tracking(?), etc, etc...). It felt like the mental load of "oh this is just a quick thing" was a lot easier with github.
> It gave projects issue trackers, pull requests, release pages, wikis, organization pages, API access, webhooks, and later CI.
Although it didn't give us this all at once. I still remember when we created a new user account in order to simulate an organisation, before they existed. I distinctly recall discussing with friends if we wanted to set up a bug tracker software for our project with the assumption that "GitHub will probably release one in a few months anyway". In the end we just kept a text file committed in the repository. Issues were announced a few months later.
Ah yes, exactly the cultural thing that feels so repulsive: exacerbated toxic self centric personalities favored and glorified.
Human had it far before GitHub, Git, open source, software or computer of course. Well, probably not all human communities elevated it at this metastatic phase though.
Huh? The usual pattern is that experiments belong to a user and then they graduate to having their own org iff they grow enough maintainers for that to make sense. How is that toxic or self-centered? It's just like "here's a place to do low-stakes experiments in public view". It's not particularly about ego or selfishness or whatever.
I am still so salty that Git won out for the average project over Fossil. Sure Git has some performance advantages for massive codebases like the Linux Kernel, but the vast majority of projects will never run into performance limits from their VCS. Fossil’s internal tools (wiki, forum, tickets<issues>, etc) are just so useful to have versioned with your code in one file.
I use Fossil for all my freelance work and it so easily allows me to get right back into the context of a project, niche details and agreements had with a client, etc. No need to pollute the codebase or gather together a million emails or notetaking software just to get back up to speed.
It can still change, I hate the notion that because Git is so culturally embedded we couldn’t ever switch. Fossil makes it super easy to switch and the workflow is actually easier coming from Git.
> But maybe the most underappreciated thing GitHub did was archival work: GitHub became a library. It became an index of a huge part of the software commons because even abandoned projects remained findable.
I think this is a bad thing actually. Having something that's centralized but helpful-99%-of-the-time atrophies our collective archival skills. If everything had to be seeded by someone to keep it alive, everyone would be better at holding on to their copies of the things they really cared about instead of being able to assume they can just check it out again when they want to.
There should be no single place that something can be taken down. When a project on GitHub gets DMCAed it takes everyones' forks with it too. Just look at what happened when Nintendo took down the popular Switch emulators in 2024, where archival/continuation efforts consisted of people figuring out who had the latest revision checked out and sharing it. That was only possible because they were very popular project: https://news.ycombinator.com/item?id=40254602
Aside: I really love the Splatoon-ish header/footer animation on this site! Very unintrusive, adds a lot to the vibe, and also quickly gets out of your way as soon as you scroll down. I'm totally going to rip this off lol
I don't agree with this. Github has existed for years and one of the reasons developers trust it is that they never monetized their "archival" work yet (TBD with all the new Copilot features).
The alternative would be many sites, each one of them with their own DMCA rules.
Archival is easy but copyright and IP law gets in the way. If we removed obstacles to making information accessible, it would lead to less concentration of power.
I think I was one of the first people to try Flask. I learned Python so I could take advantage of AppEngine for free and easy modern hosting, which put me in the right spot when Flask launched. I've long been an admirer of Armin's, and recognized his domain before I clicked the link. As he points out, in those days, you didn't default to GitHub.
His post is a response to Mitchell's, from just a few hours ago. I'm impressed with how quickly he wrote a long-form, high-quality, well-reasoned post.
What we need is gitlab to finally integrate ActiviyPub so we can fork, comment, open merge request on all gitlab instances from our personal instance. Git is already decentralized, this isn't that hard to do.
But, my first issue tracker was bugzilla. Setting that up was a bit of a pain, and it didn’t integrate well with anything, but it was very satisfying to see “Zarro Boogs”.
I liked bitbucket, it did its job, it didn’t break for me and I preferred mercurial.
Employers used GH so I switched but even now I use GH as a dumb git endpoint and do all my build/deploy with docker and shell scripts so switching for me is extremely cheap.
For work stuff I’ll use whatever I’m paid to use if I don’t get to make the call just as it was back in the svn days.
I like Gitlab fine by ignoring pretty much everything it does other than host the source code and let me view READMEs in the browser (and for work, also merge requests). In general the more I have to use anything other than those, the more frustrated I get, which was also how I felt about Github in the past. I'm not sure I've ever had a non-frustrating experience when trying to set up a CI pipeline on any platform, so I guess Gitlab's CI isn't any better or worse than others in that regard. There are an awful lot of tabs on the left any time I look for something through those menus though, most of which I don't know what they do and I would probably not be happy to have to learn.
I remember this old thing called Bugs Everywhere -- it was a bug/issue tracker which actually lived inside your hg repository. I wonder if we could standardize on something like that? or git notes with an issues ref? or something magical like that?
Then it's BYOR -- bring your own renderer. Trivial CLI bugtrackers, agentic nonsense, pretty web stuff, whatever and the data lives in the repo.
And probably the network/black-hole effect of platforms like GitHub, Linkedin and the like are hard to achieve with fully distributed solutions, all the more when the other side is backed by huge capital which absolutely love concentration of power.
I'm working pretty hard on building what comes after Github, but I'm going full-tilt boogie and trying to also work out what comes after Git.
I'd love to have a longer conversation with you about how we can seed a better system, because on the off chance I'm successful I have a once-in-a-generation opportunity to fix past mistakes.
> That is one of the great ironies of modern Open Source. The distributed version control system won, and then the world standardized on one enormous centralized service for hosting it.
Cycles everywhere indeed. Perhaps we should ->
> GitHub wrote a remarkable chapter of Open Source, and if that chapter is ending, the next one should learn from it and also from what came before.
Indeed! Try to learn from the inevitable iterations to make the next instance at least that slightly better.
... Where the stuff meets the metastuff it seems all works under very similar forces.
My thinking is step-by-step - it works on the individual level, and it scales up.
Day to day is step by step and a step today funds the step tomorrow.
If it wasn’t for SourceForge I’m not sure my life would’ve ended up where it is! They use to promote projects they liked and ended up putting Waterfox on their front page a few times. Really sad when they started blasting people with ads and swapping out installers with adware for popular projects.
By that time I moved to Microsoft’s CodePlex, if anyone else remembers that? Felt like I was the only one using it at the time! I remember the connection speeds to it were atrocious, but appreciated they’d share ad revenue from the downloads of a projects page which was nice. I remember it was actually super expensive to offer downloads [for binaries] back then, using these code hosting websites was the only way to do it for “free”
I also remember SourceForge fondly, before the ad infested thing.
Specially, I remember not "getting" Github at some point. Bitbucket had mercurial support, sourceforge had SVN, and all the Cool projects lived in SF (I'm talking mid/late 2000s).
The first time I navigated into a github project and just saw the code three I was puzzled. (SF was centered on the project/product while GH focused on the code.
This “slowly dying” effect is what happens to every company that gets acquired by big monster slug companies like Microsoft.
What Microsoft acquisitions still have any of their original spark left in them? Or Oracle? Or IBM? Or Google? Etc…
Hell, some Microsoft originals from
inside the company like Xbox have even lost their edge.
Money is great and I’m sure I’d take the big check, too, but I’m surprised more tech founders don’t think of their legacy in this way when they decide to sell out.
It’s considered a grand accomplishment to essentially lead the wonderful thing you created to its slow demise and hand it over to apathetic quarterly earnings zombies.
Radicle is a good answer, coupled with a reborn Usenet, maybe Nostr. We have like never before the ability to communicate and cooperate yet most fails to understand and implement that.
Nearly any of us could run an XMPP/Matrix server and federate with friends or Nostr/{0xchat,whitenoise}, all with audio, video, text, file exchange etc, yet less than 1% do that.
Simply people, techies as well, have forgot the meaning of personal ownership and therefore are owned by someone else.
> Before GitHub, Open Source was a much smaller world.
Not that much smaller right-before GitHub and right-after it became available.
> but in the number of projects most of us could realistically depend on.
Most FOSS I realistically depend on I don't obtain from GitHub actually.
> There were well-known projects, maintained over long periods of time by a comparatively small number of people.
There were even more not-well-known projects, maintained for less time, by a larger number of people. They just weren't that many of them in one place.
> You knew the names.
You absolutely did not know the names. Post author is just thinking of the names they knew as though those were everybody.
> reputation mattered in a very direct way.
And now it doesn't?
> We took pride (and got frustrated) when the Debian folks came and told us our licensing stuff was murky or the copyright headers were not up to snuff, because they packaged things up.
RedHat was just as popular a distribution; and most users used Windows (like they do today); and the BSD distributions were a thing (although we didn't have Apple's BSD, i.e. MacOS)
> You absolutely did not know the names. Post author is just thinking of the names they knew as though those were everybody.
I absolutely knew the names of the people I interacted with and whose projects I used. I even went to conferences with some of them. When I worked on my first web portal for Ubuntu we had a total of about ~4 dependencies and all was vendored. I knew the person who packaged my Python libraries for Debian.
You might call it an inaccurate description of history but it is very much my experience.
To me one of the clear things that GitHub gave us was a structure around a person rather than a project. To me it felt liberating to quickly create a repository attached to my name than it was to go through the (what felt to me) very serious process of coming up with a project name and reserving it on sourceforge just to get a cvs or svn repository (along with website, mailing lists, issue tracking(?), etc, etc...). It felt like the mental load of "oh this is just a quick thing" was a lot easier with github.
> It gave projects issue trackers, pull requests, release pages, wikis, organization pages, API access, webhooks, and later CI.
Although it didn't give us this all at once. I still remember when we created a new user account in order to simulate an organisation, before they existed. I distinctly recall discussing with friends if we wanted to set up a bug tracker software for our project with the assumption that "GitHub will probably release one in a few months anyway". In the end we just kept a text file committed in the repository. Issues were announced a few months later.
Human had it far before GitHub, Git, open source, software or computer of course. Well, probably not all human communities elevated it at this metastatic phase though.
I use Fossil for all my freelance work and it so easily allows me to get right back into the context of a project, niche details and agreements had with a client, etc. No need to pollute the codebase or gather together a million emails or notetaking software just to get back up to speed.
It can still change, I hate the notion that because Git is so culturally embedded we couldn’t ever switch. Fossil makes it super easy to switch and the workflow is actually easier coming from Git.
I think this is a bad thing actually. Having something that's centralized but helpful-99%-of-the-time atrophies our collective archival skills. If everything had to be seeded by someone to keep it alive, everyone would be better at holding on to their copies of the things they really cared about instead of being able to assume they can just check it out again when they want to.
There should be no single place that something can be taken down. When a project on GitHub gets DMCAed it takes everyones' forks with it too. Just look at what happened when Nintendo took down the popular Switch emulators in 2024, where archival/continuation efforts consisted of people figuring out who had the latest revision checked out and sharing it. That was only possible because they were very popular project: https://news.ycombinator.com/item?id=40254602
Aside: I really love the Splatoon-ish header/footer animation on this site! Very unintrusive, adds a lot to the vibe, and also quickly gets out of your way as soon as you scroll down. I'm totally going to rip this off lol
The alternative would be many sites, each one of them with their own DMCA rules.
What would be the better alternative?
His post is a response to Mitchell's, from just a few hours ago. I'm impressed with how quickly he wrote a long-form, high-quality, well-reasoned post.
GitHub has their own: https://archiveprogram.github.com/
Software Heritage is a non-profit funded by UNESCO: https://www.softwareheritage.org/2019/08/05/saving-and-refer...
Although they're mostly the code / commit history, not so much surrounding metadata like issues, PRs, discussions, wiki, etc.
Fun fact: Django is still running on Trac today, and has been for more than 20 years now: https://code.djangoproject.com/timeline
(I was not involved in setting that one up, though it's possible I helped get the private Trac that pre-dated it running, I honestly can't remember!)
But, my first issue tracker was bugzilla. Setting that up was a bit of a pain, and it didn’t integrate well with anything, but it was very satisfying to see “Zarro Boogs”.
Employers used GH so I switched but even now I use GH as a dumb git endpoint and do all my build/deploy with docker and shell scripts so switching for me is extremely cheap.
For work stuff I’ll use whatever I’m paid to use if I don’t get to make the call just as it was back in the svn days.
I guess that award goes to Gitlab now, which I will probably also remember fondly.
Then it's BYOR -- bring your own renderer. Trivial CLI bugtrackers, agentic nonsense, pretty web stuff, whatever and the data lives in the repo.
And probably the network/black-hole effect of platforms like GitHub, Linkedin and the like are hard to achieve with fully distributed solutions, all the more when the other side is backed by huge capital which absolutely love concentration of power.
I'd love to have a longer conversation with you about how we can seed a better system, because on the off chance I'm successful I have a once-in-a-generation opportunity to fix past mistakes.
> That is one of the great ironies of modern Open Source. The distributed version control system won, and then the world standardized on one enormous centralized service for hosting it.
Cycles everywhere indeed. Perhaps we should ->
> GitHub wrote a remarkable chapter of Open Source, and if that chapter is ending, the next one should learn from it and also from what came before.
Indeed! Try to learn from the inevitable iterations to make the next instance at least that slightly better.
... Where the stuff meets the metastuff it seems all works under very similar forces. My thinking is step-by-step - it works on the individual level, and it scales up.
Day to day is step by step and a step today funds the step tomorrow.
Specially, I remember not "getting" Github at some point. Bitbucket had mercurial support, sourceforge had SVN, and all the Cool projects lived in SF (I'm talking mid/late 2000s).
The first time I navigated into a github project and just saw the code three I was puzzled. (SF was centered on the project/product while GH focused on the code.
What Microsoft acquisitions still have any of their original spark left in them? Or Oracle? Or IBM? Or Google? Etc…
Hell, some Microsoft originals from inside the company like Xbox have even lost their edge.
Money is great and I’m sure I’d take the big check, too, but I’m surprised more tech founders don’t think of their legacy in this way when they decide to sell out.
It’s considered a grand accomplishment to essentially lead the wonderful thing you created to its slow demise and hand it over to apathetic quarterly earnings zombies.
Nearly any of us could run an XMPP/Matrix server and federate with friends or Nostr/{0xchat,whitenoise}, all with audio, video, text, file exchange etc, yet less than 1% do that.
Simply people, techies as well, have forgot the meaning of personal ownership and therefore are owned by someone else.
Not that much smaller right-before GitHub and right-after it became available.
> but in the number of projects most of us could realistically depend on.
Most FOSS I realistically depend on I don't obtain from GitHub actually.
> There were well-known projects, maintained over long periods of time by a comparatively small number of people.
There were even more not-well-known projects, maintained for less time, by a larger number of people. They just weren't that many of them in one place.
> You knew the names.
You absolutely did not know the names. Post author is just thinking of the names they knew as though those were everybody.
> reputation mattered in a very direct way.
And now it doesn't?
> We took pride (and got frustrated) when the Debian folks came and told us our licensing stuff was murky or the copyright headers were not up to snuff, because they packaged things up.
RedHat was just as popular a distribution; and most users used Windows (like they do today); and the BSD distributions were a thing (although we didn't have Apple's BSD, i.e. MacOS)
Bottom line: Inaccurate description of history.
I absolutely knew the names of the people I interacted with and whose projects I used. I even went to conferences with some of them. When I worked on my first web portal for Ubuntu we had a total of about ~4 dependencies and all was vendored. I knew the person who packaged my Python libraries for Debian.
You might call it an inaccurate description of history but it is very much my experience.
I know every name on mysql devel team.
The only reason i subscribe that mail list is: i reported some bugs and need to follows the release.
Signal to noise ratio on those mailing list was high. I can't say the same for github or discord
So what is the issue? It's just nonsense, brain rot.