In depth interview: Ubuntu Touch aims to learn from Android's mistakes

46comments
This article may contain personal views and opinion from the author.
Last week, we sat down with Canonical’s Director of Engineering, Pat McGowan, to learn everything we could about Ubuntu Touch, including how it started, where the product is now, and what to expect in the future. We learned quite a lot, and throughout our chat there was a theme that kept popping up both directly and indirectly - while Canonical is working to build a mobile platform that is both completely new and completely Ubuntu, it is clear that the team has kept an eye on Android and aims to learn from Google’s mistakes.

Many people are quick to try lumping Android and Ubuntu Touch together simply because both platforms are Linux-based and open source; but, as any Linux user can tell you, that viewpoint is just as misguided as trying to claim that Ubuntu and Fedora are similar products. While Ubuntu Touch and Android share a similar kernel, and certain principles of openness (though not as many as you might think), the two products are different animals that may face some of the same issues, especially in terms of consumer awareness, but Pat McGowan isn’t too worried about that.



The Genesis of Ubuntu Touch

Recommended Stories
Ubuntu began in 2004 and quickly generated interest within the Linux community. Developers gathered around the product, and more importantly the ethos of the distribution. At the time, Linux distros were the realm of the tech elite, and were not accessible to average users. Mark Shuttleworth gathered developers from the Debian community to change that. The goal was to create a Linux distrobution that was easy-to-use, easy to obtain, and held to a strict update schedule. The first two parts of that strategy were the real keys of course, because accessibility opened up a much wider user base for the OS.

Before Pat McGowan joined Canonical back in 2007, he worked for Pepper Computer. The company made the Pepper Linux distro, and also released a few Pepper Pad tablets. Of course, this being the mid-2000s, Pepper Pad tablets held the limitations you would expect from devices of that time with reportedly difficult text input, troublesome touch capabilities, and a relatively hefty size compared to tablets of today (the hardware was 11.4” wide, with a 7” screen, and weighed just over 2 pounds). The Pepper Pad looked more like a Wii U GamePad with a physical keyboard than the slate tablets of today, but the device clearly showed the fascination with touch devices that would explode over the next 6 years, and one that McGowan and others brought to Canonical.

McGowan and a few others from the Pepper Computer team joined Canonical in 2007, and it wasn’t until a few years later that work truly began on making Ubuntu ready for mobile devices. Canonical brought in people from Nokia and other companies to work on the project, and the push to mobile began in earnest about one and a half to two years ago. Although those inside Canonical and the Ubuntu Community had wanted the platform to go mobile, this pivot began mainly with the adoption of the Unity user interface as the default rather than the traditional GNOME Shell.

Unity brought the two features that have become the core of Ubuntu Touch: the Unity launcher, with its larger touch-friendly icons, and the Dash, which is a highly pluggable Scopes system that blends the desktop with the web, and uses search to expose any and all content that you may want. The adoption of Unity did cause some dissidence in the user base, because some preferred the traditional desktop; but, despite that, Ubuntu has continued to grow, and is now one of the largest Linux distros around.Building Ubuntu Touch in the open

One of the biggest quagmires when talking about Android in relation to Ubuntu is in the idea of “openness”. Both platforms are “open source”, meaning that the source code is free for anyone to download, modify, and redistribute; but, we have to say that Ubuntu follows the open source philosophy much more closely, where Android has some exceptions.

With Android, the system is open source, but there is a Google layer with apps like Gmail, Maps, Chrome, and Google Play. that are closed source. Ubuntu is 100% open source, only comes packaged with software that is also open source, like Thunderbird, Firefox, Chromium, or LibreOffice, and draws heavily on Debian, another open source Linux distro, while the Unity UI is largely built by Canonical’s own engineers. Additionally, Android is developed behind closed doors at Google, and the code is only released after the software is complete. But, according to McGowan, Canonical’s corporate philosophy is to have all development and even company interaction done transparently and in the open.

A big part of this is because the work is done in a distributed manner. Canonical has about 500 employees scattered around the world in about 40 different countries, but those employees tend to gather into teams to work together on projects.


Another reason for working in the open is because of all the contributions that Canonical receives from the Ubuntu Community. While Canonical does most of the work on the Unity interface and the big features of Ubuntu, the Community is critical to the process. The Ubuntu Community is made up of thousands of developers around the globe who contribute in a number of ways.


It isn’t all just informal Community input though, Canonical works hard to corral the Community efforts and focus the work into key areas as needed. 

The Core Applications being developed by the community include: calendar, clock, calculator, weather, e-mail client, RSS reader, file manager, document viewer, terminal, Facebook, YouTube, and music apps. The list originally included a Twitter app, but Twitter’s new terms of service squashed that plan. The Community and the XDA Developer community have also been instrumental in helping to get Ubuntu Touch working on a number of Android devices.

