A lot of people are concerned about the “what if they make me the product since I’m no longer paying.”
A few reasons I don’t think that will happen:
- private, single contributor repos tend to be pretty small. it costs Github very little to service a single account.
- Github is a growing social network for developers. Getting young engineers on the platform for free will pay off handsomely when they join a team and automatically assume Github is their code storage tool of choice.
- Microsoft gets the reputation points for running the de facto developer social network (other than Stack Overflow).
GitHub is in the strange position of being both a successful enterprise product AND a social network. What other product exists with that kind of crossover? Microsoft will continue to optimize their enterprise revenue from GH and I think this is a tremendous step forward toward building the network long term.
Yes, Microsoft realized that long ago. Gates and Balmer prolonged the inevitable through monopoly power, but Nadella has accepted the future and is "turning the aircraft carrier."
It's amazing that Microsoft came back to life from being a zombie company. In hindsight, it was such a large zombie that it had sufficient time to change business models. Somehow Sears wasn't. There's a business school case study and tenure buried in there.
If by 'zombie company' you mean raking in massive amounts of money and growing spectacularly every year? [1]
MSFT has changed in some positive ways, but since Satya took over, growth has been actually flat-ish to negative overall until 2018 (a good year). Paradoxically, MSFT stock was flat during the Ballmer years when there was rock solid consistent growth.
The 'new MSFT' things is quite overrated in terms of what it really means for the company overall. We HN readers tend to considerably overvalue actions that might seem positive, such as things like open source contributions. MS VS Code is great, but it's not hugely material next to core business. Most of the world really does not care, and they are buying gadzooks worth of MSFT products and services. For better or worse.
When I last worked there and ballmer was running things, he thought he was doing great cause he got more money each year from stupid enterprise agreements with stupid companies. But the innovation was really slow and it was all about increasing the value of what they had, windows. The world was moving on without them.
Satya nadella made a surprising change for Microsoft. If a company is going to last long term they have to do more than look at their own navels. You can't just focus on squeezing more money out of your existing lemons.
Look, as an ex-MSFT person I'm only glad to see someone shit on Ballmer. I didn't like the guy myself. But the pillars of today's Microsoft success were all created by him. Azure? Ballmer. Subscription services (and Office 365 in particular)? Ballmer. XBOX? Ballmer. Satya gets _way_ too much credit for what Microsoft is today. I feel that's mostly because he looks better on stage, and that's a very low bar. A raging gorilla looks better on stage than Ballmer.
The nerve of the CEO growing revenue and profit! When will they ever learn from the unicorns - success is all about revenue growth, not being profitable and going public.
There were several good responses to my message like yours.
A ceo of a tech company has to both grow revenue and cultivate new technologies. A major company working in almost every area like microsoft has to do even more, so they don't get usurped like endless other former leading companies. Microsoft was challenged in a lot of ways. Ballmer did very well on the bringing in more money area.
1. mobile phones (basically completely blew it here - they had all the pieces but couldn't put them together because of both poor execution and more nimble competitors). Ballmer did terrible here. Even buying nokia was a disaster.
2. web - they managed to keep it microsoft centric for a long time where it only rendered correctly on ie3, but it eventually escaped them. they do sell some web server software, but the days where it had to render correctly on windows, both preventing other platforms from being used and being used for hosting web apps are gone. He held the world at bay for a long time, so I'll give him 25% success here.
3. cloud - azure started under him, so I'd give him 50% success. Who would have thought amazon would kick Microsoft's butt so thoroughly. I saw so many good people go to work there, I never thought amazon would succeed with such a different philosophy, people leaving there so frequently after 2 years.
4. Money, growth - 4/4. So much money. Yet at the same time, people started looking for other companies, and the company felt more and more like it was missing out by forcing everything to reinforce windows and office.
Satya has at least changed the tenor of the company, attracting developers back. I do think Windows seems to have turned into a terrible mess, with unless beta releases with lots of bugs. They fired all the testers because they weren't doing anything? Satya was also leading the azure division, so I think he does get some credit for that.
If Microsoft had “won” in Mobile by licensing Windows Mobile, where would it have gotten them? Google “won over” OEMs and got a whopping $21 billion in profit over eight years for their trouble.
Control of android or being the alternative safe choice that everyone builds apps for is worth a lot of money, but you can also use it to reinforce use of your core apps, like google's gmail and search. microsoft instead lost people from using office apps on android, as they market decayed. sure, they are huge and rich and can afford it, and eventually got to office 360 and android versions of office apps. But it would have been even better for them have never had to suffer loss of marketshare to google docs, and they were fortunate to not loose too much share.
I doubt that there are too many professionals using GSuite on phones in the place of Office and the high end and midrange Android tablet market is non existent.
I also doubt that too many people who are spending less than $300 on phones (the average selling price of Android phones) are the target market for Microsoft.
Statistically, Google has captured market share of people with less disposable income than Apple has. It’s at most Pyrrhic victory.
A large majority of "professional" software engineers use google email on their phones. And I've used gdocs etc at times on my phone continuously over the past 20 years, and many of them i was working at microsoft. Apples sales increased for a long time, even though google's sales increased faster apple was, i repeat was capturing most of the profit. We'll see if that happens. I expect several companies out of china to take the android market from samsung (still using android though).
That's great but you haven't provided any specific examples.
Ballmer did not 'squeeze lemons' - he multiplied the company by like 4x. The 'cloud' FYI was a big new thing. All MS products have evolved quite a lot and are not the 'same products'.
What new products / initiatives has Satya introduced that are lining up to be the future of MS? That will replace the core products sometime?
I honestly thought MS would die. Of course that was my own bias because I had/have not used Windows/Office in 15+ years. But after it became apparent that web/Mobile was the future (and it didn't matter what OS you were on), and MS showed itself to be terrible at Web/Mobile over and over again (IE/Edge, Windows Phone, etc.), and there were good-enough MS Office replacements (in my view); I just didn't see how they would survive. The Googles/Amazons of the world were clearly the future. But I didn't count on MS coming out with Azure. I don't know anyone personally that uses Azure, but I hear it is in second or third place after AWS, which I think is impressive for what I thought was a zombie company.
I'm not sure what you're talking about. The link you sent shows their revenue increasing dramatically since he took over (2014), and their stock shows the same.
Revenue peaked in 2015 when he took over, and only got past that in 2018. So net 'going down' until 2018. Yes, the stock has risen quite dramatically during his time though. Even has revenues went down - wall street dramatically lifted his valuation.
Contrast that with Ballmer, who consistently and reliably grew the company with solid numbers for over a decade, and was rewarded with a stock lift of 0.
The stock lift of MSFT over the last few years is the result of Ballmer. A) his tenure and B) the fact the stock was obviously suppressed a little bit during that time, only recently have the multiples been allowed to shift, and when they did ... the valuation jumped up.
Satya seems to be doing well, but for now it's mostly politics and perception. We'll have to wait and see if his material contributions lead to material change in terms of product and revenue at MSFT.
Ballmer left a company that was a mess. He was boosting profits through repeated layoffs and price squeezing. It had just bought my former employer (Nokia's phone business) without a clear strategy. Windows Phone was already failing in the market due to a series of strategic blunders, arrogance, and poor product positioning and platform strategy. Windows 7 and 8 had largely flopped in the market with lackluster adoption for the same reason. The cloud business was heavily windows focused and not an easy sell either: same reason. Meanwhile developers were jumping ship in favor of Apple laptops and Linux servers, android/ios phones, and standards based web applications on top of Chrome and Firefox.
I grew up in the nineties; things were different then. Visual Studio was the go to product for many developers and developing on windows was a given. Macs didn't become useful as developer machines until a decade later and Linux was a something you ran in your closet or on a old hand me down PC (been there done that). That changed under Ballmer's rule and he failed to adapt. He alienated developers and failed to move windows forward; all while bashing Linux and the Open source community in futile attempts to stem the bleeding of mindshare, revenue, and share holder value.
Fast forward five years or so since Nadella took over and the stock has responded positively to post Ballmer changes by Nadella to bring MS into this century after what was a lost decade.
MS now does open source and established itself as a credible player in the OSS community, it killed off windows phone, opened up the lucrative office ecosystem to non windows platforms by e.g. treating Android and IOS as first class citizens and supporting things like Chrome OS. By embracing linux and open source, and by turning Azure into a very competitive product that mostly runs Linux. He just took Edge out the back and shot it as well.
The net result of all this is that he re-established MS as a company that appeals to developers because despite his famous Mantra, developers were running away under Ballmer. VS Code, having SQL Server supported on linux, supporting Linux and contributing to it, embracing the wider C# ecosystem outside of the Windows silo, buying Github, etc. are all clever moves that rebuilt lost trust. All these things were unthinkable under Ballmer. Even Windows 10 is starting to look pretty nice to people like me with it's linux subsystem, Docker support, and nice hardware options.
As a consequence they have a lot of healthy growth in their cloud business because developers take them serious again. Shareholders are liking this and their prospects for more growth through a portfolio that is no longer just wintel laptop based revenue.
"Ballmer left a company that was a mess. He was boosting profits through repeated layoffs and price squeezing."
I see no evidence for your statement.
Ballmer 4x-ed MSFT revenue during his tenure.
He made far more money for MSFT than Gates ever did, and his growth track record is better than Satya so far.
Ballmer pushed XBox, Azure, Office/Cloud, re-orged the sales teams. Increased revenues for all the other major product lines.
Bing and Mobile were a fail, but they did other things well, moreover, they're up against the top 2 companies in the world in Search and Mobile - no easy feat.
All of your points are descriptive, but they don't really represent huge materiality in terms of business outcomes.
MS was never losing developers.
It's 'OSS contributions' really don't make that much of a difference.
Revenue under Satya has been up and down, with no real progress for his first several years until 2018 (2015 being the watermark).
MSFT today was made by Ballmer, most of the things you indicated are good, but not hugely fundamental.
I see no evidence for any of the points you are trying to make either.
You seem to equate revenue with success, which is not how this stuff works. Shareholder value is actually tied to the prospects for long term success (accumulated profits over time). MS shares were considered overvalued, not undervalued when Ballmer left (or depending on your interpretation, fired by an unhappy board).
Its OSS contributions are critical to both MS and how well it is able to convince developers to build on top of MS platforms. It's critical for it's credibility with Azure. I know people that now consider this a serious alternative to AWS or Google cloud that for sure don't have any interest on running C# on Windows Server while using SQL server. But it sure is a nice way to run some Linux stuff these days.
Satya Nadella also had to absorb a lot of the Ballmer era mistakes. Like paying five billion for the right to shut down an organization (Nokia's Phone business) for probably billions more. As I recall, that was one quarter where MS indeed made a historically unique loss and Ballmer pushed that deal through. Bing indeed is another dud. Windows Phone itself of course was the latest in a series of failures for MS to capture the mobile market that date back to last century.
The fact that it took a few years to recover after Ballmer left strongly suggests that 1) there were indeed problems in MS (i.e. shareholders were right) 2) Nadella addressed those problems. MS is of course valued around a 1 Trillion or so now. This may have a thing or two to do with the fact that he's not doing that bad of a job and that their future looks a lot brighter than a few years ago.
Whatever bad things you can say about Ballmer, he wasn't out to gut Microsoft. He simply made decisions that were short-sighted and insular. Well, and the review system (which caused a bunch of good people to leave for Google in Kirkland, and some other places).
Once, I was doing an embedded system for a consumer product in the Xbox group. We started out trying to using Windows CE, and after three months of pushing that horrible mess up a hill [holy Toledo, what a steaming pile...] we ditched it in favor of something really simple that could actually do the job, instead of the politically correct thing that we'd been "encouraged" to do. (Honestly, words fail me at how badly designed and buggy the the whole WinCE code base was).
At the time, Ballmer was all about everything having to be Windows. "Windows Foundation" for TV, "Windows Auto", Windows This-and-That. I joked that we wouldn't be allowed to ship our firmware until we named it something like "Windows Just An Event Loop And Some Interrupt Handlers".
I don't know, the windows UI since Windows 10 is a mess; the Windows client platform doesn't seem to have its best time.
Seems strange to me that they are neglecting the client platform (and developer tools to! used to be very important under Balmer), the lock in effect used to be driving demand towards NT server.
to put it frankly: I don't quite understand the grand strategy of MS.
I've been browsing HN for maybe 6 years and haven't had the pleasure of seeing this article come up, thanks so much for sharing! Few articles have given me such a feeling of 'enlightenment'.
The problem is - hosting repos, especially private ones, is not a 'complementary service' for Github. It's the core of their offer.
Edit: example - Google paying for Chrome, Android - this is 'complementary'. Google giving away free personal ads on search ... 'core'. MSFT giving away free dev tools, Bing search - complementary. Giving away 'Windows Home' for free ... 'core'.
Any literature/thoughts on when to commoditize complements rather than trying to vertically integrate? Private repos might be a complement to github's other business, but it doesn't naturally follow that they should commoditize it in all situations
You’d get a lot of value from reading an old but still relevant book from 1998: Information Rules: A Strategic Guide to the Network Economy by Hal Varian & Carl Shapiro that discusses several of these strategies.
“Commoditize your complements” is a phrase popularized by Joel Spolsky but the book uses the broader of term: “maximize your value”. Commoditization is one of a few ways to maximize your value.
When GitHub's financials got leaked in 2016, GitHub's personal accounts accounted for 12.5% of their revenue. GitHub Enterprise was 50%, their organization (= business) accounts were the remaining 37.5% [1]. It's fair to say that the personal accounts are irrelevant from a revenue perspective.
> Your assertion can only make sense if you also believe that a 12% paycut is irrelevant to your income.
You only see the short term.
I was on Github during my university, all my projects were there, my team mate were on there too, it was pretty great. When my student account expired, I decided to move everything to Gitlab. I didn't want to move but I won't pay 7$ a month to host my old school projects and some personal stuff. Now that I did move everything, I actually enjoy Gitlab quite a bit.
What do you think I'm going to use if I start a commercial project? In the past I would have chosen Github, but now that I'm comfortable with Gitlab and see all its benefits, it's probably the one I would choose.
Cutting that 12% may lose 12% in the short term, but in a few years, it's going to gain you much more than 12%.
I totally agree with you. And to add to your point, the impact of having a dominance in the market of "personal project repos" extends far beyond individual developers paying money on their personal accounts and/or becoming paying customers when they start their own companies.
If you think about mid-sized software companies (~10-100 devs), if 80% of your developers have a strong preference for Github over Gitlab or Bitbucket, then that company is likely going to stick with Github or decide to move to Github eventually. I think this is where Github captures much more than that 12% revenue that they are giving up right now.
Also, if the VP of Eng. or whoever is making the decision thinks of Github as the default git SaaS because it's what they have used since college, there's a good chance they will just go with Github without even evaluating alternatives.
Glad you appreciate the GitLab experience! I agree with you that loving the product is what it is about. I am happy everyone gets free repos across the board now (whether at GitLab, GitHub, or BitBucket) since repos are basically commoditized at this point. In my opinion (shaped by our CEO Sid's perspective), all roads lead to compute.
I can say the same, except in my case it was moving from Github to Bitbucket. If Github, did this a while back I would have been locked in for life (by choice)
If I’m reading the revenue chart correctly, 12.5 percent of their revenue was approximately 11 million dollars in 2016. At Microsoft, who is even going to notice that...
There’s surely a goodwill factor and wider strategic benefits here beyond the relatively small amount of revenue - these individuals enjoying the free private repos will in many cases likely be future candidates for customers for the enterprise offerings etc, or one day find themselves involved in discussions regarding managed VCS for a larger org. Given Microsoft’s current strategy to win over developers, this seems like a pretty sensible move, and the price (for Microsoft) very low. Strategically this seems not entirely different to the free accounts AWS throw at university students. Once you have someone hooked on your free offerings, you can start locking them into the wider platform (Azure) much more easily. Again, pretty much the AWS playbook.
Also, let’s not forget the 12.5 percent figure comes from 2016, a year which saw some pretty significant changes to GitHub’s offerings, such as unlimited personal repositories for paying users among other things. Prior to this you had to pay more to get more private repos. The number today may be somewhat different - I know my github spend went down following that change.
Also, 12.5 percent of revenues - comparisons to a 12 percent pay cut are pretty misleading.
Comparing 12.5% revenues to a pay cut is not misleading at all.
Unless there is some reason to believe that making individual accounts free will somehow also reduce costs in a material way. Seems to me it will likely increase costs significantly as many more users will flock to create free private repos.
In fact, it's more like giving you a 12% percent pay cut and then asking you to commute further to work.
Focusing solely on the impact to Github’s bottom line kinda misses the entire point of Microsoft wanting to acquire them in the first place.
A decision like this has to be viewed in the wider context of Microsoft’s market strategy and the rest of their developer tool portfolio, of which Github is just one piece.
If Microsoft just cared about short term gains, there were much better ways to blow 8 billion dollars.
> Comparing 12.5% revenues to a pay cut is not misleading at all.
It's misleading in the sense that a 12.5% pay cut is not something I can recover in other ways.
Meanwhile, there is a possibility that this 12.5% cut on individual account might be recovered automatically in other ways if it results in increased enterprise account.
My personal private repos have always been on BitBucket. Not because I like BitBucket more, but simply because of the additional cost.
Having unlimited private account on GitHub will encourage me to move my stuff there, and ultimately reduces the friction and increases the chance that at some time in the future I might be a paying enterprise customers.
> Unless there is some reason to believe that making individual accounts free will somehow also reduce costs in a material way
It's misleading because it ignores user acquisition & conversion. Freemium often means you "take a paycut" on option A in order to make even more money on option B.
If we’re going to use analogies like that, then this is like my benefactor uncle coming in with massive sums of money, telling me to stop working at the McDonald’s and pay someone to take my shifts, and focus on studying.
>Your assertion can only make sense if you also believe that a 12% paycut is irrelevant to your income.
Beyond a certain hand-to-mouth income it is (e.g. 150K vs 132K).
And many people chose pay cuts over personally overworking or stretching their business too thin.
The overly trivial point being behind the parent argument is that 100% of your revenue if better than less than 100%. Which is not always the case in business.
Businesses and freelancer drop gigs all the time to concentrate on where their main income is coming from. If you have a difficult customer or few demanding customers that generate just 20% of your income, it's often wise to drop them to focus on your easier 80%.
Your assertion can only make sense if the same economic factors and reasoning that govern a private individual's pay also govern a large multinational organization's revenue.
It's a tradeoff. I took a 11% paycut to become a 100% remote worker. Completely worth it for me. Microsoft likewise likely believes the loss of 12% of GitHub's revenue is worth it in exchange for advancing toward their bigger goals.
GitHub's competitor is GitLab. The main argument in favor of GitLab is private repo with self hosted GitLab. That's a weak spot of GitHub that they addressed. Self hosting requires a server and competence. With this move they also undercut a revenue source of GitLab. Strategically, it's a brilliant move. From the user point of view it's also an excellent news.
You're missing why Microsoft purchased github in the first place. It wasn't for the personal account revenue - which isn't even a rounding error on their earnings report even if it is 10x what it was when revenue was leaked in 2016 (at
which point it was $17.5 million/year).
If that WERE the reason, they'd be charging for visual studio code, not giving it away.
Revenue != income. It's quite likely the profit margin on developer accounts is lower than the other types, and if this cuts the knees out from under the competition may well be cheaper than, say, paying for advertising.
As well as MS’s own Azure Devops aka VSTS as well as free hosted builder servers, private package repos, project management, etc. for up to five users.
I was thinking that Bitbucket still has its promise to always be free.
However, I don't think it will be an issue. As hosting costs drop to zero, if someone starts charging, they lose customers to a free competitor. (as is happening here).
But that is a non-sensical argument unless you are saying that making all those accounts free will somehow reduce the overhead related to the personal accounts. Seems like it will in fact increase costs as more people sign up.
There's maximum probably only like hundreds of thousands of people who would pay $96/yr for git repos for their personal projects. Millions a month but their other revenue streams are more expensive and still growing and can keep growing so it was heading towards a rounding error % even though it was 12% a couple years ago.
I imagine they are making predictions of enterprise business influx through new users who will take their personal private repos and possibly business (back) to github.
In what world is 12.5% of revenue "irrelevant"? The 37.5% business revenue is just 3 times as much (so almost as irrelevant), and Enterprise is only 4 times is much (again, almost as irrelevant).
Unless .. all github revenue is irrelevant for Microsoft - which might be true, for all I know.
I bet it's much less than 12.5% now (since 2016). Also, individual user revenue is revenue that public investors value less than revenue from businesses, because there is perceived to be a much bigger overall market (and therefore more future potential growth) in selling to businesses rather than individuals. And growth is what matters for the stock price.
Source: I am the CEO of Sourcegraph and consider similar things.
What I've always found funny about "B2B is more valuable than B2C" is how all economic value eventually comes from B2C eventually, and all the meta B2B tools in between don't really make value independently on their own.
That might indeed be true. GitHub's value to Microsoft ain't the revenue; it's the users, the mindshare of whom Microsoft hopes to capture by luring them toward the Microsoft ecosystem (Windows, Office, Azure, SQL Server, etc.).
As a particular former Microsoft CEO put it: "[…] DEVELOPERS DEVELOPERS DEVELOPERS DEVELOPERS […]". That strategy/desire hasn't exactly stopped, though it's certainly transformed quite a bit over the last couple decades (and Microsoft is finally actually getting somewhat effective there).
Significant... but the main threat to the other 87.5% is that developers try out Gitlab or other alternatives for their personal projects. These developers find that Gitlab is pretty good, and don't push their companies to pay for Github. Whereas if every developer starts out using Github exclusively for personal projects, it becomes the default choice when they start work.
With this change, Github foregoes a little revenue in exchange for securing the vast majority of their revenue.
Exactly this. Just this weekend, I setup my first CodeCommit (AWS) repo because I needed a private git repo for a new project and didn't want to pay github for it.
It turned out to be damned easy (and very cheap) and that's a serious threat to github's future growth because once people start to default elsewhere for one type of their work, it tends to drag along other types of their work.
It is for a lot of companies, but not at the scale of Microsoft. Keep in mind companies like Google/MS/Apple/etc kill products that have 10s of millions of revenue because while it's a ton of money, it's a drop in the bucket compared to their other sources of revenue. 12.5% of their 300M revenue is a tiny amount for MS to absorb to solidify themselves against their competitors as the main open source hub.
Gitlab and Bitbucket both heavily positioned themselves against Github with their unlimited private repos feature. With this competing with Github is going to become much harder. I think it's a smart move for MS.
Unless it's shrinking as devs realize other platforms offer a free version of the same service. Especially if those devs decide that they like the new platform better, and convince their company to use it.
> GitHub is in the strange position of being both a successful enterprise product AND a social network. What other product exists with that kind of crossover?
LinkedIn comes to mind, which was also aquired by Microsoft.
It's currently in stark contrast with GitHub. I won't be at all surprised if I see in-your-face ads on GitHub in the near future. It's not like there isn't a precedent for it (hello, SourceForge).
The difference is that LinkedIn was creepy before Microsoft bought it and it has nothing to do with Ads. LinkedIn is and always has been creepy and sleezy because it's a relationship networking tool and not a platform for work or collaboration. Whenever I used LinkedIn, it always gave me the same feeling I get when talking to a Salesman or Recruiter, that I'm being exploited and they're trying to convince me that it's somehow to my benefit to work with them or go along with what they say.
GitHub also censors any content that they deem stolen (such as the NSA Malware / EquationGroup releases) and content that they deem containing PII-data (such as the public LinkedIn crawl of people stating they work for ICE).
So you're upset because GitHub won't assume liability for your potentially illegal activity? Why not ask the EFF to setup a free service to host these sorts of files? They seem like the most qualified Org to do it.
I am not upset, I am neutral. I am merely answering a question with as much objectivity as possible: Providing examples of GitHub censoring projects to someone unaware of this, without adding my own views on this. It was quite curious seeing the, at least, 3 downvotes the initial link received.
GitHub makes judgment calls on what to censor: They deem a project name offensive, they deem some piece of code stolen (unless the NSA admitted to them it was legit, they had no confirmation), they deem publicly available data crawled from the web PII or harassment instigation.
Unless you do not classify these examples as censorship, it is what it is.
I don't think anyone is questioning that it is platform censorship which any private business has a right to do in order to protect it's business.
The objection stems from the fact that censorship is always a dominant issue raised in discussions about platforms for sharing and, while it's important to keep it in mind if you're the type of person who might share controversial or objectionable content, that is type of sharing is the minority.
If we were in an oppressive regime like China where state mandated censorship is the norm, then it would be a much more pressing concern. But for most of us, we're not under an oppressive regime and decrying the platform for censorship is on par with complaining that reddit won't let you dox people or flicker banned you for posting kiddieporn.
The "decentralized" nature of Git that GitHub interferes with is within an individual project. Instead of all the developers having their own copies of the repo and sharing things around between each other (i.e. the project is decentralized), there's a central GitHub repo for a project that is considered canonical and everyone interacts with that. This doesn't give GitHub any power to censor projects — Git itself is no more centralized than it ever was. You can use Git without GitHub and it works just as well as ever.
I'm not so sure. LinkedIn was always quite spammy.
Sourceforge did some absolutely egregious things, including bundling adware with windows binaries.
Maybe the people at Microsoft don't know it, but one of the reasons GitHub has such a huge market share is because it hasn't done any of those things.
Sure, MS could have bought it to use its reputation as capital and try and maximise income at all costs. It seems that would be somewhat counterproductive, given the long process Microsoft has gone through to start fixing its image with developers.
I just opened up a project on there to see what you meant. I immediately got hit with 7 different ads on different parts of the page. It still feels pretty scummy to me. I understand the need for ads but 7? It seems excessive.
Bundled adware were removed from projects and there is no multiple confusing download buttons or other dark patterns. You don't have to look out for scams all the time or distrust downloads from the site.
See https://sourceforge.net/blog/introducing-the-new-sourceforge...
If windows, a software for which I pay money when I buy a laptop can have ads, I am pretty sure at some point Github will also have ads. Its very very tempting to leave free money on the table. Only time will tell (Even though you are the CEO).
Except it ain't free money. Especially when you have viable alternatives like BitBucket and GitLab that are able to operate just fine without ads (well, at least without ads for non-Atlassian products in the former case), the cost is people jumping ship, and git makes that easy to do.
Microsoft would only stand to gain (short or long term) if it's been engaging in its traditional EEE strategy this whole time and is ready to pull the trigger on that final E. Even if that's the case, I can't see any real benefit; it'd just be a middle finger to developers.
LinkedIn is an HR circle jerk. Low quality posts, meaningless connections, and tons of spam from LinkedIn. They will spam your friends on your behalf. And then the person to person spam.
Even if Github doesn’t end up being a typical “social network”, this still allows Microsoft to push out the competition (Gitlab, Bitbucket) and become the de facto developer workbench in the industry. MS already released a hit with VSCode and won back a lot of street cred with developers who moved over from Atom/Sublime/etc. Having free private repos just makes sense in order to seal the deal with consumers, and migrate them over to the MS developer ecosystem. It’s very Google-esque. Github was already the ‘Chrome’ of the code repo world, and now it has a chance to pull further ahead. This is what MS wants, because now there is even less reason for users to look to migrate if what they used to have to pay for is now free.
> Getting young engineers on the platform for free will pay off handsomely when they join a team and automatically assume Github is their code storage tool of choice.
Not everyone looking to have a repo today and joining a team tomorrow where it will pay off for Github is a student. Being able to pay doesn't mean the same as willing to do so, particularly if they've not used github yet and have no idea if it will be worthwhile.
Microsoft have already started doing this to developers (forced data-mining, a.k.a. telemetry) in .NET Core and VS Code - and to everyone in Windows 10 - so I don't see why they wouldn't do the same with Github.
...or else what? Are the developers going to mass-migrate to SourceForge?[1] Github has a lot of leeway/social capital - they are hardcoded into the infrastructure both literally and figuratively.
edit:
1. I literally forgot about Gitlab as a Github substitute when I wrote the comment, interpret that as you may.
> ...or else what? Are the developers going to mass-migrate
Yes, that is the obvious risk. Gitlab is the #2 in the space, right now they don't have much market share but if an avaricious corporation violated the spirit of Github? It might be the chance they need.
I remembered Gitlab after I posted but before I saw your comment and made an edit. Github has network effects and inertia on its side - switching to any other service has a cost, and Microsoft has to piss off developers enough to justify the switch - moderate annoyances will be tolerated.
Because you would destroy any trust you've built up with users and people would rapidly switch to another platform, as well as the developers of the GitHub objecting to having to build that.
Not directly related, but this made me think of how different a "social network" built on version control is from a typical social network.
Github users are interested more in code than in people. Sure, you can use it to follow your favorite coders and technology people that you respect and look up to, but I have a feeling most people aren't doing that too much.
Like most developers, I use Github extensively to obtain open-source code that I use in projects. Sometimes, I explore Github to look for new things, or see what kind of projects are popular since I've last checked (maybe once or twice a year). Usually, it is the canonical source of information for large open-source projects; the code lives there and issues / bug reports live there. While using it in this manner, I don't look so much at who is posting comments / commits, as I do at the content of the commit or comments on issues, and whether the information is relevant to me.
depends on how the social network is monetized. There are no ads on Github. Unless github is selling user data to third parties, their monetization method is well known (paid enterprise features)
I feel like your entire comment could be ended with "...yet"
I'm sure the screws will tighten on it. Unless Microsoft's entire plan is to run it forever, giving blank checks to GitHub, as a way to endear developers to Microsoft.
Microsoft isn't even trying to directly make money off GitHub Enterprise. What they're doing is plugging GitHub into a giant ecosystem of Azure-related services that they sell to large corporations for millions of dollars per year per customer. They could give away GitHub for free entirely, and might, if there's a one-click "deploy to Azure" and similar functionality that brings people into the Microsoft shop.
There is already a one click deploy to Azure from Github, it was there before the acquisition via the Azure Devops aka Visual Studio Team Service website.
I really hate all the "social network" features of github, and I will eventually delete my non-work github account if they keep pushing in that direction. Adding "emoji reactions" was a really bad sign IMHO.
Personally, I think Azure DevOps is the logical progression from Github at a professional/business level. I'd be surprised if their business operations didn't merge in that direction.
Besides, Microsoft had already been offering free unlimited private repos through VSOnline for years. It's not a change for them, they are just extending it to their Github acquisition.
I'm generally pretty skeptical of these sorts of arguments. People gave similar arguments about why Facebook wouldn't turn against its users or Amazon would always have some of the lowest prices you could find.
Among other things, a private repo is a file system with full history. Anything that can be used as a file system will likely get abused.
More generally, this kind of argument basically says "this company will likely ignore this revenue stream forever", which doesn't sound very likely in the long run.
This might also be an attack on GitLab, which I believe has had unlimited free private repos for a while.
I'm confused about this definition of social network. GitHub is a place where we work. I have thousand of commits and 1 actual friend. Am I the only one or are we changing the meaning of social?
>>GitHub is in the strange position of being both a successful enterprise product AND a social network.
That's interesting to think about. Who knows, maybe GitHub will become the next LinkedIn for developers? Or for everyone? LinkedIn is nearly unusable these days, in my opinion.
GitHub already had a business model where they give a lot of stuff away for free and make it up on a premium offering. This just shifts the line between the two very slightly. I don’t see this creating any new concerns.
> GitHub is in the strange position of being both a successful enterprise product AND a social network. What other product exists with that kind of crossover?
You think with all the telemetry MS put in Windows 10, there is not going to be any sort of customer reconnaissance going on in free GitHub? There will be a lot of data mining going on.
While I think this is a great move, don't forget that private repos also means no more free Travis CI.
Gitlab CI however offers 2,000 build minutes a month with their integrated CI service.
Even if your whole set up takes 10 minutes to build on CI, that's 200 builds a month which is plenty for an individual project that's on a private repo.
In other words, I think Gitlab's free private repos + CI is still a better choice for a solo developer who wants private repos since CI is such a useful tool and other external CI services have much more limited free plans (to use with Github instead). Having everything in the same UI is also really useful, which is another win for Gitlab.
I prefer Github's UI for overall repo exploration and issues, etc.. but I'm not sure if I'll move my private repos over to Github now that's it free, because the repo itself is only 1 piece of the puzzle.
Microsoft also has a deep connection with Docker. It's kind of no surprise that Docker only has automated build support for GitHub and Bitbucket. Kind of a bummer, but with Gitlab CI you can get the same effect in the end.
Also, the best part about gitlab CI - it's super easy to install gitlab-runner on your own and enjoy unlimited build minutes, even on the free plan. Plus you get to set up your buildbot environment just the way you like - even with access to LAN-only resources in case you need them.
That's an excellent point, and I haven't looked into that yet because I never went past the 2k minutes per month.
But if you did need > 2k minutes, it sounds like a good idea to spin up a $5 / month DO server to be a dedicated runner. That sure beats paying $50+ / month for most other CI services for their most basic paid plans, especially if you're just a solo developer or small team who wants a nice coding experience.
And you can hook up a small autoscaling gitlab-runner which will spin up CI VMs on-demand. If you combine this with spot-instances at AWS you can scale very far on the free plan with minimal cloud spend.
We did this for our project and our builds sped up considerably. Also, Digital Ocean provides a quick solution to setup a GitLab runner on their cloud.
I hate to keep beating the dead horse-but you can do the same thing via MS’s Visual Studio Devops aka Visual Studio Online with a local build/deployment agent.
And you can do the same thing with personal licenses of your chosen ci server and you can throw in a personal deployment server to boot (i like octopus).
I actually just use Appveyor if I can for my personal stuff.
CircleCI's free plan is way too generous. I was on it for a couple years without ever needing to upgrade to paid. I later ended up switching to Codeship, whose free plan was quickly exhausted and now I'm a paying customer of Codeship.
Azure Pipelines free offering is superior to Travis by every imaginable metric - UI latency, build latency, featureset, sane, carefully thought about YAML syntax, etc.
It seemed like if you wanted to self-host your own CI builder with their agent, it was still limited to 1 parallel build on their free plan?
Is that true?
With Gitlab, if you bring your own runner, there's no limitation like that AFAIK (I've never done this yet because I never surpassed 2k build minutes a month) but I glanced their docs.
Yeah, that's annoying. However, there's an undocumented loophole: you can have multiple agents on the same machine and they can all run in parallel even if you didn't buy an extra private pipeline. We recently had a build server with four SSDs, one agent on each, and they could all run in parallel. It worked fine.
Open source projects get unlimited self-hosted agents. Let me know if you aren't experiencing that. I'll make sure it's clear in the docs and the website. jepling at microsoft dot com.
As someone who uses the paid Azure Pipelines agents I can say I really like it generally but their hosted build agent performance is ... adequate ... at best.
I'm a product manager on Azure Pipelines. I'd like to learn more about your pipeline so we can improve the performance of our hosted build agents. It's something we're improving right now. Feel free to email me. jepling at microsoft dot com
I noticed Travis builds complete faster once they're running, by something like 20% in my case, but that's more than offset by having twice as many parallel builds by default. Never dug into why it's slower, though, at a guess something to do with the filesystem
Github Actions is in private beta. From the little time I've spent with it, it could fundamentally change the way you interact with CI; its pretty different compared to normal CI products like Travis, Circle, etc.
Primarily, each pipeline stage can directly reference other public Github repos, with no additional code on your part. This taps in to that community that only exists on Github; for example, to build a project in Language-of-Choice, you just need to find a public implementation of the build pipeline stage for that language, then reference the URL in the action you build.
Its also very docker native, actually to the point of being totally unobvious that everything starts with a docker container. The documentation and hints about how to use it are still pretty sparse since its in beta.
Pricing still hasn't been announced. We'll see. But it feels very promising, especially if a community developers around it focused on providing pipeline stages.
Hopefully they will announce what its pricing and limitations will be soon.
Until then, I'm sticking with Gitlab for private repos because I don't want to wake up one day with Github actions to find out that I need to start paying to regain access to CI.
I don't mind if it's premium only when it's released, but they should be clear about this up front. It kind of worries me that they didn't mention it'll be a free feature in the docs. That seems like something you would want to say up front if it were true. It would be really lame if they open it to everyone to beta test it and then switch it to paid for the general release without mentioning that.
I'm late to this but Azure DevOps has plenty of free build time and resources and they are linkable to your GitHub repo. I imagine it'll get even easier and more integrated in few updates.
Github is a great UI that we all are familiar with and there is a huge community around it, which is great for OSS, but I have to say, I trust Gitlab more than I trust Github.
I am a happy user of Gitlab for 3 years now, I have been using it for all of my private stuff and using it actively for around 10 projects at the moment, and I have seen the product change over time both visually and functionally. There are multiple things that I don't like about it, such as the way it handles registry images, but overall my experience for these 3 years has been terrific.
First and foremost, Gitlab CI is the best experience I have ever had, and I can compare it with Travis and Codeship; Gitlab is way ahead of every platform in terms of convenience and its free-tier limits. They have their own shared runners, which means you can run as many parallel jobs as there are runners available at the moment, so no concurrency limit there. They also allow you to run the free stuff for 2000 minutes per month, which is more then enough for most of the side projects. Also, you can use your own runners with the free tier as well, which means just pick a 5$ VM from DO, install the gitlab-runner using the package manager of the OS, such as apt or yum, and register its address on Gitlab UI. The whole runner stuff takes around 10-15 minutes to setup, and you are good to go. You can have as many runners as you like and you can run as many jobs as you like on them as well. There are also options to setup gitlab-runner in such way that it spans new VMs for jobs, which means you don't even need to have full-time runners, they can be created on demand. Also, CI is completely configured via a `.gitlab-ci.yml` file, which is version controlled and has a clear syntax, I have found it the easiest to use among the other options. It syncs with issues, merge requests and the project tree, which means you can reach to the corresponding pipeline from the MR; it also allows you to generate artifacts and store them for a certain amount of time available for download. Overall, I am a huge fan of Gitlab CI, I couldn't have imagined it would be this convenient to use the same product for Git-hosting and continuous integration, it is a real pleasure.
They also have their own Docker registry, which is pretty convenient to use with CI builds. I use it to push my images with commit hashes as tags to this registry from CI. Unfortunately, there is a lot of room for improvement for registry interface, currently it is pretty basic, meaning it only lists the image tags. If you are pushing the images per commit basis, you are gonna have a lot of images and cleaning up the repository is impossible from the interface, which is sad. I really hope they improve the registry integration. They also have some Kubernetes and monitoring integration which allows you to monitor your cluster and deployments from Gitlab interface directly, but I haven't used it yet, so no comments there.
Apart from the feature set, the most important reason I choose Gitlab over Github is clear communication they maintain. Downtimes happen, engineering teams can have bad times, but they are always open about these problems. They inform everyone from a Twitter account, they are responsive to everyone, and you can see them being very clear and direct about the problems they are having. I expect downtimes to happen, Git-hosting is not a crucial system for me that I cannot live with an hour of downtime, maybe it is because of the scale of the projects I am working with, but having an open conversation about issues like this is the actual value for me. As long as they keep this level of communication, I am fine with occasional downtimes. Not that they have downtimes all the time, but it is true that I have seen more downtimes on Gitlab than on Github.
Overall, the reason I'd not migrate my private projects to Github is not Gitlab having free private repositories, but their huge feature set and level of communication. I see Github as a giant corporation, and Gitlab as some guys like myself, I feel closer to them and I'll be their user & customer as longs as I feel that way. I have no association with Gitlab at all, I am just a happy user and I wanted to explain why I like Gitlab, I think a lot of people would choose Gitlab over Github if publicity is not a concern.
Hey, I wanted to express the same enthusiasm as sytse. Thank you very much, your words are amazing and we are really happy to read this great feedback.
Shared it with others so they can enjoy as well :-)
Also wanted to share this feature we are currently working on, it allows you to remove unused tags from Container Registry, and we hope it will land with release 11.7 https://gitlab.com/gitlab-org/gitlab-ce/issues/55978
Sure, you can do whatever you like with it. I am genuinely happy and proud of using Gitlab, I have grown as an engineer with Gitlab, and I feel like Gitlab has grown with me too. I hope you guys enjoy the work you do, because I enjoy your work and I can pursue my projects thanks to you guys' efforts. Keep up the good work!
One of the best uses of GitHub is being able to search for some obscure framework method name or enum constant, and find examples of working code that uses it. This has saved my life many times when trying to figure out how to configure Java frameworks to interact with each other.
When searching for this kind of code, you have to wade through an awful lot of repos containing half-baked personal projects, experiments, unmodified clones of upstream frameworks, and barely-modified boilerplate examples. It would be nice if there was less of this detritus clogging up the search results.
However, sometimes the code you actually want is embedded in some otherwise useless, half-baked personal project, or barely-modified boilerplate example. So if all these projects disappear behind a veil of privacy, maybe it won't be a net win.
Honest question: how do you make github search work for you? It often fails to find stuff that I know exists in a given repo. Nothing fancy, even single-word full symbol names.
What you describe used to be a problem years ago, but since they updated their search to its current iteration a year or two ago, I have had no issues finding exact string matches in repos. Can you give an example of a repo and a search that fails?
I have also experienced this phenomenon. Finding some brilliant hack used in a randos personal project to work around a bug or deficiency in a popular library.
Finding a library with no documentation then Searching GitHub to see personal projects where the owner has already reverse engineered and integrated.
I always admired Github for incentivizing public repositories to promote collaboration and open source. Would hate to see that fade away.
This is the killer feature of GitHub for me. When learning a new language, being able to sense-check your code against what someone has done in the past has helped me understand how and why some things work the way they do.
Gives developers who have small indy projects a reason to use Github rather than a competitor (I know I use gitlab precisely because it's free for my private one-off repos).
My move to Gitlab was basically "come for the free repos, stay for the rest of the amazing features". I will not be moving off it, and my new repos will keep being on Gitlab.
Thats why Github won't want people testing GitLab because feature wise Gitlab is a much better product and is getting better at a faster rate than github
The integrated CI is amazing, the Docker registry is nice, the issue boards are great, the saner permission model (you can add multiple people as repository owners without putting them in a team), these are the things I can recall off the top of my head.
Being able to have groups and organizations without the weirdness of GitHub.
GitHub's default path for organizations is that you are creating a business that will be very separate from your personal account.
GitLab's default path is that it's just a group. Maybe just a named group for related projects. Once you dig in though, GitLab's group admin is much better than GitHub in my opinion.
Anyone who has ever done development on any Microsoft site has felt the pain of a million logins.
I was working on Outlook stuff at my previous job and it was a nightmare. They have three different offerings of emails. You can login in Outlook and O365 with the same account iirc, but not the others. Or something like that.
I just remember wanting to cry as I tried to figure out how to login.
Then the API docs are even worse. They had different APIs for each email offering and one pointed to the other then that one pointed to the previous one.
Microsoft's problem is that it has too many services. Google may change things constantly but at least they don't have three different email offerings with three different APIs at varying levels of brokeness.
I actually switched back to GitHub yesterday, because it‘s still better integrated in the overal tool landscape (eg Heroku). So I just pulled the trigger on a $7 subscription for private repos. And today the good news of free private repos arrived :)
I'm sorry to hear you left GitLab. We're working on making sure GitLab offers a great PaaS experience https://gitlab.com/groups/gitlab-org/-/epics/111 (I posted in there 3 days ago, hopefully indicating this is important to us)
This is great news. I'm looking forward to seeing what you come up with.
I'm not sure how relevant it is to you, but I hope you take some inspiration from https://platform.sh/ – it's the PaaS I've had the most luck with. While it isn't perfect, it's the closest thing I've found so far. Their "almost everything is in git" and instant environment cloning are fantastic features.
My understanding is that everything is cloned – included Redis and any search indexes. I've only tried with a database though, so that's the only thing I'm certain that works.
co-founder here, a bit late. Yes everything gets cloned. Databases, search-engines, message-queues, static files... you get precisely the same cluster in the same state.
No need to be sorry, I'm still bought into GitLab. I use it extensively at work and it's fantastic. But with my private projects, I don't have the capacity to deal with Kubernetes' complexity (even when it's well integrated), I really just want my stuff to be fully managed and GitLab isn't there, yet. I'll keep an eye out.
I actually switched from Github to Gitlab about two months ago just for this reason. I bootstrap my company from my own pocket and wanted to save a few dollars every month. Really wish I knew this was coming before I deleted the repos and migrated everything.
edit -- to everyone asking, I have no problems with Gitlab and I also have no strong preference Gitlab vs Github, they both perform the same role for me in exactly the same manner. I just wish I had those couple of days back that I spent migrating and editing my deploy scripts.
How does this change by Github make you regret migrating to Gitlab? Do you think Gitlab's offering is in some ways inferior?
I mirrored everything to Gitlab sometime ago, for public repositories and also use them for private repositories. The only real advantage I could specifically name for Github is the organic contribution factor due to their volume of traffic. However, this doesn't really apply to private repositories.
Edit: I see this has been answered below now - time spent migrating.
It sounds like it was the right call at the time. You can't time corporate strategy shifts any more than you can time the market, so just make the best calls you can with what you know.
Yep it's the time I spent making the decision (Gitlab isn't the only other choice, and I did a bit of research), then changing my scripts to point to Gitlab instead of Github and letting a couple of testers know where to go to file issues then familiarizing myself with Gitlab's interface.
Not a huge amount of time, but since I only have about 2-3 hours per day to work on the technology side of the business, it was a couple of days worth of hours from the time I decided I needed to cut spending to the time I had Gitlab integrated into my stack. It was a couple of days I didn't have to spend improving the product, even though it was a win from a financial standpoint.
And now with this announcement, it was hardly even a financial win. Oh well. I don't have the time or desire to migrate back.
Maybe not so smart when devs realize that the free private "repos" have features removed that have been standard. The marketing avoids this fact. You need to scroll down to the "Comparison" section to see it. https://github.com/pricing#feature-comparison
In GitHub's case, only if you're willing to pay for the bandwidth... something which I am currently struggling with in regards to open source projects needing binaries in-repo..
Yep, although one of the products this competes with is Azure DevOps - which also offers unlimited git repos... and is of course also owned by Microsoft!
I'm wondering what the future holds for both GitHub and Azure DevOps. I actually use both, and have done for several years, and they're both great products - I'd hate for either of them to go away.
Azure DevOps is a lot more than just source control, so there isn't all that much overlap with what GitHub offers. I imagine the future will be GitHub for VCS, issues, project management and Azure for CI/CD, testing and deployment.
Except that doesn't put GitHub on par with GitLab. So they are basically kneecapping one product (GitHub) in order to not compete with another product (Azure), leaving them with two halfassed products, neither of which are as good as the competition (GitLab, which has built-in CI).
They'd be better off killing one product or the other, rolling it into the remaining one, and at least having a single-brand offering that can compete on features with GitLab.
Azure Repos likely will remain competitive, at least in the near term, with GitHub simply for its "by default" integration with the rest of DevOps (versus GitHub's opt-in to the rest of DevOps), and easy hooks into corporate SSO and billing (Office 365). It will be interesting to see what happens with Azure Repos in the longer term.
Yes. The free tier has the basic pull request functionality (called merge request). Some features (require approvals before PR merges from contributors, require approvers from certain groups) are limited to paid tiers on gitlab.com
Competition in a free market is good, but in the presence of monopolies, it's a self-destructing concept.
TechCrunch wrote[0] "This feels like a sign of goodwill on behalf of Microsoft, which closed its acquisition of GitHub last October, with former Xamarin CEO Nat Friedman taking over as GitHub’s CEO." I believe it's more of a sign of an attempt to kill GitHub's rivals by hurting their revenue streams. As Aaron Levie, co-founder and chief executive of Box once said in 2014, “These guys will drive prices to zero, [...] you do not want to wait for Google or Amazon to keep cutting prices on you. ‘Free’ is not a business model.”[1]
It's tough when your competition can give away their product and fund it through their bottomless pockets and money they make on other products.
I used to work for a great company in the developer tooling area, one of the big players came directly after us, ramped up a team, started copying our features and gave the product away for free. We were still doing well when I left, but it'll be interesting to see how it goes over the next few years.
This might be a naive comment, but isn't that predatory pricing. By dropping prices to zero and trying to purposely hurt your competitors, you effectively gain a monopoly on that industry.
But they're not. They created a new, feature-reduced repo type to make free/private. The marketing hides this, and you need to dig to the "Comparison" section to see it:
Good point, it's not the exact same. But their new offering is much closer to what their competitors are offering, so I'd say it's still a move to try to better compete with the free offerings from other companies.
It’s currently the de facto solution, and it’s on the way of becoming a monopoly.
9 out of 10 companies I’ve applied to asked for my GitHub profile explicitly; I presume they would be equally happy with a link to Bitbucket or GitLab but it just shows that GitHub has already won the mindshare by far -which comes as no surprise-.
Now that they are acquired by Microsoft, they have more resources than any of its competitors.
The term monopoly has a meaning in economics and even in normal conversation. Saying they have monopoly because they have lot of mindshare is crazy talk.
Its the most popular option but its far from a monopoly. Last job I applied for asked for my github account and I sent them a gitlab link. They hired me and internally they use bitbucket.
For those of you using GitLab, BitBucket, or <insert-other-git-host-competitor-here>, does this make you consider switching back at all? If so, why?
It may be myopic, but the only major reason I can think of is visibility if you plan on publicizing the repo at some point. But you can achieve this by using GitHub as a mirror for your main repo on another platform (at least for GitLab, I’m not familiar with BitBucket).
Edit:
Personally, I use GitLab (both .com and I've set up/maintain several sefl-hosted solutions). I originally tried out GitLab due to lack of private repos on GitHub, and I don't see a reason I should switch back at this point. The open development and attitude towards the product and community has been part of that.
Github was always the go-to option and there was no reason to really even consider alternatives at first. People said "Bitbucket has free private repos!" for years and that was interesting but not compelling. Few users left Github because their competitors had free private repos.
Github got acquired, and that acquisition basically erased any and all user trust in Github as a company because they no longer control their own destiny. Instead we have to trust Microsoft. And that was a big enough shock for people to actually consider all of the competitors instead of just defaulting to Github like they did before.
To some extent, I suspect people paid for private repos from Github because they believed in supporting Github as a company and $7/mo isn't that much. Nobody believes in supporting Microsoft as a company. Microsoft charging for private repos is like Disney having a Patreon account.
Sure, but you're not going to give Microsoft money because you like them and want them to do well, and that was probably the main motivation behind paying for private repos. It was never purely a value proposition of, "private repos are worth $8/mo", it was a value proposition of, "Github is a valued part of the community and I'm willing to pay a token subscription fee in exchange for some token extra features". Partially because, well, it takes money to run Github and if people don't support them, they'd go broke and have to find some big corporate entity to acquire them.[1]
Sure, that motivation started to erode the longer that Github stayed around and the more money they made on their enterprise products, but there was never a sudden shift that forced anyone to reconsider the question until Microsoft came in.
[1] Editing with footnote: This is also one reason Bitbucket struggled despite having free private repos. Atlassian is big and corporate and widely resented already, so they couldn't even offer that value proposition anymore than Microsoft can.
I use BitBucket for my solo private repositories specifically because it was free. They are a trivial load to the provider in both storage and transactions.
Repositories which I make public I put on GitHub since that seems to be where people will find them and are more likely to contribute.
Had this policy been in place when I started using git I never would have found and used Bitbucket, but I don't feel anything is gained by moving my private BitBuckets to GitHub.
Update: I see another reply talking about the web interfaces. If I used them that might be a factor, but for my private stuff the only web functions I use are for creating the repositories, and both platforms get that done easily enough.
If I was still on Bitbucket, this would have been enough for me to switch back.
Since moving to Gitlab, I couldn't go back to having to run Jenkins for private projects after using Gitlab CI (with a self-hosted runner). Also even on the free tier, even for one-man projects, the issue tracker features are better than github.
yeah. I'm dropping Bitbucket in favor of this for my private projects. BitBucket's UI is so un-intuitive that I (most of the time) dread actually having to log into the web UIs for it.
I'm also just much more comfortable with GitHub since I use it daily in my day job.
> For those of you using GitLab, BitBucket, or <insert-other-git-host-competitor-here>, does this make you consider switching back at all? If so, why?
Absolutely, though I don't think it's really "switching back". I always preferred to use GitHub but had to use BitBucket for private repos. Now I don't need to bother with BitBucket.
I am confused by this sentiment. Wouldn't moving to another product (like bitbucket or gitlab) put you in the same boat (since they also offer free private repositories)?
Typically I use Bitbucket during initial phase, when the project is still in active development. Once I'm happy with the code after a while, I move it to GitHub.
But I don't want the BB version to become outdated so I end up maintaining 2 repos. Having private repos directly on GitHub will optimise my worflow. Definitely a good move.
GitHub integration in visual studio is quite good, I might switch back from gitlab because of that. I just didn’t think it was worth 8 dollars a month before.
While understandable, this is sad to see. The amount of interesting and useful code that is currently available due to GitHub defaulting to public will likely be seriously negatively impacted by this.
I can only speak for myself, but I had simply put all of my private stuff over in GitLab instead. For folks like me, this will result in no external change. Just a question of where I stash stuff.
Yep, it makes sense. I think this is why it was an easy decision for them. GitHub does not want developers getting cozy with Gitlab/Bitbucket, even for personal projects, because then those developers will start to push the companies they work for towards those same providers.
You could be correct, but the “social network” boost to reputation potential is strong enough now that I suspect a lot of people will still choose to post public content where reasonable, while us cheapskates won’t have to look to another platform for private code hosting.
For better or worse, having a Github profile is now a thing that’s expected of developers, so public repos are here to stay.
Personally speaking, I’ll still default to public for my side projects. But a free private repo sounds like exactly the thing for online classes or web challenges where you’re explicitely asked not to share your code. I’ve just started on the cryptopals challenges, now I know where to put my code :D
Offline classes too! As a former TA, I can attest to sometimes being a struggle to deal with grading when students from past semesters have their code publicly available online. (The solution we used was to change the specifications for projects slightly so that old code wouldn't produce the correct results; generally students who would rather cheat than learn are too lazy to actually modify the code they're plagiarizing, and we usually caught at least one or two each semester)
Agreed. I can't tell you how many times I've been at my wit's end trying to figure out how to do something, and stack overflow had failed me, and in my desperation I start searching github for strings like "GL_ARRAY_BUFFER", and scroll through dozens of pages of results, and lo and behold, someone's half-finished toy application contains exactly the line of code I was looking for.
I have had unlimitee private repos on GitHub for over three years (job perm) and have made use of them twice ever. One for my vimwiki and the other was created and then touched.
Hopefully others will be like me and simply opt to not use it.
I doubt it. I don't see how more developer agency is a bad thing. If anything, more people will start using Github earlier on in their development cycle and Github will be the obvious platform of choice for when those projects are ready to go public. On the contrary, I think we'll probably see less trash and more quality projects on Github.
Besides, I wouldn't want to live in a world where people want to do X (private repos) but are forced to do Y (public repos) because X is not feasible. Now X is feasible and the landscape will more accurately reflect developer intentions.
On the flip side, the amount of Hello World projects masquerading as useful things in their README.md in search results until you actually click through and look at them properly will hopefully drop off a cliff.
I feel like most people either want their code public (they want to share their projects with the world) or they want it private (they don't want the rest of the world to see their embarrassing toy projects).
I think the projects that could go either way -- that are public just because it's cheaper than private -- probably aren't that common or that important.
Plausible, or maybe more people will try things privately and when they get some interesting results they'll turn it public. I know I had a little amount of shame in not throwing lots of stuff publicly..
"Due to a scheduling error, we published this story one day before the embargo lifted. This feature isn’t live yet, but Github will formally unveil it tomorrow. When that happens, we’ll update this post with a link to the official announcement. "
Not even an apology in there, would have expected more from TNW.
Awesome, awesome, awesome. I know I have no right to think that anyone would care for a moment about the code I'm writing or the potentially money-making side-projects I'm working on, but I am paranoid about entities like current/future employers and third parties seeing what I'm developing in private. I often just keep those local and back them up privately to an SD card, or go with private bitbucket (which is harder because I do all my at-work development on GitHub).
This will significantly increase my use of GitHub.
So, when I go to downgrade my Pro account to the Free tier, it warns me:
> You will no longer have access to unlimited collaborators or advanced code review tools in private repositories.
> You will still have access to unlimited private repositories.
So it seems some functionality beyond just unlimited collaborators that is tied to the Pro account - but the blog post makes no mention of what these "advanced code review tools" could be. Anyone know?
As far as I can tell, neither of those resources describe "advanced code review tools".
What does that mean? What are these code review tools?
The help document does talk about Protected Branches and Code Owners but those seem different than code review tools and "code review" is listed in the free plan.
Gotcha - the feature matrix clears it right up. Most of those features aren't very useful with the <4 collaborators on free private repositories anyway, so this makes perfect sense. Thanks :)
What's amusing is that this will likely hurt the tool makers since it will lock them out of free accounts, where as before they could sell to free accounts. Seems like a whoops for GH.
And those only for private repos; they're still available for public repos.
I've been happily paying Github $7/mo for years now for Pro, but there's now literally no reason to keep doing so, so back to Free it is. Thank you Microsoft! ¯\_(ツ)_/¯
That's the one of the reasons I stay with bitbucket or gitlab. If they offer this feature at the very beginning, I would never touch bitbucket/gitlab, but now both of them offering free build-in CI(public and private). I am hesitate to migrate back.
I don't understand that much awe. BitBucket offers unlimited private repos for up to 5 contributors, and GitLab has no limit. Much ado about nothing...
This is not about revenue percentage or anything revolutionary etc, this is about matching up competition offers: both gitlab and bitbucket are doing this, especially bitbucket who has unlimited private repo from the start, this is a catch-up move, nothing more than that.
The press release barely mentions it but it's true. The free private repos are cut down, including bizarre hold-backs like wikis. GitHub's wikis aren't great, but why hold them back? It's kind of mind boggling.
Public repo wikis would get read by an arbitrary number of people. Private repo wikis would only get read by the 1 to 3 repo collaborators. So perhaps they thought it wouldn't be a big deal to disallow them.
I always believed Microsoft saw GitHub as a potential "in" for millions of developers, rather than a product that could generate revenue.
This move doesn't worry me, as I'm sure Microsoft would look to do something easy to calm the nerves of people who worried about Microsoft's acquisition. The cynic in me sees this as sweetener for Microsoft's later moves to integrate GitHub with Microsoft's developer tools, which will infuriate me along with millions of other developers.
Because I want GitHub to be agnostic and not pushing me towards anything?
This was always one of the core worries about GitHub and Microsoft. Microsoft will not leave GitHub alone. It's too important to developers, and no matter how much they say "we won't touch GitHub", nobody (rightfully) will believe them.
Not OP but I think some people think that Microsoft might make it more difficult to use other services with GitHub rather than just streamline it for Microsoft. I don't think strengthening Microsoft + GitHub integration is a problem and is probably smart for them to do. They just should not and probably won't make it prohibitively difficult to integrate with say AWS or GCP.
I'm assuming MS knows enough not to break existing integrations, but they could build in a direction such that Azure-based stuff becomes a "first, best" integration with GitHub.
Yeah I'd imagine that GitHub Enterprise and org subscriptions are their primary source of income. User subscriptions never really made much sense to me.
Anecdote: I used both GitLab and a paid GitHub personal account.
I didn't opt to pay for GitHub until I needed to host some private config files in Git, and at the time (maybe a year, year and a half ago?) GitLab wasn't in as great of shape as it tends to be now: for me, it was slow, unreliable, and sometimes just felt "off" in ways I can't really quantify. I already used Github for open-source work and at my day job (and had been using it at work for years), so I paid up (given the alternative, with GitLab not being what I was looking for, was to pay up and host a Gitea instance, or use BitBucket, which was a complete non-option for me).
These days GitLab seems to be a lot more stable and able to handle day-to-day workflows, but GitHub still has the community factor, so all my public repos and forks live there. It made sense to continue to keep my private repos next to my public ones, so when my annual subscription renewed, I was cool with it.
Migrating fully over to GitLab/Gitea/flavour-du-jour is something that's perpetually on my "TODO: investigate" list, and never actually gets done, because despite any minor gripes I may have with it, GitHub tended to "just work", and it "just worked" ~$80/yr worth.
I started paying a year or two ago when I wanted to make a private side project that I didn't want open source. It's nice to keep the same UI between other projects and this one. $7/mo or whatever it is was worth it IMO. Plus I like their lightweight project management tools.
I'm an individual software contractor and I pay for a personal plan. GitHub UI and UX appeal to me more than competitors do. Also it seems that all the libraries I regularly use keep their code on GitHub, it feels like a community to me.
It sounds like recently they sorted things out, but Bitbucket's interface was buggy to the point of unusability for me. Some scary permission issues like not being removed from a corporate team.
Bitbucket’s website is slow as hell. I actually physically cringe when I have to do something through the website (e.g. create a pull request) because I know I’ll be staring at slow-loading pages for the next 5 minutes, even for something that’s 3 clicks away.
And their new sidebar interface is not only slow, but also not very intuitive. It really makes me want to migrate our corporate repositories to GitHub.
In third world countries we typically don't want to spend $100 a year for something like this when BitBucket and GitLab are free. This change is a big deal for our situations.
This was the reason why I mostly use GitLab for several years now. I prefer to make public those code that are refactored, well crafted and documented.
I have been a vocal critic of Microsoft acquiring GitHub, but gotta give credit where credit is due - this might be enough for me to move my private repos back to GitHub.
Also, if you fork a private repo, I wonder if that’s 3 new collaborators? Could you have essentially unlimited collaborators by forking for each person and having them submit pull requests?
I actively avoid using GitHub private repositories for this very reason since I have too many 7-9/month subscriptions it all adds up fast. This actually will encourage me to start some fun project ideas more now that I know I can rely on the private repos.
I imagine they'll eventually remove individual plans entirely. Microsoft probably doesn't care about the tiny revenue from random developers paying them and would rather focus on enterprise plans.
One thing I like about bitbucket/atlassian over github is bitbucket's pipelines[1] and the bitbucket-pipelines.yml file. I really wish github had something like that.
It’s unlikely due to how it works internally. They’d basically have to rewrite most of it from scratch. Not to mention “Bitbucket Server” is a completely different codebase (used to be called stash)
Yup. At least at the business tier you can. Push to gh-pages and it deploys to the site, but site visitors never see the ingredients that go into the sausage.
+1 Gitlab is awesome! Cool community oriented developers and a ton of more features. I see no reason too use github when gitlab is just better. It's also offered as a self hosted service.
I find the GitLab issue board to have a poor UX. For example, depending on where you click, it will open a small summary to the right or it will open a new page with all the issue information.
Also, it is ridiculously expensive to have epics, compared to every other issue tracker I have seen, in GitLab issues.
Hi Eduardo, I'm a UX Designer at GitLab working on issue boards. If you click on the issue title, it will open the issue in a new window. If you click somewhere else in the issue card, it will open the summary sidebar. But I agree with you that it can be confusing and not the best UX! To improve it, we are planning to redesign the sidebar so that you can see most (if not all) of the issue's information, removing the need to open the issue in a new window. You can track the discussion and designs in this epic: https://gitlab.com/groups/gitlab-org/-/epics/383#note_108940... Feel free to participate and share your thoughts.
I'd love to hear more about your painpoints with issue boards (and issues in general).
Hi Eduardo, thanks for writing about your experience with GitLab Issue Boards.
Could you please tell us what could make your experience more convenient? Do you have an open issue regarding your suggestions? If not, it would be great if you could open an issue about it at https://gitlab.com/gitlab-org/gitlab-ce/issues. We'd like to follow up on it.
It’s really valuable for us when users take the time to submit issues for bugs, changes, or feature proposals. This helps us steer the product in the right direction.
Can I remove old docker images from the registry yet? Heck, I still can't order by date, which should have been the default all along. Why would anyone want to see the images ordered alphabetically?
It can take minutes to page through and find the most recent image buried among hundreds.
I'm sorry this has taken so long, but we are working on some foundational API's to manage and list images right now: https://gitlab.com/gitlab-org/gitlab-ce/issues/55978. I've also added your feedback on sorting, thank you!
We are also setting up a team to focus on just packaging related features within GitLab, like the Registry, which should improve our velocity in this area.
That's cool. I have no problem paying a bit each month for more features on GitHub so hopefully they add more powerful features, but free private repos for individual projects is great since GitHub for many people is a portfolio.
They just updated it a few minutes ago! By the time the blog post was out it was still asking for a credit card. Now it doesn't. They really rushed things out because of that TNW mistake!
Like many others here I'm also pretty happy about it. $7/month is not a lot of money but I also moved some personal private repos to BitBucket to avoid the fees. I will probably go back now.
I think most people here would agree that "unlimited free private repos" is not considered lying when in fact the free private repos are limited to 3 collaborators... correct?
So why is it that when the subject turns to cell phone data, suddenly "unlimited data" is considered lying when the speed is then limited past a certain point?
(Yes, I get that one service is paid and the other is free, and that you don't look a gift horse in the mouth, but those are beside my point.)
Another difference is that, with GitHub's announcement, there are multiple ways to interpret it because there are different things that the modifier "unlimited" could apply to. It could mean:
1. Unlimited number of repos, each of which is limited (by user, as it turns out).
2. Limited number of repos, each of which is unlimited.
3. Unlimited number of unlimited repos.
When there are multiple ways to interpret and you find out someone has picked one of them, it doesn't feel like they are being disingenuous.
Whereas with cell data plans, there's only one thing they could reasonably mean is unlimited: the data. So they've changed what "unlimited" means. It is limited, but there aren't overage charges.
In cell plans it's exactly the same thing though. The amount of data vs. the speed can each be artificially limited separately. They obviously mean the amount is unlimited whereas people somehow take it to mean both the amount and the speed are unlimited.
I think that with GitHub the "unlimited" is understood to mean "in repo count". You can create as many repos as you want and still get the same quality of service. You are not punished for creating more repos, you just have some limitations on (all) the repos you can create.
With cell phone data, "unlimited" is understood to mean "in quantity". However, once you reach a not-all-that-hard-to-hit threshold in that same metric, your quality of service degrades severely. I don't think anyone would have any issue if a carrier sold an "unlimited data" plan that provided that degraded quality of service from the start and didn't throttle based on actual usage. They would just factor the tradeoff into their purchasing decision and choose a plan appropriately. The problem is that the carriers advertise both the higher speed and the unlimited-ness when you can't actually have both at the same time.
Well, I think this is a pleasant surprise. I have many public github projects (code for various books I have written and a bunch of small open source projects). I have paid for a pro plan for many years because I like to keep very rough code experiments private, and maybe make them public if they ever get sufficiently mature.
I just took Microsoft/github up on their kind new deal and cancelled my pro plan at the end of the current yearly billing period.
I'll be curious to see how much Git-LFS is offered. I've been using Gitlab for private repos, but I need LFS as well.
Also, will be curious to see the pricing structure - if this changes anything. The sad thing about Github is I always liked it more than competition, and I wanted to pay, but the price felt a bit steep for my usage. Since private will now be free, I hope they have some type of $4/m price range for solo devs, slightly better than free.
From my own perspective,this results in me doing two things:
- cancelling my paid subscription: but in truth I was planning to do this anyway and moving to self-hosted in some way...I just wasnt getting relative value paying to just have private repositories for my own projects (I don't want contributors, but that doesn't mean I want my work to be public).
- but I will now as a result keep my repositories and activities on github. So this is a win for me: less work for now.
I'm the author of this post. The article has been updated to clarify that I accidentally published it one day before the embargo lifted. GitHub will formally announce the news tomorrow.
I would've deleted it as soon as you noticed. Might not have stopped people from noticing (nothing on the internet is ever deleted blah blah), but might have improved the optics a bit.
Yeah, I know. For some reason, when you put a past date in Wordpress and press "schedule," it publishes the article automatically. That's all this was -- a typo.
I'd be interested to see if you do a post-mortem on this - what the consequences were, and what steps you end up taking to ensure that it doesn't happen again.
I don't know if that's an "upshot", but I'd be interested to know if that happens.
One way to help ensure that it doesn't happen is to take steps to prevent it and post a post-mortem explaining both what caused it to happen and why it won't in the future.
This is a bold move. That should prevent a potential exodus to other companies, post-Microsoft acquisition, although doubtful if such a bleed in customers occurred yet. GitHub is far ahead of everyone else thanks to its user interface anyway. This should at least force the competition to step up big time.
This is what I do for anything I make that I think would be easier to find on GitHub. And vice versa for my own build tools so I can accumulate the projects I use from GH under one group on GitLab.
This is quite important for game development, where binary assets grow faster than you can think. Azure DevOps includes unlimited, private lfs-storage for small teams. [1]
I also wonder how microsoft prevents abuse in such an environment, but that's another question...
Is there a reason to use github free over gitlab free for private projects? From what I can tell, gitlab has much better features and more features/limits available for free.
Am I the only person who thinks this isn't a big deal? Honestly get is not a personal storage space, it's capped at 1GB.
As a service anything I build privately will need more than three collaborators. Especially for things which are traditionally kept secret like academic software.
Maybe this might help freelancers but proliferationf private repos with very few contributors is an anti pattern.
Gitlab is still the clear winner for private use while Github remains the most active for public repos.
Is this even a surprise, the industry moved to a per user model a while back, inc Bitbucket. So its unlimited private repositories but you pay big time to get more than 5 users sharing that repo.
It's surprising most people here aren't picking up on that. If you have more private projects on that make money. It's more likely you have more collaborators that you have to pay.
What a clever move. They probably make most of their revenue from medium to large companies, which will not be affected by this switch. At the same time, they're taking away one of the USPs of many competitors. This will increase GitHub's domination of the space even more, and thus be a net positive, despite the foregone revenue.
I've been using BitBucket for years because it allowed me to do a free private account. Since then I've set 3 companies up with their own accounts there - the monthly spend isn't huge with any of them but that's money that would have been going to Microsoft had GitHub had a free starter option.
In my case, Bitbucket will lose someone who was just using it as a dumb git storage backend, and did not engage with the Atlassian products at all. I assume that they won't be particularly bothered to see the likes of me drop off.
If anything this move might be beneficial for Bitbucket because if there's a 0% chance we would use their other paid products, we were just taking up resources.
I've been wanting to move a bunch of my old code into GitHub just for my own convenience, but have strained a bit on what I do and don't want to share publicly. Will probably take advantage of this and move most of it in private, and then gradually shift things to public as I'm comfortable with it.
To me, the biggest revelation out of this news was actually finding out both BitBucket and GitLab already offers unlimited free private repos. I am now highly incentivised to move away from self-hosted git server in order to store my micro project repos which are heading to 3 digits.
I know the new Microsoft seems different (and I'm a fan), but I can't help but feel like we've seen this movie before.
Recall back when Internet Explorer was free and bundled with Windows, and there was a whole antitrust lawsuit over it by the Department of Justice. What was old is new again.
Is that really comparable? Github's competitors were already offering free private repo so it's only natural that they try and keep up with the market.
The lawsuit wasn’t because it was free. The lawsuit was because IE (a web browser with a weak market position) was bundled with Windows (an OS with a dominant, almost monopoly position).
This means: GitHub now also offers unlimited free web hosting - with free SSL certificates! Look into GitHub Pages and Jekyll. That is a big deal! And something most people overlook.
I don't think so, If it's a public repository that means the owner have more confidence and willing to collaborate, which is a good thing.
Also, free private repository -> more developers -> more repositories
"Due to a scheduling error, we published this story one day before the embargo lifted. This feature isn’t live yet, but Github will formally unveil it tomorrow. When that happens, we’ll update this post with a link to the official announcement. "
My employer, a financial services firm in New York, blocks both gitlab and bitbucket due to their free private repos. Even though they allowed github until now, I am worried that they will soon start blocking that as well! :(
Given github + so + linkedin, it may make total sense for them. Not sure if I want MS in that position. They aren't the MS of old, I'm just not sure I want them that involved in the developer jobs market, more than they already are.
And now that is a good move. I completely moved my repos to BitBucket due to that simple yet game-changing feature (and then to GitLab for not so simple ones).
I don't think I ever would have, if github had this. Not coming back though.
I probably won't move to Gitlab or Bitbucket, then. This was the number one reason why I was considering it, now I can finally have personal private projects on Github. Good move on Microsoft's part.
I don't understand. I can see it was published 2 days ago but author says it he mistakenly published 1 day before announcement. So Announcement should have happened if it's for real?..Is this for real ?
The author accidentally scheduled it to be published on the 5th instead of the 8th, and wordpress automatically publishes things if the date they are scheduled to be published is in the past.
I have to recall why I paid instead of using bitbucket 5 years ago this which also have private repo free (for 5 accounts if I remember correctly). I think it is easier to use and more common even then.
I am pretty sure, bitbucket is going to get hurt with this move, and a little hurt for gitlab too I suspect. But a very smart move specially for individual developers looking to work on small side projects.
Unlimited private repos was why at some point I used Gitlab, and why I was grateful that my email address from an old educational institution still worked. I'm glad that they're making this change.
It’s all about developers, developers. Microsoft is desperately trying to attract developers since many have left their platforms, GitHub doesn’t need to be profitable on it’s own for Microsofts sake
Nothing unusual just standard Microsoft, first kill the competition (Gitlab) then when you're a monopoly f*ck users over ... they did this with IE, windows, etc.
I love Github for open source and the community but for private repos I like But bucket more. Don't know why but the overall interface feels cleaner, less cluttered.
Private subscriptions were a direct revenue stream for Github, and explained directly how they can afford the infrastructure that provides the service.
Generally when previously paid stuff becomes free, it's because the paid service is no longer a product - it's now a tool to attract users. How will users be monetised now?
The private repositories are limited to three collaborators. I think most people who would pay for private repos rather than simply use them as a factor in selecting among free hosts are going to need more collaborators than that before long (if not immediately).
Meanwhile, if people that just don't want to share their solo tinkerings focus on Gitlab or Bitbucket free plans for the private repos, then when they are ready to move up, GitHub is in a worse position to try to monetize them than if they were already in the GH ecosystem.
They're now owned by Microsoft. Critical difference between Microsoft and Google - Microsoft makes all of their money from direct sales and enterprise contracts for their primary products, including Windows, Windows Server, SQL Server, ActiveDirectory, Office, etc, while Google makes their money from selling ads to you with as much targeting information as possible. So this is now a loss leader for Microsoft, primarily to draw your attention to their primary products, and any money it makes or loses is on too small of a scale for Microsoft to care probably.
There's plenty you can criticize Microsoft about for sure, but they aren't trying to gather boatloads of info about you, just keep you buying Microsoft software.
Now that I think about it like that, maybe Google is infact becoming more evil than Microsoft.
(disclaimer, I work for Google, opinions are my own)
Depends on the product you are using and what kind of data you're talking about. For Google, GSuite (the old Google Apps and GCP) are more business focused and don't really capture data about you. Free-tier products will gather more data to better target ads to you or to provide useful features.
For Microsoft, they do try to sell you products... but you have to look at other products where they do gather data on you. I'm not sure what kind of data they get out of Bing and outlook.com/Hotmail. Then you have LinkedIn, which is all kinds of data gathering (though more Facebook style).
It's sort of hard to give blanket statements about many of the large tech companies, as they have multiple divisions and products that operate differently depending on the target markets.
Agreed but I hesitate conclude that Microsoft wouldn't care about making some extra buck by placing ads. The amount of crap I've seen with windows 8 and 10 was disgusting
> Generally when previously paid stuff becomes free, it's because the paid service is no longer a product - it's now a tool to attract users. How will users be monetised now?
Does anyone remember how Microsoft purchased GitHub in 2018? This is part of Microsoft's strategy now. Microsoft cares about developers using their platforms. Getting people hooked early on their ecosystem is part of that strategy. GitHub is now a part of that ecosystem. My prediction is that Visual Studio is going to get tied closer and closer to GitHub, that a lot of people are going to learn how pull requests work because of Visual Studio integration with GitHub.
Microsoft then turns around and sells GitHub + Visual Studio to software development firms, along with Windows Server and SQL Server licenses, MSDN subscriptions, etc. Managers won't hesitate to buy it because all of their employees already know how to use GitHub and love it.
As mentioned in the article, this only applies to repositories with a handful of collaborators and as such organisations with private repos will still need to pay a subscription.
GitHub enterprise will also continue to provide a revenue stream.
Random, entirely baseless speculation: they want all to put all your code to do machine learning on. Seems like ML based code checking and refactoring tools are slowly becoming a thing. Imagine an assistant that tells you something like "what you are writing right now might be bad code because 80% of similar instances were later modified based on bug reports and this is how that would look like for your code"
Teams with more than 3 people will still need to buy a subscription:
>Private repositories on free accounts are limited to three collaborators apiece. So, while this might work for a small project (like, for example, a team competing in a hackathon), it isn’t particularly well-suited for actual commercial usage.
Think of it as marketing expense to attract people that went to Bitbucket and Gitlab. A % of these users will convert to a paid plan. No need to get concerned here.
I do not want to depend on any proprietary platform, it doesn't matter if it's friendly or not.
I favor a distributed model as much as possible, that means for now having personal/projects classic websites, mirrored for instance on ZeroNet&c and source code exchanged as much as possible only P2P. It's not comfortable now but that's the sole possible free evolution path we have and only investing in it now can ease situation tomorrow.
Of course, like the trend "hey if it does not work for you write down your code"...
On git only: what is another remote? A GitHub concurrent company? A personal dyndns from a single developer with a fable ADSL?
On GitHub: many use it's proprietary characteristics like PR, wikies, pages etc. That's not "portable" to any other remote if you do not count site-scraping...
No, we need to focus on distributed/decentralized solution now.
In the past at least we use tons of different hosting most of them offered by ISP that actually use hosted projects, universities that actually participate in many FOSS project so while not distributed we are decentralized on "friendly" systems. Not nearly all FOSS project is on a super-big-corp server. Without any viable alternative ready to use.
A remote is a URL location of a repository. A local git repo can point to multiple remotes by using the git remote <opts> functionality. For instance, you can point your local repo to GitHub, GitLab, and BitBucket and choose which to push to using the command git push <branch> <remote>.
Hem, no perhaps is my poor English but you do not understand: I know what a git remote is. My point is what kind of "other remote" a typical FOSS project have these days?
In the past we have tons of hosters so we can easily spread our code in many "mirror", now there is GitHub and few others, mostly on the very same "cloud".
I mean you have no damn viable remote. Single devs can share code P2P but nothing that can work instantly out of the box.
> My point is what kind of "other remote" a typical FOSS project have these days?
In the context of the original comment, think: "setup a /second/ remote" as the meaning. If the first 'remote' is github, the second remote could be gitlab, and so forth.
Ah ok, so you change Microsoft cloud for Google cloud... UAU... And what about PRs&c?
Sorry for being rude but for me is unacceptable to depend on tons of proprietary stuff from a handful of vendors. Even personal websites that use Google Fonts, some JS framework directly from the "project" CDN (too hard to keep it on your disk, up to date) etc...
We need to be interdependent or independent not dependent of few subjects that make money on us for witch us are puppets. How can we say "it's FOSS" if so? How can we have FOSS as the tip of a proprietary iceberg?
You do realize that git itself is vendor independent, right?
One can, if one chooses, setup a git repository on a spare PC in ones basement and have a "git repository" into which one or more collaborators can "git push" and "git pull" to/from.
In the context of the original post, to which you asked "what is another remote", the second (or third, or fourth) 'remote' can be "any git repository to which the individual has access".
Having a second remote does not, in an of itself, require that that second remote be one of the proprietary git hosting systems, nor require that it be one of the semi-proprietary or open source hosting systems. It could just as well be plain git running in repository serving mode on an old PC.
See the documentation for the "git http-backend" and "git daemon" commands that are built into the git distribution.
Yes, git, however host a repo for anyone it's another story. In the past most FOSS projects was mirrored by tons of different participants, mostly universities, ISPs, companies with reasonable resource and being part of the project itself they can be considered friendly.
now with GitHub&c excluding Savannah the sole friendly option is buy a domain, a VPS and host there the project...
That's the problem, not technical but "political" to a certain extent.
In the past someone try GitTorrent to solve this problem a bit (opening the door for "personal hosting at home" but it's a dead project now ad it was never completed. Mostly because newcomers think GitHub&c as a free space by nature, something guarantee to work always and been always free without any other "occult" cost.
When I was a bit younger I read that "internet" was a fantastic decentralized infrastructure explicitly design to being fault-tolerant and unlockable as possible to survive any critical scenario... Now it seems more a deep substrate of a modern mainframe... So deep that only few subject can really access it, all others are in their own hand...
Maybe Github Actions qualify? https://github.com/features/actions I must say it looks almost like Gitlab's pipeline system, but somewhat more flexible. If Github's free plan allows you to use pipelines I might just have to test it to compare.
Not for public pipelines. I don't think it will be for personal private repos either. I'm sure they will add pricing plans that allow you to execute more pipelines in parallel, etc though. What makes you so sure it will be a paid feature?
Still amazed that anyone uses this site for more than trivial work, given that this language exists in their TOS:
"GitHub has the right to suspend or terminate your access to all or any part of the Website at any time, with or without cause, with or without notice, effective immediately. GitHub reserves the right to refuse service to anyone for any reason at any time."
I canceled my subscription, $7 for a UI to a git server. It was kind of lazy tax on individuals.
What bothers me is that this move didn't seem as well planned and prepared for than previous changes, not a good sign. github has a certain flow, hope MS doesn't destroy that.
Well, if true -- I'll be canceling my subscription :D
Thank you Github / Microsoft!
> Due to a scheduling error, we published this story one day before the embargo lifted. This feature isn’t live yet, but Github will formally unveil it tomorrow. When that happens, we’ll update this post with a link to the official announcement.
Microsoft doesn’t need thanking. It’s not a mom and pop shop.
GitHub also doesn’t live in a vacuum and this is likely not puuuurely done out of the goodness of MS’s heart. There may have been some strategy wrt gitlab and bitbucket taken into consideration. Dare I say... competition?
I don’t doubt their goodwill, but let’s not pretend the market is about that for MS.
Edit—ah I now see the “thank you” in parent’s post. Ok disregard this, then. Totally fair. I’m dumb. :)
Did they just cut off a significant source of revenue, or do companies that subscribe to Enterprise make them so much more money that it doesn’t matter?
Now that they belong to Microsoft, direct revenue is no longer as important. GitHub will probably be treated as a loss leader for the time being, with the long term goal of making it an Enterprise leader.
Microsoft will be more than happy to use GitHub for analytics, AI/ML research and to drive developers to their other offerings, especially their cloud ones.
Just FYI - its "loss leader" (https://en.wikipedia.org/wiki/Loss_leader), although "lost leader" made me chuckle: I thought, for a second, maybe you are talking about Apple instead of Microsoft.
Github was never profitable, private repos were a way to squeeze out a bit of money when they could, but it would never support the service.
Now that they're part of Microsoft, Github's corporate goal isn't to be financially solvent anymore, it is to be a loss-leader for Microsoft's other products. Hook people with github, and then get money from them by offering integrations with Azure, Office, Windows, Sharepoint, etc.
Github was always profitable, that's why they only took VC money in 2015, after around 7 years of existence. With VC funding they started looking more at enterprise customers.
I believe individual paid accounts were a tiny fraction of total revenue.
Github allows Microsoft to grab the attention of every software developer on the planet. And, as we know, most software developers are early adopters and enjoy sharing technology with others.
With AWS’s quality of service going downhill, and Google’s apparent inability to execute, this gives MS a huge advantage. Remember, AWS is pretty much how Amazon stays profitable.
It’s about getting as much visibility and usage as possible from developers in hopes that you would recommend Github in your organisation. Also provides a strong platform to reach a very targeted audience as well as gauge developer trends.
Microsoft's other git hosting offering, Azure DevOps, has had free, unlimited, private repos for a long time now so it's not really anything new for Microsoft; it's just extending that to more users.
In this day and age, I dare say both sides of any exchange could benefit from cultivating sincere gratitude for the non-monetary contributions resulting from the exchange.
Yup, this will mean that there's no reason for me to keep my subscription as well.
This will also make me a little more cautious as a consumer, since they're voluntarily removing the incentive for me to pay for their services upfront.
> there's no reason for me to keep my subscription...
Perhaps, we'll see. Github hasn't actually announced the details yet. All we got is a story from a journalist who accidentally spilled the beans early.
Could be totally wrong, but I expect there may be some incentive to induce folks to keep their paid plan.
It'll be interesting to see how aggressive they are in trying to gain market share by putting off profitability improvements for the Github business. $40b in operating income and $135b in cash, they can certainly afford to play the long game if it makes sense competitively.
But now that I'm on gitlab, I'm finding I like it better mainly because of the docker-based continuous integration feature. Managing contributors and 2FA without all that "organization" cruft is handy too.
Wouldn’t it be great though if you could kill content from the internet by simply removing the source. Privacy concerns would probably become less of an issue.
You pull the content down not to try to put the cat back in the bag. You pull the content down to show your source that it was an honest mistake and you aren't trying to capitalize on the "scoop".
If I could ever get over the fact that they are using Wordpress, I still wouldn't be able to explain how a single person can set dates and publish stories on their own?!
I don't work for TNW and have never written for them, but web editing often works like this:
1.) Author submits an article often as a word file.
2.) Editor starts working on the word file.
3.) Author and editor do 1-5 rounds of edits using track changes.
4.) Editor says "Great, post it to run at xx:xx on mm-dd."
5.) The author actually logs in and makes the post.
If you're thinking that technology we use every day could solve this problem, you're right! Alas, it's harder to fix years of habits than the technical issues behind the habits.
I worked on a project to replace a Wordpress content site. The tech team selected React + Redux + NoSQL + microservices + all the other hip words. It took 12 months and cost 1.2 million dollars to build, and turned out to be feature equivalent to the original Wordpress site that was built in under a month. Sometimes Wordpress is the right answer.
You require someone to verify the date. Then the verifier accepts them without looking because they've never been wrong before, and then we're right back where we started, except with more people to blame.
On the other hand, it's also "Oops, GitHub will never give us an embargoed announcement again, and a lot of other companies will probably follow suit."
Accidental breaches do happen; they're embarrassing, but not critical. Deliberately or repeatedly breaching embargos will quickly put you on a blacklist. Nobody is going to provide you with embargoed press releases if they don't trust you.
"embargo" means Github gave this news to this outlet (and others) early, to be able to work on quotes and stuff. By breaking the embargo, accidentally or not, a possible ramification is getting fewer embargos in the future, if an outlet proves they can't be trusted.
I wonder if they reached out to GitHub to see if they felt it was alright to keep this up? Might be good if the author could clarify! Either way, really cool news.
Definitely cool news, even if it is a max of 3 contributors. I'd have liked to seen that a little higher, but they surely know what they're basing that number on.
It's not enough to pull me from GitLab just yet, but if I keep having 10MB+ issues there, I'll switch.
Don't know what it is exactly. But definitely within the last year, I'll occasionally add a >10MB pdf or something and can't push that commit up, broken socket everytime. Same thing occasionally happens with a coworker. I 'fix' it by having someone else push the file, then delete the offending commit.
Happens with bash in windows or GitHub Desktop. No one has ever been able to fix it. I have just tried to not use large files.
Yea, IDK. I’ll watch for it again, but in the meantime; it’s very nice to have the CEO of gitlab ask me about my silly large file problem :) If I ever consider leaving Gitlab I’ll weight this exchange against that.
One fear that has come to mind: Microsoft pulls a Google and tries to force Github and LinkedIn to work together somehow - like requiring a login from one to use the other. I hope they have the presence of mind to not poison Github with LinkedIn in any way.
So, Microsoft cares more about capturing the complete social graph of the software community than it does about direct revenue from an already not-very profitable (or perhaps not at all profitable?) acquisition.
Microsoft has both linkedin and github, meaning they have the social graph of the government, business and the technology spheres. That social graph is arguably even more valuable in terms of revenue opportunities than facebook's. Direct revenue of linkedin and github might as well be irrelevant.
I don't think this is a "social graph play". I think it's about them realizing that the small amount of revenue they get from individual subscriptions is worth less than the free advertising/marketing they get by making it free for individuals, and then letting developers advocate for GH inside organizations which end up buying Enterprise licenses.
This is more about getting people to use (or keep using) GitHub for their personal projects so that it seems like a natural/obvious/default choice for a bigger-budget project, and that's where the revenue is.
It's funny to think people trust 3rd party to hold their proprietary source code which could be your biggest IP. I'm hosting my own Gitea for business related codes.
Just by the nature of the comment, dropping such an inflammatory claim with 0 context or evidence, you can tell they were probably flagged with good reason.
I think it is great for users that private repos are now free up to three users. This is especially great if you're starting to program and don't want to feel ashamed of your code but don't have a paid account.
I like to think that increased competition from us (GitLab) contributed to this change, we recently passed 10m repositories on GitLab.com
At GitLab we think that repositories will become a commodity and we're focussing on making a single application for the entire DevOps lifecycle.
I think Microsoft will try to generate revenue with people using Azure more instead of paying for repos.
Are people really ashamed of their code? How are they even able to assess the quality of their code especially when they are just getting started? It feels sort of a Catch-22. Also, how does making private repos free help here?
I think a more encouraging move would be to have people with all experiences share as much of their progress as possible so that people who are getting started can find inspiration and learn to overcome their "imposter" feelings.
Look at the URL. The datestamp is set to the 5th instead of the 8th, when the embargo for the news lifts. The only reason this post was published early was because a stupid typo when scheduling it.
And, on a numeric keypad, the 5 is directly below the 8, supporting the typo hypothesis. Tweets from the author:
> Oh fuck me.
> I just accidentally published a major piece of news one day early because I've got butterfingers and typed the wrong number in the scheduler.
> Is it too early to start drinking?
> Wordpress is fucking stupid. If you schedule something for \in the past\* it should say "er, are you sure?" instead of just immediately publishing the post.*
What I find most interesting about the fiasco is that TheNextWeb.com's editorial process consists of the stock Wordpress "Schedule a post" function [1] which includes this lovely tidbit:
> Tip: Always double check the date at the top of this calendar before clicking publish, and verify that it correctly says AM or PM
Trying it out in a test instance of Wordpress, he's correct: The initial status of a new post is "publish immediately." [2] Clicking "Edit" brings up a date editor. [3] And "OK" doesn't warn you if your date is in the past. [4] Finally, clicking the "Publish" (which could read "Schedule") generates a post with the URL /01/05/ that's visible immediately with no warning. [5]
Note the visibility and status options above the date: Wordpress does support some options for "draft" or "pending review" options with private/password-only visibility, but apparently TNW - a business that draws $15 million in revenue, is among the top 20,000 websites, and has dozens of employees - didn't use them before this oops.
I somehow assumed that there would be a red-tape process involving legal, editorial, and managerial oversight before you could get any content to the front page of a site like this. Not sure after seeing this if TNW is just playing fast and loose, or if everyone is...
A few reasons I don’t think that will happen:
- private, single contributor repos tend to be pretty small. it costs Github very little to service a single account.
- Github is a growing social network for developers. Getting young engineers on the platform for free will pay off handsomely when they join a team and automatically assume Github is their code storage tool of choice.
- Microsoft gets the reputation points for running the de facto developer social network (other than Stack Overflow).
GitHub is in the strange position of being both a successful enterprise product AND a social network. What other product exists with that kind of crossover? Microsoft will continue to optimize their enterprise revenue from GH and I think this is a tremendous step forward toward building the network long term.