I spent eight years building software on .NET, so I have a lot of time for Microsoft, but I fully understand why a lot of people aren't happy with this news. It's been good to have a leader in open-source that is unaffiliated with anyone but the tech they chose to use (Ruby/Rails). For me, it doesn't matter who takes it over - it's just sad to see a neutral player disappear.
With all that said, things have changed a lot over at GitHub over the past 2-3 years, so I can't say I'm all that surprised that this was the outcome. Restructures, scandals, and some crazy comments over the few years has led me to believe that GitHub probably isn't the same company that the development community embraced. For that reason, I can't see Microsoft doing a "Skype" and merging GitHub into their platforms. Developers are fickle, and if Microsoft mess with GitHub then it's not only a huge blow to the relations they've been trying to build for the past few years, it's a guaranteed way to see developers flock to the next big service (i.e. GitLab).
This dovetails nicely with Windows Subsystem for Linux, VS Code, and Microsoft’s ongoing play to capture the Silicon Valley hipster development ecosystem that Apple is alienating.
Given that GitHub is quite proudly built on Ruby, I can't see them wanting to switch things up from a tech perspective. GitHub is stable, and it's tech stack is capable of staying up despite some major DDoS attacks.
If anything, I think this is an opportunity for Microsoft to introduce themselves to the Ruby and Rails teams, and to finally resolve the issues that stop Windows from being a first-class citizen in the Ruby world. If they can do this through both Windows and the Windows Subsystem for Linux then I think they'll be on to a winner. It's a capture of a much-loved service, and an opportunity to bring a mature set of tools into their domain.
I have lived and worked in SV for a decade, and still don't know a single "Silicon Valley hipster" developing with WSL or VS Code.
I do know the power of analytics and control over prominent backend systems, and the allure of being "gatekeeper" with the power to extract value from integrations.
> This dovetails nicely with Windows Subsystem for Linux, VS Code, and Microsoft’s ongoing play to capture the Silicon Valley hipster development ecosystem that Apple is alienating.
I can tell you from experience that that will never, ever happen.
The most likely outcome is that GitHub will slowly but surely start to bleed open source projects to alternatives like GitLab. And GitHub will continue to live on, like LinkedIn and Skype before it, but it will lose mind share and will no longer be the epicenter of open source development.
> Silicon Valley hipster development ecosystem that Apple is alienating
Not sure what you mean here.
They've never specifically targeted non-Apple developers as a core constituency. It was mainly due to the fact that OSX was UNIX derived that the platform became popular at all.
Linux subsystem for windows is garbage, it brings all the same issues with running a linux VM on windows with no more benefit than cygwin gave and who exactly is apple alienating? This sounds like opinion since apple profits are doing just fine and waking into any incubator will show you who the dominant player is. also windows is not even close to comparable to macos except that they’re both OSes
I also spent years working with Microsoft’s proprietary technologies. The reality of Embrace, Extend, Extinguish was still alive and well as late as 2011 when I mostly stopped dealing with them. Since that time they have definitely taken a new direction, with increasing adoption of Linux in particular, but I have trouble belieiving the corporate DNA has been so thoroughly overwritten in the last few years that this does not spell the imminent demise of Github as the broadly useful plarform that we know it as today.
Their "corporate DNA" was established when the desktop was supreme and they could steer the direction of the industry based on thier Windows dominance.
Times are different, mobile is more important, cloud hosting is a real thing and technology changes. They had to evolve or die. Saying you can't trust MS in 2018 based on the way the world was years ago is like saying that Netflix could only ship DVDs to people's houses, Amazon can't be trusted to do cloud hosting because they only sell books, and that a minor niche computer maker should never be trusted to sell phones.
I guess it depends what side of Microsoft we get working with GitHub, whether it's the friendly outreach side alongside the .NET Foundation, or whether it's the internal software team that want to integrate GitHub into internal tooling and start moving their platform onto theirs.
My dream scenario is the former, where Microsoft provide leadership to a company that's still reeling from its own scandals, and use GitHub as a platform for promoting open-source, rather than as a way of mining their access to the open-source world to benefit their own tooling.
Microsoft is one of Linux Foundation biggest donors, which means they have leverage over them. They are invited to discuss new Linux developments, products, etc...
Except now they have billion dollar data centers they need your servers on and don't care if you use their software as long as they turn a profit from the hosting. Bill G is probably kicking himself for not renting servers decades ago.
Hmmm... Windows Subsystem for Linux... the 1998 Microsoft-vs-Linux report... hmmmm.
While I'm currently picturing a pacman trying to eat a dot a bit bigger than it expected, I do wonder what kind of hilarity Microsoft have planned for, presumably, 5-10 years from now (I'd presume they're in the Embrace/Extend period if my conspiracy theory is right).
[Small edit: currently at -1; interesting | Edit 2: Now at -4! Anybody care to actually comment? I'm interested in why people disagree!]
Skype wasn't ruined because they attempted to merge it into their other platforms. Skype was just flat out ruined with bloat, horribly inefficient code, turning it into a spying tool and not listening to their vocal users. Everyone was rioting after every update and it just got worse. To add insult to injury the last major update they have tried turning it into Snapchat. Their incompetence knows no bounds. If you think the same middle managers that ruined Skype aren't there anymore, you don't know how big companies like Microsoft work.
I wonder if pre-acquisition Skype was one of the hardest software the Windows team had to deal with. For example, at one point they used SYSENTER directly to make system calls!
> For that reason, I can't see Microsoft doing a "Skype" and merging GitHub into their platforms.
Maybe not now, but what about after the next reorganization or the next CEO? If it's no longer in MS' interests to keep a relationship with this audience somewhere down the road, why would they leave them alone?
For Github there was always uncertainty; if MS didn't take over, investors would've, or another (less capable) competitor (like I dunno, Yahoo?). I'm confident in MS keeping github running smoothly and moving forward.
Is it? I imagine VSS and their cloud source control offering (don’t remember the name) probably aren’t doing all that well in the face of GitHub.
They want to be a player in that game, so they’ll transition off they are old product which isn’t that popular onto a new one they purchased that has all the mind share.
As long as they don’t screw it up, and recent Microsoft seems to me like a company that won’t, it will benefit them. And perhaps it will benefit the user some to do have a company with deep pockets behind it.
The timing is suspect, because Google has been pushing Cloud Source Repositories as a private Git repository recently [1]. So, GitHub will most likely be part of Azure portfolio. Developers might be fickle, but they are fully locked into their respective cloud platforms in the recent years.
Kallithea doesn't support SVN, only RhodeCode does which Kallithea forked. SVN support amongst many other security fixes and features were added at a later stage into RhodeCode.
It's why I'm surprised at the timing, since GitHub has had its own issues over the past few years, with a founder and other staff members leaving over harassment, and some questionable comments coming from members of their new team. I've felt for a while that GitHub had peaked, and that we weren't far away from seeing it push towards breaking the product to satisfy investors that want a return.
With an acquisition, most of this becomes amplified, based on how Microsoft treat GitHub. IMO, leaving them alone to do their own thing could be just as bad as being too controlling. I'd like to see someone like Scott Hanselman, a well-liked developer in the development community be given the opportunity to sit in GitHub and to use Microsoft's resources to improve the open-source community.
It's interesting that the HN community continues to make reference to the prospect of a decentralized internet when Git was built to be decentralized in the first place. In spite of this, we all have congregated around GitHub for the community and are shocked when the centralized source we've been using gets acquired by a company we don't trust. That's sort of the whole point of centralization, you can't trust it. Maybe this event will finally shift things back into a decentralized direction.
Centralization has an undeniable fundamental attraction. Everything, really, seems to naturally trend towards centralization, and then major scandals reverse the trend. We will probably swing back and forth between the two in perpetuity.
The whole darn internet was built to be decentralized. And yet we all use GMail, the same handful of DNS servers, the same short list of major trunk hubs, the same shrinking list of bitcoin mining pools, etc.
I've always found it too difficult to choose the "decentralized" option for many services. It's just not convenient enough to spin up my own gitlab server, or own email. I tried to do both of those things a while ago when I was still new to Linux, and gave up due to the number of steps involved which I inevitably fucked up.
The solution for me would be packages which hold my hand through the install process to make installing such software as easy as possible. Obviously, packaging software in this way would take way more work, and people qualified to do this would rather package more software rather than hold some noob's hand.
That being said, hopefully in the future when software gets even more mature, repackaging will become less necessary, and this type of packages might become more common, allowing decentralized systems to be easy enough to set up that they become common.
Ben Thompson at Stratechery has been banging the centralization drum for a while. His take is the sheer scale of the internet imbues tremendous value to any centralized service that can organize it (e.g. what Google does for web pages or Facebook does for your friends).
If this is the case then the internet may end up more centralized than previous forms of media and communication. I hope that's wrong, but it seems to be happening right in front of us.
I think the big problem is not so much centralisation as it is that people are locked into platforms.
There's nothing wrong with using Gmail for email hosting if you have your own domain name, it's easy to then switch over. But if you use an @gmail.com email address and Google decides to ban you, you're screwed.
Same story with Facebook, there are quite a few people that I would possibly never be able to contact again if Facebook banned me or them. This isn't a new problem caused by Facebook though, in previous years there was the same problem with email, and before that, if someone changed their address or phone number you'd lose contact. There are actually people who I lost contact with who I regained contact through Facebook.
Anyway, my point is that centralisation isn't bad if it's painless to decentralise again. Git and Github are fine, at work we could switch to a self hosted solution or Bitbucket in a fairly trivial amount of time. Same for our work emails, we could switch form Gmail to another host with fairly minimal disruption. Centralisation with locked ecosystems, like Facebook, are not good.
Maybe we can eventually achieve something like decentralized ownership of centralized web resources.
While not quite decentralized ownership, Wikipedia is at least a non-profit that everyone contributes donations to. Where's the Wikipedia for code? Where's the non-profit donation-based social network?
> Everything, really, seems to naturally trend towards centralization,
It's economics 101, really: division of labour and economies of scale. A company like Github can build and sustain capabilities that are flatly uneconomical for their customers to build themselves.
In terms of strategy, Github's lockin doesn't come from git. It comes from everything around it: issues, pull requests etc. This functionality can be replicated, but data has inertia. The more you have, the less you want to move it.
For an instructive parallel, consider how easy it is to use AWS Lambda with all of AWS's data-centric services.
> The whole darn internet was built to be decentralized. And yet we all use GMail, the same handful of DNS servers, the same short list of major trunk hubs, the same shrinking list of bitcoin mining pools, etc.
Eh, I have Gmail, but I barely use it.
Regarding DNS, that's only because the DNS provided by ISPs is being tampered with or runs downright awful.
What happens is people copy each other's behavior. X (friend of Y) starts using Facebook. Friend of X starts using Facebook as well. But X never looked into the alternatives (who has the time for that plus everyone is using Facebook); its only because of other people that they started using it. It is called the network effect [1] though we can thank the early adopters for feeding that hype. I see it as a sign of capitalism/optimization.
You can easily migrate your repo to a different service, so having lots of developers rely on GitHub isn't really a big deal. Many large projects have GitHub mirrors.
I'd say the biggest issue is that Git doesn't include better built-in support for issues, wikis, PRs / code reviews, and releases. Compare that to Fossil [0], which lets you bundle up everything into a single file. If there was better built-in support you could migrate everything more easily to self-hosted alternatives like Gitea [1]. Regardless, it's possible to migrate manually, even if it's a bit more work.
> Git doesn't include better built-in support for issues, wikis, PRs / code reviews, and releases
I feel like a lot of these features could be handled with git-notes[1]. For example git-appraise[2] uses the git-notes feature for a code review system:
I'm glad to see Fossil mentioned here. Yet the real problem is not in the technical aspects and possibilities of project hosting migration, it's the dependence of the majority of open-source developers on GitHub's centralized social network.
Well, centralisation also has a huge number of benefits, so it's not really a surprise.
The more important thing is to be in a position that makes it harder to be locked-in to a centralised provider. Fortunately Git makes that relatively easy – I could switch all of my work to Gitlab or Bitbucket with relatively little work.
There's more obviously a problem where Github is being used for issue tracking, PRs, and the general open-source community. I'm sure there will be a few scripts available to make migrating issues etc. to another provider relatively painless, since there's no great distributed solution for this at the moment. That just leaves the community aspect, which is going to be the hard bit…
I think the network effect is too great to ignore. I would guess the number of potential contributors you get just by using GitHub, where many people have an account and know the workflow/UI, is bigger than any other place.
5 years from now when GitLab is acquired by Google we'll have to migrate again.
Or export you projects to someone else running GitLab. All the functionality to run a forge in GitLab is open source and export/import is open source as well.
I think we all trusted github because of git: we know that worst case was that github disappeared overnight, erasing all repositories, and in that case we all would still have distributed backups to restart it.
So we had limited trust in the centralized missions we gave it: communications, issues, pull requests.
I am sure that as soon as a good tool allows to do that in a decentralized fashion, we will switch to it.
If Git/Github is the epitome of the developer's centralised experience, then I full heartedly welcome that.
As others have mentioned, there's certainly advantages to centralised systems like Github's network graph, issues, etc. But at the end of the day, everyone on GitHub still cares a whole lot more about the code, and due to the very nature of the protocol that's something that'll always be able to be taken elsewhere. It's not like "if they announce shut down you can export your data", there's a very high lightlyhood you have already done that and you have the full repo on your local machine.
I feel like Github is the best possible compromise - centralised network and features that's built on a decentralised protocol and easily able to be taken elsewhere.
>Maybe this event will finally shift things back into a decentralized direction.
Absolutely no chance, and I'm fine with that. Sorry, but I don't feel like spinning up a slhit server and managing all that goes along with it. I just want my code hosted somewhere that others can access. These meta issues are just noise and don't bother me (or 95%+ of the people using GH) one bit.
And there it is. "Git" "hub" could be considered an oxymoron. The adoption of this proprietary closed-source veneer over git by FOSS developers has always been ironical to the point of farcical. Now the other shoe has dropped.
Good point. It's not too crazy to have people behind major open-source efforts get their own VPS's and run Phabricator or Gitlab. With a universal login akin to OAuth maybe it's doable.
That's insane, not only do developers and maintainers devote a huge part of their life to major open-source efforts, now they are expected to spend more time and money setting up, admining, and securing their own private servers? That's a great way to destroy Open Source projects. Very few people would be able/willing to put that much effort into it.
Decentralization is a wonderful idea. It brings with it benefits that are technical, architectural, and social. Yet is also carries with it its own set of costs and risks.
Bluntly, I doubt this will shock the world of software development into being less centralized. The practical benefits of centralization are, apparently, too large to be readily overcome.
(shameless plug) I recently built a tool (SIT, https://sit.fyi) that has decentralizes issue tracking and similar workflows, giving full days ownership and independence of storage and transport. Can be (and actively being) used with Git, or other SCMs.
This. As with so many things, laziness has driven developers to be using Github as single point of truth. And it is cringeworthy to see how few developers actually know what git is and that Github is just a company monetizing opensource software. About time everyone got a wakeup call.
To be fair, github provides a lot of value-add on top of plain git. Having UI for access control and integration with issue tracking and CI tools gives you a lot that you would not get out of the box with git.
That said, I have always been uneasy with one central player hosting a huge percentage of open source projects.
> In spite of this, we all have congregated around GitHub
Nearly all. I never got into the swing of it - always expecting a thing like this to happen sooner or later. Honestly, I shall not be sad if the world starts beating a path to somewhere else now.
Humans* aren't built for decentralization. We can only keep so many unique names in our head a time, only so many connections. I don't have any papers to link to on this, but I think it's safe to say that's how things are - if not we wouldn't have created cities, national identities, and of course, newsgroups, message boards, centralized package managers and distributions, and yes, source code repositories.
There is something nice about knowing, with a high degree of certainty, that any given open source project (or any thing) is in one of a few places, and if I don't know where that is I can ask for help to find those places by their names.
That's mixing up a whole lot of concepts. Centralization is about power.
Cities generally have very little centralization. Almost no interactions in a city go through a central entity, similarly for countries. Concentration is something different than centralization.
Newsgroups have very little centralization. Everyone reads and writes through different servers, and you can trivially switch servers without any impact on who you can communicate with. Agreeing on names and federation is something different than centralization.
...
There is absolutely no need to have software development happen on one proprietary platform in order to be able to search for software project in one centralized location. What you need for that is a search engine. Or even multiple competing search engines that can all index the same set of software projects.
Many humans are apparently not, but I had a much easier time navigating (and contributing to!) projects when each of them had their own website with integrated scm links etc.
GitHub is a grey mass, project branding is lost, the tracker is chaotic for large projects.
It's just Sourceforge, better executed but with the same disadvantages.
I think that's quite a stretch, the reasons for decentralized version control (practical use) are far different than a decentralized internet (humanitarianism).
It’s not just about efficiency, it’s about responsibility. I love decentralization when I can avoid dealing with BigCo, I hate it when I’m responsible for fighting spam, ensuring my services stay up, not getting hacked, and so on. All of these tasks are a requirement as soon as collaboration is in the picture.
I disagree. The popularity of GitHub amongst the programming community means that ease of use / convenience is more important than the notion of “decentralization”. Otherwise, people would already be setting up their servers for hosting git repos.
Totally agree. For me decentralized means desktop clients or own cloud. Own cloud is more expensive to maintain. Desktop app are more expensive to develop and maintain too.
This is a completely smart purchase on Microsoft's part. I can't imagine more synergy between two companies:
- Microsoft has always been the largest developer advocate of any of the major tech players (Google has been a great contender for this position since 2010).
- Microsoft has moved most of their open source projects to Github.
- Microsoft is a major contributor to Git, including massive infrastructure projects to make it possible to host the NT kernel on Git.
- Microsoft has tried to do open source git hosting in the past (Codeplex?) but it never succeeded. Also: Microsoft partnered with Github when they shut down to migrate Codeplex projects to Github.
- Github has the Atom team, which would have some great synergies to combine with the VSCode team.
- Github are the champions behind the electron project, with a lot of institutional knowledge about that technology + native web apps/PWAs in general. Microsoft is making a huge push toward writing UWP apps as PWAs.
Time will tell how they handle this merger. They've handled a few pretty well (Linkedin, Mojang come to mind) and others horribly (Skype, Yammer, Nokia).
This "synergy" seems to be pretty one-sided. Which of these synergies is useful for existing GitHub users? That's kind of the problem with this acquisition, which is why few Github users are excited for it.
It also doesn't feel like Microsoft understands developers or even end users consistently. VSCode is a nice editor, but not the only one. The MSDN docs and site is awful. Azure is okay, but Windows 10 is somehow more annoying than macOS.
Meanwhile Github is in a tricky position, because for most people there's nothing but "community" keeping them on it. Github has some decent features, but nothing so great it would stop me from using their competitors. And they don't even have a CEO to provide the vision. The only thing in their favour is inertia.
I think that the biggest loser is going to be IBM clearcase. Especially in government/defense work the developers want to use git, but can’t get it because of lack of security reviews. I can guarantee you that Microsoft sales people are already calling every software group manager at all the defense contractors.
Well, clearcase is a horrible monster and it would benefit just about everyone on Earth if it dies.
How many drivers on the road would be less likely to cut someone off or road rage if they didn't have to deal with ClearCase again? I'm sure that number is greater than zero.
I'm only being partially facetious. ClearCase truly is the worst.
They can't "depreciate" an OSS project just because it's hosted on a platform they own. Atom will live on one way or another, and it was never exactly tied at the hip with GitHub anyway.
Atom is open source though isn't it? So I'm sure it won't ever disappear. I wouldn't want to move to VS Code though. I use a Mac and have heard good things about it, but I'm sure it will always be a second class citizen.
It has allowed LinkedIn to remain free for one customer base (professional networks) while expanding sales and recruiting tools (navigator) without compromising user information (InMail rather than your private email unless you've opted as such).
I would put money on it if the merger goes through. There's very little reason for both to exist, and VSCode is absolutely a superior project. Atom has its advantages, but most of them could easily be manifested by collaborating with the Atom team and bringing those features in.
I'm starting to get really frustrated with Atom and it pegging my CPUs at 100%. I honestly don't see VSCode as that much better considering they're both bloated electron apps.
I've started going back to Sublime, and found I missed some of the really helpful tools in Atom.
I think the entire atom/vscode thing is going to be really curious should this acquisition go through. I'm going to guess they're going to keep running both teams; or really they'll probably keep running Github as it is.
Interestingly enough they're actively working on public vsts repositories, I thought that was devdiv trying to migrate their code back to MS land. Wonder if that's what sparked the conversations.
> Interestingly enough they're actively working on public vsts repositories
Is this public knowledge? They shutdown their public repos service a while back and I had a manager at Microsoft admit that getting public repo traction was insanely hard. GitHub literally has a strangle hold on the public repos space.
What? Microsoft is the biggest developer advocate? Apple gives X Code away for free and made Swift an open source, platform agnostic product among many other things.
I am worried that a company as important to the open-source community as github is now owned by one of the major players. I think it really impacts the neutrality of github. If I would compete with microsoft in a certain space, I would really think twice about relying on github.
Agreed on both points. The shift will bring a lot of opportunity to build a more decentralized repo base. I think something like (Keybase)[http://keybase.io] might be interesting.
I'd recommend running your own FossilSCM server. It supports full code repo, wiki, bugtracking, and more. And it's free software to boot.
I'm looking to see if it's feasible to write a github->fossil layer to make it easy for programmers to dump to local. Right now, Git is easy to dump... but those issues and wiki support isnt dumpable yet..
How profitable would they be if they didn’t pursue “growth at all costs” and built GitHub with a small and focused team like Stack Overflow or WhatsApp?
As a startup, worrying about competition from Microsoft hasn't been a big deal for almost a decade. I would be more worried about Facebook, Amazon, and Google.
the history of Microsoft is the reason why we all reacting this way. But encouraged by the move they made lately coming into Linux, even though other players have forced their hand
I'm all for FOSS (Git webgui) solutions, but they were absolutely not competitive until recently. Even now, with less trust, the social effect and the lack of need of maintenance and setup is attractive.
Probably because its fairly low-risk. I have ~270 Github repos. About a year ago I made a ~5 line Python script that added Gitlab as another origin to each repo. I still use (used) Gitlab as my main host, I'm a paying customer - but for me to flick over to Gitlab is a one-liner.
Well, Google recently also purchased Kaggle, another major open-source repository for code. It hasn't really changed anything for now, but Microsoft's purchase will be in the same vein. I think that Microsoft's contribution to the open-source community in the last few years kind of makes sense for why they are purchasing it, just like Google purchased Kaggle because of their contribution to ML.
Your dream of “neutral” VCS is misfounded. Websites like GitHub are massive bandwidth and storage hogs and needs huge cash burn just for dev ops. Unfortunately they can’t be reasonably profitable as well because revenue sources are rather tiny. This means every vcs company out there offering free for all plan is bound to be sold or go bankrupt.
For GitHub I would have wished Google bought them because there is huge synergy both ways. With Microsoft, eventually some CVP there will realize that there is no profitability and they will leave it to rot.
This is sad news. Partially because I don't care for Microsoft, but mostly because Github was a neutral third-party without any priorities. I hope they don't discontinue Atom or apply their UX styling to the site/desktop app. Like Spotify, I felt safer that a company was just doing hosting in their domain (of music or code projects) and wouldn't try to shovel some other tech into it like Apple making Apple Music terrible on Windows. It's good to have more tech companies just doing their single thing well.
Atom is MIT licensed, GitHub can't "discontinue" Atom so much as stop paying their engineers to contribute to the project. After that it's whether there's enough impetus outside the company to continue the work (I suspect there probably is, Facebook are heavily invested in Atom).
True, but Windows users would find it odd if an app didn't suck. It has to match the overall Windows experience.
Note: I'm working on making Chef code work for Windows deployments of an application that runs under Node. I have strong opinions on Windows right now.
I'm sure they'll try to 'Microsoft' it. They could never keep their hands off any UI in any product, no matter if it works or not, and especially lately, leaving a rather spectacular trail of destruction in their wake.
"because Github was a neutral third-party without any priorities"...what are you talking about? They are a company with a purpose to make money. And when I think about some of the other possible buyers, I am fine with Microsoft.
The GP means they were neutral with respect to the tech giants' ecosystems. They didn't favor Amazon or Microsoft or Google's tech. Consider that Apple, Google, and Microsoft all had GitHub organizations and hosted code there. That's what they're talking about
Were it a consumer product I'd agree. But this is a developer tool and MS have been doing fairly well in that regard the last few years with azure and vscode.
Not happy as others have stated of pretty much the largest neutral party in development being absorbed.
It sucks. We had as you said a neutral site everyone used. Now the big guys will move their code. Hopefully we will get a new common GitHub that is neutral and they will use. Sounds like it might be gitlab.
Just wish MS could have left alone. They just do not help move things forward. Now wasted cycles have to be spent to deal with this thanks to MS.
Do you think Gitlab will stay independent? They’re burning money. They’ll in all likelihood be acquired in the coming decade as well.
Or do you think GitHub didn’t want this? Microsoft didn’t force anyone here. GitHub received hundreds of millions in funding. They couldn’t just stay put as a money losing entity.
I don't quite understand why people are sad or disappointed about this acquisition. You should be extremely elated about it. You know why?
Github was never an Open Source product itself but sat on top of the Open Source community and used that "goodwill" to license and sell its proprietary software.
Now that another proprietary software-maker has acquired this company, maybe we can all finally adopt the principle that:
That's assuming people here care deeply about open source and it's philosophy. It's probably fair to say that most people on HN care a lot more about how building the next Atlassian or GitHub and conveniently being able to use OSS for that than about those philosophical values.
I love open source, but it doesn't mean I think absolutely everything must be open source... the most important part here _is_ (git), github was (omg I'm already speaking past tense) a decent platform sprinkling some nice simple collaboration on top and convenience, it's not vital, and it's replaceable (so we have choice), and for a long time it was the best there was.
People are disappointed because many of us don't trust or like MS and want nothing to do with them, people complain about Google removing their "do no evil" clause, Microsoft basically has a fucking "do evil" clause but they will always tell you the opposite, they are probably even being sincere, it's just not true though.
One could argue that both Atlassian and Github were to some extent successful, because they kept the open source competitors away by giving out free licenses to open source projects.
With these free options available, people in community were less interested in putting effort to free (as in speech) alternatives for these closed source products.
LinkedIn? The network everyone loved to hate? I don't think anything has changed in that regard, if anything, Microsoft are probably 1% more trustworthy compared to the super-shady LinkedIn management of old.
Microsoft is opening LinkedIn up to other tools while completely maintaining their goal of not sharing your data (Iframe integrations so no data is shared). They're expanding capability without selling out users
Did i miss some news? Skype is still Skype and Linkedin hasn’t changed much either. ?? if anything those two proves being Acquired by MS is not as bad as for example Google who loves to eventually shut down their acquirers.
As a github user, i don't see any way the acquisition could possibly make my user experience better.
I don't use any microsoft tools (and I _hate_ all windows after 7), so Microsoft integrating with GitHub has no appeal to me.
I think the best case scenario for me personally is that nothing changes. None of the github changes in the past few years have added anything noticeable for me (not sure if others agree, be interested to know). And the best case scenario being "nothing changes" is pretty damning. I know it's overwrought, but Skype was perfect, and 2010s-Microsoft fucked them up. And if we're seriouslyhaving the best case scenario be "nothing changes", that's bad.
And it also just seems part of the bullshit mindset of startups being about the exit, and not about making a new, sustainable company.
GitHub didn't need to do this, but they did, to justify their reportedly insane burn rate. Microsoft still won't let them get away with that, they'll just take the heat for the inevitable layoffs.
Tangentially related, but maybe microsoft could actually do that : why is github's search so terribly bad ?
If they had developed a good powerful code search (custom semantic engine for most used languages, complex queries, exact/fuzzy matches for syntax, use of history, etc) they could have become the primary way you interact with code you don't know yet.
As it stands now it's simply more efficient to clone and use plain old grep, it's really sad.
It is shockingly bad. The fact that you can't code search in a fork blows my mind. How have they not fixed this basic, important feature after so many years? What could possibly make it more difficult than a few person-months of effort?
Maybe avoiding the costs associated with keeping the indexes available for every fork? I believe they use elastic search so maybe someone with more experience with that can comment.
SourceGraph tries to fix it, and the experience of searching, jump-to-definition and generally getting to grips with a codebase is way better there IMO. They also have browser plugins with integration to GitHub. I recommend you to check it out.
Sourcegraph CEO here. Glad you like Sourcegraph! Regardless of what happens with GitHub and Microsoft, we agree that developers need great code search.
They don’t index forks. Cloning a fork just to search through it locally is always fun. Very annoying when a fork becomes the de facto project because it’s the one being maintained.
As one of my pet projects, I'm trying to resurrect Google's Code Search (a fast search indexer that supports regular expressions).
It's in alpha stage so far and lots of useful features (like multi-line search) are missing but you can already try it out for Crates.io and Hackage: https://codesearch.aelve.com. Indexing all of npmjs is coming soon.
Search seems to be surprisingly bad at a lot of companies. I don't know about github but reddits search is so bad it cannot even find something when you type it character for character.
I'm super curious to what all these companies are using for search because they are so atrocious that tend to not even work in a basic substring search solution.
Exactly. I can’t search my own tweets on Twitter. Facebook doesn’t know how to rank people when I do people search there. Search is terrible across the internet except Google.
That doesn't make sense. Ruin the feature to potentially help someone who made a mistake with security? Why wouldnt they just run the search to find keys themselves and remove them from search results.
It boggles my mind why GitHub's search finds results across various commits, giving patchy results. It would be far better and likely easier for GitHub to just search HEAD. This frustrates me about GitHub every day.
That would be really great.
To improve looking through new repos at least a litte bit I like the browser plugin [Octotree](https://github.com/buunguyen/octotree), it adds a tree view of the code and eases jumping between files.
Sure, MS visual code is open but as a few players get more and more power we all become subject to their whims and not them to ours.
MS is pushing their ads within their own OS more and more, will GitHub get the same treatment, or will it’s data be useful to MS for those ads?
What sort of integrations can we expect to see with other MS products that encourage a more closed ecosystem?
This may all seem alarmist but with so many companies having so much power this sort of behavior get through unchecked.
The only recourse people suggest is “well then don’t use it” but what options do employees have when higher ups mandate technologies? What about most users who just go with the wind and just let these snowballing large companies skate by? It all makes me very sad...
The problem is that virtually all startup wants an exit. They have employees sitting on stock options for years while forgoing their market rate. They have investors wanting 10X return. This would work out for insanely profitable businesses like Google but for the rest they have built huge expectations on business models tha t are unworkable so buyout by a sucker is the only viable outcome for them. Coincidentally Microsoft has recently decided to become that sucker with LinkedIn and now GitHub.
Definitely, investors don't give you money just for kicks, they want a payday. It shapes the community... people who take that money get a head start, crowd out competition. Everyone needs to grow huge, get bought, or die.
What could change this? People refusing money? Some encouragement to stay mid sized? Wonder if that will ever happen...
With all that said, things have changed a lot over at GitHub over the past 2-3 years, so I can't say I'm all that surprised that this was the outcome. Restructures, scandals, and some crazy comments over the few years has led me to believe that GitHub probably isn't the same company that the development community embraced. For that reason, I can't see Microsoft doing a "Skype" and merging GitHub into their platforms. Developers are fickle, and if Microsoft mess with GitHub then it's not only a huge blow to the relations they've been trying to build for the past few years, it's a guaranteed way to see developers flock to the next big service (i.e. GitLab).
Given that GitHub is quite proudly built on Ruby, I can't see them wanting to switch things up from a tech perspective. GitHub is stable, and it's tech stack is capable of staying up despite some major DDoS attacks.
If anything, I think this is an opportunity for Microsoft to introduce themselves to the Ruby and Rails teams, and to finally resolve the issues that stop Windows from being a first-class citizen in the Ruby world. If they can do this through both Windows and the Windows Subsystem for Linux then I think they'll be on to a winner. It's a capture of a much-loved service, and an opportunity to bring a mature set of tools into their domain.
I do know the power of analytics and control over prominent backend systems, and the allure of being "gatekeeper" with the power to extract value from integrations.
I can tell you from experience that that will never, ever happen.
The most likely outcome is that GitHub will slowly but surely start to bleed open source projects to alternatives like GitLab. And GitHub will continue to live on, like LinkedIn and Skype before it, but it will lose mind share and will no longer be the epicenter of open source development.
Remember SourceForge? Yeah, that's right.
Not sure what you mean here.
They've never specifically targeted non-Apple developers as a core constituency. It was mainly due to the fact that OSX was UNIX derived that the platform became popular at all.
Interix/SFU/SUA has always existed. WSL is just the latest iteration of it. And nobody uses it now just like nobody used it before
Dead Comment
Times are different, mobile is more important, cloud hosting is a real thing and technology changes. They had to evolve or die. Saying you can't trust MS in 2018 based on the way the world was years ago is like saying that Netflix could only ship DVDs to people's houses, Amazon can't be trusted to do cloud hosting because they only sell books, and that a minor niche computer maker should never be trusted to sell phones.
My dream scenario is the former, where Microsoft provide leadership to a company that's still reeling from its own scandals, and use GitHub as a platform for promoting open-source, rather than as a way of mining their access to the open-source world to benefit their own tooling.
Hmmm... Windows Subsystem for Linux... the 1998 Microsoft-vs-Linux report... hmmmm.
While I'm currently picturing a pacman trying to eat a dot a bit bigger than it expected, I do wonder what kind of hilarity Microsoft have planned for, presumably, 5-10 years from now (I'd presume they're in the Embrace/Extend period if my conspiracy theory is right).
[Small edit: currently at -1; interesting | Edit 2: Now at -4! Anybody care to actually comment? I'm interested in why people disagree!]
Dead Comment
Maybe not now, but what about after the next reorganization or the next CEO? If it's no longer in MS' interests to keep a relationship with this audience somewhere down the road, why would they leave them alone?
This is the uncertainty people are afraid of.
It’s like if Google bought Mozilla and Firefox became just another Google browser.
Microsoft rescued them.
They want to be a player in that game, so they’ll transition off they are old product which isn’t that popular onto a new one they purchased that has all the mind share.
As long as they don’t screw it up, and recent Microsoft seems to me like a company that won’t, it will benefit them. And perhaps it will benefit the user some to do have a company with deep pockets behind it.
[1] https://cloudplatform.googleblog.com/2018/05/Cloud-Source-Re...
With an acquisition, most of this becomes amplified, based on how Microsoft treat GitHub. IMO, leaving them alone to do their own thing could be just as bad as being too controlling. I'd like to see someone like Scott Hanselman, a well-liked developer in the development community be given the opportunity to sit in GitHub and to use Microsoft's resources to improve the open-source community.
Dead Comment
The whole darn internet was built to be decentralized. And yet we all use GMail, the same handful of DNS servers, the same short list of major trunk hubs, the same shrinking list of bitcoin mining pools, etc.
The solution for me would be packages which hold my hand through the install process to make installing such software as easy as possible. Obviously, packaging software in this way would take way more work, and people qualified to do this would rather package more software rather than hold some noob's hand.
That being said, hopefully in the future when software gets even more mature, repackaging will become less necessary, and this type of packages might become more common, allowing decentralized systems to be easy enough to set up that they become common.
If this is the case then the internet may end up more centralized than previous forms of media and communication. I hope that's wrong, but it seems to be happening right in front of us.
There's nothing wrong with using Gmail for email hosting if you have your own domain name, it's easy to then switch over. But if you use an @gmail.com email address and Google decides to ban you, you're screwed.
Same story with Facebook, there are quite a few people that I would possibly never be able to contact again if Facebook banned me or them. This isn't a new problem caused by Facebook though, in previous years there was the same problem with email, and before that, if someone changed their address or phone number you'd lose contact. There are actually people who I lost contact with who I regained contact through Facebook.
Anyway, my point is that centralisation isn't bad if it's painless to decentralise again. Git and Github are fine, at work we could switch to a self hosted solution or Bitbucket in a fairly trivial amount of time. Same for our work emails, we could switch form Gmail to another host with fairly minimal disruption. Centralisation with locked ecosystems, like Facebook, are not good.
While not quite decentralized ownership, Wikipedia is at least a non-profit that everyone contributes donations to. Where's the Wikipedia for code? Where's the non-profit donation-based social network?
It's economics 101, really: division of labour and economies of scale. A company like Github can build and sustain capabilities that are flatly uneconomical for their customers to build themselves.
In terms of strategy, Github's lockin doesn't come from git. It comes from everything around it: issues, pull requests etc. This functionality can be replicated, but data has inertia. The more you have, the less you want to move it.
For an instructive parallel, consider how easy it is to use AWS Lambda with all of AWS's data-centric services.
Sorry, tangential thought, I agree with your main point, and the others are much tougher.
How so? Centralization is merely enforced by the government and incentivized by the system it exists in.
Eh, I have Gmail, but I barely use it.
Regarding DNS, that's only because the DNS provided by ISPs is being tampered with or runs downright awful.
What happens is people copy each other's behavior. X (friend of Y) starts using Facebook. Friend of X starts using Facebook as well. But X never looked into the alternatives (who has the time for that plus everyone is using Facebook); its only because of other people that they started using it. It is called the network effect [1] though we can thank the early adopters for feeding that hype. I see it as a sign of capitalism/optimization.
[1] https://en.wikipedia.org/wiki/Network_effect
I'd say the biggest issue is that Git doesn't include better built-in support for issues, wikis, PRs / code reviews, and releases. Compare that to Fossil [0], which lets you bundle up everything into a single file. If there was better built-in support you could migrate everything more easily to self-hosted alternatives like Gitea [1]. Regardless, it's possible to migrate manually, even if it's a bit more work.
[0] https://www.fossil-scm.org/index.html/doc/trunk/www/index.wi...
[1] https://gitea.io/en-US/
I feel like a lot of these features could be handled with git-notes[1]. For example git-appraise[2] uses the git-notes feature for a code review system:
[1] https://git-scm.com/docs/git-notes
[2]https://github.com/google/git-appraise
Give it 7-10 years before it is riddled with advertisements or has a subscription fee for 'premium' downloads.
The more important thing is to be in a position that makes it harder to be locked-in to a centralised provider. Fortunately Git makes that relatively easy – I could switch all of my work to Gitlab or Bitbucket with relatively little work.
There's more obviously a problem where Github is being used for issue tracking, PRs, and the general open-source community. I'm sure there will be a few scripts available to make migrating issues etc. to another provider relatively painless, since there's no great distributed solution for this at the moment. That just leaves the community aspect, which is going to be the hard bit…
5 years from now when GitLab is acquired by Google we'll have to migrate again.
So we had limited trust in the centralized missions we gave it: communications, issues, pull requests.
I am sure that as soon as a good tool allows to do that in a decentralized fashion, we will switch to it.
As others have mentioned, there's certainly advantages to centralised systems like Github's network graph, issues, etc. But at the end of the day, everyone on GitHub still cares a whole lot more about the code, and due to the very nature of the protocol that's something that'll always be able to be taken elsewhere. It's not like "if they announce shut down you can export your data", there's a very high lightlyhood you have already done that and you have the full repo on your local machine.
I feel like Github is the best possible compromise - centralised network and features that's built on a decentralised protocol and easily able to be taken elsewhere.
People say this every time stuff like this happens, and yet people never learn :/.
Keeps his tools related to Cydia closed-source...
https://gitlab.com/gitlab-org/gitlab-ee/issues/4517
Absolutely no chance, and I'm fine with that. Sorry, but I don't feel like spinning up a slhit server and managing all that goes along with it. I just want my code hosted somewhere that others can access. These meta issues are just noise and don't bother me (or 95%+ of the people using GH) one bit.
Bluntly, I doubt this will shock the world of software development into being less centralized. The practical benefits of centralization are, apparently, too large to be readily overcome.
That said, I have always been uneasy with one central player hosting a huge percentage of open source projects.
Nearly all. I never got into the swing of it - always expecting a thing like this to happen sooner or later. Honestly, I shall not be sad if the world starts beating a path to somewhere else now.
There is something nice about knowing, with a high degree of certainty, that any given open source project (or any thing) is in one of a few places, and if I don't know where that is I can ask for help to find those places by their names.
Cities generally have very little centralization. Almost no interactions in a city go through a central entity, similarly for countries. Concentration is something different than centralization.
Newsgroups have very little centralization. Everyone reads and writes through different servers, and you can trivially switch servers without any impact on who you can communicate with. Agreeing on names and federation is something different than centralization.
...
There is absolutely no need to have software development happen on one proprietary platform in order to be able to search for software project in one centralized location. What you need for that is a search engine. Or even multiple competing search engines that can all index the same set of software projects.
GitHub is a grey mass, project branding is lost, the tracker is chaotic for large projects.
It's just Sourceforge, better executed but with the same disadvantages.
Git was built to track changes and resolve collisions, if I get it right.
Most people also don't have a server running constantly, so a centralized service is convenient.
- Microsoft has always been the largest developer advocate of any of the major tech players (Google has been a great contender for this position since 2010).
- Microsoft has moved most of their open source projects to Github.
- Microsoft is a major contributor to Git, including massive infrastructure projects to make it possible to host the NT kernel on Git.
- Microsoft has tried to do open source git hosting in the past (Codeplex?) but it never succeeded. Also: Microsoft partnered with Github when they shut down to migrate Codeplex projects to Github.
- Github has the Atom team, which would have some great synergies to combine with the VSCode team.
- Github are the champions behind the electron project, with a lot of institutional knowledge about that technology + native web apps/PWAs in general. Microsoft is making a huge push toward writing UWP apps as PWAs.
Time will tell how they handle this merger. They've handled a few pretty well (Linkedin, Mojang come to mind) and others horribly (Skype, Yammer, Nokia).
It also doesn't feel like Microsoft understands developers or even end users consistently. VSCode is a nice editor, but not the only one. The MSDN docs and site is awful. Azure is okay, but Windows 10 is somehow more annoying than macOS.
Meanwhile Github is in a tricky position, because for most people there's nothing but "community" keeping them on it. Github has some decent features, but nothing so great it would stop me from using their competitors. And they don't even have a CEO to provide the vision. The only thing in their favour is inertia.
I would say the one that keeps Github alive. That's a pretty major one.
That just means that none of the major tech players have been doing a whole lot in this regard.
How many drivers on the road would be less likely to cut someone off or road rage if they didn't have to deal with ClearCase again? I'm sure that number is greater than zero.
I'm only being partially facetious. ClearCase truly is the worst.
Atom is open source though isn't it? So I'm sure it won't ever disappear. I wouldn't want to move to VS Code though. I use a Mac and have heard good things about it, but I'm sure it will always be a second class citizen.
I've started going back to Sublime, and found I missed some of the really helpful tools in Atom.
I think the entire atom/vscode thing is going to be really curious should this acquisition go through. I'm going to guess they're going to keep running both teams; or really they'll probably keep running Github as it is.
Deleted Comment
Is this public knowledge? They shutdown their public repos service a while back and I had a manager at Microsoft admit that getting public repo traction was insanely hard. GitHub literally has a strangle hold on the public repos space.
Yes, I'm sure one company will support both editors in the long term.
what? linkedin became garbage, it's worse facebook with more ads and stupid emails not related to anything I do.
Free with the purchase of Apple hardware. Not exactly "free," is it?
VS Code works on Mac, Linux, and Windows.
Also, this monopolization is driving me mad.
I see a potentially big market opportunity for anyone who wants to compete in the space now.
I'm looking to see if it's feasible to write a github->fossil layer to make it easy for programmers to dump to local. Right now, Git is easy to dump... but those issues and wiki support isnt dumpable yet..
Github should remain a neutral ground in my opinion.
I'm all for FOSS (Git webgui) solutions, but they were absolutely not competitive until recently. Even now, with less trust, the social effect and the lack of need of maintenance and setup is attractive.
Conglomeration, unless you hated github before which I wouldn't object too.
I agree with you anyway.
For GitHub I would have wished Google bought them because there is huge synergy both ways. With Microsoft, eventually some CVP there will realize that there is no profitability and they will leave it to rot.
Dead Comment
Hadn't crossed my mind that they might drop Atom for VS Code before...
https://github.com/atom/atom
Atom is MIT licensed, GitHub can't "discontinue" Atom so much as stop paying their engineers to contribute to the project. After that it's whether there's enough impetus outside the company to continue the work (I suspect there probably is, Facebook are heavily invested in Atom).
Note: I'm working on making Chef code work for Windows deployments of an application that runs under Node. I have strong opinions on Windows right now.
Deleted Comment
Not happy as others have stated of pretty much the largest neutral party in development being absorbed.
Just wish MS could have left alone. They just do not help move things forward. Now wasted cycles have to be spent to deal with this thanks to MS.
Or do you think GitHub didn’t want this? Microsoft didn’t force anyone here. GitHub received hundreds of millions in funding. They couldn’t just stay put as a money losing entity.
Github was never an Open Source product itself but sat on top of the Open Source community and used that "goodwill" to license and sell its proprietary software.
Now that another proprietary software-maker has acquired this company, maybe we can all finally adopt the principle that:
> Open Source software needs Open Source tools
People are disappointed because many of us don't trust or like MS and want nothing to do with them, people complain about Google removing their "do no evil" clause, Microsoft basically has a fucking "do evil" clause but they will always tell you the opposite, they are probably even being sincere, it's just not true though.
With these free options available, people in community were less interested in putting effort to free (as in speech) alternatives for these closed source products.
EDIT, yes I am aware that there are some non open parts in Gitlab.com
I don't use any microsoft tools (and I _hate_ all windows after 7), so Microsoft integrating with GitHub has no appeal to me.
I think the best case scenario for me personally is that nothing changes. None of the github changes in the past few years have added anything noticeable for me (not sure if others agree, be interested to know). And the best case scenario being "nothing changes" is pretty damning. I know it's overwrought, but Skype was perfect, and 2010s-Microsoft fucked them up. And if we're seriouslyhaving the best case scenario be "nothing changes", that's bad.
And it also just seems part of the bullshit mindset of startups being about the exit, and not about making a new, sustainable company.
GitHub didn't need to do this, but they did, to justify their reportedly insane burn rate. Microsoft still won't let them get away with that, they'll just take the heat for the inevitable layoffs.
It's just fucking depressing all round.
It sounds like they were running out of money. So I guess it makes your experience better in that you get to keep using it.
If they had developed a good powerful code search (custom semantic engine for most used languages, complex queries, exact/fuzzy matches for syntax, use of history, etc) they could have become the primary way you interact with code you don't know yet.
As it stands now it's simply more efficient to clone and use plain old grep, it's really sad.
Deleted Comment
It's in alpha stage so far and lots of useful features (like multi-line search) are missing but you can already try it out for Crates.io and Hackage: https://codesearch.aelve.com. Indexing all of npmjs is coming soon.
I'm super curious to what all these companies are using for search because they are so atrocious that tend to not even work in a basic substring search solution.
It boggles my mind why GitHub's search finds results across various commits, giving patchy results. It would be far better and likely easier for GitHub to just search HEAD. This frustrates me about GitHub every day.
[1] https://docs.microsoft.com/en-us/vsts/project/search/code-se...
A) Getting acquired by a multinational
B) Becoming one
Sure, MS visual code is open but as a few players get more and more power we all become subject to their whims and not them to ours.
MS is pushing their ads within their own OS more and more, will GitHub get the same treatment, or will it’s data be useful to MS for those ads?
What sort of integrations can we expect to see with other MS products that encourage a more closed ecosystem?
This may all seem alarmist but with so many companies having so much power this sort of behavior get through unchecked.
The only recourse people suggest is “well then don’t use it” but what options do employees have when higher ups mandate technologies? What about most users who just go with the wind and just let these snowballing large companies skate by? It all makes me very sad...
What could change this? People refusing money? Some encouragement to stay mid sized? Wonder if that will ever happen...
See the recent post about ghost (it has a structure that can't be sold) https://news.ycombinator.com/item?id=17082228
Product hasn’t changed a lot since launch.