Hacker News new | past | comments | ask | show | jobs | submit login
Yesterday I Wrote My First Firefox OS App (kvz.io)
204 points by kvz on Aug 12, 2013 | hide | past | web | favorite | 122 comments



ZTE phones are coming this friday for $79: http://stores.ebay.com/ztemobileus

This is the phone that was launched in Spain. The Ebay version will be vanilla FxOS, unlocked and upgradable!


When you can buy something that looks like a decent(512MB, 4.5",dual core) android phone[1] at less than $100, and many similar models are coming from china , why bother with this phone ?

[1]http://www.pandawill.com/simdo-d98-smartphone-mtk6577-dual-c...


You've never used Android 4.3 on 512 MB of RAM, right? I have and it is unusable. The base OS and the base apps, like the stock Android browser do run, but nothing is left for other apps. A minimum of 1024MB is needed.

Also that phone is $100 in the US. To get the price in EU or most other markets multiply with an amount between 1.5 and 2


Gingerbread(2.3) on 512MB works fine.Yes 2.3 isn't the latest, but it offers much more than FxOS.

The price is the price at a Chinese webstore including shipping. Not sure about european custom fees, but wouldn't they apply to buying on ebay ?


An android phone without 'Google Apps' does not offer much more than FxOS in my opinion. I test drove an AOSP build of android for some time, without Google Play and other 'non-free' Google apps, and there's not much you can do.

Very few application vendors provide .apk's to install outside of Google Play and they don't provide them from other markets available internationally. f-droid has some applications but not a huge amount.

Basic functionality like Facebook, Twitter, 'sharing' photo's to social media,etc don't work if you can't install those apps.

What I ended up doing was installing Firefox (Mozilla provides apk's and it's available from f-droid) and using web apps.

Firefox OS on the other hand provides all this functionality out of the box.


Everyone is invited to contribute to F-Droid: https://f-droid.org/wiki/page/How_to_Help


Because it's not the price that is at the heart of the debate. FxOS is an attempt at an alternative to the current mobile OS behemoths in iOS and Android and their anti-consumer features and policies.


Does that debate interests plain consumers ?

Edit: and wouldn't it make sense to fork a version of android, like amazon did, to achieve openness and privacy , than to start over ?


Not in the current stage of FxOS, since Gaia (the UI) seems to fail to deliver anything 'new' to a plain consumer.

For FxOS to really stand out in developing countries it would require a lot more than what it is providing now. In my opinion, since we are partly already doing communications for free trough Facebook and Twitter, something like P2P connections between the FxOS devices does sound doable for me, both for text and voice. In addition, if you could implement something like Twilio for actual calls it would strip down costs both for mainland and international calls. For reference, where I live calls trough Twilio are six to sixteen times cheaper than what my carrier can provide. This way, you would also avoid the need to sign a contract with a carrier. I believe that this form of carrierless phone would appeal to the crowd the FxOS is trying to reach.


I'm not trying to be rude but do you know anything about FxOS and its goals and architecture?

1. Does the current admission by the US government of comprehensive NSA spying on the entire internet interest plain consumers? No, it doesn't. "Plain consumers" don't understand the implications nor the technology behind it. So to ask if a "plain consumer" would be interested in FxOS is to miss the point. The "plain consumer" does not have the knowledge to judge the issue and Mozilla is not trying to become a billion dollar corporation to rival Apple or Google.

2. The architecture of FxOS is completely different for a reason so IMO, no, it wouldn't make sense to fork Android.


I too have written an "app" for Firefox OS[1]. It was a game I had written for browsers using the HTML5 canvas and porting it to Firefox OS was as easy as 1, 2, 3.

This, for me, is what makes Firefox OS promising - apps are simply HTML pages that work pretty much as computer webapps work.

[1]: http://munchor.tumblr.com/post/46774157520/party-build-for-f...


How is being able to do a small subset of what Android and iOS devices (among others) have been able to do for many years now seen as "promising"?

I can somewhat see the price argument, but that's tenuous, at best. Even in developing nations it's possible to get used or older, yet still relatively modern and still useful, Android and iOS devices quite inexpensively. They can run HTML5/JavaScritp/CSS apps, in addition to native apps.

Otherwise, only offering a small subset of functionality that has been offered by other devices for years now doesn't make me think of a word like "promising" when describing Firefox OS. Instead, I think of terms like, "extremely limited", "outdated", "obsolete from the start", and "pointless".


Simple.

1. Most people don't need or want complexity like what you see from the typical low cost Android devices. Remember most of these people are still upgrading from Nokia style feature phones and aren't after a computer in your pocket (just yet).

2. Android in particular is really nasty at the low end. The quality of experience you would get from a tightly optimised and simplified Firefox OS would be immeasurably better. Again. You don't need to have X, Y and Z instead just have X implemented really, really well.

3. The barrier to entry and cost for developing HTML/JS apps is far lower than Java and Objective-C. You really do need a decent PC/Mac to program for either. And we all agree that custom, locally developed apps is vital.


> 2. Android in particular is really nasty at the low end. The quality of experience you would get from a tightly optimised and simplified Firefox OS would be immeasurably better.

Firefox OS is worse here, not better. Gingerbread runs far better on low end hardware than Firefox OS does. The later Android stuff is more demanding (particularly in RAM), but the performance target (60fps everywhere, low latency) is also much, much higher than what Firefox OS is capable of achieving.

Firefox OS is less efficient than iOS, Android, or WP. By a lot.


Numbers?


Go look at any hands on video or flash it yourself on a device that runs Android. It's clear as day that Firefox OS is far from fast and responsive on hardware that Android doesn't have issues with. And this makes a ton of logical sense, as it would be a goddamn miracle if Mozilla managed to make web technologies an order of magnitude faster and more memory efficient than anyone else.

Or hell, just run Firefox on your existing Android device - that's all Firefox OS is in reality. Mozilla makes a bunch of claims about how it's "closer to the metal" or some such nonsense, but it isn't. It's not like Android runs all native code in a VM - it's as "close to the metal" as you can get, with the exception that system calls go to the kernel. Just as they do in Firefox OS. Particularly since Firefox OS is built on top of Android.


> It's not like Android runs all native code in a VM - it's as "close to the metal" as you can get

Can you please explain how Dalvik[1] isn't a VM? Sorry if I am missing your point.

Are you referring to the NDK[2]? I haven't used it but my understanding was that Dalvik is still used for UI and basic process control, while calling out to native code via JNI.

[1] - http://en.wikipedia.org/wiki/Dalvik_%28software%29

[2] - http://developer.android.com/tools/sdk/ndk/index.html


I was referring to the NDK. The NDK is perfectly capable of input & drawing - it's what many games use, for example. It's also what Firefox uses. Well, Firefox is a hybrid - a mix of Java and native. But the web parts are all native running outside of dalvik and drawing directly to a surface via OpenGL.


> Particularly since Firefox OS is built on top of Android

Source? I don't think this is the case


According to Moz's website:

The lower-level "operating system" of b2g. Gonk consists of a linux kernel and userspace hardware abstraction layer (HAL). The kernel and several userspace libraries are common open-source projects: linux, libusb, bluez, etc. Some other parts of the HAL are shared with the android project: GPS, camera, among others. You could say that Gonk is an extremely simple linux distribution.

https://wiki.mozilla.org/B2G/Architecture


great points. I've been a big fan and advocate of android for some time. But I've have been disappointed and still am disappointed by how much hardware is necessary to run even basic tasks like getting onto the Internet and reading a static page, how even scrolling through the basic launcher interface stutters, even on the new nexus 7, how switching between apps can take so much time.

it seems that Android as a solution to the problem of a mobile phone is overshooting a big chunk of the market. in that sense I think FxOS is in a good position to disrupt the mobile space.

now how can I get my hands on a phone??


Seriously the only people who think Android is great for low end devices are those that have never used it. I've built a number of apps that needed to support those devices and it was a nightmare. And it's not just pure specs everyone involved thinks of the people using them as cheap and therefore less deserving of a polished experience.

Breaking free from all of that and getting back to simple, well executed basics is the way to go IMHO.


1. So you limit complexity by limiting them to running everything inside of Firefox. Mozilla knows what best. Deny them access to fast native apps on entry level hardware. Sounds like the GNOME 3 philosophy.

2. I have the original Galaxy S and it runs CM 10 Jellybean like butter. Sure bloated skins like touchwiz can slow down phones, but there's nothing wrong with AOSP on similarity spec'd hardware.

3. So you're saying people who can't afford a low-end PCs will be developing web apps with their $79 FF OS phone/tablet? LOL. I can hardly wait for this new paradigm in mobile development.


I also wonder about the wisdom of taking low-end hardware, where every bit of efficiency at the software level matters, and shackling it by not allowing third-party native code.


All of the early early reviews are confirming our suspicions. For example this one from the verge: "Lag is a major concern — apps took multiple seconds to load, to change toggles, and to make UI transitions"[1] Or this one from CNET: "unresponsive screen makes typing a laborious process requiring painstaking precision. Every action from swiping to tapping onscreen controls takes a beat until you see results, so using the phone for a prolonged period steals minutes of your time... Lag carries into the camera, which is slow to launch, snap, and reset."[2]

This is why I'm looking forward to the Edge w/ its Ubuntu OS. It doesn't try to hide its Android heritage, even gives you the option to boot to AOSP. Also has a modern gesture based UI unlike Firefox's dated iOS rip off. And most importantly, on resource limited mobile device gives developers the option to write native apps.

[1]http://www.theverge.com/2013/2/24/4024530/ztes-open-is-the-f....

[2]http://reviews.cnet.com/smartphones/geeksphone-keon/4505-645....


yeah, 256MB of RAM is just not enough. The CPU speed is not relevant when you have so little memory to work with. I guess it's an OK deal for $79, but it's not going to do a good job running javascript apps with so little RAM. Even if it is only running one at a time. My GMail tab alone is using 237MB right now and every tab in my browser is > 50MB. That 256MB also has to hold the OS code.


> Deny them access to fast native apps on entry level hardware.

> I also wonder about the wisdom of taking low-end hardware, where every bit of efficiency at the software level matters, and shackling it by not allowing third-party native code.

This is what asm.js and OdinMonkey are for. You're right that forbidding developers from getting the control that native code buys you is a nonstarter, but asm.js gives you that control.


Point 2 applies more for Ubuntu Phone, as it runs native apps, than for Firefox OS.


Firefox OS is not a small subset of Android and iOS, in the most part there are equivalent API's for the functionality, in a few places there is more available on iOS / Android, in some places there is more available on Firefox OS (quite a lot in the case of iOS), anywhere were there is missing functionality it is no doubt in the works.

(disclaimer, I work on Firefox OS)


It would be nice if you listed what more Firefox OS provides. And I cannot seriously buy "in the most part there are equivalent API's for the functionality", unless you are using some creative definition of the word "most".



So FirefoxOS extends the existing web standards with non-standard APIs

Yes I'm sure you will 'submit' them as potential standards, but until the other vendors agree to them they are not standards. That is the huge and debilitating price that you pay by tying yourself to 'standards' - anything you want to do can be vetoed by your competitors. Anything not agreed upon is not a standard and can't be relied upon in a 'standards based' platform.


Yup, Remember this is how every web standard came into being, it was not a standard at some point, By definition it needs 2 interoperable implementations.

Some of these are already long on their way to being interoperable standards (getUserMedia), some of them may never be standardised, but that is the aim.


This is an OS on a phone, not an app on a phone or desktop. Since their audience is specifically people buying the phones and the app makers are targeting only those people, there are no other implementations to worry about.

FirefoxOS is the standard for these devices at this point, and whatever they do is then standard.


The central questions are will FirefoxOS apps run on other platforms today without modification and will they ever. The answer today seems to be 'it depends if you use the FirefoxOS specific APIs or not', which is the same as the answer for Android or iOS webapps.

The other mobile OSs already run webapps. What does FirefoxOS bring to the table other than price? Why will developers be attracted to a platform where the users only use it because they can't afford anything else?

I guess Mozilla thinks that there are devs picking between writing a native and html based app and that getting FirefoxOS support fairly easily by using HTML will sway that decision. I don't see that happening though since FirefoxOS users won't be spending much money on apps and there won't be comparable numbers of users any time soon; getting free iOS or Android support (whichever is your secondary market) is already a much more compelling argument for using HTML, but one that doesn't seem to be winning in the marketplace.


I think the only reason people may see a standard problem with this is because they see it as a web browser first, and as a phone OS second. If it was built as a platform and did not have the capability to view web pages, would anyone complain that they took JS and extended it to offer the local app capabilities they needed?

I think it depends on how you view it. Is it a browser that also happens to power the core of the OS, or is at an OS that also happens to be a browser? I don't think where it came from originally has any bearing in the answer.


The thing is, Firefox for desktop and Firefox for Android could implement those APIs and then implement 'installing' apps from the web that use those APIs, making them cross-platform. And, since the APIs and all code is open source, other browser makers would be free to implement it.

Note that it won't be available on iOS, of course, as Apple won't let alternative browsers be installed, just skins for Mobile Safari like Dolphin and Google Chrome.


> The thing is, Firefox for desktop and Firefox for Android could implement those APIs and then implement 'installing' apps from the web that use those APIs, making them cross-platform. And, since the APIs and all code is open source, other browser makers would be free to implement it.

This is already the case - check out http://marketplace.firefox.com/ on desktop or android Firefox.

However - note that app developers can choose to only support certain form factors. Many do support desktop however, for example https://marketplace.firefox.com/app/pasjanssolitaire

Desktop does not support all of the new WebAPIs currently though (https://developer.mozilla.org/en-US/docs/WebAPI), and certainly some may not be relevant on all platforms.


This isnt necessarily true, even with telephony pretty much all the API's have implications, existing standards and/or prior art outside of the mobile.

All of the API's are available via Gecko, the same Gecko that is used for desktop and android firefox, a lot of them already work on desktop (I have installed a few apps build for firefox os on my desktop).


When you make authoring applications trivial and don't impose weird restrictions on distribution, you should see a more diverse ecosystem. Lowering the bar makes experimentation by programming novices possible.


Or you end up flooded with low quality applications by amateurs. Both are equally likely.


Are you suggesting that the iOS App Store and Google Play Store aren't "flooded with low quality applications by amateurs"?

To me it seems that a (relatively) high barrier to entry, and an approval process (in Apple's case), haven't really stopped lots of crappy apps from making it in.

Personally I'm all for lowering barriers to entry. It's arguably one of the greatest things about the web.


No, if I wanted to say that I would have said that. I'm saying, lowering the barrier to entry is barely needed. If anything you've just outlined my point. The barrier to entry is apparently so low that all app stores regardless of developer complexity are already flooded with crap.

So the barrier needs to be lowered... why?


Well, the facetious answer would be that we can break the 1st world's hold on the fart app and tip calculator market.


The world is flooded with low quality products.

That just means that it's useless to browse your options in an alphabetical paginated view.


Couldn't agree more. Low quality is not the problem. App stores and their "discoverability" is the real problem.


Just because we don't know the likelihoods doesn't mean they are equally as likely. Don't confuse quantity of information (little) with quality or content of information.


If both are equally likely, then we might as well be optimists; the glass is half full.


I kind of chose "equally likely" as a way to avoid rattling any cages. Obviously, I don't personally feel it's equally likely. I think the scales are heavily tipped towards irrelevancy.


Sounds like the web... So what?


Most of the bells and whistles aren't required for the product to be successful.

Also this is version one.

You're just bullying the new kid. One day he might grow up to kick your ass.


> Also this is version one.

Windows Phone was version 7 and it didn't seem to make a difference. It's pretty safe to say that at this point, you need to make a splash or you're going to end up an afterthought. You can't just stumble in, you need to offer something compelling enough to convince others to get on board. Slow, evolutionary growth is fine for some things. It's not OK for a mobile OS launching in the year 2013.

Call it bullying the new kid all you want to rally support, we're just being realistic. When the vast majority of mobile phone users really couldn't care less about how "open" their phone OS is, FFOS brings little to the table except catering to amateur developers. Considering what is holding back OSes like Windows Phone isn't lack of apps from amateur developers, quite the opposite. They have those, but lack the heavy hitters.

I haven't heard "No thriving development environment for small developers" once when covering the downsides of Windows Phone. I have heard "No Instagram" about a thousand times. Maybe it's just me but I don't really remember an instance of any OS becoming popular by catering to small devs. It's a part, but it usually comes AFTER enticing users to come aboard. People didn't develop for iOS because Apple made it painfully easy for them, they developed for iPhone because millions of users bought them, said "Isn't this so cool, but I wonder if it could do <blank>?" and the rest is history.

Likewise, developers weren't chomping at the bit to go messing about in Eclipse, but millions and tens of millions of Android phones ended up in users hands. Suddenly, there was a market and then the popular apps came.


No, Windows Phone 7 is version 1 of Windows Phone.

Windows CE 6 was the predecessor and it's nothing like Windows Phone. Completely separate products sharing only a kernel. And Windows Phone 8 doesn't even share the kernel.

FFOS brings three things to the table that noone else has and they are:

1. Price. They are dirt cheap. Most people out there can't afford to throw out what $600-800 on a handset. The only thing that is keeping these phones afloat is the telco contract that is subsidising the handset cost. Apart from the US, the rest of the world is pretty much handset and/or phone i.e. you can choose. I ALWAYS buy non locked handsets in cash and use cheap contracts. This is almost standard in Europe and the East. The only way paid up handsets can go is down and that's going to simply fuck up the market for high end devices. Giffgaff in the UK is demonstrating that - people are paying virtually nothing and buying cheaper WinPhone (620 is cheap!!) and budget Android handsets these days.

2. HTML. Yes HTML+JavaScript. Every monkey can knock out apps for these, much like you could with MIDP2 / J2ME. You don't have to be an expert on reference counting in Objective-C (iOS), navigate thousands of pages of SDK documentation (Android/WinPhone) or have to own a Mac to push apps out (iOS). You also don't have to subscribe to some massive store model and subscription development model (WinPhone/iOS). Just a second hand laptop ($100-200) text editor ($0) and a cheap ($79) handset and you're throwing out apps.

3. Reuse. A lot of apps can easily be repurposed for this development model. They can also be upscaled to web sites as well.

Hell, this is the scariest thing out there: cheap, easy with the potential to reuse stuff out there.

These WILL be ubiquitous.

As for: "no instagram". Instagram is a fad. It's not going to be around for years and years. If it pissed off tomorrow, noone would cry. Hell most people forget about it after a few days.

As for the iPhone's "isn't it cool" comment, hell it's a piece of shit to develop for, especially when the SDK documentation and publishing platform buggers off for a month and they treat their paid up customers like crap...

These will start at the bottom of the market (like Android) and will push upwards.


Dude, most people would cry if you took their Instagram from them, and they won't forget it about it tomorrow. You're shoving the realities of the market under the table as if they didn't matter. Go ask someone who pays for apps to tell you what Instagram is.


They might cry for a day or two, but they will forget it soon. Instagram is not a necessity, it is just another cool app, that's all. It is not email, it is not SMS, it is not voice or browser, or car key finder etc. People will find some other site/app for their photos.


I don't have a car key finder, I don't use SMS, I could care less about my computer talking to me. Honestly, I could dispense with email and just talk on facebook really, because most of my inbox are ads nowadays. Just like my mailbox outside. So all of these needs you have told me are not really anything I need at all. So how is it that we have too completely different experiences?

Remember Maslow? Look at the hierarchy. Instagram is meeting the need of community, the photo sharing is a tool to meet that need. Same thing as Hacker News. We're both here to talk about this stuff, even though forums are a solved problem right?

The world is not just about solving problems. That's actually the part people care the least about. Hence why you can solve the problem of writing code to make an app and get paid peanuts and why the 'Yet Another Photo Sharing App" is paying you to do it.


Really? We're talking about necessity in a conversation about smartphones? You know what truly isn't a necessity?

The topic of this conversation.


That may be true for people who can't see past our current consumerist bubble. I admit that this is probably a large percentage in the developed world. But we need to have a global and long-term perspective.


That is precisely the global and long-term perspective for it. Funny how you say current consumerist bubble when the bubble has been up for longer than you or I have been alive. The issue was that software hadn't been able to provide a real consumer-quality experience.

Now that it has, and people are starting to buy it, I don't think they're suddenly going to want less of what what they are paying for.


> But we need to have a global and long-term perspective.

Wouldn't a global and long term perspective include other "not developed" countries entering the "developed" category and this "consumerist bubble" you mention?


Yeah I know all about instagram.

It's turd polish around an already solved problem that's been solved a million times over.


Again, no one really cares about getting their problems solved. There is a FAR bigger market in meeting needs. Instragram is more about meeting the need of people finding a community and giving them tools to do that.

The kind of life that ya'll are espousing, this I hole myself in the ground, I run the cheapest shit I can buy, to use low-quality apps that don't let me have any fun, to most people, is actually a very boring way to use the internet and computers in general, and something no one is willing to pay for, hence why no one but those weird few that use computers this way, and the occasional post talking about how they spent all day setting up their mail servers because data privacy ya'll that no one gives a damn about.


You do realize that this doesn't help your point in the slightest, right?

It's been solved countless times, and yet Instagram is indescribably more popular than the other options.

In other words, it really doesn't matter if some dev can throw it together in a couple hours because of HTML/JS. What matters is the polish, followed by the users. Notice none of that includes "make it easy for the developer".


How does unpolished turd which does not even provide polished turd solve anything?


  > 1. Price. They are dirt cheap.
So are iPhones of the earlier generation. Which run fast and have a plenty of apps available.

  > 2. HTML. Yes HTML+JavaScript. Every monkey can knock out apps for these, much like you could with MIDP2 / J2ME.
Yup. And they will crawl, not run. And if you want at least to make the walk, you will need to learn many more trick than reference counting (which you don't really use any more since ARC came).

  > Hell, this is the scariest thing out there: cheap, easy with the potential to reuse stuff out there.
Nothing scary in the stuff that barely works.

  > These WILL be ubiquitous.
Is it a year of Linux desktop yet?


> No, Windows Phone 7 is version 1 of Windows Phone.

But years of combined development experience. My point being they've had 7 chances to execute and still manage a very distant 3rd. I feel like the "it's only version 1" argument holds little water in a market that has thrown out even evolved OSes.

As for the rest, I simply disagree and did in my original post. I'm not disagreeing that they have those advantages, I just disagree that they have any real effect on consumer pickup.

> As for: "no instagram". Instagram is a fad.

Just like Facebook and mobile phone apps right? Everything is a fad to someone, that doesn't mean it's not critically important to a significant group that doesn't include them.

> As for the iPhone's "isn't it cool" comment, hell it's a piece of shit to develop for

Which for the record was my point if you had actually read my comment. Not easy to develop for, higher barrier to entry and developer unfriendly. I don't actually agree with those points but that is how iOS appears to you which helps my argument.

All those downsides, and where are the most apps, most developers and most money made? Right. So apparently, those advantages really aren't as important to most as they are to you.


Contrary to Windows Phone, FxOS is not aiming to be competing against the high end Android or iOS devices. Nor will it be appealing to current consumers who have a smartphone in their pockets. It's targeting consumers that currently hold feature phones (mostly Nokia) that can either not afford a smartphone, or just a very low-end Android that performs terrible. FxOS is not here to be the ultimate OS for developers, but to bring a fully featured smartphone experience to Latin America, South East Asia, Balkans, etc.


I understand that, but I see Android improving or hardware becoming cheaper before FFOS catches on. It's a noble goal, but the app ecosystem is with Android.

Windows didn't get better and Linux didn't move fast enough. Hardware just got cheaper and people went where everyone else went, and Windows is dominant. I foresee the same thing happening with FFOS and Android.


Windows phone pretty much competes against everything from feature phones to high end devices and the user experience is pretty much the same. The Lumias have damn good hardware as well.

You can get a Lumia 520 in the UK for £79 and it gives a better experience than an android for twice the amount or any Asha feature phone.


well, maybe not the Asha 501. It's like some baby N9.


> You're just bullying the new kid. One day he might grow up to kick your ass.

Skeptical questions on a discussion forum are not bullying. Moreover, it's hardly apt to suggest that the Firefox OS team, let alone Firefox OS itself, would retaliate. The fighting metaphor seems ill-considered and childish.


I think you are being an insufferable pedant here. I was preserving the context from the OP to outline the method of discussion which simply consists of: "compare x to y using box ticking and derision only" (rather than discussing the relative merits).

The fighting metaphor is childish as was the OP's comment and arguably yours which serves only to outline your supposed moral superiority rather than add anything constructive to the topic.


FWIW, I like what Mozilla is trying to do with Firefox OS, and I think you did a good job of describing the merits of this platform in one of your other comments. I even pre-ordered a Geeksphone Peak+ a few minutes ago.

But I think the macho language of fighting (e.g. "kick your ass"), which glorifies retaliation over calm, logical discussion, needs to die, particularly on a forum like this.


It's not limited, it's actually pushing to standardize APIs to more phone features than anyone else. Right now, some phone features (like the dialer) aren't available to web apps at all.



Of course, we also remember the landscape & competition at the time. The world has changed. This is like linking to a page showing the evolution of Windows to justify someone releasing an OS with the capability of Windows 98 in 2013.

Yeah, it evolved. But we're actually two steps ahead of the end of that page now. iOS & Android are leaps and bounds ahead of what they were at 1.0. Really the only point you've demonstrated is "Wouldn't FFOS be sweet compared to Android 1.x?" and the answer to that is yes, it would be. Android 1.x was terrible. But that isn't the landscape it's being judged against, and nor should it.

Not only that, FFOS wouldn't even be possible then. What made FFOS possible was the mobile revolution and renewed interest in pushing the limits of what ARM and associated mobile technologies could do. Turning 1GHz ARM chips into commodity hardware, which was the direct result of the growth of iOS & Android.

Will FFOS evolve and grow? Of course. The question is will it do so fast enough, well enough to catch up, exceed it's competitors in a manner that's so compelling, it stands a chance to actually gain a foothold? Judging by Windows Phone, WebOS, Symbian and Tizen, the answer is almost certainly no.


Missed my point entirely. Android was ridiculed claiming it will never reach feature parity with iOS (let alone surpass it), the same argument you used is pretty much same as iOS users when Android was initially released (compare Android 1.0 to iOS around that time).

Let's not jump on FFOS neck especially in lieu of recent news. If anything it's way more open than Android is.


> Android was ridiculed claiming it will never reach feature parity with iOS

Not really, Android was ridiculed for its severe lack of polish and poor performance. iOS lacked plenty of features, arguably Android 1.5 surpassed it in terms of a bullet list of features, the experience was just awful.

I saw your point just fine and my comment related to it directly. The part you're ignoring is the landscape surrounding those two events. There simply weren't established players in the smartphone market at the time that bothered innovating.

Currently, there are. That makes what FFOS is trying to achieve in their 1.0 and what Android was trying to achieve in their 1.0 completely different and nearly incomparable, which was my point.


Isn't that the main complaint they have now? That the FFOS UI is slow and unpolished?

As for FFOS reaping the benefits of the ARM race, isn't that the same thing comparable to OSS developing due to MS hardware vendors race to bottom price and maximum performance?


Where does this "small subset" bit come from? What exactly is it that you see FirefoxOS as being unable to do that other mobile operating systems can?


Not supporting real native apps is a massive lack of very critical functionality.

This alone makes it far more difficult to write apps that perform well, especially those that are doing something that's resource-intensive.

Developers are also limited to basically using JavaScript. Yeah, I know about Asm.js and Emscripten. They're hacks, at best, and nowhere near being proper replacements for actual native app support.


I suspect that your objection to asm.js is primarily that it strikes you as an ugly, byzantine hack, rather than any problem with the practicality of it. It may seem bizarre to encode a cross-platform intermediate representation of low-level code as a subset of JavaScript, but it works. It may still be 2x as slow as native code, but the implementation in SpiderMonkey is still a work in progress. If GCC or LLVM can take a cross-platform IR and generate efficient native code, then why can't SpiderMonkey do the same with asm.js?


Personally, my primary objection is it removes the ability for dedicated application developers like John Papandriopoulos to write marketplace-leading apps like SnappyCam:

https://news.ycombinator.com/item?id=6137979

Many developers working in the area of games or video and graphics decoding/encoding need access to native-level instruction sets to get maximum performance.

Nevermind that I have no desire to attempt to debug my emscripten-translated C/C++ application instead of just debugging the original source.

There's an entire ecosystem around supporting native apps in terms of tooling, debugging, libraries, etc. and FireFox OS seems to ignore all of that.

Personally, I believe FireFox OS will fail in the mainstream market without native application support. I'd love it if they prove me wrong, but ignoring the need for native applications seems like an obvious mistake.

A well-coded native application can make or break its success on having access to the full functionality of the underlying platform.


> Many developers working in the area of games or video and graphics decoding/encoding needs access to native-level instruction sets to get maximum performance.

SIMD work for asm.js is actively underway.

> Nevermind that I have no desire to attempt to debug my emscripten-translated C/C++ application instead of just debugging the original source.

Source maps are designed to solve this problem.

> There's an entire ecosystem around supporting native apps in terms of tooling, debugging, libraries, etc. and FireFox OS seems to ignore all of that.

For tooling, Emscripten offers very close analogues to the native toolchain—you invoke emcc. Since what you write is C, you can use all the static analysis tools, such as clang's static analysis framework, that you're used to. Debugging is currently more difficult, it is true. For libraries, just compile them along with your app with Emscripten.


Dalvik isn't native, but Android doesn't seem to have been hurt by that. Why, then, would Firefox? Native simply isn't critical.


Isn't this what the iPhone tried before the release of the App Store?


The iPhone tried it 6 years ago. That's a long time on the Internet.

Since then, JS has gotten about a billion times faster across pretty much all browsers. Also, "HTML5" was still woefully incomplete back then but browser vendors have since filled out support for key enabling technologies -- especially the wide variety of device access APIs that Apple never even tried to provide.

When I hear this refrain, I'm often tempted to ask how old the poster is because it seems to show a lack of historical knowledge of long-term Web trends.

Six years is a LONG time.


> I'm often tempted to ask how old the poster is

Go ahead. You might find there is a lot more to computing then web programming and not everyone works as a web developer.


"Since then, JS has gotten about a billion times faster across pretty much all browsers."

1 billion = 10^9. If what you say is true, then the average length of JS code must have increased about 10^10, because despite increased bandwidth, most sites seem to run slower than they did 6 years ago. That is some pretty prodigious coding(8-))

Or maybe it's write delay caused by the NSA.


You also have to consider a dramatic increase in what JS does in addition to there being 10^10 more JS in the first place. You didn't really see JS libraries being used on every site (especially staples like jquery and angular, which combined add a few megs to pageloads). The use cases of JS have shifted - many sites don't even render anything with JS turned off anymore.


In theory that jquery and that angular file should be sourced


> Since then, JS has gotten about a billion times faster across pretty much all browsers.

JS has gotten slightly faster, but not much. JS isn't really a bottleneck anyway.

Six years has also increased the pixel count by 10x (150k pixels in the iPhone 1 vs. 2 million in the SGS4). The hardware has barely gotten faster relative to pixel count, and in some respects (such as memory bandwidth) has gotten slower.

The web is no more viable on mobile today than it was 6 years ago. Web doesn't do efficient - never has, probably never will.


Yes, but the iPhone provided very few APIs and so web apps had little power and couldn't integrate with the OS.


When Apple did it they expected you to access all your apps online. I'm assuming Mozilla lets these become locally installed outside of a web browser.


What Mozilla is doing with Asm.js and Firefox OS is nothing short of impressive. Web apps that can be downloaded from anywhere, and cached offline with full access to native APIs? This is the democratization of app programming at its finest, especially since JS has become a 'platform', and now even has a bytecode target (asm.js).

Not to mention, offering unlocked phones at such low prices, with potential feature parity (at least when the app ecosystem gets better) to iOS and Android is huge. I would personally love to never sign another long-term contract...


As a counter point to the (justified) positivity: Firefox OS is still rough around the edges. The app I threw together (basically just packaging a mobile site) doesn't look right on the higher-resolution phones, as Mozilla haven't sorted out the scaling yet. The OS itself feels really very slow.

But it's an interesting project. Just not ready for the primetime yet.


If it is rough around the edges now then it always will be. Witness the Firefox browser. There is a huge backlog of problems with it yet they have the resources to start something new.


Did you really create your account to post this? Wow.

I really don't get the negativity around Firefox OS or the Firefox browser. In regards to Firefox, I consider it the best browser right now; Chrome has many problems of its own and considering the resources that Google has, you'd think they would find a way to make Chrome be less of the resource hog that it is or to provide something like the awesome-bar or extensions for the Android version - and don't even get me started on iOS or Safary.

Truth of the matter is, Firefox OS directly benefits Firefox the browser, in ways that Android will never benefit Chrome - all APIs that are experimented in FxOS will make it in the browser, XUL is gone, the architecture is multi-process and better sandboxed, etc...


I ported my game http://www.towerstorm.com to FirefoxOS over the weekend too (at campjs). It was surprisingly easy, the only difficulties was making it run on such a small screen and dealing with no longer having window.location or navigation buttons.


Like many here I picked up one of the Peak developer preview phones with every intention of dogfooding it, creating some basic apps to get familiar with it, and enjoying something simpler.

But, and I feel like I'm back in 2007 saying this about the first iphone, the lack of copy and paste is a deal breaker. Going back to a phone without it and not being able to copy a url into an email, paste a friends phone number to some one else in a txt, or have a reasonably useful password manager is much too far of a step back for me to take these days.

I'm hoping this is something the core team puts in before too long, https://bugzilla.mozilla.org/show_bug.cgi?id=747798, but until then the phone is really useless to me for day to day.


The Firefox browser on Android does have copy/paste and this is relevant because Mozilla wants to make Firefox a portable mobile platform for apps, so it is safe to assume that FxOS should have feature parity with the Firefox Android soon.


is copy and paste support a function of the application on android? eg, something it has to specifically allow? seems that copy/paste/clipboard support for firefoxos is going to have to be implemented at the is level and not each individual app, there's already hacks for the latter but the former is what is actually needed


I've also developed a Firefox OS App. I've done a compass and a lantern and I love Firefox OS because it's so awesome and easy to develop an app with HTML5.

By the way, I have a Geeksphone Peak and it works great, next month they're launching Geeksphone Peak+, it seems promising. Geeksphone is making much much better phones with FFOS than ZTE.


Where can you get the $50 version of the phone that he mentioned?


I think it may be a typo? The Keon is still 91 euros (http://shop.geeksphone.com/en/phones/1-keon.html).


Also it says its "Not available now"...


Yeah it hasn't been available since the first time it came out, and no mentions of it coming back. Makes me sad.


My experience: I wrote a google authenticator app in 'HTML5' a year ago and it just worked on FirefoxOS.

It is the whole purpose of the OS. Is this news?


Whie these articles are great (and thanks for it), One of the biggest reasons I am excited about Firefox OS is the aim for these articles to not exist, if you do a good job building a mobile friendly web app then on Firefox OS it should 'just work'

The amount that this has proved true already is amazing, I have loved doing Firefox OS app days and seeing people spending a long time building phonegap / mobile web based applications and seeing it just work on Firefox OS, there is still a lot of work to be done but it really is the ubiquitous platform dream of mine come true.


Not sure if HTML is the ubiquitous programming platform for client side. It's a dream since 1990s (write once for all clients) but fail to compete decidedly by native clients of iOS/Android in this era. It's going to get worse for specialize smart devices such as smart watch, smart glass, smart car panel, real smart TV etc.


I am slowly transitioning to a web based IDE, my email, spreadsheets, chat client, all my communications platforms, my maps are all written in web technologies, not my entire phone is powered by web technologies (which includes most of the functionality on my desktop)

I have 3 non web based apps that I use on a daily basis (iterm, emacs, spotify), emacs I am moving away from, spotify I will move to the web based player once we have hardware media keys support.

My ubiqutous web based dream is very close to true, I think momentum and history suggests that it is going to carry on moving in that direction.


XIAOMI MI phone: 4.7 IPS, 312 ppi glorilla second gen screen, 1.5GHz MT6589T CPU, 1GB Ram, 4GB storage, support at most 32G TF card, 8mega pixel camera, 1.3 mega pixel front camera, 2000mAh battery, Android 4.2.2 MIUI V5 Os

And guess what? Sold only 799RMB at China which is about 135 dollars.

For simplicity, if I cut every feature listed half, and just assuming the price drops to half too, say 70 dollars. Compare to FFOS phone, which one will user pick?

This calculation surely is wrong. But my point is, the hardware is really cheap today, which makes the sweetest point of FFOS phone - the price - not that sweet.


I'll be getting my phone(s) when I get back from vacation in about one week (imported from Spain).

Can't wait to get a look this thing! Finally something new and refreshing in the mobile-sector.


Is FxOS usable as an everyday phone at this point?


Lots of minor features that are missing, but I expect most of that to be taken care soon, if it isn't already in some branches. Right now, there are lots of minor niggles that make me miss my iOS/Android devices of the past (heck, even my old Palm Pre). But the basics do work, you can take calls, multi-task, browse, tweet etc.

Right now what bothers me most is the lack of badges on icons, I'd really like to quickly see how many calls or messages I've missed, without going to the notification pull-down. A 24 hour clock wouldn't hurt either, and the organisation of the Music players is a bit off (no albums under artists, pretty but useless main view etc.). In my release you can't control it from the lock screen, either, but I think that's going to be in the next version, judging from the wireframes.


Mmm ok. I currently use an N900 so I'm a little used to features missing, I think FxOS is a slightly safer bet than Maemo!


I'm using it as an everyday device. It's not perfect, but it's usable, especially when considering the low price point.


what are some issues you observed?


I have written an app for the Firefox OS too, the experience was good but at the end of the day, the hardware feels too cheap and the OS isn't responsive enough.

If there is anyone in London looking for a phone, send me a mail.


i coded this for use on the Keon (FFOS geek phone) and demo-ed it at the local JS meetup http://replycam.com/m/ (also on github https://github.com/franzenzenhofer/masel) will extend it someday do also encode/decode SMS messages ... but as i will never probably come around to it, just steal the idea, fork the project (it's zlib license, as soon as i come around to write a readme)


That geekphone seems to cost 150€ at the moment. 50$ would be really exciting.


No, the 149€ (tax excl.) model is the Peak+, now in pre-order. The post makes use of the Keon, not available now, but listed at 91€ (tax excl.) [http://shop.geeksphone.com/en/phones/1-keon.html]




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: