Microsoft’s June 4 announcement about its acquisition of Github for $7.5 billion has created great interest in the developer community. Hacker News showed mixed reactions, as did Reddit. Twitter has some contentious threads. Motherboard reports that Gitlab, an open source competitor, had an uptick of 50,000 projects migrated in a week. (Fitting an open source company, you can visit Gitlab’s dashboard and see this migration bump. #movetogitlab is trending.) According to Reuters, Microsoft is downplaying this as unlikely to be a long-term trend, and Satya Nadella’s blog post on the acquisition promises Github will remain open. Many viewpoints are very positive.
What does this mean for RAD Studio and for you?
Github vs git
Git is not Github. This is important to remember. Git is a version control system. Github is a website that made using it easier.
RAD Studio has excellent inbuilt git support, along with Subversion and Mercurial. When you use a project from Github with RAD Studio, and with any git client like SourceTree, there is nothing Github-specific. It is only git.
That means that as well as supporting Github, RAD Studio supports any and every git system: self-hosted, remotely hosted, Gitlab, or others.
Our April 2017 developer survey showed some developers did not use a source/version control system at all. We strongly recommend that you use version control for your projects: this is a great writeup on why. It doesn’t matter if you use Subversion, git, or Mercurial, but use source control. RAD Studio has inbuilt support for the major systems, a plugin system so that others can be supported, and puts configuring your source control front and center in the very first dialog you see after installation.
Coincidentally, one of our staff emailed me today that Atlassian has a free course on learning git.
Microsoft’s approach to open source
"When it comes to our commitment to open source, judge us by the actions we have taken in the recent past, our actions today, and in the future."
Github is not the only technology where developers express concern about Microsoft’s history. For many, this refers to the policies of the nineties and early two-thousands, as well as its past anti-open-source policies. These have radically changed in the past few years. Specifically, Microsoft has embraced open source and to some extent cross platform, some highlights being acquiring Xamarin, releasing Visual Studio Code, and supporting Linux within Windows, as well as internal use of and contribution to git. The Github acquisition follows recent trends.
Finally, Github needed an exit. According to this Ars Technica article, after $350 million of investment and an apparent high rate of money burn, and a (laudable) refusal to charge developers just for hosting, the company needed a buyout. Buying Github may well have saved Github, and is a great benefit to the whole developer community.
The acquisition of Github may not only be about open source. According to the following quoted Stratchery analysis, it is in fact about customer acquisition:
"This is the context for thinking about the acquisition of GitHub: lacking a platform with sufficient users to attract developers, Microsoft has to “acquire” developers directly through superior tooling and now, with GitHub, a superior cloud offering with a meaningful amount of network effects. The problem is that acquiring developers in this way, without the leverage of users, is extraordinarily expensive; it is very hard to imagine GitHub ever generating the sort of revenue that justifies this purchase price."
Satella emphasises that Github will,
"retain its developer-first ethos, operate independently and remain an open platform"
Microsoft thus also acquires Github’s 28 million users, the name it gives them in open source, and the network effects of being such a visible open source supporter.
RAD Studio and git
What does this mean for RAD Studio, and for you?
RAD Studio supports using git repositories, including Github, in RAD Studio.
Github is used by many of our Delphi and C++Builder users for hosting open source projects. We’d like to encourage you to do this, and in fact to do this more, to make your Delphi and C++Builder projects available and visible.
Embarcadero has a Github account. Not all of our material is online (yet) but we are making a partial migration to Github, from SourceForge, and we certainly have no plans to change because of the acquisition.
Embarcadero uses Github, and you can visit our page here.
Finally, we recommend you use source control of some sort, whether that’s git or not, and whether that’s Github, Gitlab or another host. RAD Studio is a core developer tool, with broad support for all major version control systems, including git. Make sure you use one of them.