One of the reasons I’ve remained enamoured with the computing space is the potential for software to do amazing things. It’s one of the few subjects in which a single person can formulate a vision, undertake its design, and carry out the implementation of a complete, functional system, a system that can change the way people use technology to solve real world problems. However, the software developer is faced with a pretty big challenge.
How does that developer, with near-zero capital, get his application into the hands of people who might find it useful? In the past, it was nearly impossible to reach more than a handful – you could host the application on your personal webpage, and hope people find it. If you were giving the program away for free, you might get a few nibbles. If you were charging for it, you’d have to think about a secure payment system (PayPal, perhaps?). You’d almost certainly get very few users, unless you were discovered by some larger publication.
In fewer words, it was difficult as hell to make any money from your software development efforts.
And that’s why there were relatively few indie developers making anything decently worthwhile. The distribution method for most successful software has been shiny media in retail stores, or bundled on OEM computers.
Say what you want about Apple’s closed application ecosystem on the iPhone OS, it opened up the floodgates of eager developers who had amazing ideas but no way to show the world their creations. More importantly, the Apple App Store provided these individuals and small organizations a way to effectively monetize their work. If necessity is the mother of all invention, but then (monetary) incentive is probably the father.
It is my firm belief that the App Store is a purveyor of innovation, not in the platform itself, but the applications that are enabled by the model. No longer does a developer question whether they can make some money from a great idea. Don’t read this wrong. The App Store model doesn’t guarantee earnings from just any idea.
Many other software platforms are either in the process of, or have already imitated the App Store model. It’s unreasonable to assume the developer of any platform is going to be able to implement or even determine all the potential use cases for their software system. The centralized application store provides a community that creates its own demand and provides its own supply. It’s a circular effect, and creates new scenarios in which that software system is useful to the masses. The system that emerges is significantly more agile, not relying on a single entity to provide functionality, and even more so than an open platform, with no proper distribution method. Furthermore, many of the applications that come about arise from grass-roots movements, evolving with community input. These new use cases help sell the devices, as Apple has shown.
Whether that application store needs to be the only source of applications is debatable. I contend that it is the small minority of developers that would actually take advantage of 3rd-party distribution, but the possible issues of code quality, security, and dilution of one key characteristics of the application store, singular, centralized repo, outweigh that advantage, for less general-computing platforms such as the iPhone and iPad.
Long story short, the Apple App Store has empowered individuals and small organizations to create software solutions to their problems. These applications were previously undiscoverable, and thus lacked the monetary incentive necessary to foster this sort of interest in development by non-traditional developers. Whether the closed-platform model is the right one is contentious, but it’s hard to argue against the innovation that exists in 140,000 applications in the Apple App Store today.
The next step is to bring the development learning curve and overhead down even further. There are about a billion computer users who have a better way to do something with their computing devices, but can’t turn those ideas to reality.