Hacker News new | ask | show | jobs
by i4blux 2633 days ago
Firefox OS was doomed to fail. They created an operating system which used the slowest rendering and JS engine there was and put it in the worst hardware they could find.
1 comments

These phones run on the same rendering and JS engine...

"KaiOS apps are based on web technologies–HTML, CSS, and JavaScript–and are run by Gecko runtime."

https://developer.kaiostech.com/

Gecko is the rendering engine. The JS engine is called SpiderMonkey.
Except that Firefox is phasing out Gecko and replacing it with Servo (we're not yet there but some components have been replaced already - this is what the Firefox Quantum thing was all about). So this KaiOS thing is basically picking up an abandoned project...
Servo is nowhere near production-ready and there's no reason to assume that it will be anytime soon.

Just consider that Mozilla is pretty much working full-pelt on Gecko and merely keeping up with Google. They (as well as Google) are far away from implementing all currently specified web-standards, of which more get specified all the time.

So, in order to get Servo to the level of current browser engines, they would have to have an even higher developmemt velocity, while not really being able to stop developing Gecko in the meantime either.

Maybe if the majority of components someday are shared between Gecko and Servo, they might do the final step and switch out the core completely, but even that is still far away.

Servo is specifically a research project. To explore what could be done, if one were to do things right. That they were able to isolate and share components, that even came as a surprise to Mozilla.

Servo, while a research project, is also a place to build the fastest possible implementation of a browser (w/o full backwards compatibility), then crib the best performing parts and move that into mainline Firefox (what Project Quantum is, a metered replacement of Gecko).

Swapping out the jet engine of Firefox in flight (Gecko) was likely to be a very bumpy, messy road, thus Mozilla has chosen to break the problem down into manageable chunks by having a parallel team build Servo and push the bleeding edge of performance & features, while having another team break the new code (Servo) and the old code (Gecko) apart into the separate , interchangeable pieces, then clean up standards compliance in the new Servo module and prep it to be replaced.

Essentially, its the Cathedral vs the Bazaar all over again. Microsoft Edge was a ground up rewrite of most of the browser (the Cathedral model of software dev) along with Android (built behind closed doors at Google, then code dumped right before a new major release). Mozilla didn't like how this model could easily backfire, choosing a more metered approach by developing smaller, swappable components in the open.

https://wiki.mozilla.org/Quantum

Also, Servo isn't a general-purpose browser project anymore at Mozilla. It's part of the "Mixed Reality" department:

https://blog.servo.org/2018/03/09/servo-and-mixed-reality/