Tonido: Q and A
I thought this would be a good place to do a mini faq on some of the general comments and issues raised by various people around the net.
1) Is Tonido about Cloud Computing on your Desktop?
No. I don’t think we ever told anyone in any message that Tonido is about Cloud Computing. For some reason, blogs chose that as their headlines (cloud being the hot topic of the day). We can say that Tonido is an alternative to web apps and is another way to access, communicate and collaborate directly without data flowing through a thirdparty.
The whole cloud notion is nebulous at best and confusing at worst. It is used interchangeably to mean different things, so we don’t want people to think Tonido is somehow related to Cloud computing.
2) What is the motivation to build Tonido as a platform?
If you read my previous blog on the future of software apps, you will agree that the future is clearly browser based. We wanted to build an alternative to web apps hosted elsewhere (where you will end up losing control and your data) . And to do that requires thinking a little bit more than just building a bunch of apps. So we took a lot more time, put a bit more thought into it and built it as a platform where apps can reuse the common components and don’t have to reinvent the wheel once again.
3) How do I trust the Tonido platform?
The short answer is that the Tonido platform SDK is becoming open source. I really can’t see a better way for gaining trust. We also plan on allowing users to run their own Tonido DS server. When that happens, your Tonido instance is truly private.
To add to that, Tonido as a product and its code, before release was audited by a security audit company for security issues.
The longer answer is that trust usually comes based on experience with a particular product or company after a while. So you just might have to look at the track record of the people behind Tonido etc and the products they worked on before. If you can trust that then you can trust Tonido.
4) Why is there no download for my favorite Linux distro? Mac OSX on PowerPC?
In making the decision to go with 3 main OSes, we had to cut some corners. We picked the best option in all three and went with them. We figured the important thing is to release it and then slowly getting it right. Besides, how many products do you know that release on all 3 OSes on day one? We are actually proud that we pulled it off. You should see the number of machines we have to get it going. (topic for another post)
5) Why is there no feature X yet or feature Y yet?
The simple reason is that we wanted Tonido to go out and evolve based on user feedback and user usage patterns. We wanted feature X and feature Y to be driven by strong feedback from our users. So by just asking us why something is not there, you are actually helping us make a decision on prioritizing and implementing those features. So be vocal, complain and let us know.
6) When you say Tonido Platform is open source, does it mean the apps that are being shipped with it?
No, currently only the Platform is open, which means that developers can build new apps on top of it easily. The individual apps shipped currently are not open source.
If third party developers want to build great Tonido apps and want to get paid for their efforts they should be. If they want to release it open source they can too. We didn’t want to limit the type of apps only to be free ones.
7) Why does the Tonido Platform require apps written in C/C++/Lua and not in Perl, Python, Ruby, PHP?
The overriding consideration for Tonido was that it should be light weight. We could only do that with C++. 5 apps now weighs less than 10 MB download, less than 20 MB in memory. Trying to use any other language required a lot more baggage and setup. Besides, I am not sure how easy it is write a P2P library using other languages (like PHP). Finally, C++ is a language I love and what I know best and it allows me to be 10x more productive than anything else. (even if I have to type 10x more lines than perl to get the same thing done). So even though C++ may not be the best language, it certainly allowed us to build Tonido in half the time it would have taken otherwise.
Besides there are a lot of C/C++ programmers out there who may not have transitioned to the whole web application development, we are hoping many of them do find Tonido Platform easy to to build apps on top of.
Finally, just because C/C++/Lua is available today doesn’t mean that is the only environment that will ever be possible. We are looking at embedding Python or PHP inside Tonido. So look out for that. Having C/C++ being the core of Tonido allows all kinds of language bindings tommorrow, so it is definitely a little limiting today, but not tomorrow.
Have more questions? Please post in comments and we will answer in Q and A part 2.