Hacker News new | past | comments | ask | show | jobs | submit login
Open Source Doesn’t Make Money Because It Isn’t Designed to Make Money (ianbicking.org)
724 points by collinmanderson 35 days ago | hide | past | web | favorite | 440 comments



Its commoditized the cost to use software to near zero which has created a lot of unprecedented value and products that wouldn't be possible before OSS.

Unfortunately most of the wealth created by OSS is being reaped by the large cloud vendors because relatively no-one pays for OSS but they do to host their production systems on it, atm this revenue goes directly to the major tech cloud companies which are using it to build out their multi-billion dollar infrastructure moats, ensuring a barrier to entry no other will be able to partake in.

This is why cloud vendors have become so "OSS friendly" - they love the status quo as they've become the primary beneficiaries from everyone developing and distributing OSS for free as long as they're able to collect the rent when it gets hosted in the end.

You're starting to see the conflicts as more companies like Redis Labs, Elastic, Confluent and MongoDB who realize this and start distributing their future investments under "OSS free that's free for everyone else but can't be used commercially by cloud vendors" as a way to force licensing so Cloud vendors are unable to use their own investments to compete against them - and force some revenue share back from when Customers pay for OSS, when they host it.

So when you hear how much cloud companies "love OSS" and how their initiatives like "Open Distro for Elasticsearch" is to ensure it stays open, know that they're not doing it out of altruism, it's to repackage Elastic's OSS investments and make it available for free so they can be hosted on AWS without having to host with Elastic, it effectively lets them avoid licensing and revenue sharing back to the companies who've invested their time and resources into developing it.


There is a huge cost. Maintainers have major time commitments, and we hear jobs looking for people's OSS contributions. Which is cool and all until you realize that some people work at Facebook on React and get to publish to OSS as their day job, and some people like myself have kids and a proprietary software job.

So I fully support companies offering their software free, except to run commercially.

To note, about 8 years ago I saw many companies and people open sourcing interesting software. This was for personal gains... They were a consulting company. ThoughtBot was a good example, they made tools, they made blogs about ruby on rails, they also sold their professional services. And it worked.


Totally agree. Sometimes you just have to pay the bills. There are some projects that are extremely well done OSS but also have an 'Enterprise' side to them that's paid and offers more advanced features normally required by commercial entities:

1. Sidekiq (https://github.com/mperham/sidekiq) 2. Couchbase (https://www.couchbase.com)


interesting

what license would you even use for that - it seems everything here allows commercial

https://choosealicense.com/appendix


I guess the Fair Source License should fit in there:

https://fair.io/#license

This is basically "you're free to use the application and the source unless you're a company where 25 people or more will be using/modifying this software". Mind you, I see an issue with this where proving that the number of people are actually using the software is difficult. I'd prefer a version where it's just the number of people in the organisation in total.


I don't think I could use that software as a student. Even if I was considered independent of the school (which is unclear), my professor would not be, so I would not be able to use software under that license in a project for credit.



Aren’t Creaive Commons licenses not suitable for code? Can’t find a reference but they seemed pretty clear about that.


Correct, Creative Commons recommends using alternate licenses for code. See “Can I apply a Creative Commons license to software?”, https://creativecommons.org/faq/#can-i-apply-a-creative-comm...

Creative Commons licenses are good for documentation and manuals.


You are correct. And yet I've found multiple cases in which they're used for code.


Did you mean ThoughtWorks?


I had heard of ThoughtBot, but not ThoughtWorks. Seems like both are relevant examples:

https://github.com/thoughtbot

https://github.com/thoughtworks


ThoughtWorks and ThoughtBot are different companies, of which TW is well-known due to Martin Fowler, the many debates about the relevance of TDD, agile practices, etc, and they have offices all over the world. They started work on tools, like CruiseControl, and open sourced this. To me it never felt like they made tools open source first, but rather a need that came to have them stay relevant as other, often times better Open Source-first tools came around. The same happened with GoCD.

ThoughtBot came around later, and feels much like a adhering to a lot of the similar cultural habits.

Note: I worked for TW, currently at Red Hat. Note 2: Somne of TW's projects under the other pillars are open source first, but aren't related to this topic.


I'm starting to suspect that the major cloud vendors are well along on pulling a classic "embrace, extend, extinguish" gambit on that front.

I'm sure there are a percentage of people operating in the cloud who stick judiciously to an open-source stack, and remain masters of their own future as a result. But it seems more common to spread some open source icing on top of a cake made out of ingredients like Beanstalk, Redshift, S3, Lambda, etc. (Or name your favorite non-Amazon cloud vendor's equivalent.) Those companies may be just as locked into their closed-source software vendor of choice as people were locked into Microsoft or IBM or whoever back in the 1990s.


In the 1980s the lock-in was in hardware: you buy this server, you get our OS and software stack.

In the 90s and 2010s it was software: you buy this software because others are not compatible with it.

Today's lock-in is cloud services. Will people ever learn?


Is it, though? I feel like the nuts and bolts of cloud services are super commoditized and I can pick up and leave whenever I want. Kubernetes on Amazon (where I am) is going to be close enough to Kubernetes on GCP, and even close enough to just buying some servers and running Kubernetes myself. I don't know all the details of how I will do load balancing when doing it myself, but I work at an ISP and I'm sure the network engineers will help with that. Overall, I'm super non-worried about cloud providers. They're like credit cards, when someone offers you more cash back or more miles or whatever, you just switch to them and don't even think about it. (Why do I even use Amazon? Sheer laziness. Having servers in my own datacenters would probably be much cheaper, but I honestly just want to program and not randomly take a week to install some critical patch to MetalLB, or upgrade the Linux kernel, or find that the Intel EM2384732FOO NICs I got have some bug where they drop every 9878th TCP session.)


That's only true if you limit yourself to the base infra offerings, or offerings that have direct mostly-compatible alternatives elsewhere.

If I use DynamoDB, I'm stuck with AWS, absent an expensive, difficult migration.

Even with Kubernetes, moving from EKS to your own cluster means spinning up your own k8s masters, which might not be in $RANDOM_DEVELOPER's wheelhouse. And IIRC AWS has their own special things for doing ingress that you'd need to change as well.

Even just going from EC2 to Google's analog might mean rewriting private tooling that specifically uses AWS APIs.


But that's not a cloud provider thing, that's just the same-old locking yourself into proprietary software that we've been doing since computers were first invented. "We have to renew the license on our Fortran compiler because nothing else has the features we use" is exactly the same "I'm stuck on DynamoDB".

As for Ingress, Amazon does have an ingress controller that configures an Application Load Balancer with kubernetes Ingress API objects. I feel like this locks you in less because again, Ingress is standardized. The problem with Ingress specifically is that the standard doesn't cover things people actually want their ingress controller to do, so every implementation has their own set of features. We use nginx... you better believe there are literal nginx.conf snippets inside the Kubernetes API objects to get things to do what we want. So this is just a case of Kubernetes being bad, not really cloud provider lockin. I'm more stuck on nginx than on Amazon.

(As for load balancers; again, Amazon has proprietary configuration parameters that won't be portable, but they don't really do anything important. You can make your Amazon load balancer terminate TLS (a bad idea), and pick which of the 3 Amazon load balancer types you want to use. Switch to Google, and that won't work... but you also probably won't care. The Load Balancer API spec seems to do what people want, so it's relatively commoditized and you won't be sad when you switch providers. We actually have to have a wildcard certificate specifically because Amazon's classic load balancers are so bad. Would be happy to not terminate TLS in the load balancer and have Envoy or Nginx terminate TLS and ask letsencrypt for a new certificate every couple months.)


> Is it, though? I feel like the nuts and bolts of cloud services are super commoditized and I can pick up and leave whenever I want. Kubernetes on Amazon (where I am) is going to be close enough to Kubernetes on GCP

Sure Kubernetes is an open GCP product, but what about datastore, Spanner, Cloud SQL, their memory cache, urlfetch, and a host of other closed source and private services. Kubernetes seems to be the exception to the rule.


Exactly.

A world where front ends are deployed on a CDN and the back ends are all containers is very commodity driven. Also infrastructure being set up with code on platforms that target multiple providers like Terraform provides more ability to move systems.

It'll be really interesting to see if AWS can keep their margins in such a world.

Given that MS make huge amounts of money from email and have virtual lock in on corporate email it's very possible, but on the other hand perhaps it won't happen if everyone is, as they tend to be, using open frameworks and generally open systems.


> randomly take a week to install some critical patch to MetalLB, or upgrade the Linux kernel, or find that the Intel EM2384732FOO NICs I got have some bug where they drop every 9878th TCP session

This is hardly the case if you stick to reputable hardware and Linux distros, e.g. Dell servers + CentOS.


That's why the cloud providers are building higher-level services that ultimately speed up development and increase laziness. They're already higher than k8s now so ultimately that too is an unnecessary time suck from "just programming".


my vote on today's lockin even more than cloud is chrome, the web as mono culture, single predominant implementation that every caters to, thats subverting standards (http2/http3). it is the IE of today, and as you say because websites are not compatible with other, and the death of opera and ms implementations is the nail in the coffin.


you forgot virtualization =)


Totally agree. I keep crowing IaaS only but everyone has their fingers in their ears going lalalalala. I’ve come to the conclusion that it’s just not my funeral now.


The lock in is far more complete than it ever was in the Microsoft era, with Microsoft of the 90s, you could mostly still choose to just stop buying their crap, and stick with what you had while you migrate, or work out an alternative.

The minute you stop paying a cloud vendor, your entire infrastructure vanishes in a cloud of smoke, and if you relied on their "value add" proprietary services, you are left with basically nothing, not even the ability to run your own code, or in some cases even your data.


Chewing on your observation...

During the 90s, the big lock-in strategy was thru proprietary file formats. With cloud, exfiltrating one's own data can get real spendy real quick.

But it seems the lock-in is the fit & finish of one's production env. K8s was the new religion at my last gig. But interop & migrating between on-prem, AWS, Google wasn't easy. All the fiddly bits, like managing VPCs, creds and certs, load balancing tweaks, autoscaling rules, backups, ad nauseam.

