Comment by mkornaukhov

Comment by mkornaukhov 3 hours ago

29 replies

IMHO, the main advantage of github is that it is an ecosystem. This is a well-thought-out Swiss knife: a pioneering (but no longer new) PR system, convenient issues, as well as a well-formed CI system with many developed actions and free runners. In addition, it is best to use code navigation simply in a web browser. You write code, and almost everything works effortlessly. Having a sponsorship system is also great, you don't have to search for external donation platforms and post weird links in your profile/repository.

All in one, that's why developers like it so much. The obsession with AI makes me nervous, but the advantages still outweigh, as for me, the average developer. For now.

bit1993 an hour ago

I don't agree with this at all. I think the reason Github is so prominent is the social network aspects it has built around Git, which created strong network effects that most developers are unwilling to part with. Maintainers don't want to loose their stars and the users don't want to loose the collective "audit" by the github users.

Things like number of stars on a repository, number of forks, number of issues answered, number of followers for an account. All these things are powerful indicators of quality, and like it or not are now part of modern software engineering. Developers are more likely to use a repo that has more stars than its alternatives.

I know that the code should speak for itself and one should audit their dependencies and not depend on Github stars, but in practice this is not what happens, we rely on the community.

  • mkornaukhov 36 minutes ago

    I would say that your comment is an addition to mine, and I think so too. This is another reason for the popularity of github.

    As for me, this does not negate the convenient things that I originally wrote about.

  • CuriouslyC 39 minutes ago

    You don't need to develop on Github to get this, just mirror your repo.

    • bit1993 35 minutes ago

      Sure, but as it stands most projects don't have mirrors, so the network effects are in place.

    • em-bee 24 minutes ago

      that's not enough, i still have to engage with contributors on github. on issues and pull requests at a minimum.

  • MangoToupe 27 minutes ago

    > Maintainers don't want to loose their stars

    ??? Seriously?

    > All these things are powerful indicators of quality

    Not in my experience....

    • eXpl0it3r 21 minutes ago

      Why are you as surprised?

      People don't just share their stargazing plots "for fun", but because it has meaning for them.

vthriller 4 minutes ago

> In addition, it is best to use code navigation simply in a web browser

How do you define "code navigation"? It might've got a bit easier with automatic highlighting of selected symbols, but in return source code viewer got way too laggy and, for a couple of years now, it has this weird bug with misplaced cursors if code is scrolled horizontally. I actually find myself using the "raw" button more and more often, or cloning repo even for some quick ad-hoc lookups.

Edit: not to mention the blame view that actively fights with browser's built in search functionality.

baq 3 hours ago

> a pioneering (but no longer new) PR system

having used gerrit 10 years ago there's nothing about github's PRs that I like more, today.

> code navigation simply in a web browser

this is nice indeed, true.

> You write code, and almost everything works effortlessly.

if only. GHA are a hot mess because somehow we've landed in a local minimum of pretend-YAML-but-actually-shell-js-jinja-python and they have a smaller or bigger outage every other week, for years now.

> why developers like it so much

most everything else is much worse in at least one area and the most important thing it's what everyone uses. no one got fired for using github.

  • CamouflagedKiwi 2 hours ago

    The main thing I like about Github's PRs is that it's a system I'm already familiar with and have a login/account for. It's tedious going to contribute to a project to find I have to sign up for and learn another system.

    I've used Gerrit years ago, so wasn't totally unfamiliar, but it was still awkward to use when Go were using it for PRs. Notably that project ended up giving up on it because of the friction for users - and they were probably one of the most likely cases to stick to their guns and use something unusual.

    • TheDong 2 hours ago

      > Notably [go] ended up giving up on [gerrit]

      That's not accurate. They more or less only use Gerrit still. They started accepting Github PRs, but not really, see https://go.dev/doc/contribute#sending_a_change_github

      > You will need a Gerrit account to respond to your reviewers, including to mark feedback as 'Done' if implemented as suggested

      The comments are still gerrit, you really shouldn't use Github.

      The Go reviewers are also more likely than usual to assume you're incompetent if your PR comes from Github, and the review will accordingly be slower and more likely to be rejected, and none of the go core contributors use the weird github PR flow.

      • miroljub 19 minutes ago

        Many people confuse competence and dedication.

        A competent developer would be more likely to send a PR using the tool with zero friction than to dedicate a few additional hours of his life to create an account and figure out how to use some obscure.

      • ncruces an hour ago

        > The Go reviewers are also more likely than usual to assume you're incompetent if your PR comes from Github

        I've always done it that way, and never got that feeling.

        • arccy 19 minutes ago

          there's certainly a higher rejection rate for github PRs

  • delusional 2 hours ago

    > having used gerrit 10 years ago there's nothing about github's PRs that I like more, today.

    I love patch stack review systems. I understand why they're not more popular, they can be a bit harder to understand and more work to craft, but it's just a wonderful experience once you get them. Making my reviews work in phabricator made my patchsets in general so much better, and making my patchsets better have improved my communication skills.

jcmfernandes an hour ago

> a well-formed CI system

Man :| no. I genuinely understand the convenience of using Actions, but it's a horrible product.

  • akmittal 4 minutes ago

    Curious what are some better options. I feel it is completing with Jenkins and CircleCI and its not that bad.

  • sunnyday_002 43 minutes ago

    In what way? I've never had an issue other than outages.

kunley an hour ago

The big issue with Github is that they never denied feeding ai with private repositories. (Gitlab for example did that when asked). This fact alone makes many users bitter, even for organizations not using private repos per se.

flohofwoe an hour ago

> In addition, it is best to use code navigation simply in a web browser.

IMHO the vanilla Github UI sucks for code browsing since it's incredibly slow, and the search is also useless (the integrated web-vscode works much better - e.g. press '.' inside a Github project).

> as well as a well-formed CI system with many developed actions and free runners

The only good about the Github CI system are the free runners (including free Mac runners), for everything else it's objectively worse than the alternatives (like Gitlab CI).

curcbit 28 minutes ago

Github'PR and CI are some of the worst.

DarkNova6 an hour ago

Would you say Github has any significant advantages over Gitlab in this regard? I always found them to be on par, with incremental advantages on either side.

  • sunnyday_002 an hour ago

    One of my favourite GitHub features is the ability to do a code search over the whole of GitHub, not sure GitLab has the same when I use to use it?

matrss 2 hours ago

> a pioneering (but no longer new) PR system

Having used Forgejo with AGit now, IMO the PR experience on GitHub is not great when trying to contribute to a new project. It's just unnecessarily convoluted.

testdelacc1 23 minutes ago

Underrated feature is the code search. Everyone starts out thinking they’ll just slap elastic search or similar in front of the code but it’s more nuanced than that. GitHub built a bespoke code search engine and published a detailed blog post about it afterwards.

officialchicken 2 hours ago

Embrace, extend, extinguish.

That's not a Victorinox you're looking at, it's a cheap poorly made enshittified clone using a decades old playbook (e-e-e).

The focus on "Sponsorship buttons" and feature instead of fixing is just a waste of my time.