Ubuntu for phones
ubuntu.com
ubuntu.com
I wonder if there is space left in the market for another open source OS though. Most people seem to think Android is open enough.
What gives me hope this could succeed is that the Ubuntu desktop is currently the desktop OS that is most user friendly and has the best user experience (IMO). Bringing Ubuntu's design team's superior skills to the mobile platform might give them the edge they need to become relevant in that space. I love my Ubuntu desktop. I really hope this takes off.
I think they could've done it if they didn't slack off so much with Meego, and were serious about it, but in the same time I also knew Nokia was way too arrogant for their own good back then, and even if they made Meego on time, they probably wouldn't have shared it with others. But that would've been a mistake, because as we can see no OS that depends on one company alone can succeed anymore. Heck, even the ones that depend on several companies are having a very hard time already (WP7/8).
And the reason I would've preferred Meego to become the Android alternative, was because it was also an open source OS, and I would've liked more competition between open source OS's, rather than have just an open source one fight against multiple proprietary ones (iOS, WP, WebOS - at the time).
So I think there may still be time left for Ubuntu to become that alternative to Android, especially if manufacturers stop relying on WP8 and even Windows 8, and start to focus more on Ubuntu phones and Ubuntu laptops instead. But it's very hard to see if it will actually happen, right now, and if it does happen, we won't see it until 2014-2015.
I use "we" and "our" metaphorically, but I think the point still remains. The iPhone didn't become the defacto standard for the average customer without the approval of people like you and I. Bear in mind, the iPhone didn't have an app store to rely on until mid-2008.
Can you really argue that there were no significant technical advantages to the iPhone over phone OSes of the time? The iPhone was first true smartphone, with a workstation grade OS core and top of the line application development framework. By comparison Windows Mobile, Sybmian and Blackberry OS were hopelessly crippled, designed for an older resource-starved generation of hardware, and just couldn't scale. That's aside from the radical touch interface.
> WebOS was another "should have been bigger than Android"
Another myth. WebOS was a cobbled together compromise. Writing all your apps in javascript, running inside a browser session was never going to work efficiently. It was a desperation move to leverage web technologies when their attempt to develop a true native OS framework failed. The constraints of running everything in a browser rendering engine make the constraints of the Dalvik VM look like the freedom of open blue skies in comparison. Forget efficient memory or power management no matter what hardware you throw at it, just look at the battery life stats despite the modest hardware. And before anyone mentions it, no, it was nothing remotely like Firefox OS, which has a radically different architecture.
> The iPhone didn't become the defacto standard for the average customer without the approval of people like you and I. > Bear in mind, the iPhone didn't have an app store to rely on until mid-2008.
The iPhone was successful because it was a pleasure to use, in fact the first phone I ever used I didn't absolutely hate, and because developers flocked to it. By mid-2008 when the app store launched Apple had only sold about 5 million phones. Since then they've sold over 200 million.
Was this really a big seller of the first iPhones? The ones that came out a year before Apple started allowing native apps? Because before that it was just Javascript and HTML5, similar to WebOS.
>By mid-2008 when the app store launched Apple had only sold about 5 million phones. Since then they've sold over 200 million.
The point is that without the blessing of the metaphorical us, Apple wouldn't have sold 5 million in one year in 2007, and they surely would not have kept selling in even greater numbers. There are many systems just as good or better that have failed because they didn't capture developer mindshare.
>The iPhone was successful because... developers flocked to it
Glad to see we agree.
Ok, I'll bite. What were were these just as good or better systems available at or before the launch of the iPhone?
It provides a processor independent application format. It is obvious now that ARM has won, but not so several years ago. There are many technical benefits to an abstract format including bytecode verification, and the consequent ability to run multiple applications in the same address space because you can't create pointers. JIT/hotspot style execution can also provide better performance than C.
In any event providing a CPU neutral application format isn't a bad decision - others have done it too.
> It does drain device resources, especially RAM.
That claim needs to be substantiated. Is native code significantly denser than bytecode? The mobile vendors have all gone with GC. Mark and sweep style GC has more RAM in play by design than something like reference counting, but there is no requirement that mark/sweep is used - Dalvik could use reference counting. Again there are tradeoffs but calling them a drain seems a large stretch.
It's a minor point, but Apple created ARC specifically as a streamlined reference counting alternative to GC, which was never used in iOS and is now deprecated in Mountain Lion.
You do not need to do so in Android (Java), iOS (ObjC), Windows Phone (C#) etc.
It's a minor point and I agree with what you said, but I wanted it addressed in case someone who've not familiar with ARC gets the wrong impression :)
* their own form of pause (when the last reference to a large tree of object disappears) -- this can rule out RC for real-time systems, while there are real-time GCs (though rare)
* a non-local memory access per reference creation (whereas in other types of GC, the cost of allocation can be reduced to a single increment and compare of a value probably stored in a register)
* none of the locality advantages of copying/compacting collectors
GC can be implemented via reference counting. But in my opinion, if the developer has to explicitly manage reference counting (e.g. by using "smart pointers" explicitly in C++) I tend to see it as distinct from GC.
What term should we use to discuss garbage collection schemes that impose a real time overhead (those systems virtually everyone means when they say they dislike GC) and memory management schemes that involve no runtime overhead?
It's paradoxical however that to increase the portability of certain types of apps across mobile ecosystems, eg. iOS and Android, and now Ubuntu, your best bet can be to write the portable part in native C or C++, bypassing the Dalvik layer using JNI/NDK. This is apparently the common way to make cross-platform mobile games.
On memory consumption: I haven't made any measurements, but the Android .dex bytecode format has been designed with low space requirements in mind. See http://www.youtube.com/watch?v=ptjedOZEXPM . However, all apps run in their own VM process, with lots of common structures shared with them using an initial shared VM process and clever forking.
I always thought one of the main original motivations to use Java was because it's so well spread among developers. Since in the early days before the JIT compiler, there must have been a really obvious overhead even with the interpreter hand-coded in assembly. But they must have wanted to use a well known higher level language with good IDE support etc.
Ubuntu mobile apparently uses Qt: "It uses QML to give you a really slick, easy development experience for native apps with engines in C or C++, and JavaScript for UI glue that isn’t performance critical. We also give you full native OpenGL, which the top games companies are using to make incredible games." It seems actually pretty nice for developers: http://developer.ubuntu.com/get-started/gomobile/
Ubuntu desktop is currently the desktop OS that is most user friendly and has the best user experience (IMO). Bringing Ubuntu's design team's superior skills
This is debatable.I'm assuming this has a lot of the normal unix layers we are used to. X.org? Wayland?
If so, this is a significant step up in terms of hackability than iOS or Android.
They also said that you could plug your phone into a TV and would get a full Ubuntu desktop with all the stuff you're used to.
So it seems to be basically a pretty standard Ubuntu with just a phone-interface.
You can ssh into iOS and have all the Unix utilities and full root control for quite some time.
In what crazy world do you live?
https://plus.google.com/u/0/115750270177636397262/posts/HBof...
One latest thing they just said, is that "ubuntu for phones" and "ubuntu for android" are 2 separate projects going on in parallel. So they're not abandoning ubuntu for android. Instead, they view that as a gateway to the ubuntu world, which would hopefully get more people into ubuntu for phones. As you can see, the official website still have tabs for both ubuntu for android and for phones:
Ubuntu and Nokia can make a good fit, under the current circumstances. Nokia maybe can now come back strongly, instead of believing in a closed ecosystem like windows, which is not going anywhere.
I could see Samsung, HTC, Huawei and others using it Ubuntu as an alternative to Android, though, instead of WP8 and Tizen, especially since Canonical says that if their devices work with Android, it's trivial to make them work with Ubuntu OS.
There's not really any evidence that this will sell more than Windows Phone does anyway, I kind of suspect that canonical would be thrilled if this got the same sort of sales that Windows Phone does.
I see that this page (http://www.ubuntu.com/devices/phone/app-ecosystem) states that the apps are created with HTML5 or QML, but I'm hoping other languages are just an apt-get away. If so, they can have my money now.
The difference is that Ubuntu phone has the ubuntu userland (which includes apt) where as a normal android phone has the android userland (dalvik, etc).
The nice thing about the ubuntu userland is that it will most likely allow you to use any compiler that targets ARM. This is interesting because it allows you to make native phone application using python, ruby, haskell, lisp, etc.
Another nice thing about the ubuntu userland is that it includes the gnu programs so it will be much easier to compile and use things like openssh than it is in android.
Android finally dropped the hidden menu after the 2.x series, but it looks like Canonical just walked into making the same mistake.
That said this is very, very cool. Using non-mainstream programming languages on phones will be interesting.
Not that I'm a bitter ex-Ubuntu user or anything.
http://code.google.com/p/android/issues/detail?id=3434
Not that I am a bitter Android VOIP developer or anything ;-)
Of course, magic hurdle number one is either getting a cell stack (GSM/CDMA) that you have rights to distribute, by either licensing (as Google does) or writing one yourself (as seems to be impossible given "open" standards). AFAIK there are no FOSS stacks.
The radio is not completely isolated. I have broken ROMs such that dialing 911 does not work. The phone I spent time hacking on had the radio attached over USB, and there were all sorts of magic AT chats that were managed by some proprietary library. Also, firmware on the radio was loaded into the radio by the OS. Anyway, my point is these things are not obviously separable, particularly at the holistic level of what's required by laws and regulations.
We shouldn't let artificial restrictions get in the way of Free Software. The pre-alpha-Github version does not need to be perfect. It just needs to lay the foundation for perfection to be added later.
I assume it's nice to be flippant about laws and FCC regulations when you're not legally holding the bag. To be clear I don't know what sorts of things are required of "phones". I do know it was an issue when IP-based phones from cable companies were initially advertised as phones but lacked 911 services. My point is that from the standpoint of near complete ignorance of rules and regulations it's quite easy to bitch about heavily regulated items.
You can't use non-certified firmware for modems, like OsmocomBB for TI Calypso, on public networks (yes, there is even free software GSM modem firmware!), but GSM stacks in user space are possible and legal.
Oh, how spoiled of you.
E: Mark S suggests that ROMs would be available for existing devices and not just through OEMs on the interview w/ engadget-- but isn't 100% explicit, and mentioned nothing about when to expect any builds.
But the fact that my Galaxy nexus is a "tier 3" phone which has no guarantees of even working, and that the "tier 1" phones are phones you cannot buy, my ability and willingness to wipe my working OS from my phone (which I need) for something unproven is very close to zero.
Had they provided some good and working images for phones available today, chances that they would get more attention and recognition would be much, much higher. Not providing that has (IMO) been a mistake which has cost them, both publicity and potential contributors.
And now Ubuntu seems to be making the same mistake for their phone-OS. It's a strategic mistake and it will cost them the chance to impact the market.
http://www.engadget.com/2013/01/02/ubuntu-for-smartphones/
Looks like they updated the text, but still. The manufacturer doesn't install things on my phone, I do. Looks like they also mention a Nexus build in the coming weeks. When that happens I'll consider my challenge met. I'm just hoping something actually comes of this, unlike Ubuntu for Android which went nowhere.
I'm also extremely annoyed by mentions of manufacturers here. I don't need Dell's blessing to install Ubuntu on my laptop, and I don't need HTC's blessing to install an alternate OS on my phone. So give me the software, already.
And you expect for the operating system you install to have working drivers. Which are written by the hardware manufacturer, unless you want to wait for the open source community to reverse engineer them (which takes many months or years).
Nobody is saying that you can't hack whatever OS you want onto whatever device you own. But playing nice with the people who are in the best position to make it easy for you to do that is clearly something that Canonical has an interest in doing, and I don't think we should fault them with that.
This is probably the #1 reason for lack of uptake of Linux on the desktop.
The problem is extra hard with phones because manufacturers seem to have more measures in place to prevent people from easily installing third party operating systems.
I don't get the "put up or shut up" part.
You still don't need their blessing, you just need to unlock it. It's your phone, not theirs. Period.
>I don't get the "put up or shut up" part.
It means I can go to their website, click "Get Ubuntu", and download it for my phone. Until it shows up here:
http://www.ubuntu.com/download
It's vaporware.
I can kind of understand why they don't want to release it until there is a reference implementation and the software is somewhere near done.
They don't want to suffer the same problem they have done on the desktop where there are a load of device out there which are "kind of" supported and they get a bad rep because somebodies sound , wireless or whatever doesn't quite work as they expect and they have to field a load of support requests and people proclaiming that their OS is "too hard" or whatever.
For a long time, we couldn't count on video cards or sound cards being compatible with Linux either. The Linux community just shared information about which computers were most compatible, with the most open hardware, and we bought those devices.
The same thing could happen with phones. Even without being installable on EVERY device, surely some of the manufacturers will stick to fairly standard hardware and the Ubuntu community will see to it that the drivers and unlocking tools are there. Not everyone will be able to get Ubuntu on their phone, but the community can still thrive.
A Mozilla engineer told me that without Android (and consequently Linux kernel and drivers availability) they could never have pulled it.
I'd prefer a phone that is built from the ground up to be secure without a case. My current phone is a Nokia Lumia 920, which can withstand some pretty substantial forces [1] without breaking and without needing a case. And sure it's thick compared to a naked iPhone or SIII, but it's thinner than those phones with a case that would allow them to withstand the same kind of impact. Why do people put up with buying a phone and needing to immediately wrap it in protective rubber and plastic to keep it from shattering? Don't put up with it anymore! Demand reliable hardware! How well it works with a case shouldn't be a determining factor.
A case that provides enough of a rim so that the impact doesn't hit the glass front directly is useful.
-Naked Nexus User.
The "lock screen" is just weird, and the hyperbole spouted by the presenter was downright embarrassing.
It all comes down to the apps. If Google Maps/Gmail/Chrome/Youtube etc all run on it then it might stand a chance, but I don't see further phone market fragmentation as being in anyone's interest.
I do, however, use Ubuntu as my main desktop (2.6.38)
Believe that all of us working in video games want program execution on mobile devices to be as fast as possible. My brand-new desktop PC is not fast enough for what I want to do, so an Android phone running a bytecode interpreter is that much further.
I also don't think you know what "vaporware" means. If it is actually running on physical hardware it's not vaporware; it is just not in consumer hands yet. (Since Engadget has played with it on a physical phone... it is known to be real.)
The difference appears to be that Android encourages Java for non-games while Ubuntu will use C++/Qt.
What is missing is a (smart) carrier picking it up and running with it. I for one hope someone like Samsung release a phone with it. I'd buy this in a heartbeat.
I would have thought games would be the more difficult step since most people seem to use their "smart"phones as fashionable gameboys and you need a complicated system of in-app-purchases for getting kids to accidentally buy $100 dollars worth of "smurfberries" with their parents credit cards to finance the production of these games.
And games has, traditionally, been something that Ubuntu and Desktop Linux hasn't had much success with.
Since Dalvik is open-source, perhaps they could tweak a few things to make Android apps run on Ubuntu, albeit a little slower? Out of the box compatibility with existing Android apps would be a huge gain for a mobile OS that is just trying to enter the market.
"DOS was popular because it had software from day one. And it had software because Tim Paterson had thought to include a CP/M compatibility feature in it . . ." (http://www.joelonsoftware.com/articles/fog0000000054.html)
Edit: And, as someone else said in this discussion, "developers, developers, developers".
And here we go...
my other major thought, while watching this: where is the keyboard? (ie, will it run emacs?)
/disgruntled Nokia fan
apt-get install python
https://www.youtube.com/watch?v=oye9AmOdsZc is uncanny.
The problem with "cloud apps" on phones is that you run into the real problems of carrier imposed bandwidth limits and slow connectivity in places.
Apps that have a horrendously slow UI if you are anywhere outside of a major city will not be much fun to use.
I don't believe there is anything stopping us from caching all the JS in localstorage already, though I haven't done it yet.
Apparently, you can even store images in localstorage http://robnyman.github.com/html5demos/localstorage/
So, with the Ubuntu phone I can see this being popular with a few geeks but not with the mass market. If they stop making Unity behave like it is on a tablet when it is really on a PC, that'd be great. That is one good thing that could come from this, right?
Today, Linux is everywhere in the sense that beneath Android – runs Linux. Unfortunately, Ubuntu doesn’t figure in the equation. Tablets, phones are all locked down devices and enthusiast/hobbyist open source doesn’t figure unless drivers are available. To maintain relevance, Ubuntu needs to exist in the mobile space.
Today’s announcement is an early one, and is making the same value proposition as Android did early on, before Google’s acquisition. i.e. an open source system that any phone vendor can use to build their smartphone platforms on.
The Problems
Ubuntu has a remarkably polished desktop product for years but it has remained a fringe product and the PC market has simply stopped growing. Jobs has carefully taken Apple around MS’s hegemony on the desktop by tackling music players first, then a pincer movement through Windows Mobile dominance by producing a very expensive smartphone.
Shuttleworth faces not one but several well established and cashed up competitors – Apple, Google/Samsung, Amazon. I haven’t even mentioned Microsoft, or the Chinese Korean and Taiwanese versions of a smartphone OS. Each of them have an arsenal of patents and services that gives them degrees of freedom to move around the space. Google for example commands the email/contacts/calendar integration, YouTube, Maps and Navigation. Google’s approach is to deny competitors full functionality of these services to cripple their smartphone offerings. e.g. turn by turn in the case of iOS, YouTube search APIs in the case of Windows Phones. Apple and Amazon have offered cloud locker services for those who purchased music and books from their online stores. Microsoft has some cards left in enterprise management and server integration.
Next steps
I believe this is just an initial salvo. Promising compatibility with Android kernel level drivers is a good start. Right now there isn’t enough value proposition for Ubuntu phone in terms of apps or services. Integrating a phone and desktop are novel but it is far from a sure bet. A reference phone design might be good bet if they think it will persuade some of the smaller Chinese manufacturers to jump onboard. However, this will not please Dell. It might make a MIUI-like play, and remain a niche phone OS for several years until the opportunity is right.
What Ubuntu really needs to do now as an organisation is to make a sideways bet into iOS and Android. It needs to kick start development of its own mail app, or acquire a navigation maker like Waze, and get these loaded onto the popular phones today. There is still some geek-cred left in Ubuntu for people to load these apps on, and who knows, they might catch on in the enterprise space.
Why? The very reason why I use linux on my desktop and android just never gives you the same feeling of being differnt from the rest of the world.
You can type in some example times here to see:
HTML5 with canvas+javascript can be an other possibility.
(I do not the limits of these tools)