So this is inspired somewhat by a question about somebody wanting to have a non-GitHub way of contributing to Lemmmy. I’ve really enojyed some other discussions on this community so felt somewhat inspired to ask this one too.

And whilst Lemmy is mirrored to a couple of alternatives (a self hosted Gitea and Codeberg) they can’t really be anything more than a mirror and a backup. If one doesn’t want to use GitHub they still can’t realistically contribute without signing up to GitHub and creating issues and PRs.

So what would it take to actually get people away from GitHub and onto alternatives (GitLab, Codeberg, sourcehut)? The situation seems to somewhat parallel the whole Reddit and Twitter thing. Both have/had a huge monopoly on users to the point where it just wasn’t really worth using anything else, at least not if you wanted to be part of a decently sized community.

Other mass migrations

Obviously the difference with Reddit and Twitter is that they both have had their version of “the Event” which cause existing projects (Mastodon, Lemmy amongst others) to suddenly explode in popularity. Has it killed off the originals? No but it has made the alternatives actually viable with enough of a community to sustain them and encourage more to join, even if slowly.

GitHub has had its fair share of controversy, most recently surrounding co-pilot and code scraping but no particular widespread outrage to cause people to leave it in droves.

GitHub is the home of open source?

I think for many GitHub has simply become synonymous with open source. The sheer number of repositories and projects hosted there means that people just use GitHub alone for all of their open source needs and don’t even look at other forges. Not to mention all the services offered - most of the alternatives can offer some of the same features but not all of them. Not only do you get space for your project code itself but you get access to their CI/CD platform, a forum through Discussions, a wiki, a project management tool, static site hosting which is an awful lot for smaller projects like GitLab and community non-profit projects like Codeberg to compete with.

There of course are some people that rely on their GitHub profile and their activity chart in order to get jobs and advance their careers - many of these people I suspect wouldn’t want to fragment their profile by having to split their activity up over multiple profiles.

So why would anyone not want to use GitHub. Quite simply it isn’t really in the spirit of open source is it? Not only is it controlled by Microsoft who haven’t historically been the friendliest towards open source but GitHub itself is closed source. You can’t host your own GitHub and get all the same features it enjoys. It does seem somewhat odd that the biggest vault of open source projects is itself proprietary and completely closed off.

What would need to happen for things to change?

So realistically what could be done about it? What would need to happen in order to entice people off of GitHub? Something arriving in the hopefully not too distant future is forge federation - projects such as Forgefriends, ForgeFed and ForgeFlux aim to try and create a federation of software forges. One of the main issues about having to create different accounts for every single platform goes away as you just stick with the instance you like best (or host your own) and yet still be able to fully interact with software hosted on other platforms. This means that you should be able to interact with a project hosted on, say, Codeberg, from your sourcehut account. You should be able to see issues, PRs etc. just as if you were on the same website.

GitHub, I strongly imagine, would have no intention of joining in order to maintain and protect their walled garden. I just don’t see a world where they would want to join in with federation.

Lastly I just want to add that I’m absolutely not judging anyone for using GitHub. The main project I’m involved with is also still on GitHub for some good reasons. Not only is it intertwined with their ecosystem but it provides services that we just need at this point. We still rely on some of GitHub’s services so we don’t spend our community donations on hosting stuff that we just don’t need to. It lightens the maintenance on us whilst we are still in a very active stage of the project with an awful lot of moving parts. And the bit I hate most, we need to be visible to the community - we aren’t big enough to go to one of the alternative platforms because what community engagement we have might well drop through the floor if people are suddenly forced to make accounts on other services just to log an issue or ask a question. I would love to move to a platform like Codeberg and any personal project I make would probably be hosted there but for a big-ish community project we just cannot justify it. So I am well aware of the attraction of GitHub and what keeps people there. What I want to know is what would be needed to actually break that inertia for projects, such as the one I mentioned, to justify a move away from GitHub - particularly people who may be far less ideological about the open source world.

tl;dr

  • GitHub offer many nice thing
  • Other places have not so many nice thing
  • How other place make people change mind up to move from place with all thing and all people to place with less many people and thing?
  • Max-P@lemmy.max-p.me
    link
    fedilink
    arrow-up
    12
    arrow-down
    2
    ·
    1 year ago

    Personally, I feel like as of lately Microsoft has been doing fairly good to the open-source community. Free CI minutes for open-source projects, they’ve expanded free private projects, there’s no ads. Apart from a purely philosophical hatred for Microsoft, they just haven’t really done anything to drive people away. People got scared with their acquisition and fled to GitLab but GitLab’s kind of not as nice and responsive as GitHub.

    The reality is only a big company like Microsoft can get a large enough enterprise userbase to subsidize the costs of everything that’s being offered for free on GitHub. We’ve seen the competitors like GitLab struggle and claw back on their free tiers while Microsoft has been expanding GitHub’s free tiers.

    I also enjoy VScode after spending years on Sublime Text, Lemmy’s UI is written in TypeScript which is more MIcrosoft tech. NPM, the package manager used by the frontend is also owned by GitHub and therefore Microsoft as well. Rust crates? That’s hosted on GitHub as well.

    I still self host when it makes sense, as I don’t want to depend on a big company’s good will for my stuff. But I’m absolutely fine using GitHub, I like GitHub and a newcoming competitor would have to be extremely competitive to win me over GitHub. And even then, I’d approach that competitor with suspicion, because it’s likely they’d be burning through VC money stupid fast and would eventually need to find a way to be profitable. Microsoft can easily operate GitHub at a loss just like Google’s been operating YouTube at a loss.

    • Daeraxa@lemmy.mlOP
      link
      fedilink
      arrow-up
      6
      ·
      1 year ago

      Whilst I do agree that Microsoft are indeed being good (at the very least on the surface) I think the big difference isn’t necessarily that it is Microsoft as the big bad guys but more that lots of those projects, npm, typescript, vscode are, at the very least, mostly open source meaning that if they did decide to go all anti-open source then people can still pack their bags and leave with all the tools they have been using. If they decide to alter the deal on GitHub itself then there isn’t much anyone can do about it.

      • Max-P@lemmy.max-p.me
        link
        fedilink
        arrow-up
        5
        ·
        1 year ago

        You can mostly pack your things and move on with GitHub too, that’s one of the key features of git. As long as someone’s got a copy of the repo, they can upload it back to GitLab or Codeberg or whatever alternative there is. You may have to rewrite a big of your CI YAML but otherwise, eh.

        • Daeraxa@lemmy.mlOP
          link
          fedilink
          arrow-up
          3
          ·
          1 year ago

          The project, yes, but not so much the other tools like Discussions, projects, wiki - not to mention all your PRs and issues. Whilst there is the API it isn’t exactly “portable” like the source code.

    • dot20@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      The biggest concern for me is that Microsoft and GitLab use your code to train their commercial AI.

    • starman
      link
      fedilink
      arrow-up
      2
      arrow-down
      1
      ·
      1 year ago

      Don’t forget about .NET, it’s a great platform and it’s open source too