8 ms·
The Asymmetry of Open Source
- EGreg 3y agoI develop the Caddy web server, and I rely on open source sponsorships for my living. To be part of a more secure and reliable Internet, have your employer sponsor me (mholt) on GitHub! Doesn’t that mean he needs users? And especially corporate users? The more he has the more $ he makes
- c00lio 3y agoNot quite. He needs _paying_ users. Those don't necessarily grow in the same fashion and under the same circumstances as non-paying users.
- EGreg 3y agoThat’s true, but maybe there is a probability you can multiply to get the revenue? Just like freemium users
- qwery 3y agoIt sounds like you think there's some conflict there, but I don't think they're making any claim that developers don't need income/support/food (they pretty much state the opposite) or that open source projects don't need developers to (continue to ) be developed. The project isn't the developer, the users aren't the donations.
- detourdog 3y agoI think it means whatever you want. I read it as if you are able to make money using Caddy wouldn't it be fair to share it with the developer. I think there is a sub-text that implies if you sponsored Caddy and needed some extension or support that is available also. Before Open Source was codified the was an attitude where the software is free but the documentation costs money.
- peschu 3y agoI don't know if your underlying assumption holds at all. In the end the GPL resolves these issues and enforces stuff. Obviously most companies don't want that for different reasons. Without GPL, as a company you take the code and if neccessary at some point, you employ somebody to further develop it in house (when maintainer gives up or something). Why pay and share and give that advantage to your competitors? The key to open source is when governments develop policies for using open source instead of paying licenses for proprietary software and maybe pressure from customers to companies which use open source software. But average people don't know and don't care at all about open source ... :(
- pabs3 3y agoThe GPL doesn't enforce stuff, only large amounts of lawyers fees can do that. Plenty of companies violate the GPL with zero consequences. Same goes for permissive licenses TBH.
- tsimionescu 3y ago> Without GPL, as a company you take the code and if neccessary at some point, you employ somebody to further develop it in house (when maintainer gives up or something). > Why pay and share and give that advantage to your competitors? What companies have actually found is that collaborating on OSS infrastructure projects is extremely beneficial, essentially outsourcing some of the work to focus more on their unique selling points. This has happened more or less the same for GPL and more permissively-licensed projects. Linux is the top example of a GPL project that has nurtured this type of commercial collaboration. Clang&LLVM is the top example of a non-GPL project which has achieved the same. Kubernetes is probably the second contender, and also non-GPL. Ultimately I believe the GPL was an important step forward in getting companies to realize this type of business model can work. But it is much more of a hindrance today, since it brings about an awful lot of bureaucracy and ceremony when you need to combine it with proprietary code. So, I expect most collaborative OSS projects will continue to stay away from the GPL moving forward.
- ghaff 3y agoA common take on this for a while has been that the GPL discourages certain types of freeloading while permissive licenses make (commercial, in particular) collaboration easier. Linux, as you say, does provide an example of mass collaboration happening with a GPL license but it's unique in so many ways that I'm not sure it provides a very useful study point.
- satvikpendem 3y agoWhat an even-handed article that acts as essentially a how-to guide on running an OSS product. I have always held the notion that Open Source Is Not A Business Model; just because you build it does not mean that you are entitled to money, especially if you willingly give it out for free. Just like any startup, you must find product market fit and generate revenue. It's heartening to see the same philosophy in OSS as well. Treat it like any other commercial product, not as something special.
- temac 3y agoWhile I agree in principle, reliance of big companies to critical projects while not helping them, and in tons of cases not even trying to help them, is not unheard of. And to be clear even in this case the maintainers are not entitled to anything, but: * trying to commercialise something, they would not be entitled to anything either * this would often be in the best interest of everybody to help those projects
- josephg 3y agoYep. Lots of companies - probably most companies - do nothing to support the opensource projects they depend on. Honestly I think most business people would be horrified if they understood how much their business depends on the volunteer labor of strangers. How many Fortune 500 companies depend on the work of a random hippy in NZ who lives in a houseboat? And the article is right - the funniest part is that you need him more than he needs you. Plenty of non-opensource developers also have no idea how to act on GitHub. Some people are great. But I’ve also gotten more than my share of entitled “drop everything and fix this now” issues opened over the years. “It’s causing an outage!”. It’s like I’m a wayward junior engineer who needs to be brought in line. Do you appreciate my work or not, idiots? You can’t have it both ways. It’s kind of surreal.
- phpisthebest 3y agoFor me, I would have no problem paying for open source software, and have a few times. The problem is I have to have an invoice I can submit to corporate accounting to an actual business entity. I can not "donate" company funds to some random person on the internet. Many open source projects only have donations based funding, no way for be to download an actual software product that I am invoiced and pay for. Package the binaries and sell them to me, I will happily pay with company money...
- jwilk 3y ago(2021) Previous discussion: https://news.ycombinator.com/item?id=30706650 https://news.ycombinator.com/item?id=30706650 (44 comments)
- onurcel 3y agoI don't get it. An open-source project don't need users? Sure someone could publish a work for the sole goal of publishing it, but most of the time you make something public for a reason (financial or not). In fact, like the other comment in this thread, I find the author's point contradictory to ask for sponsoring their project. Again someone could sponsor something that has no utility, but it seems to be far fetched to say the open-source don't need users. However, while I disagree with the statement, I agree with the sentiment. Most open-source projects' authors don't care about their users, at least not as much as in the beginning, probably because of the said incentive mismatch.
- bawolff 3y ago> but most of the time you make something public for a reason (financial or not) Sure, but getting outsiders to use the project may or may not be that reason. There are plenty of projects that publish for reasons other than to be popular.
- WesolyKubeczek 3y ago> Use "copyleft" (GPL/AGPL) only if you want to sell proprietary licenses to companies; otherwise they will not use your software, period. Isn't this, in the light of some European legislation-to-be that could make an unaware maintainer liable because some other company used their code, a win-win? Either pay or don't use.
- temac 3y agoMaybe there are osbcures cases where you would not use GPL licensed software for obscure reasons, but in general that seems very weird. Distributing it is another story.
- ghaff 3y ago>Volunteer open source has given us the majority of all open source projects This is a statement that is (I assume) technically true. It's also quite misleading. And it carries through to the discussion of serendipitous and reliance developer models. Sure, if you count projects on Github, I assume the vast majority aren't clearly worked on by someone paid as a developer to do so. But if you filter by widely-used and commercially-interesting it's a different story. >Reliant open source is the majority of financed projects by far, and has yielded projects like Homebrew, curl, OpenSSL, Vue.js, rclone, Caddy, and countless others. OpenSSL, for one, is a terrible example. As came out with Heartbleed, the OpenSSL developers were collecting something like $5K/year in donations.
- snickerer 3y agoWow, I didn't know Serendipitous is a word.
- brandall10 3y agoNever heard the term "serendipitous encounter"?
- snickerer 3y agoNever heard it, but must admit that I am not a native English speaker. Thanks for pointing out the term. I learnt something new today.
- dtgriscom 3y agoserendipity, serendipitous, serendipitude, serendipitation, serendipitoid...
- Dudester230602 3y agoPerhaps it's time to start talking about open source maintainers paying compensation to users? I never wanted your Nodejs and SPAs. You hyped it up and then it was forced on me by the industry.
- garganzol 3y agoMatt is a developer of Caddy webserver - which is infinitely useful in so many settings ranging from hobby websites to corporate networks. My rule of thumb - if I really like a project and use it on everyday basis, I always pay back either by buying a license or by subscribing to monthly donations. This simple rule keeps authors afloat. BTW, I make monthly donations to Caddy webserver because parts of our business are reliant on it. "One gives freely, yet grows all the richer; another withholds what he should give, and only suffers want. Whoever brings blessing will be enriched, and one who waters will himself be watered."
- mholt 3y agoThanks for your sponsorship. It really does matter, and I hope you get more than your money's worth!
- ChrisMarshallNY 3y ago> The first thing to consider is that the developers count as users. That means you can use your own project commercially! I'm my own best customer. I write software that I want to use, and use it. Writing my modules as full-fat, generic, supported, MIT-licensed libraries, means that their Quality is top-notch. I don't like to worry about my dependencies, and I like to be able to reuse them, if possible. It also helps people to take me seriously, although that seems to be a rather optimistic approach. In my experience, almost no one ever looks at my work, and they usually just attack me, because I'm old, and come across as an "OK Boomer," whatever that means to you. > because it means they need to assume full responsibility when relying on software in their multi-million-dollar business that was probably developed by a tired young parent or college student who didn't get enough sleep. As the comedian says, "So, what's your point?" They make a ton of money, from someone else's work. They don't give a damn about the other person, except as someone to bitch to, when they feel cranky. As long as the license doesn't say they need to pay, or open their own work, then why should they care? I was just looking at adding a feature to my app for converting long/lat to timezones. This seems straightforward, until you look at a timezone map[0]. It's entirely possible to create my own mapping program, by splicing together some geo points, and a table, but I was wondering what was out there. There's a number of choices, but they tend to want eye-watering prices. The open source stuff is basically an open toolbox. I'll probably be rolling my own, into a Swift package. I may open-source it, just to be a dick, but I don't really want to be supporting a popular package. [0] https://commons.wikimedia.org/wiki/File:World_Time_Zones_Map.png https://commons.wikimedia.org/wiki/File:World_Time_Zones_Map...
- ChrisMarshallNY 3y agoJust because I'm a completionist, here's what I scared up[0]. I decided to make it a server, instead of a device library, because I can just run it once on the source data, that way, and I don't need to keep running it. In any case, it's PHP and LAMP, so no one on this forum will like it, which suits me just fine. Figured I'd post it, anyway, for Ss and Gs. [0] https://github.com/LittleGreenViper/LGV_TZ_Lookup https://github.com/LittleGreenViper/LGV_TZ_Lookup
- robalni 3y agoI have been thinking about how to fund free software development for years and the best solution I have been able to come up with so far is... First, as stated in this article, the problem is the asymmetry. Normally you need to pay to use a service and the service provider needs money in order to continue. But in software development, the developer needs money to continue but the user doesn't need to pay to use it. This problem of asymmetry has already been solved all around the world. The citizens in a country can use a lot of services because they pay tax. This works because the government patches the asymmetry by filling in the gap of the missing money flow, using money that they collect from everyone who wants to be a part of this system. There is just one difference with software development: software is global, so we can't use any existing tax system. What we need is a global system that collects money from everyone who wants to participate in the system. The money could be collected by the software developers, similarly to how some of them already accept donations. When they get a payment, they register it in a global database that keeps track of who has paid. This database can then be used by anyone who wants to enforce this system by requiring that people have paid a software developer in order to be able to do certain things. The question then is how many people would be willing to make this requirement.
- jagged-chisel 3y agoEnforcement is the bigger problem, I think.
- robalni 3y agoI don't know exactly what you are trying to say here, but as I said, the question is whether enough service providers want to make paying a developer a requirement for the things they control, so that enough people think paying is worth it.
- andyferris 3y agoI think the same argument applies to research, which is currently nationally funded. The issue is that policy makers haven't seen the value in the same way (yet).
- optimalsolver 3y ago>These sections should make companies nervous, because it means they need to assume full responsibility when relying on software in their multi-million-dollar business that was probably developed by a tired young parent or college student who didn't get enough sleep. But those are exactly the same people who would be developing their software if they brought the work in-house. Off topic, but doesn't the success of open source software torpedo the claims by many companies that you need on-site collaboration for this kind of work? Even here on HN you see many comments going on about magical conversations in hallways, yada yada. But in reality, many of the software projects that millions use every day were built and are currently maintained by teams who have not only never met, but probably don't even know what the other team members look like.
- mtlmtlmtlmtl 3y agoHaving worked with both open source and proprietary 3rd party software, in many ways, open source is actually maybe the safest pick. Or rather, proprietary stuff probably has the worst failure mode, where you end up being dependent on a legacy product with no support and no code(and this is pretty much guaranteed to happen at some point!). And even if there is support, it could take weeks to get a support request elevated to a bug report, assigned to a dev, reviewed, tested, yadda yadda yadda. Especially if you're a smaller customer. I won't comment on overall risk of third party open source vs proprietary. But it is obviously true that open source has an advantage in that there's no problem that could arise that can't in principle be solved in-house.
- bee_rider 3y agoRe: the on-site collaboration, I think it is a different scenario? A company wants to some a particular problem, wants their solution to be the winning one, and wants to be able to stand behind the specific promises that they make regarding it. When picking an open source library from the internet, you can immediately apply a strong filter: select codes which already have an active community and ongoing development, they already do something like what they say on the tin. You only see projects that have won a couple times. Open source communities also draw in people who have the specific problem that their project solves. The need to have meetings to get everyone aligned on what the actual objective is is reduced, they showed up because they have the problem. The corporate project is, at best, trying to solve an internal company problem (so they can at least have meetings with the interested parties and maybe even dogfood a bit). Or, it might have some totally imaginary customers that sales and management think exist out there somewhere, so let’s get together and brainstorm about what they might need.
- francoismassot 3y agoReally nice guide to understand how to drive your OSS project, I run an OSS project and many things written in the article feels right. The positive point is that I see many users/customers that fully understands that if they want the project to last, they will need to contribute financially, it clearly makes your life easier. One point I want to emphasize is to think long-term. If you want to build something great that is solid, it will be hard and it will take years. You are also building trust with your user base and this takes a lot of time too. So you need to ensure that you won't be burned out by your project, both for you and for your users. On the negative side of things, I see several OSS projects that try to oversell (consciously or not//too much marketing) their project to speed up the growth, this makes all the more important the assessment of an OSS project before putting it in production.
- pierotofy 3y ago> On the consumer side, open source is inherently for enthusiasts Consumers care about whether software works for their needs, they don't care whether it's proprietary or open source. And often there's also the factor of price. The problem with FOSS is that too few developers have the willingness to ask for money directly, like selling binaries instead of sponsorships/donations which have terrible conversion rates. https://piero.dev/2023/02/foss-funding-chapter-2-binaries/ https://piero.dev/2023/02/foss-funding-chapter-2-binaries/ Other monetization methods proposed in the article just don't scale, aside from the running a SaaS business which is 100% a great way to fund work.
- vetinari 3y ago> The problem with FOSS is that too few developers have the willingness to ask for money directly, like selling binaries instead of sponsorships/donations While I agree with you, this leads to confusion: the naive users from your first sentence then say, that they thought it is open source, why the author asks for money? This can be seen for example with android apps, that have GPL-licensed sources on Github, free binaries in F-droid and paid binaries in Google Apps Store. So basically the author is charging only a convenience fee, but this confusion still arises.
- ghaff 3y agoAs I understand the proposal is that the source code is indeed open source and available freely but you have to pay to download the binary? It can be done. Some companies do things along these lines. But, especially at the consumer level, that introduces a lot of adoption friction. I imagine most users will close the page and move on once they saw they needed to build a binary themselves to try something out for free.
- vharuck 3y agoPeople who buy things expect quality, service, and interoperability. In my experience, FOSS projects often have the quality, but they lack service (they may ignore suggestions or unusual bugs). Interoperability is usually left as an exercise for the user. If a user buys a binary, the seller should expect demands for work or a refund. But people don't expect refunds for donations. And it takes a lot of money to attach strings to a donation.
- pickingdinner 3y agoWhat happened to dual licenses? Free for private and non-commercial use. $$ per seat for commercial use. This can still be completely open source.
- deleted 3y ago[deleted]
- asylteltine 3y agoPeople will come in and yell that non commercial license isn’t open source… but sorry it is! All my projects that are more than hobbies have non commercial licenses. It’s open source! If you want to profit it off of it, you can pay me part of that profit.
- smoldesu 3y ago...so, how many major stakeholders have used your projects to-date?
- asylteltine 3y agoI don’t know. Does that matter? I have written stuff that audio companies would love to steal but I provide for free to people who won’t make money from it. If there’s money to be made, I want some of it.
- vedranm 3y agoThat's called source available.
- deleted 3y ago[deleted]
- asylteltine 3y ago[dead]
- teddyh 3y ago
- BSEdlMMldESB 3y agoIt's an unavoidable truth (I hope that by this point it is) that an open source collaborative development model (them who are able to contribute are allowed to do so; no questions asked) produces better software than an in-house or private, restricted, development models. and while there are some tradeoffs, the advantages (I hope) are overwhelmingly in favor of open collaboration. this is so important that the entirety of science (real (old-?)world science) hinges on this open access and 'public' collaboration; there's less of this kind of science now than before.... (see also: ongoing scientific publishing revolt) but I digress, none of this to say that there's no problems, but the problems are more social (cultural and economic) than they're technical. the points are: collaborative models of software development are technically superior; they make better software. the 'problem' of how to "make this into a business" cannot be solved, we must re-evaluate wtf a 'business' even means. we need to question why do 'things' need to be 'businesses'.
- remram 3y agoI feel like their ought to be another term for what the author is talking about, which is software developed by the community and maintained openly. Calling this "open source" seems inappropriate, as this only describes the license of the software, which seems really orthogonal. A lot of open-source software is not developed openly or accepting contributions, it's just published as a tarball somewhere. There is no volunteer work, there is no fostering of a community. Some projects explicitly refuse outside contributions, like SQLite, but are still open-source (= license). In contrast, some software is developed in a communal fashion but is open-core, BSL, or at least partly proprietary. In this article, every time the author says something about "open source projects", they mean community-developed projects. Maybe the word "project" does enough work here, and everyone understands the difference between "open source software" (= the code, under open license) and "open source project" (= community-developed openly-maintained software)?
- jdougan 3y agoBazaar-style development?
- deleted 3y ago[deleted]