"Unlike major mobile operating systems, which were designed based on Linux codes, Mozilla created their Firefox Os (project name: Boot to Gecko) on an HTML platform, more precisely HTML 5."
afaik Firefox OS is also built upon a Linux kernel, so it's a bit misleading ...
It is. And in my (limited) experience, version fragmentation is already a bad problem… There's little to no apps, and half of those few need a newer OS version than is available for my half-year old Fire E.
Yikes.
How do they plan to get users ? For all the talk about Android's fragmentation, it has been conceived so that the sdk is as back-compatible as possible (and Play Services and the compatibility libraries only improve that).
Cheap phones for users who don't particularly care, I assume.
> and Play Services and the compatibility libraries only improve that
I haven't yet looked at the developer side of FFOS, but guessing from the store entries of all the apps I cannot install, it doesn't have an equivalent to those.
I can't read this article without turning on Javascript.
>Oops! It appears that you have disabled your Javascript. In order for you to see this page as it is meant to appear, we ask that you please re-enable your Javascript!
Talking about Mozilla, the first thing that comes to mind is the Firefox Browser, powered with Gecko Engine, smooth rendering, and fast browsing capabilities. But that’s not all; Mozilla has been spending 15 years in developing what would perhaps become the next generation of smarter phones. Although not as prominent as Android OS or iOS, this would certainly let the ‘low-spec’ world touch the higher hierarchy of the mobile world. Unlike major mobile operating systems, which were designed based on Linux codes, Mozilla created their Firefox Os (project name: Boot to Gecko) on an HTML platform, more precisely HTML 5. Meaning; light weight and cheaper Smart Phones. Basing around HTML 5, Firefox intended to provide an alternative system to mobile devices, so that the applications used by users can directly communicate with the cellphone hardware. Despite aiming for low-budget handsets, Mozilla intends to compete directly with commercially developed operating systems such as Apple's iOS, Google's Android, Microsoft's Windows Phone as well as other community-based open source systems such as Ubuntu Touch.
Considering the world of Internet, only one-third of the entire population has access to Internet or is online. This means that two-third of the world population cannot access to the world-wide-web, either because the connectivity is expensive or else the inability to afford a device that would ensure that accessibility. Even if Internet is made cheaper, the devices that support proper Internet activities aren’t going to be cheaper. And even if a device has been managed, the next issue that arises is the feasibility of a cheap handset towards web applications which are often resource consuming – in terms of available Storage and RAM. To bridge this gap it is essential for a system to exist that can cope up with low-end devices and has the capability to equally render web based features, keeping in mind that neither the Internet provider nor the device itself ask further investment from the user.
The idea that emerged was to bring web activities before the population that wouldn’t simply be able to afford smart phones, which lead Mozilla to design an OS that would bridge this gap, and hence targeting the low-spec devices. The OS and the applications used by the OS are entirely based on HTML 5 code, keeping the apps very small in size compared to their equivalence at Android or iOS stores, meaning lower data-transfer and hence cheaper maintenance.
Another good thing; since there are more HTML experienced work-force than there are for Linux or iOS, it is presumable that there could be greater collection of applications compared to Android store. Firefox OS’ unique feature to run web-based apps will provide openness that’s not present in the mobile-technology ecosystems where localized aspirations surround Android and iOS, especially. In those latter two environments, tight links binds the operating system, online services, app stores, and apps together, making it harder for people to use alternatives once they’ve lodged and invested. But with the iOS and the Android dominating the market today, programmers are lavishing resources on building apps that run natively in the platform instead of web versions that run everywhere. But a positive feature of the Firefox oriented apps is that, the applications being HTML5 and JavaScript based makes them a few KB in size. This ensures lower RAM usage and lower data cost. Besides, once you have downloaded the apps, these apps are readily available to all the devices you manage under the Firefox OS. A superior feature compared to synchronizing all the heavy application in the proprietary operating systems, and think of all the data and time they would consume.
Although the UI relates to Android and iOS to some extent, it differs in concept and purpose of the OS. The App screen specifically relates to iOS, user interactions and interface behaviors are very similar to that of iOS. Even the ‘Home’ button ope...
I'm using NoScript to block JS on ekjeacheblog.com. Except for the "subscribe to our newsletter" box, the page is blank. If I allow JS on that domain, all seems to work.
For the sake of my future self I hope the answer is no. However bad the current platforms are (and I'm certainly not a huge fan of apples policy w.r.t. implementing own languages), you can think about writing your own application without writing in Javascript and using e.g. kivy. I don't mind Javascript capturing mindshare, since it's choice to use it, I don't like the situation where it's not a choice, it's ENFORCED upon me, like on the web. With all the talk about open platforms and freedom, mozilla is sticking to it's guns with "everyone should use javascript, all the time". For one I would like to keep my freedom to use other things, thanks mozilla :-)
None of that helps if you want to do something that is prohibited by the javascript sandbox.
To pre-empt the inevitable response that everything you want to do is possible inside the javascript sandbox: for a lot of people everything they want to do is possible inside the iOS app store restrictions. That still doesn't make iOS an open platform suitable for general computing, and neither is FirefoxOS.
Criticising FirefoxOS for being 'javascript only' can mean a variety of things. It can mean the author doesn't like the javascript language and thinks they will inevitably be forced to use it at some point. Or it can mean they don't like only being able to target a very restrictive sandbox that is defined by a couple of very powerful corporations. Or both.
FirefoxOS and ChromeOS are attacks on general purpose computing just as much as iOS is.
It can mean anything you like; I just think that makes little sense.
Every platform has one "base" language - even rms' laptop can only run MIPS instructions; everything else must be compiled or interpreted. FirefoxOS just uses JS as its base language.
Not really, because your not restricted by store policies but rather the runtime and it's APIs. Your free to make a app for whatever purpose you want without worrying about whether it's fits in line with how the platform holder wants you to use it.
If having restrictions on the runtime is your criteria for judging whether or not it's "general purpose" or not then every platform with a kernel fails because everything is subject to the restrictions it imposes.
Or it can mean they don't like only being able to target a very restrictive sandbox that is defined by a couple of very powerful corporations. Or both.
But Firefox is in control of its sandbox. It has provided a lot of native API access that other platforms don't have.
I would disagree with FirefoxOS, as you can root the device it runs on without doing hardware modifications, unlike ChromeOS.
That being said, consumer devices need to be able to pass a sort of "slave test"; if your device can't hook up to a printer/scanner, or other peripherals, it is a device meant to enslave you in a digital jail.
Mozilla seems to be the best citizen thus far when it comes to user rights, and I wouldn't expect that stance to change much due to a different formfactor. this is still very much the same project JWZ founded.
It should be noted that Chrome (and hence ChromeOS) has USB, Bluetooth and even serial port APIs¹ for its apps. Though you do have to include the specific device codes in the app manifest, so it's probably not very useful for general purpose devices.
Right, and for that reason, I view ChromeOS as sort of a "House Arrest" sort of situation; still a jail (hardware bypass required to write to the drive? Wtf.), but more lenient. A kinder, gentler slavery, as George HW Bush might have said.
First, by what criteria is JavaScript not "a real language" whereas Ruby and Python are "real" languages?
Second, in any case, among the languages on that list that compile to JavaScript are both Ruby and Python, which I think meets any reasonable definition of a "a real language, like Python or Ruby".
JavaScript is a real language. I should make it more explicit - I want a real language that's sufficiently different than JS. Any of the list is not. If you look closely, none of the languages is actually python or ruby (or anything else that's sufficiently different), just JS with altered syntax. Getting all the semantic differences is REALLY hard and once you do it it's slow (e.g. untranslated pypy slow, ~60x slowdown), so you can't use it. My problem is not with JS per se it's with the absolute lack of choice.
I don't think JS is really "enforced" - there's even standard provision for using alternate scripting language if browser supports it (e.g. IE supports - or used to, haven't checked recently - VBscript) via type attribute of script tag.
The problem with alternate languages is that people won't use them if browsers don't support them, and browsers won't add support for them if people don't use them. JS became a de-facto standard due to being included in early browsers and is certainly hard to unseat due to the tremendous momentum it gained.
Use any compile-to-JS language, or use any LLVM language (such as C++) to compile to asm.js.
I tried kivy with a lot of enthusiasm, and the experience was not good. React native does a better job, I think (or just React in FF OS). I say it as a programmer whose favorite language was Python for many years, I even coded a Python-to-JS compiler with classes, inheritance and stuff where other attempts were very too basic or too slow... Now my favorite language is CoffeeScript.
Repeat after me: JS is not an ideal compilation target.
The sooner this idea dies, the sooner we can solve the actual problem of being locked to an insanely high level VM and calling it a platform -- while writing that platform with much more powerful tools that aren't available to anyone else.
Repeat after me: JS is the compilation target we have.
The sooner this idea dies, the sooner we can solve the actual problem of being locked to an insanely high level VM
So, the sooner we stop making actual things, we can take a step back and start making a thing that makes things?
By all means, try to solve this problem. But if the history of the web has shown anything, it's that it's extremely difficult to entirely reboot anything. JavaScript is all pervasive, and an alternative is going to have to come up with something brilliant to displace it. I haven't seen it yet.
We're going to see a few interesting things play out: GWT got a new user-base within Google because the Inbox team is using GWT for the non-UI part of the Web implementation (and j2objc for iOS).
compile-to-JS languages are generally just syntactic sugar. How do I access DOM from my LLVM language? Seriously, the question was not what's YOUR favorite language, if you happen to be in the JS camp, that's perfectly fine. However, if JS is not your favorite language, you're out of luck. Sucks to be you.
I use Firefox OS as main phone (ZTE Open C) since October, came with version 1.3.
The biggest disappointment is lack of applications. So you can't get notifications for Facebook messages, etc. But that's ok, given that the phone is in a very early stage and Facebook haven't built a proper app for it yet.
There are some bugs which might be slightly annoying at first, but it's ok once you get used to it. The most frustrating one is the text prediction when using the keyboard, because it doesn't learn automatically and I am messaging in 2 languages... But I guess that can be counted as an edge case. The navigation (GPS) works surprisingly well though! Overall, it's worth giving a try especially given it's price.
I am quite excited about it's future. The code is easy to read and should be relatively easy to add new features / modifications yourself. So even if it won't become popular in mainstream (and it's really hard to win user share in the current market), it can be an interesting platform for hacking.
> it doesn't learn automatically and I am messaging in 2 languages
I have the same on Cyanogenmod with the AOSP keyboard (Android's default). It doesn't do next word prediction nor does it seem to learn when I pick a suggestion (it doesn't prioritize it next time), and I'm constantly switching between Dutch and English.
There are plenty of keyboard apps that do this better (even the stock Samsung one was great at this) but the keyboard is a core component that I want to be able to trust. I'm putting up with the annoyances and going for open source here. Not saying that this is the way to go for everyone, but it's not just Firefox OS which has this.
> The navigation (GPS) works surprisingly well though!
Navigation is not synonymous with GPS. Which works well, determining your location or routing to places? If the latter, I'm curious: which map source does it use, Google Maps?
> nor does it seem to learn when I pick a suggestion
The most frustrating part about FirefoxOS is that if I choose not to autocorrect the word, it doesn't remember that and tries to do the same the next time I am typing it. Yes, I could add all the words manually... But that would take a long long time.
> Navigation is not synonymous with GPS.
Valid point :) both, it's fast to determine the current location when data is enabled, and routing is good too. It's using Here Maps https://www.here.com/ I live in Vilnius (Lithuania) so there are not many (almost none) tall buildings, that probably helps.
> There are plenty of keyboard apps that do this better
On FirefoxOS you don't even have that on most phones, as third-party keyboard apps need FFOS 2.0, which even after half a year still isn't distributed to all existing phones.
It's Android fragmentation all over again, but without backwards compatibility and with a much less capable base system.
I tend to jump on the FxOS threads pointing out how promising it is - and that you don't get push support (Facebook for you perhaps, mail is my pet peeve) so far as far as I can tell and the Mail client is lacking.
I just tried to reply to a text that I got on my Flame (with a pre-paid SIM hosting a number I used for years) and failed, because the keyboard is really, really .. different. It works as a feature phone for me so far, mostly.
I just bought one of these myself, I'm expecting to receive it Tuesday. Your blog seems to confirm what I'm expecting out of the thing, and I think I made the right decision getting that instead of a Lumia 630. The biggest selling point to me was that I don't end up with Google, Apple, Microsoft following me around extracting as much information out of me as they can (of course, I'm failing this as soon as I go check my GApps mail).
Two questions: 1) How good is the web browser? That's the only app I care about having on my phone. 2) Can you tether your computer to it?
I think the smart move for Mozilla would be a unified build process that exported FFos apps to iPhone and Android. If it were positioned as the best "write-once" hybrid web framework, FFos would gain a much larger app ecosystem as a by-product.
The issue is you need to have a pre-installed Firefox on the device. Too bad, such dependency can't be set in the manifests so it won't pull automatically from App Store or Google Play.
I don't know any popular app (Facebook, Spotify, Deezer, Play Music, Gmail, Pocket, ...) that uses such an hybrid framework.
All the major apps have teams dedicated to each platform. They might share some code with a shared c++ library or J2objc (or a similar solution) but never a write-once ship everywhere app.
So that would only allow them to gain the low popularity/quality app. That's not really a win.
It's a real shame, but I don't think Mozilla is going to be able to make this work - they just don't have the leverage with hardware that the big three - MS, Apple, Google - have. While the technical avenue they're going down is interesting and has merit, I don't think that'll resonate with people in the market for a phone. They have a lot of work to do - starting from cold - just to get something that kinda sorta works as well as what's already out there - I just don't think they'll get enough people to switch. Worse if you look at their flagship product - desktop is a metoo! that's haemorraging users and the mobile version is a non-entity. I use and love both, it's a desperate shame - I just cannot for the life of me see Mozilla making headway with this OS.
I think there's a key difference: there is a niche of Linux desktop users. They'll probably never be very big (not in the foreseeable future, at least), but they're there and since they tend to be power users they're sort of self-supporting.
In contrast, I don't see Firefox OS carving out a similar niche, though I'd really like it to. It doesn't really do anything the others don't do (and it's missing a lot of what they can do), the devices are uniformly pretty terrible, and the strategy seems simply to be to compete for the low end. Unfortunately, the low end is being targeted by pretty much everyone but Apple, so they've got plenty of competition and no real value proposition.
Microsoft is trying to buy its way in.
So far, with a lot of cash but very limited success.
I don't see how FFOS can hope for better results. Mozilla's strategy seems to be to start with the low end but Android has already that covered and is even starting to produce some very impressive low end devices (Moto E, Android One, ...). And Android is not even the only platform coveting that market.
Mozilla seems to be cheaper but an tremendous difference in quality. I am not sure that they stand much of a chance with that.
To be fair, I am not an economist, so maybe their ultra cheap phones can land them some markets where Android One & competitors are too costly ?
Does anyone really think Android phones won't be competitive at the FirefoxOS price point? The Moto E is already under $100 unsubsidized, and that's a well-known brand name. Generic imports are even cheaper, and prices will continue to fall.
It's not impossible, but Android phones need to do more - they run not just a web stack but also the Android Java stack - and they have not optimized for the low end, as much so far.
While Android runs on a lot of high-end hardware, it was originally targeted at devices that are under-powered compared to the cheapest smartphone chipsets now available.
Android also uses implementation approaches like a component lifecycle, the Zygote, and limited per-process heap size that reduce runtime memory use at the Java runtime layer.
The people who designed the Android runtime had also designed the Danger system, which used Java and ran in as little as 32MB of RAM.
While it is possible for an app developer to make an inefficient Android app, it is very likely that core phone functionality, like dialers, messaging apps, PIM apps, etc. are a lot more efficient implemented as Android apps than as Web apps.
Well, first of all Android has changed a lot since those early days. The competition has focused on higher-end devices to challenge the iPhone, not the low-end.
Second, it might be true that a single app could be more efficient as a native Android app than a web app. But regardless of whether it is (and I'm not sure it is - we would need to measure), the issue I mentioned is that Android phones have to support both native apps and their entire graphics stack etc., and the web platform and its entire graphics stack etc. Both because users can run both Android apps and a web browser, and because Android apps can embed a web view, so the combination happens even in a single app.
That fundamentally adds overhead. Of course, in theory massive amounts of work could remove it (you could unify both stacks on a single graphics codebase, and to some extent that is true on Android), but that might introduce compromises as well, and no one wants to compromise the high end which competes against Apple.
The bottom line is that Android doesn't ship super-low-end phones. That might not only be due to technical issues like these, of course.
Those are still much more expensive than the lowest-end. I think they cost around $100 last I heard, and a currency conversion on the amazon link there gives $104, which seems to confirm they haven't gotten cheaper.
If you sort this site by price http://www.snapdeal.com/products/mobiles-mobile-phones/filte... you find the cheapest smartphones are about 1500rs. That's about $25 (according to Google). Most of them run Android. Though, once Windows Phone 10 comes out, I'd be interested to see if that's a better UX at the ultra-cheap end of the spectrum. Nevertheless, Android is currently the OS of choice at the low end, wherever you draw the line on acceptable UX. And the latest and greatest Android is available for about 4800rs, or about $77, running on a quad-core SoC.
As for how that's done, it's because Android can aggressively "swap" (really serialize and reconstitute)background components out of memory, and it can do the same to whole processes. You can actually watch your Android app instance switch PIDs, as it comes back from having had all the components, and the underlying runtime instance, killed. Now, there are some fat slovenly apps out there that might not be happy with life in a very limited machine, but I bet those 1500rs phones push the minimum specs pretty damn hard.
off-topic:
flame phone are reasonably specced and priced. we just dont know anything about when we could "just" order an unlocked flame or a similar phone.
mid-range specced and priced phone would sell, i think, as second phone, phone for relatives and like.
69 comments
[ 3.3 ms ] story [ 165 ms ] threadafaik Firefox OS is also built upon a Linux kernel, so it's a bit misleading ...
Cheap phones for users who don't particularly care, I assume.
> and Play Services and the compatibility libraries only improve that
I haven't yet looked at the developer side of FFOS, but guessing from the store entries of all the apps I cannot install, it doesn't have an equivalent to those.
>Oops! It appears that you have disabled your Javascript. In order for you to see this page as it is meant to appear, we ask that you please re-enable your Javascript!
Talking about Mozilla, the first thing that comes to mind is the Firefox Browser, powered with Gecko Engine, smooth rendering, and fast browsing capabilities. But that’s not all; Mozilla has been spending 15 years in developing what would perhaps become the next generation of smarter phones. Although not as prominent as Android OS or iOS, this would certainly let the ‘low-spec’ world touch the higher hierarchy of the mobile world. Unlike major mobile operating systems, which were designed based on Linux codes, Mozilla created their Firefox Os (project name: Boot to Gecko) on an HTML platform, more precisely HTML 5. Meaning; light weight and cheaper Smart Phones. Basing around HTML 5, Firefox intended to provide an alternative system to mobile devices, so that the applications used by users can directly communicate with the cellphone hardware. Despite aiming for low-budget handsets, Mozilla intends to compete directly with commercially developed operating systems such as Apple's iOS, Google's Android, Microsoft's Windows Phone as well as other community-based open source systems such as Ubuntu Touch.
Considering the world of Internet, only one-third of the entire population has access to Internet or is online. This means that two-third of the world population cannot access to the world-wide-web, either because the connectivity is expensive or else the inability to afford a device that would ensure that accessibility. Even if Internet is made cheaper, the devices that support proper Internet activities aren’t going to be cheaper. And even if a device has been managed, the next issue that arises is the feasibility of a cheap handset towards web applications which are often resource consuming – in terms of available Storage and RAM. To bridge this gap it is essential for a system to exist that can cope up with low-end devices and has the capability to equally render web based features, keeping in mind that neither the Internet provider nor the device itself ask further investment from the user.
The idea that emerged was to bring web activities before the population that wouldn’t simply be able to afford smart phones, which lead Mozilla to design an OS that would bridge this gap, and hence targeting the low-spec devices. The OS and the applications used by the OS are entirely based on HTML 5 code, keeping the apps very small in size compared to their equivalence at Android or iOS stores, meaning lower data-transfer and hence cheaper maintenance.
Another good thing; since there are more HTML experienced work-force than there are for Linux or iOS, it is presumable that there could be greater collection of applications compared to Android store. Firefox OS’ unique feature to run web-based apps will provide openness that’s not present in the mobile-technology ecosystems where localized aspirations surround Android and iOS, especially. In those latter two environments, tight links binds the operating system, online services, app stores, and apps together, making it harder for people to use alternatives once they’ve lodged and invested. But with the iOS and the Android dominating the market today, programmers are lavishing resources on building apps that run natively in the platform instead of web versions that run everywhere. But a positive feature of the Firefox oriented apps is that, the applications being HTML5 and JavaScript based makes them a few KB in size. This ensures lower RAM usage and lower data cost. Besides, once you have downloaded the apps, these apps are readily available to all the devices you manage under the Firefox OS. A superior feature compared to synchronizing all the heavy application in the proprietary operating systems, and think of all the data and time they would consume.
Although the UI relates to Android and iOS to some extent, it differs in concept and purpose of the OS. The App screen specifically relates to iOS, user interactions and interface behaviors are very similar to that of iOS. Even the ‘Home’ button ope...
I have it off by default so I get a lot of messages like that. If I can see the content I want, I just ignore them.
[1] https://github.com/jashkenas/coffeescript/wiki/List-of-langu...
To pre-empt the inevitable response that everything you want to do is possible inside the javascript sandbox: for a lot of people everything they want to do is possible inside the iOS app store restrictions. That still doesn't make iOS an open platform suitable for general computing, and neither is FirefoxOS.
FirefoxOS and ChromeOS are attacks on general purpose computing just as much as iOS is.
Every platform has one "base" language - even rms' laptop can only run MIPS instructions; everything else must be compiled or interpreted. FirefoxOS just uses JS as its base language.
If having restrictions on the runtime is your criteria for judging whether or not it's "general purpose" or not then every platform with a kernel fails because everything is subject to the restrictions it imposes.
But Firefox is in control of its sandbox. It has provided a lot of native API access that other platforms don't have.
Trying to divine somethings "general purpose" via just evaluating the runtime is murky and distracts from the core issue.
By the root standard iOS fails completely.
ChromeOS, Android and FirefoxOS all get middling grades in this.
That being said, consumer devices need to be able to pass a sort of "slave test"; if your device can't hook up to a printer/scanner, or other peripherals, it is a device meant to enslave you in a digital jail.
Mozilla seems to be the best citizen thus far when it comes to user rights, and I wouldn't expect that stance to change much due to a different formfactor. this is still very much the same project JWZ founded.
¹ https://developer.chrome.com/apps/app_usb
First, by what criteria is JavaScript not "a real language" whereas Ruby and Python are "real" languages?
Second, in any case, among the languages on that list that compile to JavaScript are both Ruby and Python, which I think meets any reasonable definition of a "a real language, like Python or Ruby".
Or even C via asm.js?
The problem with alternate languages is that people won't use them if browsers don't support them, and browsers won't add support for them if people don't use them. JS became a de-facto standard due to being included in early browsers and is certainly hard to unseat due to the tremendous momentum it gained.
I tried kivy with a lot of enthusiasm, and the experience was not good. React native does a better job, I think (or just React in FF OS). I say it as a programmer whose favorite language was Python for many years, I even coded a Python-to-JS compiler with classes, inheritance and stuff where other attempts were very too basic or too slow... Now my favorite language is CoffeeScript.
The sooner this idea dies, the sooner we can solve the actual problem of being locked to an insanely high level VM and calling it a platform -- while writing that platform with much more powerful tools that aren't available to anyone else.
The sooner this idea dies, the sooner we can solve the actual problem of being locked to an insanely high level VM
So, the sooner we stop making actual things, we can take a step back and start making a thing that makes things?
By all means, try to solve this problem. But if the history of the web has shown anything, it's that it's extremely difficult to entirely reboot anything. JavaScript is all pervasive, and an alternative is going to have to come up with something brilliant to displace it. I haven't seen it yet.
No, it's the compilation target web developers have. The rest of us don't target the web.
The biggest disappointment is lack of applications. So you can't get notifications for Facebook messages, etc. But that's ok, given that the phone is in a very early stage and Facebook haven't built a proper app for it yet.
There are some bugs which might be slightly annoying at first, but it's ok once you get used to it. The most frustrating one is the text prediction when using the keyboard, because it doesn't learn automatically and I am messaging in 2 languages... But I guess that can be counted as an edge case. The navigation (GPS) works surprisingly well though! Overall, it's worth giving a try especially given it's price.
I am quite excited about it's future. The code is easy to read and should be relatively easy to add new features / modifications yourself. So even if it won't become popular in mainstream (and it's really hard to win user share in the current market), it can be an interesting platform for hacking.
I wrote a bit more about it at http://blog.gedrap.me/blog/2014/10/19/a-month-of-using-firef...
I have the same on Cyanogenmod with the AOSP keyboard (Android's default). It doesn't do next word prediction nor does it seem to learn when I pick a suggestion (it doesn't prioritize it next time), and I'm constantly switching between Dutch and English.
There are plenty of keyboard apps that do this better (even the stock Samsung one was great at this) but the keyboard is a core component that I want to be able to trust. I'm putting up with the annoyances and going for open source here. Not saying that this is the way to go for everyone, but it's not just Firefox OS which has this.
> The navigation (GPS) works surprisingly well though!
Navigation is not synonymous with GPS. Which works well, determining your location or routing to places? If the latter, I'm curious: which map source does it use, Google Maps?
The most frustrating part about FirefoxOS is that if I choose not to autocorrect the word, it doesn't remember that and tries to do the same the next time I am typing it. Yes, I could add all the words manually... But that would take a long long time.
> Navigation is not synonymous with GPS.
Valid point :) both, it's fast to determine the current location when data is enabled, and routing is good too. It's using Here Maps https://www.here.com/ I live in Vilnius (Lithuania) so there are not many (almost none) tall buildings, that probably helps.
On FirefoxOS you don't even have that on most phones, as third-party keyboard apps need FFOS 2.0, which even after half a year still isn't distributed to all existing phones.
It's Android fragmentation all over again, but without backwards compatibility and with a much less capable base system.
I just tried to reply to a text that I got on my Flame (with a pre-paid SIM hosting a number I used for years) and failed, because the keyboard is really, really .. different. It works as a feature phone for me so far, mostly.
More info: https://developer.mozilla.org/en-US/docs/Web/API/ServiceWork...
Two questions: 1) How good is the web browser? That's the only app I care about having on my phone. 2) Can you tether your computer to it?
Three months ago I asked HN if anyone had one but got not answers (https://news.ycombinator.com/item?id=8798922).
So that would only allow them to gain the low popularity/quality app. That's not really a win.
"this is the year of Firefox OS" will be the new "the is the year if the Linux desktop"
In contrast, I don't see Firefox OS carving out a similar niche, though I'd really like it to. It doesn't really do anything the others don't do (and it's missing a lot of what they can do), the devices are uniformly pretty terrible, and the strategy seems simply to be to compete for the low end. Unfortunately, the low end is being targeted by pretty much everyone but Apple, so they've got plenty of competition and no real value proposition.
To be fair, I am not an economist, so maybe their ultra cheap phones can land them some markets where Android One & competitors are too costly ?
Android also uses implementation approaches like a component lifecycle, the Zygote, and limited per-process heap size that reduce runtime memory use at the Java runtime layer.
The people who designed the Android runtime had also designed the Danger system, which used Java and ran in as little as 32MB of RAM.
While it is possible for an app developer to make an inefficient Android app, it is very likely that core phone functionality, like dialers, messaging apps, PIM apps, etc. are a lot more efficient implemented as Android apps than as Web apps.
Second, it might be true that a single app could be more efficient as a native Android app than a web app. But regardless of whether it is (and I'm not sure it is - we would need to measure), the issue I mentioned is that Android phones have to support both native apps and their entire graphics stack etc., and the web platform and its entire graphics stack etc. Both because users can run both Android apps and a web browser, and because Android apps can embed a web view, so the combination happens even in a single app.
That fundamentally adds overhead. Of course, in theory massive amounts of work could remove it (you could unify both stacks on a single graphics codebase, and to some extent that is true on Android), but that might introduce compromises as well, and no one wants to compromise the high end which competes against Apple.
The bottom line is that Android doesn't ship super-low-end phones. That might not only be due to technical issues like these, of course.
As for how that's done, it's because Android can aggressively "swap" (really serialize and reconstitute)background components out of memory, and it can do the same to whole processes. You can actually watch your Android app instance switch PIDs, as it comes back from having had all the components, and the underlying runtime instance, killed. Now, there are some fat slovenly apps out there that might not be happy with life in a very limited machine, but I bet those 1500rs phones push the minimum specs pretty damn hard.
mid-range specced and priced phone would sell, i think, as second phone, phone for relatives and like.