Maybe things have gotten easier. Maybe we were doing it wrong. (I'm certain that I had no idea what I was doing.) But I couldn't shake the feeling our effort to leave AWS (if we wanted) was gonna fail.


schadenfreude for all!

Everyone hated Microsoft for selling software. Everyone hated Microsoft for requiring the world value software monetarily. The world thought programmers were just a bunch of nerds to be taken advantage of. Microsoft said no.

The nerds hated microsoft for making them pay for an operating system.

The nerds got their way. They got free everything.

And now the OSS worls is a convoluted mess. It costs way more to make Ruby on Rails work than just installing IIS and writing some C#.

Now those who said Microsoft was bullying them are the bullies. OSS has become more expensive than the Microsoft equivalent.

No one wants to pay for code at all anymore.

Why couldn't you all see this coming? It was so obvious.


"The nerds hated microsoft for making them pay for an operating system."

The nerds hated microsoft because microsoft was (and still is in many ways) mandatory.

And they remained that by vendor deals, government contracts etc.

So everybody learned in schools on windows computers and with microsoft office and so on and so on.

Thats the reason, not because of money - it was allways easy to crack windows (I believe intentionally, rather a cracked Windows, contributing to the monopoly, than something else)


The problem with that setup was that Microsoft wanted all the money to go to Microsoft, not to "nerds" in general.


Dispite the argument that it plays into the cloud providers hands, open source has been great for software. For example ASPNET MVC would probably not exist with Ruby on Rails.


[flagged]


No, because it's random and mostly wrong ramblings.

> Everyone hated Microsoft for selling software.

Not really. They hated it for abusing their monopoly, and for selling a crappy (at the time at least) desktop OS.

> Everyone hated Microsoft for requiring the world value software monetarily.

Not really. Some believed software must be free as in beer and speech, most didn't care. They certainly didn't hate MS for it.

>The nerds hated microsoft for making them pay for an operating system.

Not really. They hated MS for monopoly abuse, a bad OS, too many viruses and security holes, few ways to look under the hood, and fucking forever with IE 6.

>The nerds got their way. They got free everything.

They just got the server. And a lot of the enterprise server is still MS. The desktop is still 90% MS and 10% macOS (with some insignificant Linux percentage). As for mobile it's 40% iOS and 60% Android, which technically it's still OSS, but not in any sense that matters besides the license (nobody cares much, and it's not developed by some community bazaar style, Google calls all the shots, and the good stuff -google apps- are not Open Source).

>And now the OSS worlds is a convoluted mess.

Not really.

>It costs way more to make Ruby on Rails work than just installing IIS and writing some C#.

Yeah, no. If anything RoR is famous for its ease of development. And it costs nothing (besides programmers, which you need in any case), which is why cash-strapped startups prefer RoR and other FOSS solutions over MS.

>Now those who said Microsoft was bullying them are the bullies.

Non sequitur.

>OSS has become more expensive than the Microsoft equivalent.

Non sequitur. OSS is as free as ever (and better than ever).

>No one wants to pay for code at all anymore.

Less want to pay for code, though billions still buy software and pay for services.


> OSS has become more expensive than the Microsoft equivalent.

I watched an MS-supporter at a MS 'dev camp' day conference give a lecture on web hosting. His position - restated multiple times - was that hosting with IIS was cheaper than with Apache/Linux, but hosting companies were in cahoots to artificially inflate the cost of IIS hosting, because it let them justify paying linux admins more. Something about you could programmatically script IIS much faster/easier than Linux, and it was cheaper to integrate with Active Directory, but hosting companies wanted to make MS look bad so they charged more (and made a bigger profit) on MS hosting.

Honestly, even typing it out doesn't make much sense. I tried to get him to clarify the position some at the time (this was... probably 2010-2012 time frame) and... I got some nonsense answer. It was truly nonsensical. But he was passionate. I half-expected the word 'illuminati' to pop up in his presentation.

Linux/Apache is "more expensive" for hosting, but companies charge more for Windows because the Linux people at those companies want to drive people away from Microsoft. I think that was the gist of it...


>and for selling a crappy (at the time at least) desktop OS.

The GUI of their OS at that time is still superior to what linux desktop provides us with today.


I wont disagree.

But the OS was also full of holes (pre-XP: 95, 98, ME), programs would take down the whole system, updates required tons of restarts, and several other issues (BSOD, etc). People use to make memes against Windows, without even being Linux users: regular Windows users were frustrated.

Linux desktop efforts never managed to get a coherent vision, as every 3-4 years somebody had the idea to remake everything and screw compatibility (Gnome 1 to 2, 2 to 3, KDE 1 to 2 to 3 to 4, etc, lots of critical desktop apps changing for no reason, others abandoned, etc. And don't get me started on the audio drivers situation back then, or how it took until 2019 and we still don't have a solid X replacement thats adopted by everybody).


> Linux desktop efforts never managed to get a coherent vision, as every 3-4 years somebody had the idea to remake everything and screw compatibility

That's not why Linux Desktop never got traction.

Linux on Server got traction because thousands of companies all around the world managed to profit from it. A whole ecosystem was created.

When Linux on Desktop was born, Microsoft's platform was already an ecosystem all around the world. Hundreds of thousands of companies had developed applications for MS-DOS and were invested in Microsoft's ecosystem and users had already learnt the paradigms.

Clients were already locked-in on Windows.

Also, the situation regarding compatibility on Linux is not that different on Windows.

KDE changed API 4 times in 25 years. Windows also changed a lot. Visual Basic, WinForms, SilverLight, etc. Actually windows abandoned more API's than KDE and Gnome did.

And you can still build a KDE 1 and statically build and ship it (just like apps in Windows) and it will still run fine. [0]

KDE and Gnome have always been largely volunteered projects. Of course ~500 volunteered developers who develop something on their free time cannot compete with a worldwide ecosystem.

[0] https://www.heliocastro.info/?p=291


>That's not why Linux Desktop never got traction. When Linux on Desktop was born, Microsoft's platform was already an ecosystem all around the world. Hundreds of thousands of companies had developed applications for MS-DOS and were invested in Microsoft's ecosystem and users had already learnt the paradigms. Clients were already locked-in on Windows.

That didn't prevent OS X, from a near bankrupt company in 1998-99 with ~2% of PCs in the US, to get to ~10-15% in the same timespan. And that while still introducing a whole new OS in 2000, and changing CPU architecture in 2005.

Plus, what I described has been described as the reason Linux didn't get traction by both Linus and Eric Raymond, for what's worth.

>Also, the situation regarding compatibility on Linux is not that different on Windows. KDE changed API 4 times in 25 years. Windows also changed a lot. Visual Basic, WinForms, SilverLight, etc. Actually windows abandoned more API's than KDE and Gnome did.

It's not even close. MS still supports running even Win95 apps to this day, whatever they used an "abandoned API", so that's a moot point though. Old VB apps still run fine, etc.

KDE and Gnome on the other hand had large incompatible changes that frustrated devs, community, and general public. Lots of devs in disfavor of the old design/techs just left the community, and those are harder to replace without a salary.


> That didn't prevent OS X, from a near bankrupt company in 1998-99 with ~2% of PCs in the US, to get to ~10-15% in the same timespan. And that while still introducing a whole new OS in 2000, and changing CPU architecture in 2005.

Oh my friend you're under-selling Apple.

Apple, the most profitable company in the world, didn't get more than 10-15% of the market share. They didn't break any API's either. And they created their own hardware.

> It's not even close. MS still supports running even Win95 apps to this day, whatever they used an "abandoned API", so that's a moot point though. Old VB apps still run fine, etc.

Linux supports that too. You can still have a KDE1 app running on your Desktop.

Nobody has the incentive to do that. But it's pretty doable technically. Just like it's possible to run a Visual Basic app on Windows.


> Linux supports that too. You can still have a KDE1 app running on your Desktop.

It is not the same, under Windows 10 you can run a Win95 app as-is since the OS comes with the necessary APIs and these APIs still get updates.

Under Linux not only nobody has the KDE1 libraries installed, but also not any distribution provides them, they rely on other libraries that are incompatible, are a pain to build and unlike Win32 and similar APIs, KDE1 libraries have never seen any new improvements over the years. As an example for the latter, Win32 applications written for Windows 95 can use the extra text editor control functionality introduced after XP despite this functionality not even existing when they were made.

To provide something equivalent, the Linux desktop needs GUI API that will remain backwards compatible in the future (as nothing can be done about the past anyway) while at the same time getting improvements that apply to both new and existing programs.


Apple didn't break any APIs? I think you should examine the history of OSX a little more closely.


I’m sorry but I disagree, Cinnamon on Fedora is as good a desktop GUI in its day as win2k was in its and imo considerably better than win10 and I started on DOS3.22 so I’ve used them all even ME.

It’s fast, stable, well laid out and very easy to configure.

It also plays well with both gtk and qt apps.

It took a long time but Linux did catch up it’s just by the time it did desktops are less relevant to average people.


>It’s fast, stable, well laid out and very easy to configure.

Only if your chance on a "good" compatible laptop. Else all bets are off. The BT/wifi might not work, the video drivers might be problematic, the laptop might not sleep when you close the lid, the fans might blare all the time, and so on.

And even at that, it changes from release to release, whatever the fancy of e.g. Gnome devs strikes them for a non-compatible change, critical functionality is implemented in a ho-hum way, and so on.

And you also need to delve into the minutiae, to know that you should go for "Cinnamon on Fedora" over, e.g. Mint, or Ubuntu (and perhaps the proponents of the latter would say Fedora is shit, and so on).

Problems are always solved by "chose other hardware" and "get another distro".


>Only if your chance on a "good" compatible laptop.

So there's no need of "Windows Certified"? I had a fair deal of the problems you described on Windows laptops (private and company provided, all certified for Windows, no less).

Linux desktop has its fair share of problems, but Windows runs far from flawless either. I liked Windows when it didn't spy on users but after switching to Linux I was positively surprised. And some stuff I really care for such as incremental remote backups with a decent user interface runs way better on Linux.


We where discussing purely the GUI not the ancillary stuff.

While I'm sure people have the problems you describe I haven't had them on laptops in the last decade at least, everything has pretty much worked out the box (except Nvidia which works but requires a kicking sadly).


Average people use laptops as desktops.

Gtk and Qt still don't offer a full UI stack with all the Win32 features, guaranteed to be available in all customer desktops.

Basic stuff comparable to DirectDraw, DirectText or a audio stack that doesn't get rebooted every now and then.


nobody uses DirectDraw anymore, its a completely antiquated technology.

https://en.wikipedia.org/wiki/DirectDraw


That's the official MS idea of it. They still support it, and it's still extremely used. Millions of apps don't disappear or get rewritten just because something fancier came out...


Yeah, right.


Considering it was last updated in the 1990s and only supports 256 colors and fullscreen, and conflicts in very annoying ways with post Vista+ desktop composition, I think its safe to declare it dead for anything except some old games.

SDL is perfectly comparable, except vastly less of a clunky ancient pain in the ass. That is why almost every 2d indie game uses it and not DirectDraw, so to say linux has nothing comparable to DirectDraw is stupid.


SDL is not a platform library with driver support.

Yeah, maybe I should state Direct2D as well to see what your answer would be.

So what is the Linux answer to DirectText? Surely not SDL.


SDL doesn't need driver support, it handles rendering back ends transparently, which is why its so widely used. (drawing is translated into OpenGL, Direct3d, or pretty much anything else)

Freetype and Cairo are the direct equivalent of Direct2d and DirectWrite (which is what i suspect you mean by DirectText) which virtually everything on linux uses.


Yeah the Cairo that bashed by ISO C++ game group as being based on legacy drawing concepts and the FreeType that still doesn't handle properly text display on HD monitors.


Linux had been my primary OS for over two decades and modern Linux is at least as pretty as win10 and I prefer its font rendering (there will be a degree of familiarity favouring that I'm sure).

You keep bringing up these arguments as though they are show stoppers and yet people using Linux as a desktop never mention them.

My mum's been on Linux since 12.04 and has never once said "You know what I need DirectText" users don't care how text gets on the screen only that text gets on the screen.

Edit: should mention she doesn't just use it as a glorified browser container she uses libre office, gimp and a few other programs, organises her music and all the stuff an average user her age would do on windows.

To her it is entirely a functional windows replacement, enough that when I upgrade her machine her request was "can I have that minty thing?"


I guess that depends on what you mean by "at that time". My current Linux desktop (Xfce) is way better than Win95 or Win2k. I stopped using Windows around then, so I can't comment on WinXP or newer.

I think arguably a current Linux distro/desktop designed for non-technical users is better for them than Win95 or Win2k was.


I (a laymen) buy a random tablet pen, and it works immediately on windows. To get it to work on linux, may be there's already a driver, may be it's not supported. Either way, it's a gamble if it works on linux.

Tell me that windows isn't still better for the laymen?


The sheer number of times I've had issues with Windows drivers is anecdotal, but consider carefully. I've had impossible to boot systems because the network driver isn't included in the core installation media. I've had video cards not work out of the box and require me to install massively bloated control centers to use. And the number of complaints from unexpected reboots? And that's in a pretty standardized computer lab, trying to make my Grandma's computer use the correct resolution on her monitor was literally impossible.

I guess it depends on how you define laymen? I think Ubuntu worked out of the box with everything I've thrown at it in years.


Did you even read what I wrote? I literally did not say what you're asking me to defend.


Not at all. I very much prefer vanilla Ubuntu front end of my personal laptop to MS Windows. I am still on Win 7 on my work laptop so it is tolerable but I'm definitely going Mac instead of Win 10 abomination next upgrade.


Don't forget to get a keyboard and screen insurance on top of the premium price.


I will, for one. I thought you were OK with paying for good stuff, like Lisp compilers/IDEs or other tooling.

Suddenly it's bad to charge a premium?


I am quite confortable paying for stuff, do it all the time.

What I don't do is to pay premium for the previlege to use keyboards that break down with a single dust particle and screens that get scratched with the laptop's own keyboard, that might not be replaced without the additional Apple Care package.


Embrace, Extend, Engulf?

I'm not sure what you call it when Amazon can pretty much just take your project over when you piss them off.

Mongo is getting EEE'ed.


Imo mongo tried to change the rules of the game to be in their favor and AWS reacted in their best long term interests. And whether or not you like it that's fair, AWS were not in breach of the original software contract.


Oh well, if it's legal I guess it's ok. Why debate or discuss anything? The case is closed everybody, it's legal!


Heavens forbid morals should enter into the discussion. All laws are perfectly rational and sensible and none of them have ever been put into place at the behest of major corporations with a lot of money to throw into buying politicians.


Microsoft were never in breach of anything legally. If they'd have had their way we'd still be on IE6.


Agreed that something being legal doesn't make it right, but some of Microsoft's behaviour was illegally monopolistic.


This is exactly the "Commoditize your Complements" strategy that Joel espoused all those years ago [0].

[0] https://www.joelonsoftware.com/2002/06/12/strategy-letter-v/


I think you are mostly right, but I don't think the major cloud providers have much of an uncrossable moat. Cloud services are and will continue to become more and more commoditized.

Sure, there is proprietary lock-in. But because of OSS, it is also becoming easy to avoid the lock-in. For example, rather than use a hosted elastic service, I was able to launch an elastic stack on k8s in less than an hour of configuration. It's able to scale up and down in the cluster and do everything I need. So if I need to easily change providers, all I need is someone who offers hosted k8s (or any provider if I decide to self manage down the line). We are in the process of doing the same with our DB and will migrate from a hosted Aurora instance.

It looks like ovh is now offering managed k8s. DO just launched theirs, countless others have as well or are about to.

I am running on gke right now because it was easiest. But there will be little keeping me from migrating down the road since k8s + helm + a few other tools are making it easier and easier to launch your own services.

I imagine if it doesn't exist yet, someone will create a nifty little tool to connect up two separate k8s clusters and seemlessly migrate everything over. There are few barriers to keep that from happening.


Once you have your production systems running on a cloud vendor it becomes increasingly difficult to move off it regardless if you're only using OSS components, there's an inherent risk with every migration that grows the more services you use and years you host on it that needs to be offset with any migration and given the major cloud vendors are comparatively priced, there's little incentive to invest their time and energy doing that instead of focusing on their core business.

The small players will always stay niche, a cloud is effectively a network monopoly (like iOS and Android) with most companies only wanting to invest in the cloud that's going to have everything they need when they need it, they'll still offer proprietary services to differentiate against the other 2 cloud vendors and additional way to lock you in and make it harder to migrate away.

You could choose to build out your system to be completely cloud agnostic but that is generally regarded to be economically irresponsible in itself preventing you from leveraging the best features available in each cloud.


> You could choose to build out your system to be completely cloud agnostic but that is generally regarded to be economically irresponsible [...].

I don't see it being anywhere near that clear-cut.

Seems more akin to what the RDBMS world went through for a long time, and still does, because people insist on using things other than Postgres[1]. You can stay SQL-standard compliant, writing your app to be portable. Or you can use these appealing proprietary extensions to the spec, and not be portable.

Seems like a majority of folks writing in-house choose to use the extensions, and the majority of folks who want others to use their software make an effort to be cross platform.

You'll probably see a similar split with cloud services, although I'm not sure it will necessarily follow the same lines.

[1] That's a joke, there.


...but that is generally regarded to be economically irresponsible in itself preventing you from leveraging the best features available in each cloud.

This is only true as long as the costs of maintaining a cloud provider abstraction layer are greater than the costs of being locked in to a single vendor. I believe that some businesses, once they are armed with an abstraction toolkit like this, will be able to employ arbitrage between the cloud vendors for themselves, and sell that toolkit to other companies who want the same kind of freedom.

And then somebody creates a free software alternative, and will maintain it and keep it up to date.


Speed to product, risk, and access to talent(via other people's code) matters much more than cost, for most software business.


The problem of leaky abstractions can't be solved by slapping yet another abstraction on top. The best case is that you become locked into your cloud provider abstraction layer instead of the cloud providers themselves - and then what stops them from becoming just as monopolistic?


> locked into your cloud provider abstraction layer instead of the cloud providers themselves

but the assumption is that this layer is free (due to OSS), and the "owners" of this layer cannot pull the carpet under you by raising prices.


Yes, but except at the micro level you need capital to compete, and getting hold of capital means paying rent to those who already have it. If you are clever you can make more than you pay back in rent, perhaps so much that you are in a position to lend out a surplus and collect rents of your own. But once you join the rent-collecting set, your economic incentives change drastically and you'll start getting lots of offers for moat digging services.


> but I don't think the major cloud providers have much of an uncrossable moat

Billions of dollars and years of constructions to just start trying to enter the market, where you will fail because your offerings are relatively pathetic on multiple fronts.


Billions of dollars spent means nothing unless it actually takes billions to launch a hosting company. It doesn't.


You'd need to have some damn clever and hard to copy idea to have any competitive edge.

When Google and Amazon are not making their own specialized hardware (good luck implementing your own TrueTime or TPU or competing with them with ML or DB products built on off-the-shelf stuff) they get custom made chips at prices you can't by Intel et al and have things like a very sophisticated SDN backed by a private global physical network infra and enormous amounts of expertise of building and running very efficient DCs. And then there is a software stack which often is literally more than a decade ahead of industry practice.


All the things you list are not a part of the moat to compete with the big providers. They are barriers to becoming as large as them. But 10,000 smaller hosting companies could easily start to cut in on their long tail customers. Most any mid size hosting company could handle the traffic and compute of 95% of companies out there.


You still haven't given any indication what those mid sized hosting companies would hope to compete on for the "long tail customers". Even if all the scale advantages Amazon and Google have currently don't translate into better prices across the board (mostly because they like those margins on e.g. network egress and they have sufficient lock-in for most customers) why, as someone in charge of provisioning cloud facilities for some small or mid-sized company, would I even contemplate going to a competitor?

What's gonna be more useful CV and CYA wise? Who's ever been fired for choosing AWS? How is being expert in <obscure hosting provider> going to advance my career? Where do I hire people who know about <obscure hosting provider>? How would I even realistically learn that <obscure hosting provider> might be a good fit for my needs?


I’d love a world where an ML chip is baked into phones, motherboards, and the like so we can move our data out of the cloud and get the same features.

Honestly I can’t see the cloud making sense for another decade.

NVidia’s new hobby board for $99 + open source has me imagining a future where someone like myself can offer similar experiences to Alexa or a number of Googley features to family and friends in a few years.


> We are in the process of doing the same with our DB and will migrate from a hosted Aurora instance.

Just curious, you are going to host your database on k8s? Or is there some other solution you are looking at?

My understanding is that k8s is great when you need stateless services, but gets more complicated when you need to maintain state. Been a while since I looked at it, though.


Yes, we are putting our production mysql (mariadb) into k8s. We use a stateful set and the data is stored on persistent volumes. Even if the pod or whole cluster goes down, the data remains. So far, I am finding it more stable than a bare metal setup. Because if the db instance fails, k8s kills it and spins up a new instance using that same persistent data disk. In the meantime, there is a read replica running on a different node that can take some failover.

We also have a job that runs nightly to make a dump of the db and store it in the object store and the persistent disk has a snapshot scheduled for every two hours and in both cases, we are backing up the binary logs, so we can do point in time recovery much like AWS's Aurora offering.

We may eventually switch to a mariadb Galera cluster where there are 3+ master pods that distribute the load and can stay available if one pod dies. But I haven't done the research on stability of that setup yet. A few years ago it wasn't ready yet, but I imagine it is by now.


You can actually run production ready db in k8s pretty easily. There is volume and stateful set and DNS, I could see limit to what it could run.


Yeah. I really want to go back to managing my own database servers and ElasticSearch servers....


We are using elasticsearch for non-critical log management. But as for the mysql server, what maintenance/management are you really getting from a managed service like Aurora or Google Cloud SQL?

Our K8s deployment is setup to automatically make backups and test those backups periodically with a full restore. It also notifies us in case of a failed backup. Updating the software is as easy as a single helm command and scaling is about the same as with Aurora. Either you set it up to scale up automatically or you go in and upgrade instances when needed.

Aurora admins aren't monitoring your server for performance issues then making configuration tweaks to speed things up. So I'm not really seeing a lot of difference.


What are we getting? Automatic updates, backups, point in time recovery, multi AZ redundancy of storage, autoscaling synchronous read replicas, and much better performance than your self hosted Mysql instance.


you get what you pay for. If you use managed services from a vendor, you get convenience for the price of lock-in.


You’re always locked into your infrastructure. Out of all of the business risks that most companies face, the least is being locked into your cloud provider.

Your CTO is no more going to risk an infrastructure migration because you pinky promised that it would be “seamless” than your DBA is going to migrate from your seven figure Oracle installation to Postgres because you used the “Repository Pattern to abstract your database access”.


And yet, I know many people that are chomping at the bit to migrate away from Oracle and just as many more that have successfully migrated away. Infrastructure cost can be a significant cost of your business depending on what you do.


I could not agree more with this.

The reality is that Cloud Computing is the biggest threat to OSS at the moment. ( as my comments on this show lol ). I'm a big proponent of the idea of elastic computing. My fear is that the current "cloud"/elastic computing providers are more akin to off-shore outsourcing than to real technological advance. A short term solution, that will have serious and major repercussions down the line.

And yes, I do get all the benefits. I've been long enough in the industry ( and on most sides ), to have built both small and massive datacenters, and have built both public and private elastic infra. But this is way too much consolidation, and way too many possible harmful long term effects. We should have made running infra easier... not go the "lease" model 100%. :-/


Was it ever any different?

20 years ago, large chunks of "the web hosting industry" sold access to Linux/Apache/Sendmail/Postfix/BIND/vsftpd/Perl/PHP/MySQL/etc - often (at least in my part of the game) using paid-for WHM/CPanel or Plesk to manage all those.

While I sympathise with Mongo/Redis/Elastic et al, who're having their work packaged up and sold by Amazon/Microsoft/Google in their cloud offerings, I don't recall any outcry about all the open source projects local ISPs and CPanel/Plesk hosting companies bundled up and charged customers access for. I don't remember the authors of Linux, Apache/Sendmail et al complaining about "not getting paid" for their OSS.

I get it that the world has changed, and companies building the OSS they're built on wasn't so much of a thing back then (although MySQL is an example of that from 20+ years back...), but I'm not sure a choice by founders to invest significant resources writing OSS is a reason other companies should not be able to use software with he same licenses in the same way companies have been using it for decades.

I've super curious to see if these new category of licenses work out business-wise, I suspect if they do (which I'm not completely confident they will), that it'll allow development of software on a scale and complexity which the "scratch your own itch" OSS community couldn't tackle. There are almost certainly software project for which the initial coding curve is so steep and high that nobody is going to start working on them in their spare time or as an unofficial skunkworks project or 20% time project at work. It the _only_ people tackling large complex problems as "open source" (in a loose interpretation here) are PhD students, there'll be less amazing software created than if companies like Mongo/Redis/Elastic can pay teams of devs to work on software which while not "FSF certified open source", is still usable and understandable by others in ways that proprietary software is not. I could debug my not-technically-OSS Mongo problems, unlike my Oracle problems. That's not rms's vision of the future. But at least it's not Larry Ellison's either...


I can't imagine the new OSS license approach working. People seriously underestimate the ability and willingness of cloud providers to write entirely software, using existing OSS as nothing more than market research.


I dunno.

From the angle I'm looking, AWS wants to sell Redis/Mongo/Elasticsearch because that's what the devs are using. The devs are using it because it solves one of their problems well (or, less charitably, because its a "standard part" of new-framework-de-jour).

I can't think of any piece of software that came out of a cloud provider into a place of being "the essential hot new dev framework".

I don't deny for a moment that Amazon/Google/Microsoft write a lot of software, but I haven't got an example I can point at of that moving out of their own ecosystem into the broader development community.


Well I think cloud providers look at software offerings differently. To them, software is a managed distributed system that works at scale and probably doesn't make very much sense if there's only a single user. It's hard for a managed service like that to be distributed as a single codebase or binary in the way that redis can. But they still pump out technologies that have high dev adoption.

Things like Lambda, S3, Kinesis have become huge in the dev world in one form or another - Lambda as the serverless concept, S3 as the standard API interface, Kinesis as Kafka (not implying causation or copying, just that AWS independently developed a technology very similar to something that became huge in the dev world).

Not too sure about Microsoft.

Google has invented so many technologies that have shaped development that it would be exhausting to list. MapReduce, AngularJS, Kubernetes and TensorFlow each transformed the development world and that's just the tip of the iceberg.


Yeah - Google are definitely different to Amazon, but I'm not sure the Google Cloud part of Google can take credit for all the cool software Google release.

And I'll give Amazon credit for Lambda and Kinesis, but at least in my head, S3 is just ludicrous-scale BerekleyDB (or any of the persist-to-disk forks of memcached including the one I wrote back when it was still written in Perl).


The cloud providers have enough resources to provide APIs that are compatible with the popular ones. They won't be selling you Mongo but a Mongo-compatible replacement built in house.


Yeah - but they need Mongo (or whatever) to a) exist, and b) be widely enough used to make it worth their while.

Amazon isn't in the business of creating and promoting new software to developers. Not in the way Mongo/Redis/Elastic are.

"Popular things" have to come from somewhere, and my optimistic side kinda hopes that _maybe_ these new "OSS unless you're a cloud provider" licenses will be a way to fund development of software too big and complex and ambitious that it won't ever get started as a "scratch your itch" project. I dunno if that'll pan out. But I'm glad someone is trying.


Kyle Rankin gave a (very good) keynote at FOSDEM 2019 about this topic, harkening back to the Unix wars, Sun etc. He has some really nice one-liners. Video is available here:

https://fosdem.org/2019/schedule/event/cloud_is_another_sun/



> Unfortunately most of the wealth created by OSS is being reaped by the large cloud vendors

The amount of value generated by open source software running on cloud providers may be much greater than the fees those providers are charging. It’s not a zero-sum game.


Exactly, I think everyone down the line benefits from savings from Open Source software.

If cloud vendors used proprietary software they'd have to charge more to their customers.


“Unfortunately most of the wealth created by OSS is being reaped by the large cloud vendors because relatively no-one pays for OSS but they do to host their production systems on it”

Why is it unfortunate. OSS developers are volunteering and donating their talent.

Is it unfortunate that homeless people reap the benefit from patrons who sponsor charitable homeless shelters?

Or is it unfortunate that students realize wealth from the nonprofit university?

There’s lots of charities. I thought the whole point is for people to donate what others get value from.


They are not all volunteering. The Linux kernel, for example, is maintained mostly by paid individuals from all sorts of companies such as Red Hat, IBM, and even Microsoft.


All of which make good money selling support services and/or cloud infrastructure, and have decided to donate the fruits of the labor they are buying because doing so helps drive those businesses.

So, again, the developer labor is donated, by parties that are not blind to the market impacts. Where is the problem?


No problem, if you stop your analysis at what's legal and what's not.

If you care about where these trends are taking us, there's plenty to complain about, and you can easily find those problems by reading the conversation you're replying to.


I don't think you understand the Linux vendor support model.

The labor isn't "donated" in any sense of the word. It's not like these big companies just pay hundreds of kernel developers to sit around and make commits to whatever they're in the mood to do today.

Clients pay Linux vendors to get the hardware support, features, etc. that they need written into the Linux kernel, and the vendors do that for them. They write the code, test it, harden it, and get it upstreamed so that the client isn't stuck carrying a patched kernel on their own in perpetuity.

It's not the financial interest of Linux consumers (think: banks, airlines, healthcare systems, militaries, cloud platforms, entertainment producers, etc.) to pay millions of dollars a year to have their own in-house kernel development and support team when they can pay a vendor to do it.

It's not just about support in the sense of someone to pick up the phone, it's about support in the sense of maintaining and developing mission-critical software for large enterprises.

And with that, indemnity.

Do your shareholders want to hear that you're working with a tried, tested, trusted vendor to make sure your systems that can never, ever, ever go down are in fact designed that way? Or do they want to hear, don't worry, Dave in IT's got it, he got a kernel patch accepted once? In many industries, IT is just a cost center and a risk. Corporations and governments are motivated to lower their IT-related risk in the most financially-prudent manner, which usually means a vendor.


> Unfortunately most of the wealth created by OSS is being reaped by the large cloud vendors

Why is that unfortunate? It has enabled a cycle of OSS to user AND OSS to vendor to vendor enrichment to user...since you can always modify the code at will. The best of both worlds, until you get into that special "extension" problem that GPL3 tried to lock down.


Because none of the Indie OSS developers that have donated their free time and energy into creating it will be rewarded with any of the value they've created from their efforts.

Because there will only ever be 3 major multi-billion tech companies that stand to benefit most from OSS.

Because they own their markets, where they can wait to find out what OSS software has become successful and either just profit from it by hosting it directly or invest the paid resources into replicating it - an opportunity and reward not available to anyone else that doesn't have a large cloud market share.

Because they're using their profits (made possible from hosting other's OSS investments) to finance their own OSS investments which will have infinite paid and support resources that Indie OSS developers will be unable to compete against, eventually leading to building a brand where there'll be customers that will only use OSS by the cloud vendors first, since they're commercially backed and dependable.