Of course, while the development process is markedly different for Ubuntu compared to Android, the final product has the potential to face a number of the same issues that have annoyed Android users over the years. But, Canonical is trying to learn from Android’s mistakes and make sure that Ubuntu Touch can forge a better path.
Forking

Any open source product will always face the same issue of having its code forked into a completely separate product. Ubuntu was born as a fork of Debian. Kindle Fire was born as a fork of Android. As McGowan says, “That’s just the nature of open source.”

McGowan sees the answer to the issue as being similar to the tack taken by Google, saying: 


But, ultimately, as much noise as tech blogs tend to make about the spectre of forking, it all amounts to little more than fear mongering. For every Ubuntu and Kindle Fire that you find, there are dozens of failed forks, or forks that haven’t gained much more than a small amount of traction. For example, while Linux Mint was born as a fork of Ubuntu, it has really only attracted the faction of users that refused to accept the Unity interface as its main user base. And, for all of the talk about the potential of companies to fork Android, Amazon is the only company to do it successfully, since the Nook has been pulled back from fork status to getting access to the Google Play Store.

Manufacturer/Carrier customization

The far more difficult issue to tackle is that of carrier and manufacturer customization, but Canonical believes it has the solution to that issue as well. The answer here is two-fold: first, McGowan doesn’t believe that the overt customization of the UI is something that carriers really want; and, second, Ubuntu will be pushing forward the power of Scopes.


Part of the solution may be in implementing a unified theme layer (something we have often lobbied for with Android), which would allow manufacturers to customize some of the UI, but would not allow for completely disrupting the feel of Ubuntu.

Scopes

Scopes are the key feature that Canonical is betting on to give manufacturers the control they want while still offering users a consistent UI, and the idea is an extremely compelling one. For those who haven’t used Ubuntu, a main part of the Unity UI is the Dash, which is essentially a universal search box that can draw content from a number of sources, which are organized by data type tabs, called Lenses. Each Lens draws content from a dedicated engine, called a Scope.

For example, when you type something into the Dash, it will display the results in standard Lenses for apps, documents, video, music, photos, and social messages, but each Lens is pulling content from a number of Scopes. So, the apps Lens will give results for apps that are installed on your device, and also apps available in the Ubuntu Software Center. The music Lens can show results from your local files as well as services like Amazon and Spotify. Additional Lenses can be added along with new Scopes, so a News Lens could display content pulled from Scopes for Google News and more. And, with a new back-end feature called Smart Scopes, which is coming as part of the October Ubuntu 13.10 update, results will become more contextual and will pull content from the most relevant Scopes based on your search terms. 


The interesting part to Scopes is that the entire system is pluggable, meaning any service can hook into it, and thus almost any content can be surfaced. On a user level, this means that your Google Drive files can be surfaced just as if it were a local file, or other services like Spotify and even The Pirate Bay can be hooked in to make the barrier between you and the content you want as thin as possible.

But, on a manufacturer level, this allows for a huge amount of customization of content, while still providing the same consistent Ubuntu UI that users would expect. For example, rather than making a separate Music or Video store like it has on Android devices, Samsung could simply have its content plug into the Dash by using a Scope. Or, rather than creating a complete fork with a new skin like the Kindle Fire, Amazon could have all of its digital content - music, video, and books - as well as its physical goods exposed through a Scope in the Dash.


Surfacing content becomes extremely easy using Scopes; and, that is the key, because while the Dash and the Scopes tabs are essentially a universal search box in the desktop iteration of Unity, the Dash is your entire homescreen in Ubuntu Touch. So, the content being pulled in isn’t hidden away in an app, but prominently displayed as large, image-heavy pages front and center on your device.

And, the number of Scopes available is expected to explode soon enough because of the One Hundred Scopes initiative, which not only aims to make it easier to create a Scope, but will add 100 new Scopes, including Soundcloud, Grooveshark, IMDb, deviantART, GitHub, Yelp, eBay, Foursquare, etsy, and more.
App development

While Scopes will go a long way to bringing various types of content to your Ubuntu device, you will obviously still want apps to handle that content. As we mentioned earlier, the Core apps for Ubuntu Touch are being developed by the Community, but Canonical is also working to attract developers to bring more apps to the platform. 

McGowan says that the platform has already been building steam in that regard, and has been bringing in developers who don’t normally develop for Ubuntu. There have already been a number of apps from developers who had been working on Android and MeeGo, and best of all the apps are mostly written in Ubuntu’s native Qt code rather than HTML5. 

