Live data from Hacker News

Golang Proposal: Just Use GitHub

github.com

51–60 of 86 posts

Re: Golang Proposal: Just Use GitHub

#51
post #30

If one cannot figure out how to setup a development environment (with detailed guides), how can one be expected to actually make a meaningful contribution in a much more difficult domain like compiler development? For this purpose alone I think the current approach is something that Google will not get rid of. Moreover, why on Earth would Google want to create an external dependency for code-hosting and development l…

> If one cannot figure out how to setup a development environment (with detailed guides), how can one be expected to actually make a meaningful contribution in a much more difficult domain like compiler development? Because those are two unrelated fields, and one is distinctly not productive. From the issue: > I ran through the contributing workshop at Gophercon 2017. I even had gone through half of it before. I stil…

> Didn't they move to Google Code to GitHub, which is the live repo, Gerrit being used for code review only? If so, the dependency is already there. If not, why is it on GitHub at all?

No.

Github is a mirror, the canonical git repository is at https://go.googlesource.com/go.

Re: Golang Proposal: Just Use GitHub

#52
post #27

Earlier quoted context omitted.

Aside: In your opinion what are good issue trackers and code review tools?

I'd also be interested in knowing. I also feel GitHub's issue tracker is not right for a large project like this. As for the code review tools though, I've not yet seen something that I feel is materially better than GitHub + PRs + some bot-enabled automation. I understand that many people _prefer_ things like Gerrit, but I've found the difference to mostly be opinion, and that Gerrit can be a significant problem in…