There are many ways to be rewarded for one's efforts. When I give my source code away it's not because I'm being exploited, it's because I'm doing the work for some other motivation. Keeping the code locked up afterward doesn't benefit me. It's a lot of work to start and maintain a business, and it's often more hassle than it's worth to try to charge for software. If I have some motivation to create a thing, and that thing has been created, what do I lose by sharing it?

I can only do so many things at a time. I can't possibly run as many businesses at a time as it would take to charge money for all the code I write. So, why not give it away?


It's weird how programmers are the only workers who think it's okay to give away their work for free for businesses to use and sell in their own products. Nobody expects firefighters or nurses to work for free. Even if lawyers sometimes have to work pro bono, it's to serve marginalized or poor communities/demographics, not to enrich massive, incredibly wealthy companies.


Millions of people every year make great salaries working as programmers.

Many artists give away their work. Scientists give away their work. The DIY community and maker community give away their work. And so on... programmers aren't unique here.

Framing all of OSS as simply "free labor to enrich massive, incredible wealth companies" is just wrong.

That being said, I do agree we can certainly do a better job of supporting OSS work. I hope to see continued innovation in this area.


> Many artists give away their work. Scientists give away their work.

Funny you should mention this. Look into the median salaries of these professions, not the outliers.

I am not against OSS but when something is given away for free, people will have the perception that it has less value. Once that thought has anchored, no one will be willing to pay more in the future.

