Why Mark Shuttleworth thinks Ubuntu on phones will outclass Android
arstechnica.com
arstechnica.com
Will Ubuntu for Phones struggle to make good use of the phone memory if it doesn't use this technique? (I assume it just uses the desktop-PC model of 'a thing is running until its stopped, page to disk if necessary?')
edit: also, as people have pointed out, there are battery life implications
My experience with Android is that waking every second is enough to kill a phone's battery noticeably faster. I suspect most existing linux apps and frameworks are not good at saving CPU and battery enough to be on a phone. I would be happy to be proved wrong.
I think you meant battery usage.
(I'll delete this comment to reduce clutter after you edit...)
This same argument was had in the MeeGo days. Putting a bunch of junk into the framework APIs to support this is just needless "feel good" complexity around a problem that's already solved. All that's needed is a component to make the decision to kill processes.
This is, however, a tangent. The ability for an app to persist state and "start" in the last state the user saw has nothing to do with the OS's ability to kill an app to conserve memory. And note again that the requirement for an app to survive an unexpected failure (i.e. you can't expect to have been "paused" -- this is true on Android and iOS too!) is still there, there's nothing that extra layers of API will do to fix that.
I'd say it does. Pausing apps (as opposed to killing them) is another way of conserving memory, and battery, while preserving usability.
But as you say perhaps Qt5 will handle this. Is the Ubuntu Phone restricted to only running Qt5 apps? I'm not clear on that.
iOS was, essentially, the consumer-computer-OS marketing people finally getting some proper engineering under their skin enough so that they could pretty it up and package it and sell it, $99 a pop, to all the teenager coders. The effort to get OSX and iOS suitable for such demanding environments as the teenage pocket just suddenly became an Embedded discipline, rather than the monolithic desktop phase. Of course iOS is now an Embedded OS; but OSX pretty much always should have been in the first place, albeit for the hardware gluttony of the 90's and so on. Nobody ever really used every single megabyte, productively, much space out there being maintained by the Desktop OS's is pure fat and cream, all things considered, from an Embedded OS perspective. Oh, you've got a pagefile that a daemon resizes for you if you need it .. luxury! :)
But in the embedded world, such a problem as purging unused apps, dealing with power models and load concerns and failover policies, and so on: solved, done deal, decades ago.
In the POSIX model, you have all the signals. A well-written program will receive them, know what they mean, and handle them. It takes very little work to set up signal handlers to recieve power events, or RAM-overrun/underuse events, from the kernel. The difference in the Embedded world is, most C-/or Assembly- coders were expected to know it, per the specs of the Embedded Application. Onboard computers for Rail-Transportation, for example, have had an operational - and safety-critical certified - power management model very similar to the way Apple treat the Phone Services, for decades.
Most pre-DOS computers had means of managing such things too. My old Magnum Pizzabox would tell me when the LPT lines went high/low, in case the lineprinter drawing current from it was suddenly, actually, on fire. (I kid, but then again, not really..)
And now what is happening is Ubuntu is getting an Embedded tattoo, too. An easy thing for Linux; Linux has been Embedded friendly, for a long time. (If you travel anywhere by Rail in Europe, the UAE, Canada, and many other countries, Linux is keeping your train on the track.. and has, for the last 10 years, been running big machines elsewhere, 24/hrs. day, 365, year after year, power on and frequently .. off ..)
How many Ubuntu TVs were sold?
This guy lives in a reality distortion field beyond belief.
2. In 2011, they sold 8-10 million, and in May said they were on track to reach 20 million in 2012. http://www.omgubuntu.co.uk/2012/05/ubuntu-to-ship-on-5-of-al...
3. In October of 2011, Dell started featuring Ubuntu in over 200 retail stores in China. http://blog.canonical.com/2011/10/27/retail-stores-in-china/
So it's entirely possible they could meet the 20m number.
In fact I'm already looking to replace my perfectly usable HTC phone for a Nexus so I can install the image Ubuntu is supposed to release in a few weeks.
I stopped using Ubuntu on my laptop because there are better alternatives out there. But I think Ubuntu can really shine as a mobile OS, and it will almost certainly be better than Android or iOS for my purposes.
Can you give specific examples? I'm genuinely curious.
Configurability is a huge plus for me. Could you imagine recompiling your phone's kernel? Configuring your phone with dotfiles? Serving webpages and email? Not everyone's cup of tea, and I hope there are more user-friendly options available, but having that power is enticing.
I'm looking forward to better multitasking, and multiple user accounts. Also a more open hardware ecosystem, such as USB and HDMI ports, docks, chargers, USB keyboards, maybe a laptop "shell" I can insert my phone into?
If we look at the "dockable PC" side of things, the developer tools are unparalleled.
And of course free software. CyanogenMod is pretty great already, and Busybox too, but I think a GNU presence will only help. Maybe I drank too much of RMS's koolaid.
Other than that, I don't really see the use case (for me personally) for most of what you're saying. I mean, vi/emacs are not useful on the phone, because it doesn't have a real keyboard. Since it doesn't have a real keyboard, I can't do real things with it, so there is no need for a lot of customization (e.g. with dotfiles).
Don't rely on your "hacking phone" for emergencies, at least until you can verify it will work.
1) I'm alone 2) I'm not near my car (I carry an old flip phone in the glove compartment for emergencies) 3) I've messed up my phone sufficiently enough that 911 doesn't work but most other things work fine
FWIW, you can do all these on Android in some form or another.
After Ubuntu, I can imagine a Debian phone, or an Arch phone, or even an LFS phone. But right now, I can't. (Unfortunately, I don't think Pat Volkerding can ever support a Slackware phone. So we'll see if I ever move away from Ubuntu on mobile. Right now that's all moot though because none of it exists yet.)
The one thing I'm afraid of is how resource-intensive certain classes of software are. I tried a netbook over a year ago and wouldn't want that kind of performance except in emergencies, even today every single IDE I run is a slow piece of crap on last year's maxed out macbook air.
I'm not sure the reality will turn out as good as the idea, at least not for several years yet. That'll give Canonical time to catch up to Microsoft, the latter of which isn't really popular because they've shown how easy it is to botch the idea.
If your IDE isn't using your whole hardware, it's probably not doing enough.
I spent the long NYE weekend in Washington, DC. On Friday night, my phone was stolen. This was, obviously, rather painful and distressing, not to mention inconvenient (being alone in the middle of a city I don't know very well, suddenly cut off from maps, yelp, wiki, etc.
Luckily, back at the hotel I had my laptop, from which I was able to remote wipe my phone, get contact info for my carrier to get service shut-off, and file an insurance claim to get a replacement phone.
The moral of this story: Beware of excessive convergence, and always have a Plan B.
I'm debating a yearly/bi yearly replaecment of a MBA instead of a bi yearly/triyearly replacement of the maxed out top of the line MBP.
How much is this going to hurt with two ACDs plugged into it?
This says they do.
I do not want any content from my phone manufacturer, much less operator. From experience, this is almost exclusively overpriced crap, useless apps or branding.
And the fact that you had no UI library in the NDK (this might have changed since 2.3) meant I was going nowhere with that on that front.
You still have to go through JNI and use Java/XML for the interface, but the NDK has been growing to encompass more and more with each release. (And in my opinion, keeping a standard way for making the actual UI users see is important for consistency. It's more difficult to enforce that with purely native apps.)
If they can make this phone feel like an iPhone in terms of smoothness and keep a nice consistent feel then this might have a chance of being a premium choice over android.
http://www.theverge.com/2013/1/2/3828266/ubuntu-phone-os-han...
Android can be beaten away.. but not the same can be said about to IOS.. its all about brand.. its a tough fight..
But android market share, is not much about the consumers that want it because they need..(theres no sentimental decision about it) its about the device makers, making the decision for this share of the market..
if ubuntu can convince device makers to put that in their phones.. (with the help of some good apps, so theres no cultural shock).. i think people will not care much..
and for developer comunity, i think is better.. we need to get free from the centralized app market model from apple.. whoever delivers that is my friend :)
An experience that is more user friendly than iOS and more user friendly than Windows Phone will be hard to do. Beating Android might be easier. Furthermore, very few people with money haven't already used a smartphone, so they'll be aiming for the market of people who have no money. Not exactly lucrative, and Android has distinct advantages there. Android can be cheaper than Ubuntu because they can monetize mobile advertising better.
In short, this effort will totally fail. There is no compelling reason to have a 5th player in the smartphone market, and given Ubuntu's track record with desktop UI, I don't think their effort in mobile will be terribly inspired.
Unity and accompanied py-qt based stuff is crap being pushed.
I don't see why to expect something different form a repetition of the same "strategy" - pushing half-baking crap in a rush.