So Peter-Paul Koch (Quirksmode) declares Firefox OS dead. I’m afraid he’s right. A pity really, as I loved the idea of an entirely open web-based mobile OS. Mozillians don’t agree, saying they’re just not going offer Firefox OS phones through carriers any more.
Or maybe It’s just resting?
Customer: I wish to complain about this here fox what I purchased not half an hour ago from this very boutique.
Shopkeeper: Oh yes, uh, Firefox OS …What’s,uh…What’s wrong with it?
Customer: I’ll tell you what’s wrong with it, my lad. It’s dead, that’s what’s wrong with it!
Shopkeeper: No, no, ‘e’s uh,…it’s resting.
Customer: Look, matey, I know a dead fox when I see one, and I’m looking at one right now.
Shopkeeper: No no it’s not dead, it’s restin’! Remarkable software, Firefox OS, idn’it, ay? Beautiful openness!
I’m not only into optimizing the speed of sites with for the benefit of their visitors, but also into speeding up all sites in my browser, to satisfy my own impatience. I already blocked Facebook, Twitter and Google+ widgets using NoScript’s ABE and now added this little snippet in ABE’s user ruleset to stop Google Fonts from being loaded;
# no google fonts
Result: less requests, less to download and faster rendering without that ugly FOUT. Because let’s face it, your fancy fonts slow down the web and they are of no interest to me.
Just found this one in my http logfile;
Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.111 Safari/537.36 OPR/27.0.1689.69
So one User Agent string mentioning 4 browsers (Mozilla, Safari, Chrome and finally Opera 27, which is the actual browser) and 3 rendering engines (Applewebkit, KHTML and Gecko)? There is a lot of web-history in those 127 characters.
Well, checking out the browser, off course!
I had the opportunity to ride along with a friend in his brand new Tesla yesterday. Great ride, but you know that already, so I checked out the browser and data connectivity obviously. I visited my own little “ip check” page and saw this in the logfile:
188.8.131.52 – – [05/Feb/2015:12:17:24 +0100] “GET /check_ip.php HTTP/1.1” 200 132 “-” “Mozilla/5.0 (X11; Linux) AppleWebKit/534.34 (KHTML, like Gecko) QtCarBrowser Safari/534.34”
Breaking it down:
- The free mobile data connectivity is provided by KPN (Base) in Belgium (and Holland, probably).
- As per the useragent the car display runs on Linux (that little OS that could is really everywhere these days)
- The browser is QtCarBrowser, which would obviously be built with QT and WebKit. Based on the WebKit version, one can deduct that the version of QT uses is 4.8. As such, QTCarBrowser seems very similar to QTWeb and might indeed be based on it. HTML5test.com rates QTWeb with 204/555, but Tesla’s QTCarBrowser result might still be different off couse.
- The WebKit-version, 534.34, is pretty old and as such dates from mid 2011 (QT 4.8 was released in December 2011). This is close to the version that was used in Safari 5.1 (534.48.3).
I sure hope there are not too many vulnerabilities in those old version of of QT and WebKit, but one does not drive a Tesla to browse the internet, does one? ;-)
I had been happily auto-hiding the Firefox navigation bar on my small-screen netbook for a couple of years already, until that add-on (LessChromeHD from the Prospector series) stopped working after having upgraded to Firefox 35. So I started Firefox from the command-line and spotted this error:
addons.xpi WARN Error loading bootstrap.js for lessChrome.HD@prospector.labs.mozilla: TypeError: redeclaration of variable event (resource://gre/modules/addons/XPIProvider.jsm -> jar:file:///home/frank/.mozilla/firefox/jy6bws91.default/extensions/lessChrome.HD@prospector.labs.mozilla.xpi!/bootstrap.js:226:8)
A quick look at the source code confirmed “event” was declared twice, once on line 210 and a second time on line 226. The fix, obviously, is simple; on lines 226-228 replace all references to “event” with e.g. “shownEvent”;
let shownEvent = document.createEvent("Event");
shownEvent.initEvent("LessChromeShown", true, false);
You can do this yourself by unzipping “lessChrome.HD@prospector.labs.mozilla.xpi” in your extenstions-folder, editing boostrap.js and updating the xpi. Or you could wait for the Mozillians to update LessChromeHD.