https://en.wikipedia.org/wiki/Anchoring


Worse, many think is ok to be payed for their work, while stating it is imoral to pay others for the tools they use.


Huh? There are plenty of volunteer firefighters who work for free.


> what do I lose by sharing it?

absolutely nothing. Which is indeed one particular type of OSS model. The best kind imho.

But this thread has been talking about business models which involve using OSS to get a customer in the door who will then pay the business for other things (such as hosting/services). Under the OSS, this business model seems to be failing as major corporations start to encroach.


It’s unfortunate that you forgot to mention that these indie oss developers are highly sought after for independent contract work or direct hire positions. Open Source software was never meant to pay the bills of open source developers, it was meant to open source code to the public and allow free use. To somehow read this narrative that indie developers are losing because others profit from their work is facile and not helpful.


> It’s unfortunate that you forgot to mention that these indie oss developers are highly sought after for independent contract work or direct hire positions.

For the most part, any developer who is good enough to create e.g. Redis and be hired could easily have skipped the "create Redis" part and just get hired in the first place, for far greater return on investment.

That's not even getting into the fact that leading a popular open source project is no guarantee of even being hired by those big companies, due to their interview processes. For example, Google rejected the creator of Homebrew, despite getting a lot of value out of the software, because of problems with whiteboard coding.


> For example, Google rejected the creator of Homebrew, despite getting a lot of value out of the software, because of problems with whiteboard coding.

Of course, it's important to note that that is his interpretation of the process. He did do a short stint at Apple at some point, too, so it's not like he didn't end up getting hired anyways.


Regardless of whether it was fair or unfair to not hire him, the point remains that OSS doesn't guarantee getting hired.


Sure, point taken.


Right, so everyone should be happy working for the "exposure" so they can be snapped up by Cloud Companies using the wealth created from hosting their OSS efforts who will then be put to work on strengthening their cloud monopolies.


I never said they should work for exposure or that they should be happy with this system.

Do the corporations creating products with OSS have a more positive impact on the world than when they purchased their software? If so, isn’t that beneficial to developers? Isn’t it empowering as a developer to know that your software powers businesses and markets? Why do developers contribute code in the first place?

If Indie oss developers provide say 49% of the contributions to open source project ought they expect the same representation or recompense as a project with 90% indie developer contributions?

More philosophically: After you create something, how long do you get to own or control that thing and how it is used?

