Those Who Are Last May Later Be First: Ubuntu and the Phone
Paw Prints: Writings of the maddog
On January 2nd Ubuntu announced that they were going to support a phone, and the announcement has been met with both congratulations and nay-sayers.
The people that congratulate Ubuntu and Canonical are talking about how manufacturers and carriers will now have a clear path to creating a highly branded interface to differentiate themselves from the other manufacturers and carriers.
People that are nay-sayers usually talk about how Canonical is “late to the market” and “do not have experience dealing with carriers”.
I would like to congratulate Ubuntu and Canonical, as I think this announcement has great potential.
I will remind people that Mark Shuttleworth was considered a little “late to the party” with the distribution of Ubuntu. There were already several “world class” distributions of GNU/Linux, but for various reasons and a lot of work, Ubuntu quickly became a leader in desktop Linux.
After that Ubuntu went after the server market, and by developing a strategy of Long Term Support releases and dependable release cycles which started to attract server business.
As netbooks came out, Ubuntu was one of the first to create a netbook version of their distribution.
Following that, Ubuntu developed their “cloud” services, and joined the OpenStack project, to the point where Ubuntu Server 12.04 LTS is the basis for the sample implementation of OpenStack.
Then Ubuntu offered an embedded solution for TV manufacturers.
And lately there have been demonstrations of Ubuntu running on top of Android in a phone, allowing you to plug in your cell phone to a large screen, using your Android-based cell phone or tablet as the “system box” for your large video screen.
Therefore it is no real surprise to me that Mark Shuttleworth would tackle the mainstream phone next.
Why would someone want an Ubuntu phone rather than an Android phone?
First of all, who says they have to choose? Android is based on the Linux Kernel, perhaps with a few “bells and whistles” added, but these are relatively minimum. Given a suitably powerful multi-core phone, there is no reason why (with a little engineering work) Android could not run in a virtual machine, or even have two sets of user-level libraries running natively at the same time on the Android kernel.
Secondly, there might be a lot of people who would like to have the same OS every place, from their phone to the desktop to the server to the cloud. Add the fact that ARM is talking about 64 bit chips and chips that support virtualization the realization that you could have the same applications running from phone to cloud is very interesting indeed. GNU/Linux, of course, has a lot of experience in running 32-bit applications on a 64-bit system, so even if the applications continued to be 32-bit on the phone, the same apps might be able to run on a 64-bit server or cloud machine of ARM architecture.
Even if the interface of the phone is different than the larger screen applications, the programming of all the different platforms could be done with the same tools and programming interfaces that run on Ubuntu. The underlying mechanics of the program could remain the same, with only a different “view” of the data for the small screen.
Third, there is a reasonably big market for customized phones, and I am not talking about the market of the mainstream “carriers”.
At one time I was involved with a project called “OpenMoko”, and we attempted to create a completely open phone, both hardware and software. The project got to the point where we actually had an early version of Android working on the hardware. At that time I went to Brazil to try and have a company in Brazil license the hardware design from the OpenMoko project and manufacture it there.
While trying to set up the business for the phone manufacturer in Brazil, I ran into this statistically small but very profitable marketplace of customized phones. I found applications that could not be written as a user-level application, but instead needed work done to the libraries and kernel of the phones' operating system. These applications were of too small a volume to attract the interest of Apple or Google, but were of significantly high profit margin to attract a Value Added Reseller (VAR), if they could have access to the source of the Operating System.
The OpenMoko of the time had “2.5 GSM”, USB 1.2, a relatively small display, a relatively slow CPU and video chip, but we had several different operating systems running on the phone, and all of them were “Open Source”. Because of the low manufacturing volumes, the phones might cost as much as 700 USD in Brazil.
When I asked the VARs what their customers would pay for such a phone, the VARs said that their customers were buying a solution, not a phone. The phone was part of the solution, and without the phone there was no solution. “Our customers do not care how much the phone costs...they are buying a solution.”
Of course the question comes “Why can't someone change the operating system with Android?” There are several reasons why this becomes a problem.
First of all, most carriers do not want you changing the operating system on the phone that they give you. This is why they first sign their image, then lock the phone to their service. And (to be fair), if the average person started changing the operating system, the carrier would not be able to download updates or fixes to the phone.
Some people, like me, buy their Android phone directly from Google. This means I can put any SIM into it I want (unlocked), and for the most part the operating system is unsigned too, meaning I could change the OS if I wanted. But most people would like to get the updates to the OS downloaded to them, and Google does a fine job of that.
Who would handle the downloads of the operating system bug fixes if the operating system was changed on an Ubuntu phone? Perhaps (for a fee) the VAR from who you purchased the phone would fix the bugs and download new images, or (for a fee) Ubuntu who the VAR has paid to make the change to the OS would act to download the change, or both.
In any case Ubuntu has a track record of downloading bug fixes to operating systems over the Internet, and could sell services to VARs or end user-customers who need changes made to the distribution for their solution. Ubuntu might also sell set-up services for VARs who need to be able to distribute these patches to their customers.
Nay-sayers might point out that this is not a huge market, but it does not take a huge market to create a huge profit. Apple's history has been a relatively small part of the marketplace selling very high-end, profitable products. Managed well, Canonical's market could be medium-sized, and very profitable.
High volume is needed for the “apps” however. As Android has shown, volume trumps glitz when it comes to attracting apps to a phone.
On the other hand, Ubuntu has three application interfaces they could pull from:
o Ubuntu itself
o HTML5 (shared with the web and the “Netscape Phone”)
o Android (either in a VM or layered libraries)
“Personalities” are relatively easy to implement as layers, if you have access to the source code for the libraries of the personality.
GNU/Linux already supports the major hardware architectures of phones, and therefore gives hardware manufacturers flexibility in chipsets. Helping hardware OEM to port to new chipsets is another potential money-maker for Canonical.
People keep saying that the phone will replace all of computing, that we will not need desktops or notebooks. I do not believe this. I think that people will still need different size interfaces and “real keyboards” to do various (and sometimes large) jobs. What I can believe is that the phone may represent a portable CPU, memory and local storage to drive different size displays, from the small one in your palm to the large display connected by an interface such as HDMI or (in the near future) 802.11ad with 7 Gbit transfer rates over short distances. Perhaps the video of the phone could be projected onto a wall or reflective screen by an embedded LED. Add a portable keyboard and touchpad, and you will have a whole computer also connected to the cloud through cellular or WiFi.
Will you use the same human GUI interfaces on your tiny little screen as you do on the larger screen? Probably not, but as I said before, it might be just a different view on an existing application.
For example, you may not write an entire legal brief on your tiny phone screen, but the same program that opens the file and allows you to create the legal brief will be used to open a smaller view for a quick edit. You will be using the same word processor and the same fonts, just with a different “view” for the smaller screen. When you plug your large monitor into your phone, it reverts back to the “full view”. And all of the application programming interfaces will be the same for the programmer on each platform: Phone, tablet, laptop, desktop, server or “cloud”.
Systems administrators who wish to fix a problem with their Ubuntu server may find that the tool to allow them to do this easily is no longer their Ubuntu laptop or Ubuntu tablet, but their Ubuntu phone. Their phone can run their favorite apps, and help them fix problems.
And if the phone is running the same OS as the server and the cloud with the same CPU architecture? An application developed on the phone could be migrated to wherever the proper cpu, memory or disk bandwidth is available and run without change, reflecting its result back to the phone, as if the application was running on the phone. I did this many years ago with shell scripts on the OpenMoko phone while it was running Debian.
Finally, some people comment that “Ubuntu has no expertise in dealing with carriers”. Perhaps not, but before Mark Shuttleworth started Ubuntu he had no experience in dealing with OEMs. “Experience” can be purchased, and if a person who has experience in dealing with carriers sees what Ubuntu is doing, perhaps they will join the team.
I am not saying that Ubuntu and Canonical will be successful in their phone business, but before we count them out, I think we have to define what “successful” means.
In my 43 years in the business, I have seen companies that were first later become last (RIM) and companies that were “late” become leaders (Android). Solutions that might have been what people really wanted were delayed mostly because the hardware capabilities did not match the needs of the software.
Ubuntu might be just the right OS at the right time.
It comes with increased securityVery good article. Ubuntu is now where Microsoft wants to be, but may never get there because of the maleware threat we have to deal with when using Microsoft products. The last time Iooked, I did not need anti-virus software for Linux. An integrated system of desktop, laptop, tablet and phone makes sense in the more secure Linux environment, Windows? not so much.
OpenMoko and Hardware AvailabilityHi Joel!
>Remember OpenMoko? It never became a reality.
First of all, I know you did not read my blog entry, because in it I mentioned that I was intimately involved with the OpenMoko (GTA02) project.
Actually, depending on how you look at it, OpenMoko was both a failure and a huge success. As a commercial phone project it was a failure, since it never was mass produced in the numbers that would build a market. It was designed and built from "end-of-life" components, and by the time it was "ready" to be manufactured, these components (GSM 2.5, USB 1.2, GPU that was "brain-dead" were no longer being manufactured, so any volume effort would be drawing parts from a shrinking (and ever more expensive) pool of parts.
As a hacker's project that allowed people to see what an open hardware and software phone, designed, built and funded by a group of volunteers, it was a qualified success. Could some things have been done better? Yes. Was it ahead of its time? Probably. Should we keep trying?
I point to the GTA04 project.
Secondly, for the point of "No Hardware", I think you misunderstand the point of the Ubuntu announcement. I do not believe that Canonical will release its own hardware. I believe it will be creating the underpinnings of software that will be adopted and adapted by the hardware vendors.
In the beginning Google did not have its own hardware (and actually, it still does not have its own hardware). Google partnered with HTC to help them develop the HTC Hero as the first phone. Then after a short period of exclusivity, they opened up the Android community to other manufacturers.
I think that Mark was smart to announce it the week before CES, generate a lot of interest, and have the handset manufacturers who are at CES come and "talk turkey" at the event.
>Now, to be a success, it will need to work on EVERY Galaxy Nexus including the Verizon version.
>I'd load it on my phone for sure then.
The Galaxy Nexus is not the target platform. It is just a handy platform for people to play with the code. From my viewpoint the Galaxy Nexus is "obsolete". I own a Galaxy Nexus, by the way, as well as a Nexus 4. I also own a Galaxy One and I used to own an HTC Hero. I bought all the phones as unlocked, with the last three directly from Google as unlocked and unsigned.
I foresee a lot of Galaxy Nexus being sold on Ebay to willing Ubuntu customers who want to "kick the tires".
Why the Galaxy Nexus? It was sold by Google to a lot of Android developers as unlocked and UNSIGNED, and even when locked and signed a lot of people have rooted it and have put their own OS on it.
I would guess that another platform that might be "supported" in the near future is the Samsung Galaxy IIIs, a "honking" (highly technical term there) phone.
Why do I put "supported" in quotes? Because I believe the code is still in alpha format, not even beta format. I know that you understand those two terms, but for those readers who do not:
"alpha" means it is going to change, do not even attempt to think that you can depend on this for product. Don't even ask for support (unless it be from public forums)
"beta" means it has finished its functionality, and is being made stable.
Finally, I believe that Mark is smart enough to make his phone play well with MS Windows and OS/X. Ubuntu One does not have to sync to Windows and MAC. Ubuntu Phone OS may have to sync to Windows and MAC, but Ubuntu One only has to sync to Ubuntu Phone OS...and sync very well.
Thanks for the comments, I am sure other people might have had the same.
Count me as a Nay Sayer....but not because I want them to fail.Hi Mad dog!
You bring up some great points, but I don't think they will succeed for a couple reasons.
1. We've seen promises like this before.
Remember OpenMoko? It never became a reality. Plus then there were the tons of me too Linux projects when the PDA was hot that utterly fell flat. Over the years there have been more Linux based phone platforms than you can shake a stick at and each one with the exception of one. Android. I don't want Ubuntu Phone to fall flat. I think it CAN be a success but it I think it won't because of my next statement.
2. No hardware.
Saying your going to release hardware in 2014 makes this whole announcement vapor to me. Why announce it then if you are THAT far from hardware? Why show it at CES (which is full of crap that will NEVER see the light of a store)? If I was Ubuntu, I would have maybe announced it but not until the first images were actually available to developers AND say that they need the help of the community to make it a reality....maybe, if I was Shuttleworth, I would have waited and had my own event later.
Now, to be a success, it will need to work on EVERY Galaxy Nexus including the Verizon version. I'd load it on my phone for sure then.
Also, they will need to make sure things like Ubuntu One work on Windows and Mac as well as Ubuntu. Why? Because I don't care HOW good a phone is, people won't switch their OS to Ubuntu just because it works better with their phone. That worked only for a short time with the iPod....but then Apple woke up and made iTunes for Windows. People will never do that again. Ubuntu One will have to sync to Windows and Mac for Ubuntu Phone OS to be a success.
Great InsightMaddog this is well written. You brought some things into the light that I didn't think of. I thought the best point was that Ubuntu came into the desktop market when people thought there didn't need to be yet another distro like theirs. But look at where they are now. So after reading your article I think Ubuntu has a better chance then I was giving them. I hope that accessibility is being taken into consideration while they are working on it.
The whole distro gets rebuilt on glibc 2.3
Ubuntu Vendor tries to solve app packaging and distribution problem across distributions.
Founder of ownCloud launches the Nextcloud project.
Will The Machine change the way future programmers think about memory?
The new Torus distributed storage system is available under an open source license on GitHub
Juries decides Google’s use of Java APIs Was Fair Use
But if you are not using the latest Linux kernel, your system is insecure.
Home routers will give room for custom firmware but still comply with FCC rules
Frank Karlitschek will continue to lead the open source ownCloud project
“Xenial Xerus” comes with a new packages format and several improvements for the enterprise.