More Money for Better Open-Source Software
marijnhaverbeke.nl
marijnhaverbeke.nl
But each of the approaches requires that you get serious traction.
The key here is to stay independent of revenue for the longest time as you can. This is only possible if you are willing to work as a solo developer, working part-time till you hit certain traction numbers.
Open source is a hard and long game as a business. On the plus side, it is very satisfying and if you are able to sustain. There are many domains where open source is already winning big (OS, infrastructure, databases, web) and as new areas "fall" to open source, the risk on the closed-source side will also keep on increasing.
Which is part of what makes proprietary software so much easier: you don't have to have "serious traction". You could even do something like bingo cards and make some money at it, growing the business a bit at a time.
Those with the cash to spare and the desire to do so will donate, just as they always have. Those without either, will not donate, just as they always have.
It reads like a plee to a user's conscience, but lacks any teeth to have any more effect than any other permissively licensed donationware.
Best of luck, though.
Software is free. Experience is what counts.
You can make money by writing broken software then charging for fixes. MongoDB has their bananas valuation because they released hype-driven broken software, got it deployed globally, then everybody realized "this doesn't work! we need support!"
If your software is free and works flawlessly, average users are less inclined to pay for it. If users have money riding on top of your software, they will happily pay for commercial guarantees and support.
These days you have to release everything as open source, hope it gets wildly adopted, start getting it deployed bottom-up in large organizations, then offer large organizations support and SLAs on the software they bought.
(This is for software though. The other approach is obviously just make everything as-a-Service so everybody is paying based on their usage.)
http://journal.dedasys.com/2007/02/03/in-thrall-to-scarcity/
Dual license your thing so that it can be used commercially for a specified monthly fee, with a mechanism for paying that fee (and that fee being actually spelled out rather than handwaved at as in the article). You've written useful software. Charge for it.
Asking for donations physically can't work, as the commercial organizations you'd want to donate often don't have the legal ability to do so. They can buy things. They can't give money away.
Again, it's solved. The author just seems to feel bad about the solution, so he's trying to implement it while apologizing for every step. Seems a bit silly.
You can still do separate hobbyist/commercial licensing with your MIT license, and not impose any restrictions on your users. Apart from asking your commercial customers to pay.
You're selling software to companies with legal departments for an amount that, frankly, isn't worth the hassle of trying to scam you out of at the risk of you suing them. Companies really do pay for software based only on the software company asking them to do so.
So yeah, scratch the above then. You'll have to dual license with a modified license for non-commercial use. Same idea, slightly different execution (but still no need to go to GPL extremes if you don't want to).
The GP said "asking" commercial customers to pay, which you can.
You're right too, you can't constrain commercial use but that doesn't mean you _can't_ sell something that you MIT license it just means that people have the option to try and acquire your MIT licensed software from one of your licensees (or their sub-licensees, etc.) instead.
Can someone explain this to me? Many corporations support the Red Cross, the American Cancer Society, youth basketball clubs, etc. in various ways.
Why is contributing to the advancement of science and public goods any different? It seems like that should be easier to justify if certain technology is critical to your business model.
It is probably much harder to compete for a piece of that budget, and also there are a lot of hoops to jump through to become a "legal" charity (in the US, I don't know about other places). Since companies are already used to purchasing software, that is probably a much simpler way to go.
I don't think the IRS is going to give a shit. Other companies may have shareholders who cry a little, but they could do it, at least to some level. Sending some love to Debian is a better option than paying for a MS license in some cases.
I think that the companies can and should support FOSS more. Especially if they don't want everything to end up GPL'd.
Support contracts put a lot of obligation on you, so should be priced accordingly (aka high). Combine it with #3 to give an out to those who can't afford and/or don't want the support contract.
And substantially raise your rates.
For us: No invoice? No payment. (I'm not arguing whether that should or should not be a fact; I'm just stating that it is a fact for us and I doubt we're alone.)
Would you pay extra to be able to get invoices from organisations you want to donate to?
I'm sensing an invoices as a service opportunity here :)
(There's still a risk of external fraud, some big companies will pay invoices without checking ...)
They go through audits every now and then, where every single cent needs to be accounted for. "Oh, we ACH'd some money to that cool developer over there" doesn't fly.
Those audits may be for tax reasons (once you send an invoice, the payer can expect you to do your own taxes on that stuff, and they're off the hook) or to see what it's actually spending its owners' money on, which is especially important in public companies.
Would I pay more to be able to get invoices? No.
Well, technically yes, in the sense that I'm willing/able to pay $0 unless you can invoice, but otherwise, I won't pay an "invoicing fee" as a line-item surcharge any more than I'd pay a "printer paper fee" or an "electric lighting fee". Present the total invoice, and what you spend that money on internally is your business, not mine. If you need $1 for the invoicing process and I've agreed to pay $50, then $49 into one bucket and $1 goes into the invoicing bucket. I agreed to $50/mo, not $51/mo.
For these reasons I think a different approach to crowdfunding is needed: one that is finer-grained, collecting smaller amounts of money for smaller units of work, and that is designed to work on an ongoing basis.
The reason I think this could work is that the developers of a successful open-source product actually do have something to sell: their time. There are always bugs to fix and new features to implement, and crowdfunding contributions can be a way for users to vote on what they want done next.
If someone only ever pulls code from open source repositories, and never contributes (either with money, code, time, etc) then I think the 'freeloader' label is valid.
It's more of a moral argument. We want open source available for people to use for small projects, but once large organizations take our software and make billions of dollars on top of our architectures without contributing back to the 5 people who made that possible, it's disingenuous.
My general rule of thumb is: if you are a large organization using community powered open source software, you should be paying individual project communities 3-5 senior engineer salaries per year. If an open source project has 5 million users, the creators shouldn't be sitting around worried about making ends meet. This isn't about token gifts of $10k or $50k per year in "community sponsorship." It's about sustaining and growing projects big companies rely on to function in the first place.
It's clear to users what they are giving money for. Also the incentive is bigger to contribute because before the amount is reached, the code isn't released. And for the developer, it's more predictable than donations.
Of course, this still wouldn't work so well for maintenance heavy projects that don't gain a lot of features, like security sensitive infrastructure like openssl.
Most of my other open source work gets released as MIT and I have zero expectation of getting any direct money from it. (Although, my open source work has undoubtedly helped me get my current and most of my recent jobs, so there is a fair argument that it's earning me money indirectly.)
I wont link to the campaign but the repo is here: https://github.com/enjalot/building-blocks
Generally; open source platforms, frameworks and operating systems are easy to monetize because they are at the base of the software stack - They own the environment in which people build apps.
Libraries and modules, on the other hand, are difficult to monetize because they are only small parts of an environment over which they have no control.
No it's not, it's the same problem that market economies have been dealing with since the invention of the printing press... the solution was a legal and financial concept known as "copyright".
I remember the battle in the 90s. Slashdot vs. the MPAA/RIAA. The "good guys" who were for "freedom of information" and the "bad guys" who wanted to limit what we could do with our technology and make it illegal to circumvent copyright protections...
...and then the "good guys" won! DVD John, Napster... information must be free!
It's quite clear that anti-circumvention laws were not the best approach (they should have put those resources in to things like SoundExchange much earlier), these negative aspects of copyright have unfortunately dominated the conversation since.
Fast forward a decade, and what do we have... well, we're starting to see what happens when you get rid of treating intellectual property as something that can exist as something to be bought and sold in a market economy.
It's not like the whole concept of private property or ownership went away. For the people who own stocks in Google, Apple, Facebook and the other billion dollar companies who deal in distributing and organizing digital media, they've made plenty of money.
Open-source software is funded by corporate coffers. The people who make the software don't get to own anything while the corporations get to use these freely created tools to increase their share values. The vast majority of open-source developers are on corporate payrolls.
Not only are developers giving away their intellectual property, but so are the majority of individuals who the create digital media that drives the eyeballs to the advertisements. The "creative commons", where everyone freely distributes their creations in exchange for comments and clicks...
It is quite clear that digital media does have value. If Google had nothing to index, or if Facebook had nothing to share, there would be no one using these services, and therefor no one to sell any advertisements to.
Yet we have no way to price how much this media is worth. It never enters a marketplace. It is never bought and sold. I'm not sure what kind of creative accounting they have at places like Twitter but I'm sure they don't have a good idea of their actual business inputs and outputs. There's a giant air-gap between users creating content and advertisers buying space next to it.
Because of the fundamental economics of refusing to considering digital media as intellectual property in a market economy, the only profit model is to make the services free and then degrade the products through adding noise to the channel. Now product designers have to actively fight with their organizations profit structures. The result? Crappy and bloated products with crappy content, a plague that has been sweeping web publishing that seems to be increasing by the day if the tech blogosphere is used as a thermometer.
Advertisements do not pay for content. They pay for hosting, distribution and employee salaries. They pay to keep the lights on in Mountain View.
All sorts of hair-brained schemes are dreamt up to try and deal with it, but none actually treat digital media as property. Kickstarter is about the project. The people who support a project are not investors. They don't get equity or ownership, they get t-shirts. Patreon is about the artist. The people who support the artists don't get equity or ownership, just a "worthless" digital media file. Artists are told to sell merchandise and tickets and in-home performances and anything and everything under the sun other than what they are best at making, an absurdity that defines the early 21st century media landscape, as if somehow we can fix this problem if we just convince enough people that they need a closet filled with hundreds of "I supported an artist" t-shirts.
The only place where intellectual property is still honored is with the old giants of the 20th century, the book, music and moving pictures industries. These industries were built on top of the foundations of copyright. Artists create, own, and put their property on an actual marketplace. Companies who own IP and treat it as such on their books have a clearly defined view of their "content creation" accounts as being profit-makers. Speculative investment through publishers creates an incentive structure that aligns itself with the rest of our market economy.
The digital music industry has already ceded the battle to IT. When Sony negotiated with Spotify to put their back-catalog on this new service, they had the presence of mind to know that what really mattered was equity in Spotify. Their recordings and publishing rights were "worthless". A rival service named Tidal offered it's artists ownership in the corporation as opposed to contracts related to their IP for the same reason. Seemingly out of nowhere we're seeing a drastic increase in vinyl records, but I would argue this is less a hipster trend than a return to an economics model where the music itself is given value.
What I find interesting and ironic is that an industry built on information has not only conceded that information is worthless but celebrates this fact. Then we dream up things like "basic income" in order to create a world where the 99% who don't own anything can survive. We're all well aware of the relationship that labor has to capital. We're all well aware of the economic reality of scarce physical resources. In the real world, not everyone can own something. However, anyone has the ability to create intellectual property out of thin air and benefit from owning it like any other capital.
Somehow we blindly believe that things like basic income seem easier to implement on a societal level than accounting for ownership of digital media. We'd rather throw private property out the window then deal with it's complexities. Haven't we been here before?
---
I'd love some feedback on this stuff and I know some of these ideas are half-baked, but everywhere I look I'm seeing the same root issue... we've decided to give up on hundreds of years of treating intellectual creations as property that can be bought and sold in a marketplace, and doing so we've made it very hard for people who make digital media, be it a software library or a song, to survive in a world built on top of private physical property.