Before GitHub

Open SourceSoftware EngineeringIndustryCareer & LifeDeveloper Tools

Armin Ronacher reflects on how Open Source worked before GitHub — a world of self-hosted infrastructure, Subversion repositories, Trac instances, and reputation-driven trust. He argues that GitHub became the social infrastructure of Open Source, making contribution frictionless but also enabling the micro-dependency explosion. Now that GitHub is declining under Microsoft's stewardship, he worries that dispersing back to many forges risks losing the discoverable memory and social context GitHub accidentally preserved. He calls for a publicly funded, boring archive for Open Source software that preserves source, metadata, and project context independent of any single company's business model.

As GitHub declines, the Open Source world needs a publicly funded archive to preserve the discoverable memory GitHub accidentally created, without repeating the fragility of the pre-GitHub era or the dependence of the GitHub era.
  • 8

    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.

  • 5

    GitHub was part of the social infrastructure of Open Source for a very long time. For many of us, it was not merely where the code lived; it was where a large part of the community lived.

  • 6

    A dependency was not just a package name. It was a project with a history, a website, a maintainer, a release process, a lot of friction, and often a place in a larger community.

  • 6

    That means when trust in GitHub erodes, the problem is not isolated to source hosting. It affects the whole supply chain culture that formed around it.

  • 5

    The code might be distributed in theory, but the social context often is not.

  • 6

    I do not want to go back to the old web of broken tarball links and abandoned Trac instances. I also do not want Open Source to pretend that the last twenty years were normal or permanent.

  • 7

    Whatever people want to start building next should try to keep the memory and lose the dependence.

  • 5

    A personal domain expired, a VPS was shut down, a developer passed away, and with them went the services they paid for.

reflective, elegiac, opinionated