Thank You GitHub
github.com
github.com
Can we just acknowledge just how much of an improvement github is over the olden days? Seriously. And as far as social media websites go, Github is surely one of the most ethical of them all.
Github popularized git in a time when svn and cvs were the standards. Don't forget about those sad, sad times! We are in such a better place now! They also recognized the power of git to completely lower the bar for participating in open source projects.
"Pull requests"? "Forks"? That stuff didn't exist in the mainstream developer imagination. It was fringe. Now it's the default!
And I'm not trying to say that github is the best model or platform or anything like that, I just appreciate how easy it makes it to participate in open source development. It's clean, it's simple, and it works.
GitLab and BitBucket, those are awesome platforms too. But Github struck a chord in a time when people hadn't even heard the melody yet.
I hope the future brings something even better. But I'm still definitely gonna give props to github for holding it down.
Is censoring stuff on behalf of Russian government ethical? [1]
>Github popularized git in a time when svn and cvs were the standards. Don't forget about those sad, sad times! We are in such a better place now!
Is that a good thing? We could've had a better VCS like darcs!
>They also recognized the power of git to completely lower the bar for participating in open source projects.
Thus lowering the bar of open-source projects.
>"Pull requests"? "Forks"? That stuff didn't exist in the mainstream developer imagination.
Forks have certainly existed since open-source model existed. Pull request is an anti-pattern anyway.
[1] https://techcrunch.com/2014/12/05/to-get-off-russias-blackli...
Would you consider elaborating on this? I'm curious to hear what some negatives of the PR model might be, as I've recently taken a personal interest in dev workflows.
When I look at the software I use to run my business, literally 100% of it is open source and has a community improving it and patching it on GitHub. There was simply not this level of open source enthusiasm and participation back in the Sourceforge “dark ages” (although even Sourceforge was hugely influential and a big step in software democratization if you compare it to what came before).
I think it's mostly a response to ground the hyperbole a little. There's usually no need to do the marketing for an organisation with (arguably) a monopoly of mindshare already.
I think that's why people talk up the underdogs more when they're mentioned, because as users/consumers it's in our interests to have some competition.
We're probably just disagreeing on what constitutes hate, I thought that they were mostly just mild criticism.
Linus invented both Linux and Git. It's incredible what that man has accomplished in his life and how he's affected the software field and the world in general.
But Git's invention was recent enough, in the context of Github, that the real merits should be directed to Linus.
But yes, Github slapped a nice Rails webapp + UI on top of Git and basically changed how software collaboration worked. Pretty much overnight. Sourceforge, Bitbucket, and Launchpad were all a nightmare. Github changed all of that.
It's also in many ways a single point of failure for many open source communities, and it will be very interesting to see what happens if GitHub ever folds.
There would be problems, however, with issues, comments, wikis, etc. as well as all kinds of package managers that rely on github.
One example that comes to mind is Cargo. At least a couple years ago, the package index (but not packages themselves) for crates.io was stored in a Git repo hosted on GitHub. But (without checking, on a phone) I’m fairly certain crates.io doesn’t/didn’t rely on any GitHub APIs, just Git operations, so it would be easy to recover if GitHub just disappeared.
Rust’s CI operation, on the other hand, is somewhat tightly coupled with GitHub. Last time I checked, the software powering bors only support GitHub’s APIs; support for competing APIs like Gitlab were open tickets. But I’m sure in an emergency the team would be able to put together support for another project host.
Right now, if I want to fix a bug in a GitHub hosted project, I log in to my existing GitHub account, report an issue, fork the repo, do the fix, submit a PR. If I have to use GitLab or Bitbucket, as I learned a couple of days ago when I had to submit a PR to a GitLab project, it adds a certain amount of friction (signing up for accounts, learning where all the right buttons are, etc) that I don't have when I'm using GitHub as the dominant platform which everyone else uses. If GitHub were to go away, would we end up with a single dominant new player that in turn provides a low friction workflow that everyone's used to, or would we have a more fragmented ecosystem?
Furthermore, GitHub has played a large role in cementing the role of Git itself as the community's preferred VCS - much to the detriment of competitors like Mercurial, it must be said. If GitHub goes away, how sticky is Git itself?
That said, if I were to make a new github-like platform, the number one thing I'd probably do to decrease fragmentation is make automated testing as friendly as possible. In the same way that github made git itself friendly, tests need to be friendly.
https://www.youtube.com/watch?v=8XSf6XfYl64
Developed by a former colleague at http://near.ai/.
https://public.gitsense.com/insight/github?r=tensorflow/tens...
they could significantly improve discovery.
Like come on, don't just gripe about it, make something cool... the time is now! And in order for you to make something that's actually cool, I hope you can pull your head out of your butt and acknowledge that github was amazing for its time. Recognize what makes github awesome. It's not the fancy project management stuff. It's the simplicity and focus of the open ended, social, collaborative platform. It lowered the bar. It made it easy to jump in, no matter how much clout or recognition you had. It made it normal to fork a project off the bat, in case you accidentally found yourself fixing a bug or wanting to make a little feature change.
So yeah, github is awesome and it's getting old. Let's appreciate it and get to the next level.
"Open source" is now this thing companies do. It's now a PR and marketing trick, or sometimes an attempt to get free labor selfishly.
It is no longer about user's rights and freedom. Github has been a huge part of the slow bleedout of the free software movement.
I think this is the true damage that the combination of Github and "open source" companies have done to the software ecosystem.
Today, participation in the development of Free Software is more difficult than ever as tons of projects make it impossible to contribute unless you use a proprietary piece of software to do so--namely, github.
Also, how is it even remotely sensible to compare the state of github today to the state of not-github a decade ago? If anything, the proprietary nature of github and its network effects is likely to have hampered progress in the development of Free Software collaboration tools. It's not exactly like you need a proprietary middleman in order to not exchange patches by manually attaching them to emails in a world with ubiquitous broadband internet.
The centralization that Github provides is essential to lowering the barrier of entry for new contributors, and those are what makes or breaks a project. So yes, you do need a middleman; or at least you need something. You're welcome to attempt solving the problem, in the mean time you can't start claiming that they "hampered" progress, that's just delusional.
OK, so what do you think would the world of free software look like today if github had never existed, and why do you think that?
> GitHub and GitHub Pages have made it both easy and free for FOSS projects to get contributors set up and managed, market themselves and be more than an obscure project on a nameless site.
Why do you think would the alternative solution that would have been developed if github had not been around not have been able to achieve the same?
> The centralization that Github provides is essential to lowering the barrier of entry for new contributors, and those are what makes or breaks a project.
Why do you think that the centralization is essential?
> So yes, you do need a middleman; or at least you need something.
What specifically do you mean by "something"?
> You're welcome to attempt solving the problem, in the mean time you can't start claiming that they "hampered" progress, that's just delusional.
Does that mean then that your implicit claims about alternative histories are also delusional? I mean, your claims about how github is better than what the world would look like if github had not been around obviously also imply some idea of what you think the world would otherwise look like (i.e. worse). Is that speculation on your part also delusional?
Decentralisation, as a general concept, has a lot of benefits. Ease of use for new users is generally not one of them.
I'm a Linux kernel dev by day, where we still submit patches through mailing lists. Now, I don't believe the kernel can switch to using a platform like GitHub, as our development workflow on the whole is too decentralised and too complex to shoehorn into the kinds of tools that GitHub et al give us, but I can certainly say that the existing kernel process is a right PITA for new contributors. A large part of this is that we don't have centralised development resources and every different subsystem has a slightly different workflow.
Why do you think that ease of use for new users is a benefit of centralized systems such as github? And not, say, of standardization?
Is electricity, say, easy to use because it is all supplied by one centralized world-wide supplier, or is it easy to use because voltage, frequency and so on are standardized, so you can plug in your appliances no matter who the supplier is?
But also: Do you think that ease of use for new users is a worthwhile optimization target? I mean, at what cost for non-new users does this optimization come, and is that cost worth it?
> but I can certainly say that the existing kernel process is a right PITA for new contributors.
Why do you think that? My experience would say the exact opposite: You read the readme that comes in the source tree, you run that script that figures out who is responsible for the respective component and you send an email ... you don't even need to create an account with some third party with lengthy TOS to study and stuff. Seriously, submitting patches to the linux kernel so far has been one of the smoothest experiences contributing to free software, with an absolutely minimal barrier to entry.
The voltage, frequency and so on only became standardised because of either monopoly providers or government regulation, depending on where you are in the world. There are parts of the world where they've actually ended up with different electrical standards in different parts of the same country as a direct result of having non-centralised suppliers and multiple different electric grids.
> But also: Do you think that ease of use for new users is a worthwhile optimization target? I mean, at what cost for non-new users does this optimization come, and is that cost worth it?
Yes, and ideally, it's not a cost for non-new users.
I remember SourceForge. It was the best we had, but it sucked! There was a days-to-weeks long approval process for new projects, advertising everywhere, and a ridiculously unintuitive UI. And SourceForge was basically the best option as far as finding free hosting for generic open source projects.
GitHub on the other hand is beautifully simple and easy to get started with, and I generally quite like working with it.
But then again, so was CVS for version control even further in the past.
The question is: How much of that is simply technological progress that would have happened anyway, but possibly without the centralization, and how much of this is actually genuine contribution on the part of github?
Simply comparing what github is now to what the alternatives were like a decade ago is not really a useful comparison. Of course (pretty much), what is now is technologically better than what was ten years ago. The question is: Is it better than what the alternatives would have been now?
Why don’t we spend the time to thank the creators and supporters of open source projects instead?
>Before 2007, the way to participate in Open Source was fragmented. ... Nowadays doing Open Source is infinitely easier thanks to you, GitHub. You've provided the tools and the social conventions to make those days a thing of the past. Your impact in the Open Source movement is unprecedented.
So you're discounting their accomplishments because a company was destined to enter this niche?
Nothing happens for free. It's the result of thousands of man hours. Github has done a lot of good in this space, and there's nothing wrong with showing some appreciation.
No, I am discounting their accomplishments because their net contribution is negative due to the way they operate their business.
> Github has done a lot of good in this space
I disagree.
> and there's nothing wrong with showing some appreciation.
There is something very wrong with showing appreciation for something that is actually hurting you.
I mean, other than to be nice to a service that a lot of people genuinely appreciate? It's also worth mentioning that Github is the primary reason why a lot of people have a job at all. Github resumes have immense weight in the industry nowadays.
It really is baffling how completely out of touch you are with the immense amount of benefit that the FOSS community and Github users have been reaping the past decade. You've equated Github to Oracle for some reason and are on a crusade against them, I don't get it. I truly don't get how you can be so hateful against people doing things right, versus the atrocious alternatives that exist out there.
Perfect is the enemy of the good.
Which is great for you--but does that mean that without github, you wouldn't have a job?
> It really is baffling how completely out of touch you are with the immense amount of benefit that the FOSS community and Github users have been reaping the past decade.
Well, the thing is: How do you know that? It is really baffling to me how everyone seems to agree that that is the case, yet noone seems to actually be able to make a solid case why they think that.
> You've equated Github to Oracle for some reason and are on a crusade against them, I don't get it. I truly don't get how you can be so hateful against people doing things right, versus the atrocious alternatives that exist out there.
They absolutely are not doing things right, that is my whole point.
> Perfect is the enemy of the good.
Which is true--but also completely vacuous: What bad thing could you not justify using that adage?
Why would you want a mobile app for github? What would it do?
I'd rather people supported underfunded open source projects rather than engaging in marketing for VC financed for-profit companies.
Perhaps people just appreciate what they actually find, in their real lived experience, when they use the service?