How long do indie oss developers think they should be able to dictate the future of the project? Is corporate investment in open source actually welcome?


The topic and answers are on why it's unfortunate that Cloud Monopolies are reaping most of the wealth from OSS and why they're happy to keep the status quo which grows their monopolies bigger each passing year.

Never that there were no benefits - that was addressed in my initial statement. OSS does bring benefits to everyone using it where its made some products and services financially possible.

But it still stands that the majority of the wealth being created from OSS is going towards building Cloud Monopolies and a fraction of that wealth being used to finance their own proprietary and OSS efforts that will outspend and out compete Indie OSS efforts - the trend of which will go towards most people switching to use commercially-backed Cloud OSS software where it exists.


The author could sell a script to modify the defaults for different situations. The popularity of the oss gives the developer a build-in platform.


> It’s unfortunate that you forgot to mention that these indie oss developers are highly sought after for independent contract work or direct hire positions.

At a miniscule fraction of the value they created.

These people deserve to have so much money that they can simply work on open source for free, forever. I haven't seen anybody in that position yet.

This isn't even like a musician wherein some record company fronted capital, the companies benefiting from open source didn't front anything for these developers.


>At a miniscule fraction of the value they created.

Two things here:

1) In a sane business climate, you will never extract more than some fraction of the value you create. If you receive as much value as you create, then there is no purpose in anyone using whatever you've built, because they gain nothing from it.

2) If your goal is extracting as much of the created value for yourself as possible, open source software licenses are not designed in such a manner as to do so.

If you want to get the same benefits of proprietary software, write proprietary software. There's nothing wrong with doing so.


Because they get to use their money and power and seep wealth out of things they had no part in creating.

It's disgusting.


You get to do that, too. If you want to benefit from open source software, you can. That's the whole point. What's your dream?


Open source software is like oxygen, big companies can burn really big fires and individuals can light their candle with it. We are all responsible for replenishing the oxygen in the air by planting trees. If the oxygen dies, so do the fires. Likewise companies have pinned their futures on OSS. They are investing.

Edit: please downvote me dogmatic stallman types


As a Stallman fan, I belive most of us would agree with you that this is how things should be, but ultimately would dismiss your point as utopian because the primary objection is that big companies are not really investing in (F)OSS.

Like with the "Jeff Bezos doesn't like contributions to OSS" rumors, there's a general impression that outside some exceptions, companies are not really interested in keeping a healthy community even if they could ultimately benefit with it.


> big companies can burn really big fires and individuals can light their candle with it.

Big companies start as individuals. I don't think your comment effectively communicates your intent...maybe something about wealth distribution or how corporations are immoral. I don't completely disagree with these concepts.


I have been a follower of stallmanism for many years, and I think his voice is a crucial antidote to the all-money, all-control centralized software culture that developed as the early computer revolution encountered mainstream capitalism, but I think you are completely spot-on in your analysis.


Maybe all the major OSS players and FSF could get together and build a cloud company with the promise of only building on OSS and sharing the profits. I'd host anything I could at a place like that, even if I didn't really need hosting for it. It wouldn't even have to be the best in the business, just reasonably priced.


"Unfortunately most of the wealth created by OSS is being reaped by the large cloud vendors"

I think you're forgetting the end users of the applications running on the open source regardless of cloud provider. The value they are reaping is near limitless.


Also those companies building those applications with open source for end users are reaping near limitless value.


And thus society is reaping near limitless value.


This, 1000 times.

We need a good license in the spirit of Commons Clause: source available, feel free to use, but don't sell (just written better and hopefully supported by wider community).

The most curious thing about this is that when a company behind a successful OSS project decides to change a license that would extract some of that value back to the actual creators and maintainers of OSS, they get the backlash from OSS community [0][1]. Ironic, given that the same authors openly post the donations received that amount to... well not peanuts exactly, but not something comparable to an average programmer's pay either. Not all feedback is like this, of course - some recognize the unfairness in the system and support the search for change.

What I currently miss most is some viable 3rd option - not open source, not closed source, but something in between. Apart from GPL & co., and MIT / BSD / Apache, we need a sort of license that would allow creators to extract some part of money from their work. Or at least allow them to sell services, based on their product, without fear of being undercut by competitors who don't bother developing. Why develop when you can take the best OSS product, integrate it to your infrastructure and sell the service?

Current situation with "middle-ground" licenses is:

- Fair Source license is very well written, but is unfortunately only applicable to a very narrow use-case (user-facing apps), and bigtech can still undercut you at hosting (though you do get some royalties... probably)

- Commons Clause seems a bit vague about the term "Sell", has a very unfortunate name, and their main proponent already chose another license... too bad, because the idea is great.

- Zero License is too complex (for me at least)

- Business Source License looks promising, though I am not thrilled about the prospect of turning my software to GPL after 3 years (AGPL with closed loopholes would be a better choice).

If someone knows of a better license in the spirit of Commons Clause, I'm all ears.

[0] https://www.techrepublic.com/article/fair-source-licensing-i...

[1] https://drewdevault.com/2018/08/22/Commons-clause-will-destr...


Well, let's take a look at ElasticSearch, since that's the current hot topic.

If Lucene followed the same logic being espoused here, then ElasticSearch as we know it wouldn't exist, because they wouldn't be able to use Lucene, which is an incredibly core component to ES. Elastic employs several people to work on Lucene full time at this point, so they're "giving back" in that regard, but they're still making money off of pre-existing open source.

What is the litmus test for this being okay? No one seems to be upset at Elastic for making money off Lucene, but the idea of the big cloud vendors making money off of ES is upsetting to a lot of people. If Amazon or Microsoft employed a handful of people to work on ElasticSearch full time does it become okay then?


You have a valid point, and I don't have the answers to your concerns yet. I am sure best practices that protect Lucenes of the world will develop, given chance. For example ES could buy out rights for independent development, or they could simply pay part of their income to the original developers.

Having constraints for selling and building on other people's work doesn't mean that one shouldn't be able to do it, just that previous link in the chain should be financially rewarded for it.


> For example ES could buy out rights for independent development, or they could simply pay part of their income to the original developers.

This sounds exactly like a lot of proprietary software licensing agreements :)

>Having constraints for selling and building on other people's work doesn't mean that one shouldn't be able to do it, just that previous link in the chain should be financially rewarded for it.

I don't think there's anything wrong with building and selling proprietary software, but that's really what's being described here.

If financial reward is what you most care about, write proprietary software. If FOSS is what you care most about, then the AGPL is probably a good fit for you. It won't force anyone to pay you for using your work, but it would force them to give back to the community.


> If financial reward is what you most care about, write proprietary software. If FOSS is what you care most about, then the AGPL is probably a good fit for you. It won't force anyone to pay you for using your work, but it would force them to give back to the community.

This is a false dichotomy. You don't need to "care most about financial reward" to recognize that FOSS is simply not sustainable.

There is a whole level of freedoms one can grant (or not) to users of their software. FOSS is one extreme. Proprietary software is another. I don't think we need to tolerate black boxes, just because we want functioning software.


There's no line after, there will only ever be the 3 multi-billion dollar cloud monopolies at the end of the food chain, the toll booth collecting rent for hosting others OSS efforts.


So, I guess the question is:

What about Open Source makes you believe this is the bad outcome?

The cloud companies make their money providing the physical infrastructure, their expertise in working with the product, support, etc. when hosting it for you. You're not paying them to have access to ElasticSearch - you've already got ElasticSearch.

Why should an end-user have to purchase ElasticSearch hosting from Elastic? Why shouldn't they have the option of getting their hosting from someone that they already get other hosted services from?

If there had been a similar attitude behind the development of open source webservers, the web as we know it would almost certainly not exist today. If httpd had been licensed in such a way that you couldn't make money off of providing it as a hosted service, and no open source alternative had come into existence, I doubt we'd all be sitting on HN right now. It never got concentrated like it has today with the big three, but nothing in the license prevented it from occurring.


Cloud providers were only possible because they can host OSS without licensing restriction or costs, they've worked out that they could charge for computing by providing hosting and is where they've put their billion dollar Cap-Ex into building impenetrable moats.

Hosting OSS isn't the only thing that creates value, but it's where most of the revenue is now being derived since no-one pays for OSS, only to host it. The generated wealth is then be used to finance other proprietary and OSS efforts that can outspend and out resource anyone else they choose to compete with, who need to rely on a different source and business model for their sustainable income.

Cloud hosting is the primary business model that allows investing in developing OSS as they'll still get paid in the end, in this way OSS bringing the cost of software down to zero becomes a loss-leading marketing expense (and competitive advantage) that allows mass free bait distribution of their software which everyone else is at a disadvantage to compete against.

Essentially OSS is strengthening cloud monopolies by bringing the cost of software development to zero with the majority of wealth created going to making major tech cloud providers more wealthy and powerful each passing year.

> Why should an end-user have to purchase ElasticSearch hosting from Elastic?

Because AWS didn't put any of the investment in creating it, they're reaping the benefits from Elastic's investments and can undercut them since they don't have to fund any of the development and have access to an bigger economy of scale no-one else has access to.


Developers wanting to get paid while refusing to buy their tools are also to blame.

In the end, working for such corporations is the only way to actually be paid when one wants to have a daily job in software tooling.


Definitely agree that the best way to force cloud companies into revenue sharing back would be for OSS developers to come together and agree on a standard "OSS-like" license which is basically "OSS and free for everyone else except cloud hosters", if enough OSS developers do this it will force the major cloud vendors to implement a system to revenue share back to the creators of OSS their hosting.

[1] https://news.ycombinator.com/item?id=19434427


Haven't we tried this already? The AGPL is a bona-fide OSS license, and is standard enough that it's actually endorsed by the FSF for public-facing services, in addition to being OSI-certified. Cloud vendors avoid it like the plague, rightly or wrongly - which is what we were going for, right? Yet many "OSS-lite" companies have rejected it as not going far enough. It's mind-boggling.


> Cloud vendors avoid it like the plague, rightly or wrongly

I don't think they do, actually? MongoDB felt a need to change their license from AGPL to SSPL. That said, I'm on "not going far enough" side of the argument. I don't care if they distribute their code, I want them to stop competing with my service, or to pay the royalties. Alternatively, they are free to develop their own product. Note that that doesn't go for users - users are free to install and use the software as they see fit. But providing competing service which is based on the work of those that bigtech competes with, simply does not seem fair to me.


> I want them to stop competing with my service, or to pay the royalties.

Which is basically rent seeking which is what this whole thread is complaining about.

And, incidentally, the whole problem copywrite was invented to solve -- you get a "time limited" monopoly on the distribution of your work.

> But providing competing service which is based on the work of those that bigtech competes with, simply does not seem fair to me.

<bad car analogy warning>

This is like car companies saying you are free to race their cars as long as you never outcompete them on the track...


That would be awesome. The thing that each of these licenses lacks is recognition. When someone says it's GPL, every developer knows what the tradeoffs are. With Fair Source 25 license? Not so much.


I think AGPL is a fairly good choice for anything that's potentially used as a hosted service. All the big enterprises I've worked with so far have a policy that forbids AGPL'd software and rather purchase commercial licenses. SMEs & Startups may make different choices but depending on your product they may not represent the relevant majority of the market anyway.

