Can Mobile App Development and an Open Source World Coincide?

A Look Inside the Department of Homeland Security’s Mobile App Development Playbook
May 27, 2016
In Terms of Forward-Thinking Features, Don’t Forget About Push Notifications
September 29, 2016

Open source development is the idea that the source code for a particular piece of software should be freely made available to anyone with an interest in downloading it. Instead of maintaining tight control over the quality of a finished product, your team releases their version of an app and then unleashes it on the world. Users are then able to customize, adapt and change as needed, either improving it for their own personal use or for all users or both at the same time. Open source has been commonplace in desktop software development for many years, but is only just now starting to make waves in the mobile app development space.

The Benefits of Open Source Development

Open Source MobileOne of the biggest benefits that an open source ideology brings to the table in terms of mobile app development is one of security. In essence, by making the decision to make your source code freely available to all, you essentially have a potentially limitless number of developers all working towards the same goal at the same time. This in turns makes security issues and other bugs more likely to be discovered, which in turn creates a far more secure and ultimately superior end product.

This idea can perhaps best be summed up by a quote from Linus Torvalds, the creator of the Linux operating system. He famously said that “given enough eyeballs, all bugs are shallow.”

The benefits of this decision don’t end there, however. The quality of the finished product will also be superior thanks to the presence of so many more developers extending outside the boundaries of your original team. Customizability, freedom and flexibility are also often seen as primary benefits of open source development.

The Challenges of Open Source in a Mobile World

The challenges of creating custom mobile apps from an open source perspective, however, essentially come down to control. This is true in terms of both how an app is distributed and in terms of who the end users actually are.

In terms of distribution, to say that it’s difficult to get an app reviewed, approved and made available in the iOS App Store is something of a dramatic understatement given Apple’s notoriously rigid requirements for doing so. Open source makes this challenge harder, as users cannot install their own “unapproved” software without first jailbreaking the device. In the mobile space in particular, this adds another lengthy potential delay when it comes to getting an app to market, as all open source development activity would essentially still need to be run through your own in house staff in order to get everything ready to submit to Apple.

Another major challenge comes by way of the people you’re actually designing an app for. If you’re building a custom mobile application for a particular business that is designed to work with their own existing systems, open source isn’t necessarily going to be an option (even though it does have a number of benefits, as previously stated). Businesses won’t necessarily want just anyone playing around with their IP, which is more or less exactly what making a project open source would do.

At the end of the day, open source development as an ideology brings enough unique benefits to the table that it CAN absolutely coincide with a mobile app world. Presently, there are a number of roadblocks that may make this difficult to impossible depending on the situation. One thing is for sure, however: we are consistently moving more and more towards open source as a standard and in five to ten years from now, the quality of mobile apps in general will be all the better because of it.

Image designed by Freepik