Not surprisingly, a lot of the work in this regard is still in the future. Right now, Canonical’s focus is on getting the OS software ready, and work is still being done to sort out a lot of the details for app development, like the tools and documentation to help developers port apps. But, McGowan is clear that while Canonical wants the process to be easy, the apps need to become Ubuntu apps.


The tools are also on the way to really allow for the “write once, run everywhere” plan for apps. Because Ubuntu Touch is really the same OS as Ubuntu for desktops, the plan is to allow developers to write their apps once, and the app will be able to scale as needed between the different screens. 


So, an app can be written with the phone layout and screen size in mind, and scale up to a 7” tablet. But, when it gets to a larger screen, the developer will be able to choose whether to have the app continue with the phone layout and be displayed in the Side Stage on a 10” tablet, take on a larger layout, or give the user the choice between the two.

App permissions and approval process

There is also work to be done to sort out nagging problems like app permissions, and the Software Centre approval process. Again, he makes it clear that the details are not yet set, but he gives some indication as to where the conversation is going, including the possibility of having permissions surface on a case-by-case basis for certain functions


A lot of the work so far seems to be pointed at helping developers who want to bring Android apps over. McGowan is clear to say that Android apps will not be natively supported in Ubuntu Touch, but the links to Android are apparent because the early devices that support Ubuntu Touch are all Android hardware.Hardware

While Ubuntu Touch is essentially Ubuntu, meaning the system itself is a combination of Debian and Ubuntu, the lowest level right now is Android in order to make it possible for the software to run on Android devices.

Eventually, this mapping layer and the Android binaries will not be necessary, and will be removed for devices that are built specifically for Ubuntu. When manufacturers are building the devices, they will be able to make the drivers specifically for Ubuntu. But, even if manufacturers simply use an Android device, the software will still run and there shouldn’t be any difference in performance. 

Unfortunately, we couldn’t coax any information about what carriers or manufacturers Canonical has been in talks with about bringing Ubuntu Touch to market. What we do know is that the aim is to have the phone software complete by the release of Ubuntu 13.10 in October, so that after manufacturers have time to put devices together, and carriers have time for the testing phase, the hope is still to have Ubuntu phones on the market at the beginning of 2014. Then, the tablet version is expected to be complete for the April 2014 release of Ubuntu 14.04, and devices should be out soon afterwards, since there will be no carrier delays for testing. Ubuntu 14.04 will also bring the code to a "single stack" that can run on any device from a phone all the way up to a TV.

Ubuntu Touch will scale to all handsets. The team expects the platform to start on mid-range phones (which were the high-end devices from late last year, like the Nexus 4), but it will scale to high-end smartphones, and low-end smartphones. Of course, the real secret sauce for the future of Ubuntu is in convergence. As we mentioned earlier, the tools are on the way to allow developers to write apps that scale to every screen size from phones all the way up to TVs, because that is the vision for the Ubuntu platform as a whole.

Conclusion

Ubuntu is an ancient African word meaning “humanity to others”, but it also means “I am what I am because of who we all are”. Both inside Canonical and out in the larger Ubuntu Community, the developers and engineers are finding a fairly unique work environment. Canonical has been able to pull together people from all over the globe, and truly seems to live up to the Ubuntu name.

Although he can’t confirm it, McGowan gets the feeling that Canonical has less turnover than most companies, because “the sense of community, combined with a lofty set of goals and some very interesting technology... brings together so many people from different countries and backgrounds”. We suspect that may also be why Ubuntu users have a certain loyalty to the platform.

And, for those who already know and love Ubuntu on desktops, the convergent dream of having the same OS on all of your devices is a powerful draw, not to mention the fact that Ubuntu Touch simply feels like Ubuntu in a way that many other mobile platforms don’t feel like their desktop counterpart. While they are becoming more similar, there is still a large disconnect between iOS and MacOS. Windows 8 and Windows Phone 8 have gone a long way to bringing together desktops, tablets, and phones, but Microsoft hasn't shown the true convergent future of Ubuntu. And, while Android and Chrome may be organizationally combined under Sundar Pichai, the two platforms are nowhere near being functionally linked.

The daily images of Ubuntu Touch are just about ready to be “usable” daily drivers, but there is still a long way to go before October and the software will be considered feature complete. There is a lot of work to be done in attracting the ecosystem of manufacturers, carriers, and app developers, not to mention the daunting task for the marketing team in making the platform visible in a market dominated by Android and iOS. But, the vision of Ubuntu Touch is one that has always fascinated us, and we will continue to follow the work of Canonical and the Ubuntu Community.

Recommended Stories

Loading Comments...
FCC OKs Cingular\'s purchase of AT&T Wireless