What’s special about these apps isn’t just that they are fast and native apps instead of glorified web apps, that they are all Open Source on GitHub, or that they are custom-tailored for elementary OS instead of being cross-platform ports. What’s really great about them is that there are several, high quality productivity apps for designers, developers, students, and more. The developers publishing their apps through AppCenter Dashboard continue to make elementary OS more useful to more people each day.

But, how do we get from 40 to 100s of thousands of apps?

As Matthew explained in his talk, mainstream operating systems like Android, iOS, macOS, and Windows have not just a handful of useful apps, but 100’s of thousands. In order to build a platform that can grow to that scale, he presents 5 challenges:

An initial user base to give developers their appreciation and money. Since elementary doesn’t collect data on our users, it’s a bit of a challenge to convince developers that there is a significant audience available to support the development of their apps. Development is costly and developers need to be able to afford to make a living. We’re relying on our users to prove to the developers that have taken a chance so far that their trust will be rewarded and that those developers will be vocal about the support they’ve received.

A Great developer platform. Building a great developer platform starts with an enticing website and thorough documentation. elementary also provides a comprehensive API reference and human interface guidelines. We’ve always aimed to cut through the confusion of developing apps on Linux and instead we provide a “One True Development Path” with Gtk+3 and Vala. Features like Gtk.CSS make developing sexy apps easy and familiar, while platform libraries like Granite provide drop-in solutions for common design patterns and complex widgets.

Scaling packaging. In MPT’s talk, he explains that traditionally a Linux distribution has a community of 100’s of people packaging apps and asks how that could be scaled. But elementary OS isn’t a traditional Linux distribution. We’ve provided a simple packaging template and documentation that has already made it standard for developers to package their own apps when publishing through AppCenter Dashboard.

Publishing time. Traditional Linux distributions tend to suffer from having either stale, outdated software or an unstable, rolling platform. elementary OS strikes a balance between the two with a stable platform and an easy way for developers to publish their apps in a timely manner. New apps and updates for existing ones are usually reviewed in just a few days instead of the months it may take to get your app into a traditional Linux distribution.

Easy installation and payments. We finally get to AppCenter itself, but I’ll add a third requirement here: discovery. AppCenter isn’t just a fast and easy way to get and pay for apps your already know about. It’s been designed from the beginning to help you discover new apps and connect with indie developers that you haven’t heard of before. We have a home page that regularly changes and always features the newest apps, plus features like link sharing to make it easy to tell your friends about your favorites. More discovery features are planned or in development like an easy way to find more apps built by a developer you like.

So, is elementary OS useful?

Our developers and our users have a symbiotic relationship. Each relies on the other to grow elementary OS and make it more useful. In our first few months, we’ve published some really great apps to help people work and learn. We’re looking forward to the future where we’ll hopefully see developers build more of these kinds of apps, plus new ones to help us play and connect with each other. We’re incredibly grateful to the developers who’ve already decided to take a chance on a new platform and to our users who have compensated them for their hard work.