Why in the World Have I Taken on this Project/Campaign?
This is a question I have been asked by others and by myself over time and especially recently. I am not always sure how to answer these questions, but I can tell you a little of how it got to this point:
Quite some time ago, I was introduced to Octave and its usefulness. Then, not much later, I saw the coming of web 2.0. I thought it would be cool and useful, and even did a proof of concept, to create a decent dynamic web interface with Octave running on a server. There were various problems with this implementation and I had no lasting drive at the time to overcome them fully. I was doing it only for myself and as a technical learning experience. Once I got it working to some level and now faced issues like how to handle scalability and support, it was no longer interesting.
Later, I did a lot of traveling including visiting several developing countries. During those travels, I got really sick twice. Once with malaria (plasmodium falciparum) while camping in East Africa. Later, I got some sort of "post infectious syndrome" where my immune system didn't stop fighting even though the vector that caused it to engage was long gone, probably as a result of some time spent in India. While I traveled, I met amazing people, but saw saddening hardships. Whether it was due to what I had seen or how I personally experienced some of the pain that befalls people in developing countries, I began to think about how I could help others seriously (amongst other serious thoughts...like fatherhood).
First, I thought about going to medical school and trying to help people out in that way, but then I started wondering how can I help people using the skills I already have. I remembered back to seeing Masai tribesmen in the Serengeti, or Indian villagers on their cell phones and I realized that if I created a useful mobile application, then I could reach and help the world in some small but meaningful way. There is a whole world of people without PC's at home and many of the useful tools we have for PC's are not on the most widely used mobile OS's and markets. That felt like somewhere I could help. This brought me full circle back to the project I had worked on previously.
While I recognize that people don't need Octave like they need clean water, I think having an application that can be used as a simple calculator or a complex numerical computing and analysis environment will help lift some up, so that they can help others. I also think that making sure this application is free, open-source, and available on the most popular mobile OS is key to having maximum impact. Also, I know, based on inquiries I have already received, that others will port more functionality based on the techniques/code used as part of this project.
So, this time, with new found drive, I have not stopped. I started down a non-ideal path due to limitations of using native code in Android applications at the time and used jmathlib to start, but I am now quickly moving towards getting Octave and gnuplot fully working (but not refined - which will not be as quick) on Android. But regardless of the audience and regardless of the free nature of the application, it should be done right. Part of doing it right is polishing the application and supporting users. This is why I started the campaign. I want to get everything in a good place and provide proper support for long enough that a user and developer community forms around this application. After which, this will be maintained and supported by the community (of which I will still be part of) and can thrive into the future without significant funding.
If you are a backer, comment on why you support the project.