Ayende from RavenDB (which is a great no-nonsense document DB) has written an interesting blog series [0] on how they approach OSS while still making money from it and keeping their interests aligned with users and customers. TL;DR they license the full server and all modules as AGPL, offer free community (commercial) license that don't skimp on core features (clustering, authn/z), treat support as a cost-center.

Appears to work well for them and I personally find their mode of operation sympathetic.

[0] https://ayende.com/blog/posts/series/186113-A/making-money-f...


I don’t think it’s fair to say we “need” these non-OSS licenses as they exist.

People are free to use them for their projects. More power to them.

Assuming that all OSS projects are exploited or missing out is wrong.

The reason apl/mit are so popular is because they encourage use. I suspect that projects that try to use common core or whatnot will not meet with success because of the limitations of those licenses. Although I’ll be happy to be proven wrong.


This just made me wonder: what if all of the major OSS companies joined forces, started a new cloud company whose purpose was to send revenue back to all of its underlying OSS projects. Each then promotes that cloud as its #1 recommended cloud, and use their collective visibility to grow that into a contender? One can dream...


Fair and equatable distribution wouldn't factor into any consideration for Companies paying developers and cloud hosting companies to run their businesses.

IMO the best way would be for all OSS developers to come together and agree on a standard "OSS-like" license which is basically "OSS and free for everyone else except cloud hosters", if enough OSS developers do this it will force the major cloud vendors to implement a system to revenue share back to the creators of OSS their hosting.

I'm puzzled why Redis Labs, Elastic, Confluent and Mongo DB aren't already coming together to use the same standardized license as there's strength in numbers - instead they're each individually releasing their commercial efforts under their own individually branded license.


Do you mean I could install this software on a box physically located in a building owned by my employer, but not on a virtual host?

I think you are trying to mean not that. Like, if I install it myself, it's okay, but if the "cloud vendor" installs it for me, that violates the license?

I think I understand the sorts of entities you have in mind to allow or not allow; I'm not sure it's clear how you'd write a license like that.

"The cloud" is in the end just hardware somewhere else. I think you are maybe fantasizing about a license that would be more about _what sorts of businesses_ are allowed to use it, than it is about _how_ it's run. The OSI open source definition does not allow licenses that "restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research." You could think that's an inappropriate restriction I guess. https://opensource.org/osd-annotated


It would just need to prohibit usage by the 3 major cloud monopolies, using any language that just applies to all 3 of them, e.g. a commercial license is required if earning over $1 Billion total from hosting Services.

It could also prohibit any commercial cloud hosting without written permission, for which it's automatically granted to every company that isn't Amazon, Microsoft or Alphabet.


> puzzled why Redis Labs, Elastic, Confluent and Mongo DB aren't already coming together

At some point would it be collusion? I think collusion needs consumers, but the consumers of the cloud vendors would be harmed?


Collusion is secret or illegal cooperation or conspiracy in order to cheat or deceive others.

As with any standardization efforts this is just cooperation, there's nothing secretive, illegal or deceitful about it - they'd just be coming together to standardize on a License to build a sustainable business model that prevents cloud monopolies from using their OSS efforts to compete against them.


No, I don't think so - they are not in competition among themselves. They just share a common threat because they chose a similar type of conducting business.


Maybe it won't be a new hyper cloud but an existing one https://cloud.google.com/blog/products/gcp/google-cloud-plat...


Google and friends would just open source their internal rewrites of projects which had been locked out.


It used to be called Openstack.


Cloud companies pay by hiring developers to improve opensource.

This way everybody using opensource benefits. The original opensource contributers benefit twice: their software gets improved, and they have marketable skills as cloud companies will be interested to hire them to work on opensource projects.


You mean Cloud Companies are using the wealth created from hosting other's OSS to finance their own OSS efforts.

By no means are their OSS investments altruistic, Cloud companies by far benefit the most from OSS and no OSS developers aren't winning. Being able to hire OSS developers using funds generated from hosting their OSS efforts is some weird definition of winning, which they're using towards strengthening the software ecosystem around their cloud infrastructure - increasing its value.

The power and value of OSS is swinging sharply away from Indie OSS developers towards the major tech cloud monopolies - where they can now afford to outspend, out compete, out reach and out last any competing Indie OSS efforts.


If you look at linux, the biggest part of the source code has been created by professional developers employed by large companies (ibm, google, intel, oracle).

Without the backing and investments of commercial companies, Linux would not be the success it currently is. So in the end everyone benefits in some way, although maybe not financially.

Same goes for a lot of other succesfull opensource projects: without commercial backing it would not be as succesfull.


> By no means are their OSS investments altruistic

why does anything have to be altruistic? Why can't a company invest in OSS selfishly? The results are the same - more OSS available for anybody else to use.

> OSS developers aren't winning.

what's "winning" here? Is winning gaining financial profit from OSS? Is winning gaining user/market share? Is winning just merely being employed to do what you want to (i.e., employed to contribute to OSS)? And why is any one of those definitions more worthy than any other?


It doesn't, parent is suggesting everyone benefits when cloud providers use their accumulated wealth to hire people to work on their OSS investments as some kind of justification for the consolidation of wealth from OSS happening around cloud monopolies.

It doesn't benefit everyone, it benefits anyone using their proprietary and OSS products and cloud services. It definitely doesn't benefit existing OSS projects who are seeing their innovations replicated by full-time resources or OSS developers working on competing projects.


So you are saying they should do it for the “exposure”.


This is _free software_ we're talking about. The concept of doing it for money itself is quite asinine. Now, using it to established yourself as a domain expert (exposure) and then capitalizing w/ a consulting business makes sense.

The core issue is that consulting scales at O(n) where n is your personal time investment. It's not like offering a service where you spend all your time working on the service and get to experience exponential growth.

Basically, if you choose to commit to free software / OSS, you can't expect to get directly paid for it. Now, I know that that's not always ideal and ends up in tragedy-of-the-commons situations where the OSS devs don't get paid enough, but that's the reality of the situation to me.

Restrictive licenses don't solve the problem, because these same cloud behemoths can just pull an open distro on you.


https://www.gnu.org/philosophy/free-sw.html

Free in software is not about getting paid. Money is not the problem. You can expect getting paid as much as you want, you just have to let other people access code, change and distribute it as they wish.

Thinking it is "free as in free beer" is shallow. I don't need any of those crap android apps even if they are free, I want to have ability to see those apps code so I can see if they are sending my private data somewhere, and I have to have ability to remove that code. I can even pay license fee if I find some app useful, if price is to high I find alternative or just don't use it.


You're missing the point. I know what free software means.

Free software, in the sense you described, also means you cannot monetize it by applying a restrictive license. Full stop.


It does not say I cannot ask for money for my code, it also does not say wanting money for my code is something bad.

The other side is that you probably will have hard time chasing people to pay you, so in essence you won't be able to get much out of it, but that is just side effect.


Consulting does not work in all software use cases, e.g. desktop software, and supermarkets don't take exposure as currency.


Then don't expect freely contributing to free software to pay your bills. That's my whole damn point.


No, for the employability.


2011 @ Microsoft: "Linux is a cancer that attaches itself in an intellectual property sense to everything it touches"

2019 @ Microsoft: "We are all in on open source"


I think it’s interesting to speculate what would happen if there was a significant cost to running OSS as a cloud provider.

I suspect what would happen is that they would look at the cost and wonder if it’s not worth building an alternate solution in house.

They would be able to build it to work and scale as it works best for their technical setup.

Lock in would be much worse even if it’s not ideal even with OSS and OSS would be less used in general.

I think if you look at e.g Redis vs the Dynamo/Cassandra split the OSS ecosystem is much better off in the former.


This article talks about Amazon forking Elasticsearch in depth: https://redmonk.com/sogrady/2019/03/15/cloud-open-source-pow...



Those cloud vendors opensourced projects that made it possible for other companies to exist. How many companies are based on Tensorflow alone?


> Unfortunately most of the wealth created by OSS is being reaped by the large cloud vendors

Opensource can also exist outside the server side. There are opensource desktop&mobile apps and cloud vendors cannot do anything against them. Stop painting a narrowed view of reality, opensource is bigger than you think.


I don't think the intent was to say open source is limited to server side software, but was to instead illustrate a point about cloud vendors embracing open source.


I didn't say the intent was to say opensource is limited to server side software. I'm just saying that talking only about cloud vendors killing opensource is short-sighted. Again, opensource is much bigger.


Kind of, one of the reasons of the failure of desktop FOSS business is that no average consumer is going to pay for consulting, trainings or books.


What you're describing is a situation where OSS isn't creating wealth. Hosting is.


actually this licensing source system will just harm OSS. We should be trying to get companies to use GNU licensing wherever possible, so we can continue to reap the rewards of truly FOSS software.


What about OSS as a talent acquisition and retainment strategy?


That's called "Check out the candidate's GitHub and see how willing they are to give away work for free and then hire that one and when they ask for a raise, say no and let them quit."

Rinse and repeat.


Why buy the cow if you get the milk for free?


I think you can make money on Open Source, but I think you need partners to do so. I work for a Danish municipality that is a member of a municipality driven open source community called OS2. We’re around 60 members, and we’ve recently won a national award for tech-reuse issued by our ministry of digitisation and around 10 interest groups.

We don’t build the code ourselves. We do own, review and manage the code. We handle the project management and we facilitate access to our business processes and employees, but the actual development is something we buy.

Once things get build we often end up buying the various projects as SAAS solutions because we aren’t really geared to operate OS techs. We do have excellent federated authentication, network security and API services, but we genuinely don’t want to operate a horde of different tech stacks. This makes us a perfect match for anyone who knows how to do SAAS in the cloud though, and most of the things we build end up being run in Azure or AWS by a supplier.

So far it’s been a really beneficial relationship. We get ownership, better quality and faster more agile development. Our local development houses still make money, both from development but also from SAAS.

It has been especially good for our smaller dev houses, because a system isn’t locked down to a single supplier for years.

This last bit is entirely my personal opinion, but I prefer buying software from a local shop and helping them build and expand their businesses. On the plus side of this, they co-operate a lot better too. Municipalities are trying partners who can’t make up our minds, and a small agile shop who doesn’t point to the 4 year old contract every time you want a tiny change, has just been so refreshing.


>> I work for a Danish municipality that is a member of a municipality driven open source community called OS2. We’re around 60 members, and we’ve recently won a national award for tech-reuse issued by our ministry of digitisation and around 10 interest groups.

>> We don’t build the code ourselves. We do own, review and manage the code. We handle the project management and we facilitate access to our business processes and employees, but the actual development is something we buy.

This sounds like you're treating the software like infrastructure, which is how I've been starting to view it. You contract out the work to maintain it just like roads. It's no surprise to me that you work for a municipality where that's how they get things done. I believe this is what the future of a lot of large software projects looks like. From the developer side people will look just like contractors and their specialization with be which OSS programs they are familiar with - i.e. how fast they can get the desired changes done and into the master branch. There will of course be cheaper guys who will make your changes in a fork that ends up costing you more long term.

Big software is infrastructure which needs to be maintained but is not inherently profitable.


> I think you can make money on Open Source

> We don’t build the code ourselves.

Ha, ha, well put. That much everyone agrees on, and Amazon especially so. :)

The question is: can you make money as the developer of OSS?


> The question is: can you make money as the developer of OSS?

Contributors to OSS are giving away their time and energy. That seems to be at the core of open source. I'm not going to demand you pay for what I produce - I'm going to give it to you for free with minimal restrictions in the belief that I will also benefit from others doing the same.

