Many software developers, like myself, have a difficult time finding the right balance between respecting the rights of the users of their software (such as releasing the source code under a license like the GPL) and earning a living developing that software.
Over the last several years I've tried quite a few different mechanisms of earning a living wage by developing, and distributing, open source software: donations, pay-to-download, software feature bounties, fund-raisers...you name it, I've tried it. And all of these attempts have fallen flat on their faces.
Yet one thing consistently confounded me. That very same software sells like gangbusters when it is sold, closed source, under a shareware model. It typically has a big, extremely happy user base and great sales numbers. So how could it being open source possibly not work out exceedingly well?
But there's one thing I'd never tried - simply selling my software just like it were closed, commercial software...but with the source code simply available for those who want to grab it.
It’s a simple notion, really. An obvious one. One that is so obvious I feel monumentally stupid for not having tried right from the start.
Release software in a “standard” way – say, shareware, for example. Then put the source code up on GitHub to allow the tinkerers and developers of the world to gain access to the GPL licensed code. This would mean that the freedoms of the end users are being respected while the traditional revenue models of closed source software development are being fully utilized.
So, I've started doing exactly this with my software, Illumination Software Creator. If you look at the website you'll notice something: It looks like any normal commercial, closed source software website. (I present this as just an example of how I'm going about things; feel free to ignore my software if you like...it is pretty awesome, though.)
Now, you may ask why I'm not highlighting the open source-i-ness of the software. This is something that I've thought about a great deal – how to present the open source nature of my software – and I've come to a few conclusions.
The first is that there is a stigma associated with open source, which is both good and bad. And that stigma is that the software itself must also be free of any cost. When people know that source code is available, they assume they can grab the application without paying a dime for it, which, most of the time, really is true.
The second, and this stigma is far less fair, is that open source software tends to be inferior to closed source software. Of course, this is simply not true. But for a variety of reasons many people believe this.
The combination of these two issues, I believe, causes many to pass up quality open source software. And that is a shame.
So I have elected to continue releasing the source code, but simply not make a big deal about it. It's there. Grab it if you want it. But the main website for my software, you'll notice, makes no mention of the source code. This is entirely on purpose, so as to avoid those stigmas.
Now, will this system – open source Shareware – work as well for the software I build as being closed source and Shareware? I truly believe it will. In fact, I have a hunch that it will work even better than ever as it is simply taking a proven system for deriving revenue (Shareware) from a proven piece of software (in this case Illumination Software Creator) and improving upon it by providing additional guarantees and freedoms to the end user via open source and the GPL.
I'll do my best to post updates as things move forward. In the meantime, I'd love to hear your thoughts on this sort of model. Do you like it as an end user? Do you feel, as a software developer, that this would work for your projects? Leave your comments below.