In Linux Land, every year seems to start with a wave of prophecies that this will be ‘the year of the something’, usually the desktop. These predictions almost universally turn out to be over-hyped.
However, 2013 could be the exception. With three new mobile operating systems – Firefox OS, Ubuntu and Sailfish – due to launch, maybe this actually will be the year of the Linux phone (or more accurately: the year of the Linux phone that isn’t Android).
- Can Firefox OS be the new Android?
As we write, the first phones running one of the new systems have just gone on sale: Geeksphone’s Firefox OS devices. Our sister magazine Linux Format spoke to Jonas Sicking, who is working on Mozilla’s mobile offering, to find out what we can expect…
LXF: How did you personally get started with free software?
JS: It was a long time ago! When Netscape became open source, in 1998, I thought, “Wow, that’s really cool.” I started looking at where the Mozilla project was, clicking around on its website and I found the source. I was like, “Wow, I understand this!”
I was a web developer at the time and there was one technology that I wanted to use. There was some code to support it, but it wasn’t actually working. I thought, “I wonder if I can make it work?” I got more and more involved, and then I got an internship at Netscape. Once I finished school, I joined Mozilla, and I’ve been working there ever since.
LXF: What’s the culture like?
JS: I really enjoy it, even though I’ve been there for a very long time. It’s very engineering-driven. It’s actually quite weird for us to be working with mobile phone manufacturers. When you’re doing code on mobile phones, you have to work with partners much more, so we have these external constraints that aren’t coming from our own engineers, and that’s very unusual for us.
Usually, if you want to work on something at Mozilla, you start talking to people, and generally, if they get excited about your idea, you start doing it. It’s a very bottom-up process, and we’re very focused on doing the right thing. There’s never any demand that “we have to do this because it makes us more money” or anything like that. So it’s very engineering-driven and very open. You can go and talk to anyone.
LXF: Did the idea for the phone come from within Mozilla, or is it something that the manufacturers wanted you to do?
JS: It’s something that has been an obvious next step for a long time. The browser has slowly developed from being a document-rendering tool into something people write web apps for, so it made sense to think that the browser was now enough of a platform to be an operating system. People were talking about what it would take, and what was needed for Firefox to become an OS, and at some point those discussions turned into “Let’s try it!” The actual code started happening about a year and a half ago.
LXF: Are there any plans to create a desktop computer for the OS?
JS: Yeah. Firefox OS essentially consists of two major parts: the apps platform, which allows you to get apps, and gives you this sense of having something that’s actually installed; and the pieces needed to make an operating system, such as interaction with the phone and getting Wi-Fi working.
The apps platform is intended to be completely cross-platform. We actually started working on it on the desktop, but then we saw so much interest in mobile in general – I mean, mobile is clearly where things are moving – so we decided to focus on what we could do for apps on mobile.
That was when Firefox OS started – it was the natural path to go down. The apps runtime we use also works on both Firefox for Android and Firefox for desktop, so you can write a single app that runs on all three platforms. The goal is that the app will run not only on Firefox OS, but on ChromeOS and Tizen, and natively on Android as well.
LXF: Three new open source mobile platforms have just been announced – do you see them as complementing each other or as competitors?
JS: I see them as experiments, and we’ll see what will work, and what users will like, and they may be complementary or we may end up with one model that works better – and that’s what will survive. One of our goals with Firefox OS is that apps should be cross-platform. You shouldn’t have to write an iOS app, an Android app, a Firefox OS app…
You should just have one web app that will run anywhere. A lot of people who are building other mobile platforms are also looking at web apps, so we’re looking at co-operating with them and making sure we’re using the same standard.
LXF: So you’re working with teams from other organisations?
JS: Yes. We talk to Ubuntu – I can’t give any promises as to what will happen. We’re talking to Samsung, for example, because it has the Tizen platform, to make sure our apps work on there, and Google is involved to make sure apps also work on ChromeOS.
LXF: We’ve heard that you’re targeting low-end phones. Is that because you see an opportunity in the market, or is it a long-term philosophical goal?
JS: I’m not a business-oriented guy, but I think there’s an opportunity there right now. It’s definitely not a long-term goal to only target low-end devices – there’s no reason why web technologies shouldn’t be able to compete with very high-end solutions.
We’re not targeting low-end because we can’t do better; there’s an opportunity in the market right now, and that’s where we initially found our partners. It’s always a risk to launch a new platform and doing it low-end saves money.
LXF: How receptive were hardware manufacturers to the idea of a Firefox mobile phone?
JS: Actually, very! It’s not been hard at all for Mozilla to find partners – both on the carrier and the hardware side. I think everyone has the expectation that web applications are where things are heading, and so it’s just a matter of who manages to build a good enough platform first.
I think people have been very willing to give Firefox OS a try because Mozilla has a very good reputation in the web world. People definitely believe that what we’re doing has a very good chance of working.
LXF: One perception of JavaScript – and web apps in general – is that they’re not as quick as native apps. Is this something you’re finding on low-end devices?
JS: If you look at timing in an application, it generally isn’t the C++ logic. If you look at a high-end game, it’s often not the game engine that’s the most critical bottleneck – it’s things like rendering. If you look at productivity apps, such as an online office application, it’s not the logic that’s the major bottleneck, it’s things like IO, network and so on. JavaScript is getting very competitive. Certainly some things are hard to do, but a surprising number work just fine – it hasn’t been a limiting factor.
LXF: What are you most proud of?
JS: I’m very pleased that it’s not just an open source project – the solution we’re building is very much an open platform. Anyone can put up a web store, for example. You don’t even have to put your app in a store at all – you can just promote it through your website. It’s very nice how that has ended up working.
I’m also pleased with our focus on security. We’ve really tried to transfer the sense of security people have on the web into apps, so you can go to any web store and install any app and know it’s safe. If that app wants to do some privacy sensitive things, we’ll ask the user.
We’ve kept the number of questions fairly low and made them easy to understand. We don’t ask things like “Do you want to give TCP socket access” or even “network access” – people don’t really know what that entails. But questions like “Do you want to allow the app to access your pictures?” People understand that.