It seems to me that asking how to make money by giving away one's work doesn't really make sense. If you value it highly enough to think you should be paid, then why give the work away for free in the first place. No one picks up trash from the side of the road motivated by cleaning up their community then asks how they can get paid for it after the fact. Either you are motivated to give away your time and energy; or you really want a paid job, but one where you feel like you are giving back to society more meaningfully than just helping a company make more money.


You have completely sidestepped the most important part of the debate. There are very nice people who are doing the majority of the work to clean the street out of the goodness of their heart. Then the garbage company, who does a minority of the cleaning, is getting paid for both its work and the volunteers' work.

The volunteers will be happy if either no one ever gets paid for their work, or they do. In no scenario is it acceptable that someone else gets paid for their work, especially at the level of a significant percentage of the world GDP. This is just basic human psychology - no one will ever be okay with someone else getting the recognition for their work. Nothing much to do with open source particularly.


That was kind of my point about partners. We’re the partner, we pay for every line of code.

It’s OSS, but no one is contributing to it for free because it’s also pretty boring stuff like handling a employee/manager vacation acceptance flow.

We didn’t go with OSS to get free development though, we went with it because it gives us ownership and transparency.

I’m sure the model doesn’t work for everything, but I’d argue that it does work for anything related to the public sector.


> 'Our local development houses still make money, both from development but also from SAAS.'


I stand corrected. I stopped reading after that statement, while I should have read further. Thank you for correcting me.


I'm not sure that solution works when you already have a product development model that relies on (literally) tens of thousands of people none of whom trust anyone but you with stewardship of that product.

Plus, given the incredible number of partners Mozilla already has, and has had in the past, it feels like the partnership idea is a passed station.


> You can’t make a living making music. Or art. You can’t even make a living taking care of children.

First, this isn't true. Plenty of people make a living doing each of the above.

(Art is somewhat of a special case, because some will say that what you're doing isn't art by definition if it's attached to some functional purpose like a business model. But you don't have to listen to those people.)

Second, these things aren't cheap because they're not valuable. Water is cheap. Water is also necessary to life. It's immensely valuable. What makes it cheap is that it's easy to provide, so competition drives prices down. People aren't going to pay a lot of money to get something valuable if they can pay less to get the same value elsewhere. Value isn't the only thing that matters when determining price.

> There are dozens (hundreds?) of successful open source projects that have tried to become even just modest commercial enterprises, some very seriously. Results aren’t great.

Are results much better for normal people trying to start businesses that aren't based on open-source code? I'm not convinced they are. Businesses are hard.


I think a more apt description would be "You can't PLAN to make a living making music".

Certainly, lots of people successfully make a living with music, arts, sports, etc. However, there's a lot out of the individual's control in those fields.


You can't plan to be the next Beatles (just as you can't plan to be the next Microsoft), but you can absolutely plan to make a living in the arts (just as you can plan to make a living in software).

When people look at a field from the outside, they only see the celebrities, but this is a completely unrepresentative sample. As Phil Greenspun once put it, "I can't decide if I want to be a scientist like James Watson, a musician like Britney Spears, or an actor like Harrison Ford."


You can make money in music, but it's very difficult to make money making music, which I think is essentially the same analogy here.

A band I love called Periphery is fairly popular, they do global tours etc. They have been very vocal that the band itself generates no revenue. They are happy to break even because they love making music. Instead they use their influence to extend their brand, such as pedals, pickups, clothing brands, etc. They absolutely make money in music, but they don't make money making the music.

You can make money in Open Source, but you're unlikely to make money developing of Open Source. But, if you do contribute or maintain OSS, then you can likely get a job at any of the million companies that need a dev. So you're still making money and you're still in OSS, but they are separate.

I think that was the point OP was making here. Someone makes money on art, but the actual creation of that art isn't likely being paid out to the creator, just all the components that bring it to the consumer.


I disagree there, too. Attempting to make money makes you a business. As a business, your fate is in your hands. You're the one making the decisions.

If you decide that the path you want to take in the business of music is to give control to record labels because all the business-y marketing production stuff isn't fun for you, that's your decision. You don't have to do it that way.


There are 0 people that make a living making art (and music, as a subset of art). All the people you think of are selling art. They are doing things that they believe they can sell, either for money or for status.


That distinction seems like a bit of a nitpick.


A nitpick? On Hackernews?


Say it to all my friends that make art and don't want to sell it. Their hunger is very real.


Sure, but they've essentially decided to not make money and solve their hunger. "Some people decide not to make money with their art" is a very different statement than "you cannot make money with your art"


Nitpicking aside, if you consider that most of the money is made by people working with musicians and not the musicians themselves, then 'the money is in selling art' is pretty true.

I wonder which is more lucrative? Starting a band, or putting equal resources and time into buying lottery tickets. I bet the gap is narrower than people would be comfortable with.


That's no different than most professions. Consider software development. Who makes more money, the CEO, the top sales people, or the developers? It's probably top to bottom in that order.


I dunno man. Bad developers live in nicer houses than my parents ever had.

Everyone who produces for a living is getting paid way less than their output is worth. The more risks involved (laws, strategy, logistics, safety), the more overhead there is and the smaller the fraction you're going to make.

It's probably true that there's more risk in entertainment than any of us consumers or wanna-be artists can possibly appreciate. If you back enough flops then your brand is worthless, for one, and the odds that someone will take a chance on something from you are zero.

But it still seems like music is far out of proportion to mechanic, plumber, carpenter, coder... maybe not so far off from writer (I hear you have to write a handful of books before you ever make more than you would as a teacher for the same amount of effort, and we don't pay teachers anything).


I think it largely comes down to supply. Developers get paid a lot not only because digital applications make so much money, but also because there are so few competent developers compared to the number required. Whereas talented musicians are a dime a dozen, and we don't need all that many, because there are only so many spots on the radio.

Also, I don't know if creation is worth as much as we'd like to think as it is on its own. Value comes from not from the existence of a thing, but from that thing changing hands. If you make a song and nobody hears it, is that song worth anything? If you write code and nobody uses it, is that code worth anything? There are plenty of smart people working hard to help creators get their creations in the hands of people who find it valuable.


This is a very clear articulation of the common problems here.

Intellectual property can only make money by preventing its use, otherwise it just spreads everywhere to everyone for free. Given this property of the Internet, and the decision of open source/Free Software to embrace rather than fight this property, what side-channels can be constructed to return some value to the developers?

> Anything paired with a physical device. People will judge the value based on the hardware and software experience together.

Not just embedded, but also SaaS. The fact that the physical device is off in a datacenter somewhere isn't so relevant. (Another implication of this is that open hardware will never behave quite like open software!)


This is precisely the thing, some things are valuable precisely because they are free and ubiquitous.

It's a form of value that can't be measured directly in $. If you can measure it in $ at all, you can only do it indirectly, in the form of charges for services and ancillary products.

There are no guarantees that's always feasible though. There's a threshold beyond which the cost of harvesting the value is higher than the value itself.


It seems like a tragedy of the commons situation, which we have been able to fix in other instances with organized funding. We've seen some organizations spring up around funding open source projects, but if e.g. the US government authorized federal grant funding for open source projects, I think it would set an example for industry (and other governments) across the world.

The challenge is getting historically scarcity-mindset institutions to recognize the value of letting the rising tide of free information lift every ship in the world. They don't like this on its face because they have divided the world into "us" and "not us" and open source provides more utility (in aggregate) to "not us" than to any "us" defined as narrowly as a single company or country. Until Big Finance, Big Pharma, Big Food, Big Manufacturing, and Big Government embrace a broader definition of "us" beyond their own conglomerates, they will continue to see open source as a threat.

This gets at a broader cultural movement toward abundance, that in the US has strong roots in coastal western cities like LA, SF, and Portland, and strong opponents in the Midwest, South, and East. If the US federal government were to invest heavily in open source, it would send a message to the rest of the country that we are now in an age of abundance, where we recognize the value of lifting all ships, because we know that our strength is in the strength of all of us, not the strength of our few strongest players. It would signal a cultural shift toward collaborative ownership and, I believe, spur investment in many commons.

It's difficult to speak the truth of this mindset to power, because incumbents recognize that there are real competitive threats. The hope is that governments will recognize that there are far fewer threats in a world where people have the basics covered, and companies will recognize that defining and advancing the state of the art makes you look pretty good to the best talent and best customers.


I think tragedy of the commons isn’t really a problem for the development side, though I think I get what you mean, but it comes in the form of excessive fragmentation of the ecosystem. Do we really need dozens of Linux distros when most of them are really just tweaks and could easily be packages on other distros? Do we really need all the little incompatible changes, new UI shells, multiple marketplace stores and multiple messaging clients and crapware on Android OEM phones? I think that’s a very different problem though.

Plenty of big companies absolutely get open source and leverage it to great effect. Not just in an abusive way (although how is simply exercising a right in Libre terms abusive?), but also to mutual advantage. Plenty of big companies contribute significantly to open source, but where it genuinely serves a need.

The fact is sometimes you need to invest more into creating software than you could ever capture via an OS business model, even indirectly. Plenty of software products cost millions of $ to develop, are needed in short time scales, require massive input from highly skilled non-programmers and there are people who will pay well to get it. Open source models are not well adapted to that sort of requirement.


"Do we really need all the little incompatible changes, new UI shells, multiple marketplace stores and multiple messaging clients and crapware on Android OEM phones?"

Yes, we do. If different people did not try doing new things (or just old things done differently), there wouldn't be as much progress, and we would all be poorer for it. Sure, some things stick, some don't, but that's how it's supposed to be.


The problem is the motivation of most of these differences is not improvement but just differentiation. They are literally only different for the sake of being different, for marketing purposes.


> Given this property of the Internet, and the decision of open source/Free Software to embrace rather than fight this property, what side-channels can be constructed to return some value to the developers?

One interesting execution of this is https://www.rstudio.com/products/rstudio/. Develop awesome FOSS, aided in part by the community, and scare enterprise users into paying for it by using the restrictive-through-forced-openness AGPL license.

To be perfectly clear, I don't think this is bad, just interesting. And I understand that RStudio also makes money through SaaS offerings, but that's not as interesting.


It feels to me like there was a lot of social pressure over the last 10 years or so for open source projects to use the most permissive open source license they could. You were cool and "more free" if you used Apache, BSD, or MIT licenses. I wonder if this is coming back to bite us now. Red Hat built a very successful business selling mostly GPL software. Would things be different for the companies we've been talking about lately (mongo, redis, elastisearch, etc.) if they had gone with a GPL license and a Red Hat-like business model from the start?


Because these VC-backed OSS companies don't do open source for ideological reasons* , they do it because it gives them a competitive advantage. A permissive license means broader adoption, which means more $. And now some of them are complaining that they need to compete to get rich quickly off of the software they donated to the public. If you gift someone a lottery ticket, you deserve $0 if they win. That's what you gave up when you gifted.

Everyone is so caught up in licenses, what they really need to ask is: "why can't these companies handle competition from cloud providers?". Don't tell me it's resources when these unicorns are getting VC funding to back a single technology when cloud providers support literally hundreds. They could take the Red Hat business model, but is hard and slow. I would imagine VC growth pressure makes it difficult to follow the Red Hat model.

*The software may have started open source for ideological reasons, but once you hit the VC funding stage, open source becomes strategically important for adoption reasons. The companies might believe in it (sometimes their unwillingness to accept PRs that would help the community but hurt their business makes you wonder), but that's not why VC funding happens.


RedHat's business is not selling GPL software. They probably sell more BSD/MIT/Apache software than GPL software, but they're not in the business of selling software at all.

They're in the business of selling support.


Those are good points. As I think about it some more, it's not even just support that they sell (as in, you can call them up when there's a bug). The large enterprises they sell to value:

