Looks like a step in the right direction, where a lot of other developers already are. When they were pushing TFS, I didn't know if it was a 'me too' kind of move, or an attempt to provide an MS proprietary solution, or what. But getting in step with a lot of other developers, and hopefully playing nice, will get them a seat at the table with all developers, instead of projecting an attitude of: the world revolves around us. MS has been making some remarkable announcements at this Build conference, and making it easier for developers to get into MS technologies as well. This is a much better approach than when Ballmer was CEO.
I'm pretty sure "integrating all kind of crap into it" is the distinction between an integrated development environment and other environments for writing code, like a simple programmer's editor (though the line is somewhat fuzzy, and programmer's editors also tend to integrate all kind of stuff, and provide extension points to integrate more.)
But since you mention it it'd make a lot of sense for Microsoft to want to buy Github.
Microsoft has been doing a lot of cool stuff engineering-wise in recent years. They've released so many FOSS projects I've lost track[0]. But they still suffer from a problem of being "uncool" because of their past reputation. Which was deserved, but they've changed a lot[1]. Microsoft needs a new brand for their FOSS work, because the Microsoft brand is badly tainted in the FOSS world.
Github is one of the few companies that could earn them respect in the FOSS world if they were to acquire them (and of course, not screw everything up).
[0] Heck, I've literally lost track of the number of FOSS things they've released this week
IMO it would tarnish Github more than it would redeem Microsoft.
You don't become cool by buying the cool new gadget-of-the-week just as you don't become cool by buying a cool company.
Ill be comfortable calling them cool when they've demonstrated they no longer follow Embrace Extend Extinguish but until then they don't deserve the benefit of the doubt.
As far as I'm concerned they realized they tried to move to fast into the extinguishing phase so they're taking a step back into the extend phase. Im not falling for it.
> Ill be comfortable calling them cool when they've demonstrated they no longer follow Embrace Extend Extinguish but until then they don't deserve the benefit of the doubt.
I'm not saying that Microsoft doesn't still have this intention to some degree. It's impossible to prove a negative, especially for such a large and fragmented company.
But it's inconsistent that Microsoft still receives so much hate for having practice this a decade ago, when there are companies that are literally doing it today, in the plain light of day, in very large ways, and receiving far less criticism than Microsoft does.
I say all this as a Linux user typing in Iceweasel from a Debian machine that has no non-free software on it except the wifi driver. I have no love for Microsoft or proprietary software, but they still receive so much criticism that it crowds out criticism of other companies that are just as bad today (or even worse) compared to Microsoft today.
I have no love for Microsoft or proprietary software, but they still receive so much criticism that it crowds out criticism of other companies that are just as bad today (or even worse) compared to Microsoft today.
They receive far less criticism these days than they have historically. Microsoft hatred in the Linux community is largely considered immature and/or anachronistic, and there is a ton of praise for what Microsoft has been doing with their research division and the service pivot they've been doing as of more recent.
Which other companies are you referring to? Apple? Google? Those get tons of criticism.
I agree. In fact I think github is doing more to extend and extinguish. They are the ones who just introduced their own proprietary closed method of binary storage while git-annex was already there.
I agree. Both Yammer and Skype had cool reputations before they were bought by Microsoft. They definitely didn't elevate MS to cool. I doubt GitHub would either.
Being cool is overrated, anyway. FOSS is cool now because it's incredibly useful to people--and by that I mean inexpensive and flexible, not just powerful. Microsoft will be cool again when they to make the most useful stuff.
They seem to be turning the corner on that, but reputation often lags reality by quite a bit. I mean, people still think of Apple as the "Think Different" company, even though their latest initiative is $17,000 gold watches for the nouveau riche. And people still think of Google as an open information company, despite their repeated neglect and killing of tools for openly managing information (Google Groups, Reader, etc.).
Maybe MS desktop OS division was sort of douche, or maybe desktop MS office is not all that innovative.
OTOH, MS Research was always very cool (and they started contributing to e.g. OpenBSD many years ago), OS kernel has always been much better than a glance over win32 API shows you, and Office365 is definitely world-class.
I suspect that the engineering culture in MS has always been rather good (with engineers like you and me, and many of them a good deal better); the radical transformation is probably mostly within the top management.
The kernel is _very cool_. I get to work near it, and their description of the NT multi-headed setup helped change my mind about Microsoft engineering. e.g. the POSIX subsystem is just another NT usermode head, so it's incredibly performant.
I am not up to date on the latest kernels - I last wrote an NT driver in 2002 (Win2K/XP compatible), but based on that experience I beg to differ.
My no-stalgia: It was an overengineered beast at the time, with an original grand vision that wasn't performing well enough, and seemed to be fixed with duct tape.
The Video Driver + GDI, originally conceived to be outside the kernel, was too slow - so it was moved back in, causing a lot of problems.
The IO subsystem was nicely abstracted with IRPs. Except it was too slow, so they added the "FastPath" interface, which fixed the speed but made it impossible to safely unload or stack drivers. IIRC, they were the main reason for the "PlugFest" parties, where microsoft would invite vendors to come to place and then install their drivers in random orders and to debug the collisions -- the fact that microsoft needed to organize these parties is an indication of how bad it was.
The POSIX subsystem was removed in XP/Server 2002. Perhaps you mean SFU? That was discontinued in 2004. Oh, you mean SUA (nee Interix). Well, that was removed in 8.1.
And your experience might be different, but "incredibly performant" is quite the opposite of my experience with the POSIX subsystem.
You certainly work(ed) closer than I do, my experiences are mostly based off of what I see around me. I assume the kernel has changed quite a bit since Vista. I imagine that the POSIX system hasn't been entirely killed off quite yet, given it's already come back twice.
The POSIX subsystem was never there for technical reasons. It was there for political reasons - back in the day, a lot of government and army contracts mandated a POSIX system, so Microsoft made sure they comply with the letter of the law. (The intended spirit of the law was to require a standard OS to avoid vendor lock in....)
And they've been trying to remove it since that political requirement was off the table. Except it turns out that it was actually in used by some customers, so they keep bringing subsets back.
I wish they shipped their superb kernel as a separate product allowing third-party shells, as their UI design division has gone off the rails.
Actually, I think there should be a law for making OS kernels replaceable and separate from UI shells. I have to use Windows as certain software and drivers are not available/performant enough under Linux, so I have to deal with the crazy Windows 8.1 UX.
Forgive me, but what is the advantage of buying Github enterprise and then having it hosted in Azure? I was under the impression that most enterprise customers were interested in self hosting.
Unified VPN (see Azure "Virtual Network" or Amazon VPC), unified offsite management, low latency deploys, restrictions your clients may impose on you wrt data security.
"Self hosting" increasingly means "inside my hacked-together cloud, not yours"
The software will not be randomly modified when you are least prepared to deal with productivity changes and you can avoid having to wait for GitHub to respond to outages (while with Azure you might have an SLA, or are simply running other parts of your key infrastructure there and thereby already have them as a point of failure in your workflow). I will also say that you might trust a generic computation and storage provider more than you trust a specific service to not be mining your data (for the common "I want to host it myself as I don't trust you to not steal my stuff" issue).
Azure is self hosting. If you have on-prem, it makes sense to host on physical gear, but most startups aren't at that phase of their lifecycle. GHE vs GitHub for me is a data lifecycle decision, and even with GHE on Azure, you have more control over your data than in public GitHub.
Influencing factors can be regulatory, policy, SLA, that sort of thing. A prior employer had a blanket policy against intellectual property in a public service no matter the security, for example. GitHub has reliability issues lately as well.
One practical thing I've heard is that it's really easy to accidentally make a repo public on GitHub (I agree).
Another example is the regulatory requirement for data sovereignty to ensure data remains under the data protection laws of the organisation's country.
With hosted Github you have no choice - data will presumably live on mainland US. With Azure/AWS/whatever, you can host your data in the most suitable location (always worth checking the contracts though)