Opinion - OpenSource Projects & Funding

There is an article/essay by Paul Kulchenko, an amazing developer that has recently been focused on his latest open source project - ZeroBrane IDE a Lua IDE and Debugger. The advantage this has over other IDE's is that to my knowledge as of today this is the only Lua IDE that allows for live coding.

The original article can be found here [http://notebook.kulchenko.com/programming/tragedy-of-the-commons-and-open-source-projects]

There are some interesting points that Paul raises and all in agreement. While Paul ran it as an experiment, it is the brutal truth. Let's take a look at this issue a couple of years ago

Actually a couple of centuries ago, access to education and knowledge was not for all, It was the privilege of the rich (which ever country you want to look at) The commoner was deprived of education of any manner. The scriptures and ancient texts were the sole property of a select few and the interpretation was entirely up to them as no other person could read them or interpret them.

In these times kingdoms would send their scholars to the places of learning to bring back the knowledge they learned.

In many places there was a secondary language, almost a dialect that emerged and the commoners were allowed to be educated in those common languages. While the ancient languages were reserved for the privileged.

Slowly the society thought that education was for all, it should be imparted to all citizens and that would help elevate the society as a whole.

This changed the way people looked at things and instead of sending their scholars to learn, their scholars were send out to teach their knowledge to others.

Fast forward a bit, The only way to gain knowledge soon became via the medium of print and personal interactions. There was no google, no bing, no alta-vista, in fact there were no computers either. So all knowledge was passed either via rote or speech.

Come closer to the 20the century, home computers and main frame computers, still the medium of accessing information were books, in fact there were more books published on the topics of programming and gaming than ever. The books were in the range of £6 - £9 and the games which came on cassettes were in the range of £9.99 (not sure about the American pricing, trust it would have been similar)

The way it worked at the time was computer manufacturers would make their money on the hardware (no updates, no nothing) only newer models or expansions like microdrives, floppy drives and IDE interfaces for HDD, light pens, speech synthesizers, printers etc
The average cost of the machine at the time was about £200-£300 and if you purchased about 20-30 games you have already exceeded the cost of the machine.

Take the example of the XBox or the PS3, you can get the console for anything between $150 to $300 but each new game released costs you $50 or over, sometimes even in excess of $100, so buy 3 games and you have already spend more than the cost of the console.

In both the cases, the manufacturer gains nothing, the more number of games that are sold, greater the popularity of the console, the profits are all made by the companies making games for the consoles. The manufacturers actually make their money licensing their development tools to these companies (which are quite expensive)

Now focus on the latest gaming devices, the mobile devices, average cost $200 - $700 and the games that you get for this platform are usually FREE or in the range of $0.99 - $4.99. Plus the manufacturers get a 30% off the sale proceeds of the games.

So where is this article really heading and how does it connect with the original article by Paul?

The bottom line is that while a lot of developers intend to do good by sharing or giving back to the community what they have learned in the form of Open-Source projects, and many large corporations selling their apps for free or $0.99 have in more ways than one pampered or rather spoilt the buying habits of the consumer. An average consumer might have spend over $1500 on tablets and phones but would not spend the $0.99 to get a game. While Angry Birds and other such apps are available for $0.99 an Indie developer cannot match the million dollar investment of larger companies and teams. While the larger companies break even despite their low priced, high investment games, the Indie is left to struggle with the $0.99 price. In some very rare cases they do get that attention and exposure and shine through.

In a similar fashion, Open Source has spoilt the developers from supporting other developers. The most important point of them all is Time and Resources. While every developer (existing or wanna be) understands that their pet project will take hours of efforts to produce their labour of love, an app/game but they expect that the pieces to this puzzle should be available to them for nothing including great service and support. This is perhaps one of the reasons why a lot of open source projects are now slowly moving to a closed model. Of the various options that Paul has mentioned in the article, many are not valid or relevant.

1. Paying for support
No one pays for support any more, would you pay the hourly rates of a development team for a component that costs less than the hourly rate? Gone are the days of the Enterprise development where AMC's made up for the bulk of the revenues, they might still be valid in the Corporate contexts, not in gaming or development.

2. Paying for features
Developers expect the source code to manage it themselves, so if any features are expected, why should they be paying for them if they can add those themselves? That is one reason why you can find several implementations to solve a single problem.

3. Corporate Sponsorship
This works in some cases and doesn't in many, when an open source project is sponsored corporately, it can be considered as the demise of the project in most of the cases. However there are positive cases like VirtualBox and Oracle, Cocos2D and Zynga and then there are also the others where open source projects are now being sold, like the QuickTi2DEngine which has been taken off and is going to be made available commercially.

4. Paying for bugs/features
Customers do not want to pay for bug fixes, after all if they paid for the software, then it should be bug free and if they got it free, then it should have some quality. While many forget that in the end it is all software and many times the bugs are not because of the developer, it could also be because of the framework, or the OS. If you had a map component and it displayed the wrong location on iOS6, it is not the developers fault, it was Apple's. If you might have noticed that the Date Picker has an issue with the date and time being off by one day, again an iOS issue not the developers if they used a UIDatePicker and nor would the customer pay for that being fixed.


11. Crowdfunding
This is an option, but the outcomes of this would mean that the software would automatically become closed source as it would be wrong to offer it as open source to everyone that did not support the project, a strange way to reward the ones that did not participate. This however would give the idea of how many are interested in this and help think of a sustenance model in the future.

Another thing to note about funds is that even on Kickstarter, a portion of the funds raised are retained as fees, then taxes are applicable and further to that bank fees and charges, currency exchange rates (if you are obviously not in the USA)

The other option that saddens me when I see that on many sites is the Donate button. It saddens me because money raised are not donations as far as many governments are concerned, it is considered as income and after the Paypal fees, exchange rates and taxes, it is not worth much really. Add to that the fact that the amount donated would not be in 3 digits or more (not counting the decimals)

While for Paul this was an experiment and he has shared his outcomes, one thing to note is that whatever way you look at it, each developer spends time, something that is precious to all and creates something, in the heart of hearts that is supposedly the golden ticket that will grant them the financial freedom that they were seeking. I am yet to meet a developer/producer that says I am creating this product with the intention of it failing or that I do not want it to generate any revenues for me.

So summarising this,
If there was no internet, you would have spend time and money on books, or attending classes learning development. It is thanks to the Internet and a whole lot of Open Source code, forums and sites that people can learn, in fact 13 year old can not only make apps, but also create training videos on you tube on how to program, etc. This while it seems like a wonderful idea in the short term, is going to cause a massive ripple in the future, No one will want to pay anything anymore for their software as they will wait for some open source free option that they can use as a base and tweak. The money that was being diverted to developers is now being diverted towards hardware. The money saved from not paying for apps and software has enabled that money to be spend on more hardware.

The break point will come and soon, where there will be no more free or open source and it is then when it will reach the days when software will be expensive as ever. There are a lot of developers working on tools to facilitate development, it is an ever growing list.

Even the case of the product that stemmed this article, ZeroBrane IDE, it is written entirely in Lua and is open source, in fact over the last month and half, I have seen the changes and discussions between Paul and the community where ZeroBrane now works with Gideros Studio and offers Live coding, as you type your code, you can see the results in the simulator, no need to wait, compile, upload, etc, Instant on the change of the line of code in the IDE. Developers would kill for such powerful functionality, and the best part is that both ZeroBrane and GiderosStudio are Free (Gideros with Community License) in comparison to many of the commercial offerings.

To support the developer in continuing what they are doing, you can help in either financial ways (always helpful) or in promoting them and the product to those that could help them financially. This is the new economy and we can pay in either of it's coin, money or networking.

If you are a developer that works with Lua, head over to the ZeroBrane site [http://studio.zerobrane.com/], download the IDE (it's free) and you can also download Gideros Studio which is also free with the community license and give Live Coding a try [http://notebook.kulchenko.com/zerobrane/gideros-live-coding-with-zerobrane-studio-ide], if you like it and develop apps with it, give them a shout, buy their products.

On a closing note, we had the local library bring out a lot of their books (generally duplicates and outdated ones) and put them up for people to take with them and if they wanted, they could donate to the Mayors Christmas Tree Appeal, all monies raised would be used to get essentials and be distributed to the needy. It was sad to see a lot of people dunking books into shopping trolleys and then handing out a gold coin for a trolley full of books (Gold Coin = $1/$2 in Australia as these are golden in colour [http://www.australian-information-stories.com/australian-money.html] if you scroll down after the notes)

Please help with your hearts and think of an appropriate value, be generous and help, who knows that might come back positive in some ways to help you out. After all you might base your work on these tools and information and hope for your big check to arrive.


Popular Posts