so you don't mind having review comments disappear if somebody updates the PR, and it doesn't bother you not being able to say in a comment "this needs fixing" in a way that you can mark it fixed later on (and without marking as fixed the PR can't be merged)?

Github reviews are fine for a one-and-done merge, but for a back & forth review I really wish it had the above...

Re: Golang Proposal: Just Use GitHub

#53
post #29

It's true that Gerrit's workflow is a bit unusual, but even though I had no experience with it, I managed to setup the environment and create a review request for Golang in under an hour. When it comes to contributing to a programming language, I think this is pretty friction-less. CLA was very painless too.

An hour is pretty bad don't you think? Pretty sure it would be quicker with github.

Re: Golang Proposal: Just Use GitHub

#54

The "just use GitHub" mentality is harmful groupthink. How about being open to learning other tools? Locking yourself into a single ecosystem and bothering otherwise productive people who don't buy into it is how we get SourceForge.

> is how we get SourceForge

SouceForge was never a particularly good site, and once a better one came along everyone moved off it fairly easily.

Seems like working as intended. If Github goes evil like SourceForge did I don't imagine it will be a huge amount of effort to move to another site. In fact it can probably be automated for most projects.

Re: Golang Proposal: Just Use GitHub

#55
post #17

Earlier quoted context omitted.

And it’s not even open source. They don’t follow the development model that so many of its users who are responsible for its success do.

It's ironic. GitHub, a closed, centralized and for-profit platform, has become the sole viable place for open source.

Gitlab works really well. It uses almost the same workflows but if shit hits the fan I can dump my issues and rehost them on a local instance.

I'd never host my own stuff on github since gitlab is good enough but doesn't lock me in to as proprietary web service.

Re: Golang Proposal: Just Use GitHub

#56

The "just use GitHub" mentality is harmful groupthink. How about being open to learning other tools? Locking yourself into a single ecosystem and bothering otherwise productive people who don't buy into it is how we get SourceForge.

For high stakes projects, I feel there's an aspect of "choose your battles wisely". Is relenting in some dimension going to harm the overall goal? IIRC Go was hassled off of mercurial and onto git, so there's a bit of a fractal too.

Re: Golang Proposal: Just Use GitHub

#57
post #29

It's true that Gerrit's workflow is a bit unusual, but even though I had no experience with it, I managed to setup the environment and create a review request for Golang in under an hour. When it comes to contributing to a programming language, I think this is pretty friction-less. CLA was very painless too.

An hour is pretty bad don't you think? Pretty sure it would be quicker with github.

Sure it would be. Mostly because I use Github every day. The first time I tried to create a pull request it probably took me almost as much time to figure out how Github works.

But compared how much time is saved for reviewers by having a better tool, I think 1 hour for each new contributor is reasonable.

Re: Golang Proposal: Just Use GitHub

#58
post #4

Kinda scary how de facto Github has become, that external tooling is discouraged. Github is a bad issue tracker, a bad code review tool, an ok wiki and a bad distribution platform. Still, one has to mostly use the whole package to get contributors. (Github has other strengths, though)

One thing Github does that really bothers me is that if your paid account lapses, you must pay to get your private repos back. You don't have the option to simply set your repos to public. The only options Github gives you is pay money or lose your repos. As far as I care, that's practically extortion. So I moved to Gitlab.

Luckily, Github screwed up and temporarily unlocked my private repos, letting me grab the ones I didn't have locally and move them to Gitlab.

No opt-out option, no deal, Github. This is something that students should particularly take note of, because it applies to Github Education accounts, too.

Re: Golang Proposal: Just Use GitHub

#59
post #30

Earlier quoted context omitted.

> If one cannot figure out how to setup a development environment (with detailed guides), how can one be expected to actually make a meaningful contribution in a much more difficult domain like compiler development? Because those are two unrelated fields, and one is distinctly not productive. From the issue: > I ran through the contributing workshop at Gophercon 2017. I even had gone through half of it before. I stil…

>Because those are two unrelated fields, and one is distinctly not productive. Each of your examples is something like "I've been writing go for x years". Using a programming langauge does not make you a compiler hacker. Countless people have been using Linux for years but wouldn't be able to make a meaningful contribution to the kernel. I'm firmly convinced that having to learn something as straightforward and well…

> I'm firmly convinced that having to learn something as straightforward and well documented as golang's contributor flow is a pretty good litmus test for potential contributors.

It's just as much a litmus test of how much time you have in your hands to spend and space in your head to stuff peripheral stuff in. If you did not notice, there was a workshop about how to contribute to Go since, in contrast with its design and philosophy, it has a contribution method as convoluted as for Android/CyanogenMOD/LineageOS, which only makes the ridiculousness of it all the more poignant.

> Using a programming langauge does not make you a compiler hacker

Again, there is much more to Go than just the compiler, which is only a fraction of src. What if I want to contribute a substantial fix or improvement to say net/mail[0]? Or the documentation? Besides, how ludicrous is that a contributor wannabe should have to prove {him,her}self worthy of contributing by passing a supposed test entirely unrelated to the contribution {s,}he's intending to make?

Trivial fixes should be trivial to submit just as well as complex ones to review, and not require anyone to bang its head against an artificial wall.

[0]: https://golang.org/src/net/mail/message.go

Re: Golang Proposal: Just Use GitHub

#60
post #59

Earlier quoted context omitted.

>Because those are two unrelated fields, and one is distinctly not productive. Each of your examples is something like "I've been writing go for x years". Using a programming langauge does not make you a compiler hacker. Countless people have been using Linux for years but wouldn't be able to make a meaningful contribution to the kernel. I'm firmly convinced that having to learn something as straightforward and well…

> I'm firmly convinced that having to learn something as straightforward and well documented as golang's contributor flow is a pretty good litmus test for potential contributors. It's just as much a litmus test of how much time you have in your hands to spend and space in your head to stuff peripheral stuff in. If you did not notice, there was a workshop about how to contribute to Go since, in contrast with its desig…

>It's just as much a litmus test of how much time you have in your hands to spend and space in your head to stuff peripheral stuff in.

If you don't have time to learn Gerrit (which is not a difficult tool to learn), then you probably don't have time to be a good contributor - responding to patch feedback, engaging in discussion, and maintaining your changes in the future should issues arise.

>there was a workshop about how to contribute to Go since

Just going to append my own conclusion to this sentence:

>since the entitled GitHub generation of programmers can't be arsed to spend 10 minutes learning any proper tooling

Post reply on HN