Jamie Bennett, of Canonical, considers software’s role in creating new business models around IoT hardware, with the use of snaps.
Cometh the hour, cometh the age of the Linux developer. It’s no secret that some of the brightest minds in artificial intelligence (AI), machine learning, and the Internet of Things (IoT) honed their skills on Linux.
The nature of open source is such that it allows developers to innovate at a greater pace than any closed ecosystem would allow, minimising constraints and fostering a space ripe for collaboration. And yet, while a productive environment for individuals, businesses as a whole are yet to capitalise on such a rich and diverse user base that currently stands in the tens of millions.
Flexibility versus disparity
Why so? Because flexibility in one sense tends to promote disparity in another.
The fragmentation of Linux over time – from Ubuntu and Fedora, to Debian and Mageia – may have allowed developers to try and test the latest technologies freely, but it became much more difficult for businesses to land on a singular software strategy that delivered tools to a willing audience.
As Linux scaled, the ability of the community to package applications on each distribution waned.
This challenge, however, is not without reward if solved, and the answer may just lie in an innovative and universal packaging format by the name of snaps. Not only can snaps revolutionise software architecture to target multiple Linux distributions in a single build artifact, they also hold the potential to bring a new layer of profitability on top of hardware platforms.
Arrival of snaps
Snapcraft enables authors to push software updates that install automatically and roll back in the event of failure.
The likelihood of an errant update breaking a device or degrading the end user experience is, as a result, greatly reduced. If a security vulnerability is discovered in the libraries used by an application, the app publisher is notified so the app can be rebuilt quickly with the supplied fix and pushed out.
As application packages bundle their runtime dependencies, they work without modification on all major Linux distributions as well as being tamper-proof and easily confined.
A snap cannot modify or be modified by another app, and access to the system beyond its confinement must be explicitly granted. Precision definition, therefore, brings simpler documentation for installing and managing applications.
Taking into account the automatic updates, which eliminate a long tail of releases, applications perform more intuitively for both the publisher and end-user.
Snapcraft also gives managers the tools to organise releases into different release grades, or channels. One set of tools can be used to push app updates from automatic CI builds, to QA, beta testers, and finally all users.
It visualises updates as they flow through these channels and helps developers track user base growth and retention. In short, they can simplify a developer’s route, and that of their company’s, to engaging with a vast number of Linux users.
Streamlining a route to market not only maximises developer worth, it also opens up new revenue drivers in the process.
Software hardware harmony
The explosion of IoT products onto the market in recent years has pitted manufacturers against one another in a race to the bottom. Businesses risk missing out unless they differentiate on software.
Snaps offer a path to creating an ecosystem of applications on top of your hardware platform that offer enhanced functionality and new revenue opportunities. It’s no longer tenable to consider internet-connected software as a finished product.
Software maintenance must stretch to the lifespan of a hardware product in order to stay relevant and in the world of IoT, this is often measured in multiple years.
It all comes down to maximising the value of any application, and snaps allow businesses to reach the greatest audience with ease and confidence. The possibilities to enhance hardware is also endless with snaps.
Take digital signage, for example. Its traditional use is limited to advertising – project a message and leave it there.
By operating on Linux and using snaps, however, that signage can transform into a multi-purpose space: integrating the newest software that enables AI and data capture; pushing out promotional material tailored to viewers; and sending real-time analytics back to the business.
As smarter products become part of the IoT, snaps will be realised as the enabler of business-led Linux adoption.
Applications published as snaps typically have lower support costs, too. The fact that snaps automatically update to new versions, means businesses can be assured that all their users are on the latest version.
Rollback features, meanwhile, give webcams, security cameras, and other connected devices an added layer of security, in case the hardware is ever compromised through the software.
The recent high profile exposures of Meltdown and Spectre show that there’s no magic bullet to security. The response must be the ability to keep systems operational as they move through a stream of updates.
It is no longer the case that you can write software once and expect it to be secure and bug free forever. Software will fail, it is how a quickly and comprehensively a business can respond to that failure that is key.
Silver bullet development
There is a huge opportunity for businesses to embrace new technologies and move their products and services forward.
Open source and snaps are simple solutions, but ones that give the innovators within a business – developers – the tools they need to launch applications in confidence on the world’s most versatile software.
Developers are not complicated – they want support in the spaces they operate in. Big players in the market, like Microsoft, Google, and Amazon are already utilising snap forums to learn from their peers and make the most of this growing community.
Businesses have always been born from the genius of people; it’s only right that the next revenue models come from the leaders of this age – the Linux developer.
Jamie Bennett, VP of Engineering, IoT & Devices at Canonical