Open Source products have as many followers as opponents. In this article, you don’t find any essay, who have right. I think the suitability of Open Source is best determined on a case-by-case basis. On the internet you can find many articles about pros of Open Source solutions. Really often there are arguments like: no costs, rapid development, free updates and so on. Definitely these are the benefits, but are generally poorly established – the context is missing. Let me give you an example. Open Source ERP system, you may think – great! I can have useful tool for free, but wait… is it really for free? What about implementation costs? What about support? What about updates? What about new dedicated features? In some cases, this Open Source product may be much more expensive than commercial one.
What I want to tell you is that you have to be very careful before you choose between Open Source and Closed Source products. You have to get familiar with the benefits of both solutions. Mobeelizer’s SDKs are distributed under GNU Affero General Public License. In this article, I would like to show you benefits of fact that Mobeelizer’s SDKs are Open Source, but it won’t be a simple list of them. I would like to give you real world examples how to reap this benefits.
Really often Close Source solutions updates are expensive. Imagine that you are using stable version of some SDK and in next release there will be 10 new features available. For your business only one of them is important, but you have to pay for all of them. Mobeelizer updates are always for free. You can download version of your choice and modify it anytime you want.
Bug fix waiting time
Mobeelizer provides free support for all of the SDKs, if you find bug that blocks the opportunity to further develop of your software, you can report it and we will fix it as soon as posible. Here is the great benefit for you. You don’t have to wait for next iteration to get the bug fix. You can download the code from github repository and build it just by yourself. Any extra time won’t be lost. Because we are using github to share our code our users can also fix bugs by themselves and simply send us pull-request.
Vendor lock-in problem
Who make the decision about next release? You whether your vendor? Imagine the situation when you found some bugs in bought SDK, you reported them but your vendor delays fixing them. You have to release new version of your product but you can’t. You also can’t resolve issues by yourself because SDK is closed. Of course you can use SDK from different Vendor in that case, but what when engine of your solution base on that SDK? In Mobeelizer that problem is not becoming because SDKs are open source and you can change for example just Rest Client and still using OR Mapper. You can also fix bugs by yourself, you are not addicted to Mobeelizer support team.
This benefit is for you as great as for Mobeelizer. Because Mobeelizer SDKs are Open Source, many developers, who in the future may not be Mobeelizer clients, are analyzing usability of SDKs. What is it mean for you? More tests equals better quality. This kind of testers have also excellent impact for usability improvement.
Scalable in both directions
Imagine that you have just started using Mobeelizer. You downloaded the latest version of our SDK. While developing, you noticed that you don’t use features from last release, which weights pretty much. There is no problem to downgrade the version to save a few KB of application weight. And remember, it does’t cost at all.
Licences do not limit or restrict who and how can use the software
Mobeelizer’s SDK for mobile platforms was created to support differential synchronization using Mobeelizer HTTP API. Inside the SDK there are a few technologies used. There is OR Mapper based on XML mapping, there is also Mobeelizer Rest API client. You can use this SDK as you want, there is no problem to use it just as OR Mapper or just as tool to send data to the cloud. It is your choice and Licence permit you to do that.
On Mobeelizer github profile there is a few Open Source project for you. You can find there SDK for three most popular mobile platforms: Android, iOS and Windows Phone 7. There is also Java SDK which you can use for web applications, desktop applications or any others that base on Java. If you need to create your own SDK in any other technology you can also find there real world example how to use our HTTP API.