Mozilla on Firefox OS: 'what we're doing has a very good chance of working'

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?

Jonas Sicking 2

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.