A couple of months ago I wrote about having bought a Geeksphone Keon, one of the early developer devices for FirefoxOS. I haven’t done much—all right, any—developing with it, but I have continued to use it and update it occasionally on the Firefox 1.2 developer track.
Some of the changes so far:
Navigation and browsing have got quite a bit faster, kinetic scrolling is improved, and the on-screen keyboard has become more reliable. There’s evidently been a lot of tuning going on. As a pure web-browsing experience, this device is now really nice.
I wrote, “Anyone know what audio recording and playback latencies are like?” — well, it turned out that audio capture was not supported at all in the device as shipped. Support is now appearing in the Gecko 26 release branch which Firefox OS 1.2 will be based on, and basic audio input works on my device now.
Strangely, the on-screen keyboard has changed from showing a mixture of caps and lower case (i.e. lower case on each key until you hit Shift, then switching to caps), as on Android devices, to showing only caps as on iOS. I wonder why?
The 1.2 track isn’t all that reliable at the moment. For example the email client doesn’t work on my device, though that doesn’t actually bother me because the Fastmail browser interface works very well on it. Screen rotation seems to be taking a holiday, and the notifications pulldown doesn’t always want to go away when I ask it to. Very interesting to keep an eye on though.
To get this out of the way first: this is clearly intended to be the lowest-end device that Firefox OS apps will need to support. It’s distinctly bargain-basement.
By far the best thing about this hardware is its soft-touch orange plastic rear cover, which is nice to look at and delightful to grip.
(Digression: it’s interesting how many expensive smartphones are unpleasant to hold. The iPhone 4 and 5 are sharp and angular, Samsung’s premium phones feel alien and tacky, and Nokia’s Windows Phone devices that I have encountered have been either very hard around the corners or grossly big. HTC is the one company that seems to have focused on how to make a phone feel natural in the hand. Not that it’s done them any good in the market.)
The loudspeaker isn’t bad, in a kitchen radio sort of way. The headphone jack is not so good. The battery is removable; the mini-SIM and micro-SD card slots are easily reached.
The worst thing about it, by “modern” standards, is the screen—but then, good screens are expensive. My first impression was pretty bad because the first thing I tried to do with it was use it outside on a sunny day. That doesn’t work so well.
Basics of the OS
Starting up and running a current Firefox OS build (as of June 2013) is pretty painless. It boots quickly into a sensible homescreen arrangement. An over-the-air update arrived just after the phone did, and installed without trouble. SIM and SD card are recognised, it makes calls and sends texts, and the wifi is more stable than my usual phone. (Much of this stuff is borrowed back from Android.)
The browser is as you’d expect from Firefox; there’s a Nokia maps app—though I didn’t manage to get it to recognise my location—; app installation from the marketplace is painless. Not that there’s much to install, and I’ve no idea how billing will work, as it seems to be free apps only at the moment.
It works well as a music player. My kids rapidly requisitioned it for that purpose, resulting in embarrassment at work the next day when I hit the wrong button and got Harlem Shake at top volume. Kids, what were you thinking? That song is over four months old!
Email is easy to set up and pleasant to use.The camera’s crap, but the camera app appears to be OK.
Angry Birds is not available.
I’ve no idea how provisional the general design of Firefox OS is, but I like the basics. You get a homescreen with a clock, a few quick access buttons, and your wallpaper. Swipe one way to get a grid of installed apps, the other way to get the marketplace. Swipe down for the now-traditional translucent notifications pane. It’s simple and it works fine. I like it.
Navigation design within apps is less satisfying. The sheer inclusiveness of a browser-app-based phone means that many apps are not going to be well-adapted to a common platform design. The principle seems to be, mainly, to hope that there’s enough in common amongst mobile versions of websites to avoid too much user confusion.
There are a lot of half-width buttons at screen edges, which I assume are intended to take advantage of the fact that there’s more “effective” touchable space there. That works, kind of, but the Keon’s touchscreen isn’t responsive enough for me to trust it. (Similarly, using the on-screen keyboard is something I anticipate without much joy.)
Scrolling and transitions are currently just functional. There’s no bounce scrolling, and kinetic scrolling sometimes stops working or works only in one direction. Interactions like these are sometimes jerky. I have confidence in the Mozilla developers’ ability to sort out things like this.
Firefox OS is unusual in using a distinctly humanist font. Appropriately, it seems to be an evolution of the “anti-Helvetica,” FontFont Meta, from the same designer (Erik Spiekermann). The Firefox version (called Feura) is tuned for small-screen legibility, and it looks lovely. I do worry that I might tire of it; the less mechanical and more distinctive a font, the more likely it is to wear you out eventually. Let’s see.
Would I buy it?
Er, I did buy it.
But would I buy it as my only phone?
Not at the moment. There’s potential, though, and I think it may depend on how practical I was feeling. You might expect this to be a fun toy that isn’t particularly useful, but the opposite is true: it would be quite workable for down-to-earth business use, it just currently isn’t that much fun to use. Still, if my other phone died, I could certainly get by with this one.
Hardware-wise, I’d quite like a phone from this manufacturer, with this case, with fancier screen and innards. It’s not the most elegant object, but I do rather like it.
But this isn’t a consumer product, it’s a developer device.
Will the platform succeed?
Here I’m moderately optimistic.
I hope improvements are possible to the general slickness and smoothness of the device, because there’s definitely some work to be done there. But the functional basics are sound, and I think the fact that your business is already developing for this device (almost) could work out for it.
The OS seems designed to be minimally obstructive for everyday communications work, and it is complete enough to do that work. I appreciate it and I am keen to mess with it. Anyone know what audio recording and playback latencies are like?
When I first read about Firefox OS, the ongoing project to make an operating system for phones and tablets that runs entirely in a Firefox browser, I thought: what a marvellously futile idea.
The world isn’t short on niche, provisional, or failed experiments in operating systems for phones: Sailfish, Tizen, webOS, BB10, Ubuntu-for-phones, Meego, (cough) Windows Phone 8… Firefox OS is aimed at low-end phones—just the sort where you’d expect the hardware efficiency and limited data requirements of offline native-code apps to offer a big advantage over the browser. So I was ambivalent about its advantages to the user.
The developer side is interesting, though.
C++, the Portable Choice
Look at the current mainstream phone platforms.
For iOS, the “native” development language and framework is Objective-C with Cocoa. For Android, it is Java. For Windows Phone 7 (I do mean 7, rather than 8) it was C# with Silverlight or XNA frameworks.
These three are totally mutually incompatible. You can’t reuse Objective-C/Cocoa code on Android, you can’t run Java on iOS, and the Windows Phone managed environment was incompatible with both.
But every platform has an embeddable web browser, so besides native apps, there have always been somewhat cross-platform HTML apps—often developed using tools like PhoneGap. These aren’t always popular with users, something widely acknowledged when Facebook rewrote their HTML-based iOS app as a native one.
The tension is that while native apps usually work better than totally cross-platform ones, it is desirable to be able to reuse at least some of an app’s business logic across platforms. So developers have increasingly been shifting business logic from the platforms’ primary languages to C++. Google made increasingly more of the Android frameworks accessible from C++ using the Android NDK; Microsoft switched to C++ as their recommended language when developing for Windows Phone 8. Objective-C apps can incorporate C++, so the same code can serve across all three platforms. (How interesting that C++ should have become the portable choice in preference to Java or C#.)
This situation isn’t wholly satisfactory, not least because C++ is a difficult language to learn to write reliable, comprehensible code in.
The Web Angle
Now there are still all sorts of holes and potential pitfalls here. But you’ve got to admit, it’s a pretty interesting proposition.
So I bought one of the Firefox OS developer devices to have a look at. In my next post I’ll make a few notes about the current state of the platform, and try to guess whether any non-developer would ever want to use it.
My Dad asked me recently what sort of computer he should buy to replace his ten-year-old HP laptop. And what sort of phone should he get to replace his old Nokia? And while I was at it, should he get one of those tablet things?
There are a lot of possible options at the moment, because all kinds of devices from smartphones to traditional PCs have become broadly capable of doing the same work, and because a whole raft of new Windows 8 laptops and convertibles have just arrived to clutter up the shelves.
Therefore I’d suggest mostly ignoring the nominal capability and specs of any device, and considering instead how it feels to hold and operate and what ecosystem it is part of.
Let me explain, and then give some more concrete advice.
This slightly absurd term describes a set of services and systems that work together, many of which are likely to have been provided by the company that made the device’s operating system.
Increasingly, when you buy a device, you are making a decision to participate in its maker’s ecosystem: it will make your life easiest if you are prepared to use backup, file and photo sharing, music download, email, mapping, browsing, app installation, and other services all from the same supplier.
For example, if you buy an Android device, you’ll be most content if you also use Google mail, maps, marketplace, etc. Buy a Mac or an iPhone, and you’ll have the happiest time if you use Apple services wherever they exist. Windows 8 and Windows Phone expect you to have a Microsoft account and to use it. If you have two devices, say a laptop and a phone, they’ll get on best if they’re both within the same ecosystem as well.
You can make a conscious decision to mix and match—I do that myself, somewhat, because it pains me to side with any one megacorporation more than I have to—but it can be heavy going. If the idea of understanding what you’re doing and why you’re doing it appeals to you more than having an easy life, then install Linux and subscribe to no single ecosystem; I’ll be happy to help out. But I’m guessing you don’t really want to do that.
So no, the usual thing seems to be to decide which company you dislike least, then let that one have your credit card details and as much goodwill as you can muster. And that means picking one of: Apple (with OS/X and iPhone/iPad), Google (with Android), or Microsoft (with Windows and Windows Phone).
Modern computing devices, from smartphones to PCs, are increasingly touch-driven (either through a multi-touch touchpad or a touchscreen), portable, and versatile. The way you hold and interact with them does matter.
I’d strongly suggest you start by trying out the best devices you can find from each ecosystem, hands-on, either by borrowing from a friend or in a very relaxed shop. Decide which one you enjoy the basic interactions with the most.
If the design, interaction and animation (and materials and heft, for specific devices) please you every time you pick it up, you’re probably going to be happy with it. If they annoy you, you’re not. If it’s ugly and inconvenient now, it’ll be ugly and inconvenient in five years’ time.
These are the things you can buy at the moment.
Laptops you know. They run either Windows (if PCs) or OS/X (if Macs). Some of the Windows 8 ones now have touchscreens, but not all of them (and nor do any of the Macs).
Tablets such as Apple’s iPad, the Google/Samsung Nexus 10, or the Microsoft Surface are slatelike touchscreen devices in which a separate keyboard is strictly optional (there is a “virtual” one on the screen). They typically run one program at a time, full-screen, rather than having multiple separate windows side by side, and the programs are redesigned for touch rather than mouse operation (the buttons are bigger and they have fewer menus, for example). All software is installed from a central “app store” run by the operating system manufacturer.
Smartphones are small tablets that can make phone calls. Most mobile phones nowadays are smartphones.
Things to bear in mind
A modern smartphone is a computer. It can do practically anything, but it’s sometimes fiddly because of the small size, and it has amazingly awful battery life compared with a classic mobile phone—be prepared to charge it every day. If you buy a nice new phone and make use of it as a handheld computer, you’ll probably find you use your laptop less.
Tablets overlap with both smartphones and laptops. If you have a smartphone, the laptop or tablet is likely to take jobs like “reading long documents, and doing anything that needs a lot of typing”. Don’t buy both a tablet and a laptop, just make sure whatever you get has a good clear screen and you can stand it up on a desk and type with it.
Proper keyboards are available for every kind of tablet: you can always get something you can either plug in or attach wirelessly. But convertible tablets (with a keyboard stand included, like the Asus Transformer, right) are nice too. They’re very like laptops to use and can be folded up and packed away the same way, but you can also pull off the screen and sit on the sofa with it. Most run Android.
There are also small tablets, but… While the iPad, Nexus 10, Transformer series, and Surface are in the 10-11″ diagonal range, there are also several in the 7-8″ range like the iPad Mini or Nexus 7. The small ones are natty and better for carrying around, but less good for sofa-surfing and can’t really replace a laptop.
If you’re buying an Android device, look for Android 4 or newer and get a Google Nexus if you can. They sell a phone (the Nexus 4), a small tablet (Nexus 7) and a big tablet (Nexus 10) and they’re all pretty good. Being Google’s “own” devices, they have good compatibility and more updates. You can’t generally get them through mobile network contracts though.
If you’re buying a Windows 8 laptop, get one with a touchscreen. Windows 8 makes very little sense without a touchscreen. You can still use a mouse as well.
Windows 8 is extra-confusing because of the existence of both Windows 8 and “Windows RT”. These are essentially the same, except that Windows RT can’t run any “legacy” Windows software apart from Microsoft Office: it only runs touch-optimised full-screen apps from the Windows app store, of which there are not all that many available yet. Windows RT is found on tablets and some laptops. It’s a perfectly capable operating system, but there’s a big risk of disappointment if you want to run arbitrary Windows applications from around the internet and discover too late that you can’t.
So the range of applications available matters, but it’s not the be-all and end-all. Off the top of my head: Apple’s iPhone has the most apps, then Android phones, then the iPad, then desktop operating systems (Windows, OS/X), then Android tablets, and in last place Windows Phone and Windows RT. Numerically the difference from first to last pretty big, but it can be oversold: in practice you won’t find many things you can’t do, nor run out of new stuff to try out, on any of them.
You can safely ignore any review in which the star rating appears to be correlated to how fast the computer’s processor is. That’s practically irrelevant nowadays. Do test how smoothly the screen scrolls and zooms though.
Don’t forget to check whether you use any software that absolutely must continue to run on whatever you replace your laptop with. In most cases, all you need is software that does the same sort of thing (it doesn’t have to be exactly the same software) but you don’t want to get caught out if there’s anything specific you rely on.
The whole mobile-network contract business is an extra layer or three of bafflement that I can’t really help with. I generally buy hardware unsubsidised and stick a pay-as-you-go SIM in it.
Give each of the ecosystem contenders a test run, and then, from the options below, pick the phrase you most agree with and read that bit!
(Although by the time you’ve given each them a test run, you may well already know what you want. That would be a good outcome.)
I’m totally ignoring price here, although sadly the most interesting options almost always turn out rather expensive.
“I really like the way the Apple things work” Well, that was easy. If you’re dead set on having a laptop or you want as much flexibility and control as possible, then you want a MacBook Air (probably the 13″ size, although the keyboard is just as titchy as the one in the 11″). Otherwise, get an iPad and forget about the laptop. Either way, buy the laptop or tablet first, then think about phones (the phone to get is obviously an iPhone, it’s just a question of which one and that basically comes down to price).
“Windows 8 and Windows Phone appeal to me, and I don’t think of Microsoft as an objectionable enemy” You’d probably find a Windows Phone 8 phone (any one, though the Nokia Lumia 920 has the most lovely screen) and a touchscreen Windows 8 laptop a good combination. Look at the Lenovo Yoga 13, which is a fine laptop that I predict will sell half-a-dozen at best because of the weird way it’s being displayed on a stand in the shops (the screen flips back to make it resemble a large and heavy tablet, but it’s really a laptop). Or consider the Samsung Series 5 Touch laptop or possibly the ATIV SmartPC convertible. Although Microsoft’s Surface RT is a beautiful object that I’d like to recommend, it isn’t yet quite the laptop replacement it thinks it is. There’s a Pro version due out in a few weeks that might be worth a look, though.
“I use a few Google services already, and I’ve tried at least one Android device I thought was nice to use” An Android tablet convertible like the Asus Transformer series can in principle replace a laptop quite well. Try one out, but if you’re thinking “hm, maybe Android might work” it’s probably cheaper to give it a go with a phone first. Google’s Nexus 4 is the obvious choice if you can find one.
“Those touchscreen laptops and tablets are all a bit small, I like my bigger PC” There are some reasonable touchscreen laptops with somewhat larger screens, including several from HP like the Envy TouchSmart 14. I hesitate to recommend one because I’ve actually never seriously used Windows 8 with a touchscreen on a larger screen. It might be a bit tiring. Do try it though.
“This is still all too complicated” Then stick with what you’ve got. The new Windows 8 machines have only just come out, and everything will look a bit simpler in six months’ time when the disasters have subsided and the new-fangled things have got cheaper.
What would I do?
If: money was no object; I had no corporate loyalty and lacked my affection for open Unix-type systems; I wanted to be able to do anything except programming; I didn’t have a laptop, tablet or smartphone already; and I didn’t mind if my phone was too big to fit in a small pocket… I’d buy a Nokia Lumia 920 and a Lenovo Yoga 13.
That’s because I like the Windows 8 look and feel, the different Windows 8 devices work well together, and both of these are attractive well-made objects that are a pleasure to use. I’d pick the Nokia over the otherwise excellent HTC 8X because of its better screen and camera and the inclusion of Nokia maps with navigation.
But in real life, I couldn’t afford that. If I wanted to keep the price down a bit and avoid being too locked in to any one ecosystem, I’d look at a Samsung Series 5 touchscreen laptop and a second-hand unlocked Google Nexus S phone from eBay. But I would go and have a play with a Surface RT tablet in John Lewis first, just in case. It’s a nicer physical object, for all its limitations.
And if money was the object—if it was the main thing that mattered, but the other conditions were the same—I might buy the entry-level full-size iPad and nothing else. It’s much cheaper than a touchscreen laptop and has a lot of software. I don’t really go for the visual design, but it’s cheaper than the alternatives I do really like, the basic interaction and feel are fine, and having all those apps available counts for a lot.
Of course, being a typical human creature I’d really do none of the above. I’d just buy whatever I happened to like the look of on the day and rationalise it afterwards. I trust you’ll do the same!
I updated my Nokia 700 today. It’s an unlocked, unbranded phone running Symbian Belle, that was advertised as having OS updates in February and April this year—but those updates never arrived. I eventually lost patience, and made the updates using underhand and possibly illegal tools.
In an earlier post I said that I wasn’t too bothered about OS updates. For the most part that’s true. I don’t mind that my Android tablet (the original Galaxy Tab) hasn’t had an update since Android 2.3. I appreciate that Samsung gave some sign of having actually looked into whether an update would run well on it and decided that it wouldn’t. That puts me in a better position than friends with the iPhone 3 who had their devices rendered into sludge by an iOS update too far.
But Nokia—they really worked hard at winding me up. The February update didn’t just piddle about with the core OS, it also added some applications that I was genuinely interested in trying and that couldn’t be installed any other way. The April update didn’t mess about either, it actually increased the phone’s CPU clock speed. (How? Why was it lower to begin with?)
And for UK unlocked devices, they had two product codes: evidently the good and the bad. The good got the updates, and I had the bad. The bad didn’t get the updates.
So having waited until late July, I lost patience and re-flashed the thing.
I’m a bit cross about it because of, well, being put to such lengths and made to feel like I actually cared, about something so trivial.
On the other hand… a Nokia 700 with the latest Belle FP1 is a really nice phone. It’s hard to stay cross for long.
Neat, thin form factor, excellent screen, expandable storage and replaceable battery, physical buttons all well placed. Yes, it’s immaculately built… in Hungary, where Nokia laid off most of their workers at the end of last year.
With Belle FP1 and the faster clock speed, it’s smooth, straightforward and enjoyable to use. Sure there are some extra things I could still do with (integrated notifications of new email for example) but it’s for the first time a phone I could actually recommend to friends who liked the size and construction… running on an operating system cut adrift in February last year and effectively canned with Nokia’s last round of layoffs.
There aren’t as many good apps as on other platforms, but it does have a number of smooth Qt-based ones, including a few very slick and useful apps from Nokia, and it’s an attractive device for a Qt developer like me to think of developing for… if only there was an ecosystem around it and if only future devices were compatible… and if Nokia hadn’t abandoned Qt in their platform strategy twice, once with the switch to WP7 and again when refocusing on S40 a month ago.
Yep, the 700 is a wonderful example of what might have been.
I’m tempted to buy another as a spare, just because I like it so much and its future is so plainly bleak. I wonder how many of the services on it would stop working if Nokia went under?
(All over the internet for the last couple of days, but for best subhead I must link to the Register.)
Being a contrary type, I recently bought a Nokia 700. You can see it on the top of the pile in the photo on the right.
It runs Nokia (Symbian) Belle, an unevenly-supported platform that started at a disadvantage and is now to be abandoned by a dying company. The software is not this phone’s high point, though it’s better than you’d expect from that description.
The hardware is fantastic. It’s just the right size, shape, and construction. I resisted the iPhone and friends for years because they were so clumsy, but the 700 is small and thin enough to fit in any jeans pocket while still being entirely manageable with the Swype keyboard. (There are small Android phones, but they’re all horrible.)
And it’s a more beautiful object than any other phone I’ve seen. It isn’t any nicer to hold, or more practical: there are Android and WP7 phones that are better in the hand, and the 700 has no parallel lines in its design and so is impossible to balance satisfactorily on any edge. But it has the air of a weird tablet passed to us by aliens in its thinness, lightness, solidity, and amenability to single-handed hold and operation.
What Nokia Did Back Then
The way Nokia made their mark, back when mobile phones first became popular—in the mid to late 90s—was by producing desirable hardware with a recognisable operating system.
Nokia pioneered the idea of a consistent operating system for phones. They made a series of devices all working in much the same way, at a time when others were producing new interfaces for every device, and they had a sensible and comprehensible structure for information and functions on screen.
Nokia quickly became the phone you could actually understand, while producing the desirable hardware that made them the phone you yearned to own. This is just the combination we see in Apple now, and it’s the combination that Nokia lost sight of during their years of pushing capable but complex Symbian systems.
Of course, Nokia have now managed to pull Symbian back into a position where ordinary people can enjoy it—four or five years too late.
Our Frightful Infrastructure
I had never used Symbian before buying this phone.
I had used Windows Phone 7, and I liked it. So I could see where Nokia were going and why.
I knew that the WP7 ecosystem is entirely owned by Microsoft. You get your new phone and switch it on; you’re asked to register a Windows Live account (or whatever they’re calling it now); and you’re entirely managed within Microsoft’s network of services. Music, games, video, support services, what have you: it’s all Microsoft.
What I hadn’t realised was just how much infrastructure Nokia already had around Symbian. You get your new Nokia 700 and, as soon as you try to do anything acquisitive with it, you’re asked to register a Nokia account. You use entirely Nokia services for music, games, video, support services, and what have you. And they work quite well.
As an ignorant observer, I had thought that Nokia was deferring to Microsoft in these services because they didn’t have them already. I now realise the switch to Microsoft services is simply a change of landscape. They already did have all of these things working fine.
But the way Nokia ran these services was terribly labour-intensive. Their dependency on mobile phone carriers meant they had to organise separate billing and delivery plans several times over for every region. Delivering OS updates appears to be an almost impossible task: my phone is still waiting for updates that Nokia announced, and I know that other editions of the same phone received, over four months ago.
I’ve been in touch with Nokia support several times about failed music downloads and missing OS updates, and they’ve never been able to tell me anything useful about what was really going on. The system has been creeping past its operators on both flanks.
Can Nokia recover?
No. Though everyone is saying that, so I’m hardly original.
Nokia have clearly discarded Symbian, which seems to be both expensive to run and without a place in the market. (I wonder how long the services for my lovely phone will keep running for.)
That means they have only two totally incompatible platforms to manage, instead of three: S40 running Mobile Java, and WP7 running managed .NET code.
WP7 is not going to succeed for Nokia. I like it, but not only does it look like a hard sell for consumers, it’s also an operating system that people talk about more than they talk about the phones.
What I mean by that is: Nokia are trying to sell phones with a nearly two-year-old operating system called Windows Phone 7. Delightful though it is to use, it has no very immediate appeal to consumers in terms of immediate visuals or capabilities so the publicity talks about the operating system rather than simply presenting the phones. We know that the phones are running Windows.
Meanwhile, Microsoft are already talking up Windows 8. Anyone in a position to influence reluctant consumers is probably already thinking of WP7 as a strange and not necessarily compatible predecessor of Windows 8, whatever that turns out to be. (We’ve seen a lot of Windows 8, but it’s proposed that it will run on phones as well as PCs and tablets [isn’t it?], and we haven’t seen any of that yet.)
Nokia are in the awkward position of betting their entire business on explicitly promoting an operating system that seems to have been already superseded by its producers.
No, I think they’ve had it. It’s been a long time coming, but I just don’t see the way out. Let’s hope I’m wrong, because it’s terribly painful to watch a strong European company fall apart because they couldn’t understand the nature of competition from a formerly minor American rival. Damn it.