- support

- training

- ease of install

- ease of upgrade

- indemnity (e.g., Red Hat promises to pay your court costs if someone sues for patent infringement)

- stability (long term support releases)

Those are all things that plain old open source by itself doesn't provide, but Red Hat does.


Which are all things that usually no consumer pays for, hence the big failure of trying to sell FOSS desktop software.


business in the US has stopped paying for training, generally..


> Red Hat built a very successful business selling mostly GPL software.

Red Hat built a very successful business, AFAIK, selling support to enterprise customers.

> Would things be different for the companies we've been talking about lately (mongo, redis, elastisearch, etc.) if they had gone with a GPL license and a Red Hat-like business model from the start?

Probably not; there's lots of companies selling enterprise support around permissively-licensed software.

It seems most of the ones at issue want to sell SaaS platform services, and would face the same problem with well established SaaS platforms beating them at that game with their own open source software if it was copyleft licensed as if it was permissively-licensed.

OTOH if they close it off and make it exclusive it's going to be hard to keep a sufficient premium in software quality to make their platforms attractive over broader platforms with weaker lock-in, even if those other platforms require a more broadly-supportable second-choice alternative software package in place of the proprietary vendors secret sauce component.


This doesn't make sense. What additional revenue would the GPL provide for you? How would a copyleft license end up requiring additional support contracts? Your other comment lists a range of things Redhat offers in addition to support, but none of those things rely on the GPL.


Qt exists as a business today because of its use of the GPL - enterprise customers can't ship the free version of Qt with proprietary software when its statically linked (as are all? Qt programs on Windows). PyQt works the same way, its an independent business run on selling proprietary licenses to distribute derivative binaries without source in exchange for money.

For a lot of business denying their users software freedoms are a value add for them because of the power it gives them to demand payment. They will, in turn, pay back for GPL code to get that ability. If it enables the further development of free software, its probably a net win.


Qt programs on Windows are not statically linked, i have a bunch of them (including some commercial) and none link to Qt statically. Also Qt is licensed under LGPL, not GPL.

Qt used to be licensed under GPL but changed that to LGPL for version 4. Incidentally this was around when Qt switched its focus from QtWidgets to QtQuick.


Those are good questions. As I think about it more, in the early days, Microsoft stirred up a lot of fear around open source and the GPL specifically. It was viral, it would get you sued for copyright infringment (see: SCO), it would get you sued for patent infringement, it was terrible quality, hard to install, changes all the time, the project might be abandoned, etc., etc.

So yeah, maybe it wasn't so much GPL specifically (except that "viral" threat), but overall Microsoft reinforced a bunch of concerns associated with open source and Red Hat was able to address those concerns.


If mongo had gone with the GPL/AGPL they would also have options like dual licensing, which is what they seem to be attempting.


Cloud providers don't distribute the software. GPL doesn't really help, except to make them more afraid about using wrong.


Basically this. I believe you've nailed the crux of the issue.


I think doing the argument of "open source vs business focused" is incorrect. I would just make the comparison of "business focused vs not business focused". If it is open source or not, that is just a detail of the business strategy.

One of the main problem that we technologist fail at is that a lot of the times we assume technology == product. When we do this, we completely overlook all the necessary infrastructure and processes that we need to have in place to capture the value that the technology provides. We need customer success to guide the customer through a continuous successful implementation, marketing to very clearly articulate value propositions that change in different verticals, a sales team to capture the value and turn it into dollars consistently, support to listen to the customer when things go wrong and hold their hand through the fixes or workaround, lawyers to prepare support contracts and cover procurement requirements, hr, etc etc. I could go on forever.

I disagree that there are not examples of companies that show how to make money from open source. Beyond the obvious examples like "RedHat is a public company" and "MySQL sold to Sun", I can think of an absurd amount of businesses whose secret sauce is ElasticSearch. I would argue, that even though Elastic is a public company, they have not been capturing all the value they have brought. Although there are consulting companies like EnterpriseDB and CitusDB around projects like PostgreSQL, thinking that "consulting" is the one and only business model around monetizing an open source database is a gross over simplification that glosses over models that are evolving in various other areas, for example the one Jetbrains is doing with IntelliJ (basically a subscription service now).

I can look at the current top 100 posts of HNs and point out quite a few of successful businesses that would not have been where they are right now without open source existing in its current form.


I was going to write this comment but you did it already. ;)

Another common criticism of OSS goes along the lines of "it does not monetize value fully." In other words it creates value but the authors don't collect on it completely.

However, the same statement is true of proprietary software. Anybody who has sold proprietary products knows that what you recover is a fraction of the cost of your users doing it themselves. It might be a bigger fraction than OSS but not always--maybe you don't even get the sale in the first place because users are afraid of lock-in.

It's therefore quite misleading to think in terms of different economic models for OSS and proprietary-based businesses. There are more points in common than differences.


The problem is that the "cost of doing it themselves" for OSS is downloading and building your source, whereas for proprietary software, it's the cost of writing it.


It really depends on the software in question. I work on DBMS. The cost of doing it yourself is potentially much higher than your comment indicates:

* Time-to-market -- Rework due to mistakes when implementing or deploying applications

* Risk -- Fixing problems may take [much] longer than for supported software

* Resources -- Extra personnel to do software support and maintenance. This gets a lot more painful once software is long in the tooth and no longer cool to work on.

None of these have anything to do with OSS in particular. And for many people the costs are outweighed by benefits like understanding the technology stack and not being in thrall to costs they can't control.

In a similar vein I used to fix cars myself. I now take them to the mechanic even though for many problems I could do a better job albeit at a high cost of time, parts, and tools. It's cheaper to focus on work that I'm good at. I still miss car mechanics though.


All of those costs are orthogonal to OSS vs proprietary software. For example, there is commercially supported OSS software and completely unsupported proprietary software.


Since you mentioned MySQL, there's this nice story about co-founder Michael “Monty” Widenius[1]. Also MySQL history/timeline[2] is nice example how you can go from 80% revenue drop(after going open source) to $1B acquisition.

[1] https://blog.openocean.vc/founder-stories-a-hackers-hacker-6...

[2] https://dri.es/the-history-of-mysql-ab


The downside of this is that OSS can only be produced by people who have a sufficient degree of financial security. No matter how useful a given piece of OSS is, if the creator is not financially secure they're required to either beg for money, or beg for a job.

Isn't it odd that a piece of software, could be widely deployed, forked, starred on Github etc. etc. and yet with all this infrastructure there is no mechanism to ensure that any money finds its way back to the creators unless they ask for it? Some kinds of business people praise the selfless creativity of the open source community while simultaneously conserving their own profits and often denouncing taxation as theft. When challenged, such people attribute all human progress to the profit motive, and thereby in part to themselves, in manifest disregard of the facts. Creative people don't like this but they need to eat and keep a roof over their head, which requires money.

On the one hand, creative people with a mindset of mutual aid and consequent abundance, whose genius expands and structures much of our economy. On the other, well-resourced people who preach a gospel of scarcity and systematically give less than they take. These same people denounce any interference in their profit-making, and choke the unfortunate with externalities because they refuse to bear the cost of cleaning up their own waste, often going so far as to deceive the public about its existence.

How are open source creators any different from blacksmiths, forging the very chains and weapons which bind and oppress them? How much life must be given away, how much filth heaped on heads, before creators will unstop their ears to the laughter of those who exploit and rule over them, mocking their generous spirits and diligent efforts?


It would certainly be interesting to have some form of voluntary micropayments integrated with GitHub. Or, say, bounties for issues and feature requests, where multiple visitors can add their 2c into a shared pot (although that requires moderation to verify the result).


Bounties exist, but because of the reality of development in the OSS space they're not really something you want to lean on for financial security. Pull requests frequently can take a really long time (months) to be accepted, if they're even accepted at all. The bigger projects are the worst offenders in this in my experience (sadly those are also the most likely projects to have bounties). Very large bounties (for work spanning months) paradoxically become the least attractive because of this, because if your pull request doesn't get accepted in that case you've just thrown months of work into the toilet.


I have seen a few orgs that use bounties. Habitica comes to mind. There are tools to integrate this into github already even.


It recently dawned on me, in light of the Elastic / AWS battle, that Elastic's business model is kind of like GGG's 'free to play' game Path of Exile. Where the base game is free, but as you get more serious you end up spending money on quality of life things, stash tab upgrades and what not. That business model has proven to be very successful (in gaming), versus the buy once model with games like Diablo. Hopefully, by sharing that here doesn't result in a 'gray-at-the-bottom-comment'.


Yup. Open-core model and freemium model are two different words for the same thing.


You mean games like Diablo weren't very successful?


Freemium model is vastly more profitable. There is a reason every game company is switching to it.


For some numbers - Diablo 3 was one of the best-selling AAA titles with 12 million copies sold in its first year, about 30 million within the first 3 years. The entire Civilization franchise has sold about 40 million copies - Civ 5 & 6 each sold about 8 million copies. At $50/copy, that's about $200M per game, ranging up to about $1.5B for a bestseller over multiple years.

By comparison, Wargaming (a mid-level F2P publisher of World of Tanks, World of Warships, and World of Warplanes) made about $600M in 2015. Fortnite (a bestselling F2P phenomena) made $2.4B in 2018. Pokemon Go (also a huge fad, but one now passe) made about $795M in 2018, and roughly $2B since launch.

The playerbase for these F2P games is more than an order of magnitude bigger than traditional AAA titles, so even though a large percentage players never pay, they still pull in roughly 2-4x what the traditional business model does.

(This is also what's driving the sky-high valuations of Twitch and Discord - all these players use related services even if they don't pay for the game itself. It's also interesting to compare this to movies - games are now comparable to or even exceeding blockbuster movies in revenue potential.)


> It's also interesting to compare this to movies - games are now comparable to or even exceeding blockbuster movies in revenue potential

This is nothing new, but it's still shocking -- at least for those like me that still remember the days of the ZX Spectrum, where blockbuster hits were programmed in bedrooms


I think you mean micro transactions. Freemium is base for this.

I don't think its something bad. Even more, it can be absolutely voluntarily and vanity. Skins in LoL dont give you nothing except aesthetics, yet they cash in pretty hard.

Imho the success of micropayments is based on two things. 1. It alows to adjust spending to capabilities, I.e. is easier to scale. 2. it drains wallet slowly, so it's easier to spend more. Like credit services.


>Freemium model is vastly more profitable.

Is it?

>There is a reason every game company is switching to it.

Are they?


> >There is a reason every game company is switching to it.

> Are they?

No they aren't. It's more like a new market that has some overlap with the traditional offering.

There are tons and tons of people who will never be interested in freemium games, just as there are tons of people who aren't interested in mmorpgs or multiplayer in general.

That market isn't going away.

Just like the market for workstations and laptops didn't go away, even though people boldly proclaimed that mobile is eating the world and you can do anything on a phone.


Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: