In 2019, multiple open source companies changed course
arstechnica.com
arstechnica.com
What? No, that's not what "open source" means. Not at all. That's "copyleft" or "viral" or "sharealike", but not a universal definition of "open source".
This right here. When you open source something, you are basically volunteering to write code. By the very definition, volunteering to do something does not entitle you to anything. Imagine how weird it would sound if people started asking money to volunteer in soup kitchens.
If you think you are entitled to something for your work, don't volunteer. Make it a service and charge. If you think writing some code used by someone entitles you to some money, make it proprietary code and start charging like Microsoft does. No one is going to stop you.
Which may explain why people can feel entitled to getting paid for their efforts; we tend to feel that if we give something to others they owe us something back (this is why we have a bunch of laws against giving and accepting gifts in certain situations, because of the societal pressure to make it an equitable exchange), and it sometimes takes intentional reminding of ourselves that that's not how giving works, and that there is no actual quid pro quo obligation.
Whether you offer paid support or not has no bearing on whether you release your code under an open source license.
Many companies offer support contracts for their open source software. Many paid employees work on open source software, not only volunteers (Google, Facebook, Canonical, Red Hat, SchedMD and so on).
Open source and commercial are not antonyms.
I'm saying when something is open sourced, -the work is done-. You are not necessarily volunteering to work any more. The act of open sourcing something involves no volunteering; it involves giving something away. Likewise any patches you choose to release.
When I say 'support', I mean "Oh, this person filed a bug; I'll go fix it". I was not saying support with an implication of financial remuneration.
Open sourcing something is also not equal to distributing something for free. I'm sorry for nitpicking, but there's a lot of genuine confusion about this out there.
You can release something with an open source license without distributing it yourself.
The free software movement regards it as a moral imperative to license all software with free / open source licenses, even if you just give the software to your client and never upload it to Github or release it publicly online.
Even if you distribute it, you don't even have to have a bug tracking interface.
Open sourcing is simply attaching a free/open source license to a piece of software. Nothing more nothing less. Not participation in the community, not Github, not issue tracking, not upstream or downstream patch contributions, or volunteering or zero-price distribution or anything else.
And your point...is identical to the one I was making, that licensing something as open source is not volunteering to do anything from here on out, but instead just giving away the work you've already done.
You're nit picking where there are no nits.
Seems like fair trade
You can (and many companies do) make money with (i.e. commercialize) open source software.
But you cannot cry and moan if you give away the soup for free to someone and then find that they are reselling that to someone else for money. Or to make it more apt, I can ask a Softbank for money to build an unlimited soup dispenser and then let others take soup from it for free. But I cannot stop the people that took the free soup I offered to give away/sell it to others
Actually I think charities get really pissed off when you try do this? Isn't this why the individual packets of stuff often say 'not for resale' or whatever?
Compare a box a granola bars from Costco vs the same bar from a grocery store.
And how would you pay the 'employed' programmers that created the software if not by charging for the software
Tons of open source software is being created by professional employees of companies today. It's not some hypothetical, this is today's reality.
And it's mostly about profiting from related services, paid support, training, consulting etc.
I realize it cannot work the same way for some minor app by a tiny company and it does create wrong incentives sometimes (you need to make things just complicated enough so they need to hire you for support and training, but not so complicated that it's unusable).
(By the way, nothing forbids you from charging for the software, source or binaries, even if you license it under a free software / open source license. "Free" is a catastrophic naming choice, as it doesn't refer to zero price. It is true, though, that anyone who buys it once can then redistribute the software for zero price, so you'd only get money from people who buy directly from you, instead of obtaining a copy at zero cost from somewhere else.)
That's basically what NGOs are...
thank you for the opportunity to clarify...
YOU - an individual coder; OpenSource - a publication with license for others; Write Code - specialized skills with high literacy; Volunteering - social arrangement with time and resources.
You - Write Code - OpenSource => volunteering
when code is made OpenSource, the origins of the code over time are due to more than one person
when code is made OpenSource, benefits are primarily to systems, less so to the individual
to understand the decision to make OpenSource code, the systems that benefit extend to Five Areas (for example, to quote https://paulfuhlir.com/ ) .. listed above
does that make it clearer ?
And yet software like Wordpress has thrived for many years without their creators being tempted to change licenses (Wordpress.com wasn't crushed by AWS, shared hosting or even WP-as-a-service vendors).
What is different about these DBs?
Engineers are rightfully wary of using proprietary databases. Decades of bugs leading to integrity issues on decades worth of data. They're not willing to relive those days. Luckily, the world of open-source, battle-tested, academically reviewed databases is large and mature.
So any upstart peddling funky "throw out all that academic rigor and try this nosql shit" is rightfully squinted at. Open-source has essentially become table stakes for DBs, since no engineer will look at you otherwise.
These nosql companies are trying to be proprietary while still meeting the table stakes. Given the other expectations around open-source, the whole thing has a "two kids in a trenchcoat" look to it.
Doesn't help that people have been talking about the issues with NoSQL for quite a few years now [0]
[0] http://cryto.net/~joepie91/blog/2015/07/19/why-you-should-ne... (although I do wonder how much of these points still apply)
If the lookup is anything more complicated than "I know exactly which file I want because I saved the relevant key in a real SQL database," then you're probably doing something wrong.
Too many people start with NoSQL because "we gotta be cloud scale" without actually thinking about their data model, don't want to redo everything the first time they realize they need to do a join, and end up bolting on a slow, broken, inconsistent query system on top that ends up being orders of magnitude slower and more expensive than postgres running on a laptop.
Not that you are, but we need to be careful with the “open source === good quality.” OpenSSL has Heartbleed for years
I think the story is more about universal cloud providers dominating specialized Library as a Service providers (AWS dominating MongoDB) - the fact that the smaller providers publish their software as OpenSource is not relevant to the story, Amazon could publish their solution as OpenSource and still kill MongoDB.
https://medium.com/hackernoon/aws-and-mongo-and-open-source-...
It all leads to very big and probably monopolistic cloud providers. To have more competition maybe what we need is mandating Open Source for Saas. We would also have some positive externalities in the form of code. Businesswise this would not be a big deal - exactly because selling the full package (i.e. cloud provided Saas) is dominating selling licenses. There are some technicalities to overcome - like how/where it should be published, what should be published (what is the source? what code is really used in Saas and what is internal code?) and when it should be published (immediately upon going live?).
It can also be justified on the grounds of people should know what they are buying.
Exactly this. I don't see the point of, say, the AGPL because it can't possibly be enforced: Short of a whistleblower or other leak, have no way of knowing if I'm connecting to AGPL software, or merely something that's API-compatible.
> Exactly this. I don't see the point of, say, the AGPL because it can't possibly be enforced: Short of a whistleblower or other leak, have no way of knowing if I'm connecting to AGPL software, or merely something that's API-compatible.
I don't think that is people's main concern. As a developer I'd trust that most companies will honour the terms of a license, and if they don't it'd be unknowingly in most cases. It's too much of a legal risk, and not worth it in most cases.
The issue is that GPL licensed software can be legally used in Saas use-cases because it needs to be distributed for the gpl to get triggered. In the case of AGPL that loophole is closed, but it's still possible to use AGPL software in a Saas product in the case where it is not used directly, basically. For example, in most cases it's legal to call an AGPL command-line application you modified from a backend service, without having to share your modifications. At least that is my understanding.
Either way, my point is that the concern is about legal use-cases, not illegal ones.
but that's not specific of open source software. You could be running any closed source software without a license and nobody would know.
[1] https://www.fluentd.org (Ruby Language)
[2] https://fluentbit.io (C Language)
Eventually the OSI leadership will resign; they may be pressured to do so very soon. There are too many powerful interests for whom the OSD as it is poses significant problems.
I think MongoDB from the article simply provided a SaaS service, which was too simple too copy without any unique features. Ain't this their own fault?
Trying to sell a free product that you are developing does not seem like a workable business model. Open-source products which are developed almost entirely by a company with a questionable business model are unlikely to remain healthy in the long run.
The formula: make popular open source software, get an audience of people who happily use that software, sell related services to that audience.
AWS didn't "kill" anything since everything they did is allowed by the terms of FOSS licenses and was known to be possible for many years. It would be more accurate to say that there was never a valid business model in the first place. People originally wrote FOSS to "scratch an itch", not make money.
IMHO proprietary software is better than no software, but open source software is better than proprietary software in terms of societal benefit.
My favorite open source business model is the "Free Software Product" model. (Best articulated here -> https://sfosc.org/docs/book/business-models/#free-software-p...)
The core ideas are: 1. Free software products have trademarked, proprietary distributions, with commercial terms attached. 2. Free software products (may) have 100% open source distributions, but they must use different trademarks and naming conventions, and receive no direct customer support or interaction from the upstream. They are strictly downstream repackaging of the proprietary upstream distribution. This is true regardless of which source code repository is being committed to - the user relationship is defined in terms of the commercial product, not the free software project.
By either using this model on its own or combining it with OpenSaaS, I think it is entirely possible to run a profitable business, while providing public access to the code that benefits society.
Be careful.
These companies aren't trying to do something good for open source software. They are trying to protect their own business models. IMO they have the right to develop and release software under whatever license they want.
But as a user of that software, make sure you understand: if they decide your use of their software has potential revenue that they want, they are going to adjust the license to try to force you to pay up.
That is, their software is only as open as is currently convenient for their business objectives. Really not "partially open" at all.
Is that what SSPL tried to do?
For years I hoped the LAGPL (Lesser Affero GPL) would turn popular. [1] But I guess it needs a bigger organisation behind to get real lawyers to write it and promote it.
In essence I'd just want MIT+NOSAAS or Apache+NOSAAS.
[1] http://mo.morsi.org/blog/2009/08/13/Lesser_Affero_GPLv3/
Broadly speaking, what is the utility in not allowing this?
Open source can MOST DEFINITELY be made totally proprietary.
Mongo's explanation: "[there was] confusion in the marketplace about the trigger and scope of the Remote Network Interaction provision of AGPL" [1]
Though, ultimately, AWS's "work-around" to this arms-race was to reverse-engineer MongoDB, abiding by its interface & APIs to offer a drop-in replacement: DocumentDB. [2]
[1] https://www.mongodb.com/licensing/server-side-public-license...
[2] https://aws.amazon.com/blogs/aws/new-amazon-documentdb-with-...
I don't understand how this flies at all. The AGPL to me clearly includes AWS in its text, as it's a service offered over the network?
It does. As a consequence, AWS would have to share the source code of MongoDB with everyone. Which costs them nothing and gains MongoDB-the-company nothing, while MongoDB-the-company probably looses a good chunk of income because AWS can offer their product better integrated with the rest of AWS, under the same billing, ...
What I can find are references to small companies like mLab that provided MongoDB hosting/managing as a service, that MongoDB Inc. either bought out for cheap right before going proprietary, or outcompeted.
It is even in the title: Amazon DocumentDB (with MongoDB compatibility)
But of course, they say it is only using a similar API and no code. We have no way of verifying this.
This was released _after_ MongoDB went proprietary. MongoDB's decision to go proprietary could not have been influenced by this, because this did not exist at that time.
_Some people_ might have you believe that if free software isn't generating ad revenue, or isn't being relicensed for cloud deployments to make gobs of money, then it's somehow "unsustainable."
I disagree, and choose to disregard most projects that behave this way.
I don't dislike the guy, I just know his views, and choose to contest them.
feross has submitted a ton of great articles to HN and is often the first user to find them. From that we all benefit, regardless of our views on ads, etc.