Open-source excursions: Views from the mobile stack

Exploring the emerging possibilities for open-source mobile hardware and software.
Part of
Issue 18 August 2021

Mobile

From web technologies to programming languages to operating systems, you can find an open-source implementation for (almost) anything. But the mobile landscape is a notable exception. While there are some open-source success stories, Android being a massive one, only a handful of major companies rule hardware and software innovation for the devices we carry in our pockets. Together, Apple and Samsung hold over 50 percent of the world’s market share for mobile devices, a figure that underscores just how few dominant players exist in the space.

Numbers like these might leave you feeling somber about the overall viability of mobile open source. But a growing demand for better security and privacy, among other factors, may be turning the tides, and a host of inspectable, open-source solutions with transparent life cycle processes are emerging as promising alternatives.

Started from the bottom (of the stack)

The magic of smartphones starts with the hardware. In addition to the system-on-a-chip, mobile devices include components sourced from an established set of manufacturers: gyroscope from here, camera lens from there, throw in a display, and wham!—you’ve assembled a phone. 

While the scale and efficiency of this supply chain reduces the cost of mobile hardware for both companies and consumers, it makes establishing a robust open-source ecosystem for mobile hardware a challenge. After all, most people aren’t interested in building their own phones or messing around with mobile hardware’s bells and whistles. The open-source community thrives on demand. People seek out (and create) open-source software to solve problems, speed up development, and invigorate their apps with new ideas. That same level of motivation just doesn’t exist for mobile hardware.

Which isn’t to say there’s no demand. As smartphones have become essential to everyday life in many places, concerns about their privacy and security have come to the fore, from how ads track us across apps and websites to the amount of personal data applications can access and who they share it with. Many smartphone users now think critically about how software companies handle data security and privacy, and some have taken their concerns right down to the hardware stack, seeking to augment their devices with features like the ability to disable camera or Wi-Fi modules. 

At the moment, Purism exists as one of the rare open-source hardware options on the market. Purism provides a suite of open-source hardware (and software) products, including a mobile phone, that implement the security- and privacy-minded open-source PureOS operating system. Fundamentally, though, all existing options for cellular modules on mobile devices are proprietary, which constrains the ability of open-source hardware to flourish. (Even Purism uses a proprietary implementation.) While you can produce an open-source specification for parts of the integrated circuit, it’s almost impossible to build up the schematics for the cellular networking controls. 

For the sufficiently committed, open-source hardware might present an intriguing challenge, but open-source software is where the greater promise lies.

Now we’re here

Sure, there’s a wide world of closed-source mobile software out there, but there’s also a rich assortment of mobile-friendly web software enabled by open-source technology.

One of the most popular open-source mobile apps is the encrypted messaging app Signal, which is published under an open-source license and managed by the nonprofit Signal Foundation. Along with the open-source messaging app Telegram, Signal has garnered attention as a more privacy-focused alternative to apps like Facebook Messenger. The browser Chromium and the mobile game 2048 are other noteworthy examples, as well as proof that although open-source apps aren’t the norm, they can be widely adopted and popular. For example, over 65 percent of mobile traffic flows through Chromium-based browsers.

To me, the most interesting developments in open-source mobile software are happening at the developer-facing level. These technologies are often designed to make it easier for engineers to build mobile apps, rather than to give consumers the ability to inspect and understand the codebases of the apps they’re using. Apache Cordova, for example, allows developers to build apps leveraging existing web technologies like HTML and CSS. Though Cordova was released a decade ago, it’s still used today, and its approach to using web technologies in mobile contexts is eminently popular—see React Native. These frameworks have also generated a vibrant ecosystem of open-source libraries, including UI kits and authentication APIs designed to increase developer velocity when building mobile applications.

Despite the many open-source technologies available to help build mobile apps, there’s plenty of room to grow in the user-facing space—especially as more people recognize the value of having open-source and open-governance applications that can better safeguard their personal information. That growth isn’t likely to extend to the hardware space, where the cost of building open-source implementations isn’t as rewarding for developers or users—though we may start to see more devices that allow people to choose individual hardware modules from a variety of providers. I’ll be eagerly watching how this space evolves, as open standards present developers and end users with increasing flexibility and control over the little computers in their pockets.

About the author

Safia Abdalla is a software engineer working on open-source technologies at Microsoft and an open-source maintainer on the nteract project. When she’s not working on open source, she enjoys writing and running.

@captainsafia

Artwork by

Mercedes Bazan

behance.net/mercedesbazan

Buy the print edition

Visit the Increment Store to purchase print issues.

Store

Continue Reading

Explore Topics

All Issues