I think the model of "keep our core business software proprietary and open source all non-core software" is a good one, and one we should encourage all companies to share.
If they open sourced their core site, how would they make any money?
Considering the amazing value Github provides for the IT world, I really don't care if they release their code.
Isn't it enought that they have revolutionized development workflows, project hosting and made contributing and collaborating so much easiert?
(to be clear, GH wasn't the first site of it's kind, but the network effect of having one site that that basically every developer uses daily -and be it just via one of the documentation site on GH pages- really was revolutionary)
I use github every day for professional and personal projects, and typically like what they've done, but Sourceforge.net was the github of the early 2000's, where almost every developer had an account and where you could get free development and distribution tools for your project. Look at what it is now (or was before it was re-opened a few months ago.) People's open source projects were being leveraged to push malware on unsuspecting users. We might not think it's so great to have all this centralized code storage in a few more years when the new hotness replaces github and everyone's zombie products are being used maliciously again.
Mhm, I used Sourceforge from time to time back then.
But I remember it as always clumsy (even before they got bought and started the ad craziness), and only a small subset of projects was on Sourceforge, in my experience at least.
It would eat into their enterprise "behind the firewall" sales, but github.com's biggest asset is that it's where people already have accounts and already have development tools integrated to. That doesn't change when you open source your platform.
Why? Open sourcing GH would probably be a huge undertaking for a considerable amount of their team (removing proprietary code, making sure no credentials are in there, etc).
Not to mention the fact that the whole of github is probably a bunch of disparate little project worked on by individual teams that would require a lot of effort to turn into something that could be run by an individual person. Probably makes sense to expose some of those projects on their own as open source project like they are doing here.
My two cents? Because they have based their entire business and clientele around an open source piece of technology. Their contributions back to the community which gave them the core of their company feels... anemic.
Even if their entire stack was open sourced, GitHub would still be a profitable company simply because it's GitHub. They're hosting hundreds of thousands of repos on bare metal and providing tools around those repos allowing for the maintenance of a community - that's why they are making money; not because of some secret sauce in the code. Otherwise, GitLabs would have eaten their lunch by now.
I could definitely be wrong, and they do have 8ish pages of projects they offer up themselves, but so many are just meaningless dumps of one-off projects.
I have never worked on a piece of proprietary software that would be in a state where it could be released publicly in any form without a very large outlay of development time and money. I'd be very surprised if github is any different. "Why not" is for things that are easy to do. Things that are hard and / or expensive to do require strong justification.
Honest question - do you think if the proprietary software you worked on had been planned from the beginning to be released publicly, a very large outlay would be unnecessary?
Not him, but if I were writing something that was going to be publicly released then I could imagine the team would:
a) Have to include a lot more documentation
b) Be a lot more paranoid about best practices, and writing generalizable code even if it doesn't fit their particular slice of the market
c) Never have the chance to use a closed source solution for part of the problem (e.g. no we can't have half our app actually be a series of Oracle specific stored procedures, or buy a UI package for $20,000 rather than use a heavily modified version of Bootstrap).
Not at all - if it were part of the strategy from the outset, different decisions would be made along the way. I wasn't trying to say that it's necessarily harder to build software for public release, just that it's hard to publicly release software that was not built that way. But I guess I don't really know for sure - I've never worked on a project like that.
Because if you say to management "hey, why don't we release the code that our entire business is built off of for anyone to host for themselves for free!" you'd be laughed out of the building on your way to the psych ward.
They only said they will release components of it as open source. They do not say if a coherent piece of software will ever be released but today would have been the traditional time to do so for actually open source projects.
It looks like marketers leveraging open source on their marketing blog that leverages developers.
A "whole" piece of software would require you to have made the same data center design decisions we've made at GitHub. While some of our choices are opinionated, I think you'll find the GLB architecture adheres to the unix philosophy of individual components each doing one thing well.
Either way, I hope the upcoming engineering-focused posts are interesting and informative! Developing GLB was a challenging engineering project and if open-sourcing it means other companies can benefit from our work and spend more time developing their products, then I'll consider that a success.