Help wanted: Firefox OS UA detection

Posted on March 1, 2013 by Lawrence Mandel

Firefox for Android and Firefox OS, while based on the same Gecko platform, have one key difference with respect to compatibility: their user agent (UA) string. The difference between the UA strings for these two products is the inclusion of the “Android” token in the Firefox for Android UA. The lack of an “Android” identifier for Firefox OS is a good thing, in that it provides sites that employ UA detection to detect Firefox OS as a non Android device and subsequently suppress their Android specific endorsements. However, our research has shown that a large number of sites detect the presence of the “Android” token rather than the “Mobile” token to indicate that a client is a mobile device. Firefox OS, therefore, is frequently misidentified as a non mobile device and served desktop content.

For the initial launch of Firefox OS, we created an UA override mechanism the allows Firefox OS to identify itself as Firefox for Android. This mechanism ensures that Firefox OS receives mobile content for top sites. However, this mechanism is a short term solution and does not scale to the scope of the Web. What we want is to clear out this list by having sites recognize Firefox OS as mobile.

The UA override list currently contains 132 entries. All of these sites have undergone some measure of quality assurance from Mozilla or one of our partners and each has been demonstrated to be functional on Firefox OS.

Here’s where we need your help.

Do you, your friend, your relative, or other acquaintance work for one of the sites on this list? If so, please speak with them about changing the site’s UA detection to recognize Firefox OS. If UA detection is to be used, Mozilla’s recommendation is to detect the “Mobi” token, which will allow for the identification of the greatest number of mobile clients.

For your reference, the Firefox OS UA is:

Mozilla/5.0 (Mobile; rv:18.0) Gecko/18.0 Firefox/18.0

Don’t know anyone at any of these sites but would still like to help? Look for other ways to contact the sites. Other ways that we have found to be effective are to ping the site on Twitter, submit a trouble ticket via the site support or feedback forms on their website, or try e-mailing catchall addresses like webmaster@site.com.

The open list of sites with UA overrides can be found in Bugzilla. For your reference, I have also listed the sites that currently have an UA override below.
11870.com
20minutos.es
4shared.com
abril.com.br
amazon.co.uk
amazon.com
amazon.es
antena3.com
arstechnica.com
as.com
askthebuilder.com
avianca.com
avn.info.ve
bancobrasil.com.br
bb.com.br
bbva.es
bing.com
bol.uol.com.br
booking.com
bumeran.com.ve
ceneo.pl
cheaptickets.com
chevrolet.com
citibank.com
clickjogos.uol.com.br
climatempo.com.br
comunio.es
consumersearch.com
dailymotion.com
deser.pl
despegar.com.ve
deviantart.com
dropbox.com
ebay.com
ebay.es
edmunds.com
ehow.com
einforma.com
elconfidencial.com
elespectador.com
elpais.com.co
enfemenino.com
es.playstation.com
espn.go.com
estadao.com.br
etsy.com
foodily.com
fotocasa.es
foxnewsinsider.com
games.com
gazeta.pl
globo.com
groupon.com.br
hao123.com
icanhas.cheezburger.com
ig.com.br
imdb.com
infojobs.net
ingbank.pl
ingdirect.es
iphonejuegosgratis.com
itau.com.br
lancenet.com.br
lapatilla.com
laverdad.com
letras.mus.br
linkedin.com
live.com
loteriasyapuestas.es
magazineluiza.com.br
mail.google.com
marca.com
maruccisports.com
mercadolibre.com.co
mercadolibre.com.ve
mercadolivre.com.br
meridiano.com.ve
money.pl
movil.bankinter.es
movistar.com.ve
msn.com
nba.com
news.google.com
nk.pl
noticias.uol.com.br
nytimes.com
o2.pl
olx.com.br
olx.com.co
olx.com.ve
orange.es
orbitz.com
orkut.com
orkut.com.br
paginasamarillas.es
pagseguro.uol.com.br
petardas.com
plotek.pl
pontofrio.com.br
publico.es
r7.com
rincondelvago.com
scribd.com
slashgear.com
slideshare.net
sport.pl
stackoverflow.com
starwoodhotels.com
tablica.pl
tam.com.br
techtudo.com.br
tecmundo.com.br
thechive.com
thinkgeek.com
tor.com
tumblr.com
tvn24.pl
txt2nite.com
tylted.com
uol.com.br
urbanspoon.com
vagalume.com.br
vimeo.com
virginatlantic.com
webmotors.com.br
wp.pl
wwwhatsnew.com
wyborcza.biz
wyborcza.pl
yahoo.com
youtube.com
zimbio.com

Posted in mozilla | Tagged firefox os, mobile, mozilla, user agent, web-compat | 12 Comments

DateCountdown Wikimo Template

Posted on November 9, 2012 by Lawrence Mandel

Have you ever wanted your wiki page to include an automatically updated countdown of the number of days until some event? Well now you can. I have added a DateCountdown template on wiki.mozilla.org that does just this. Using this template you specify a date and the wiki will automatically display the number of days left until that date. After the date passes, the wiki will display “0″. This is useful for event countdowns like, days to the next merge, days to next release, or days left in a sprint or iteration.

Use the DateCountdown template as follows:

{{DateCountdown|DATE}}

where DATE should be of the form yyyyMMdd. For example,

Days to Firefox 17 release: {{DateCountdown|20121120}}

The output of which is (today only):

Days to Firefox 17 release: 11

For a date that has passed, like the Firefox 16 release date:

Days to Firefox 16 release: {{DateCountdown|20121009}}

The output is:

Days to Firefox 16 release: 0

For live examples, see the platform meeting agenda, where the release management team has used the template to show the days left until the next merge and release. It has similarly been used for the coordination meeting agenda.

Posted in mozilla | Tagged mediawiki, mozilla, wiki

Mobile Web Compatibility Nov 9, 2012 – Video update, UA detection tools, Phony for B2G?

Posted on November 9, 2012 by Lawrence Mandel

Video update

I gave a short update about mobile Web compatibility during the Oct. 22, 2012, Mozilla project meeting. This update should bring you up-to-speed on the problem and the various initiatives that we have underway to tackle it. The video is available via Air Mozilla (skip to 4:00).

Help wanted: deep dive investigation

Are you a Web dev? We need your help deep dive testing a short list of sites. The goal of this exercise is to understand why after spoofing the user agent and aliasing Webkit prefixed CSS properties these sites are still broken. Details and the site list are in my post Call for Help: Broken Site Deep Dive Investigation.

Phony functionality in B2G

To better support mobile Web compatibility testing on B2G, we need Phony type functionality to switch the user agent. I have started a discussion on the dev-b2g list and filed bug 810075. If you have ideas or can help with the implementation, please comment.

Site testing and outreach

Over the past couple of week I have spoken with Categorizr, 51Degrees.mobi, and WURFL, all user agent detection tools/frameworks. Categorizr and 51degrees correctly identify Firefox for Android mobile + tablet and Firefox OS. I am working to provide WURFL with an update as well.

Joe Drew spoke with NextBus.com, who will start recognizing Firefox OS shortly.

Facebook has fixed their drop-downs for Friend Requests, Messages and Notifications (bug 715515).

Jason Smith and I held a test event in the Mozilla Mountain View office and on Air Mozilla on Oct. 23. Test results were submitted for 45 additional sites. Thank you to everyone who contributed.

Want more debugging tools for Firefox for Android? Mark Finkle blogged about the new remote console for Firefox for Android.

Interested in helping with site testing and evangelism? See Gerv Markham’s blog post Website Evangelism: Mobilizing Mozilla.

Posted in mozilla | Tagged 51degrees.mobi, categorizr, firefox, firefox os, mobile, mozilla, phony, presentation, user agent, web frameworks, web-compat, wurfl

Call for Help: Broken Site Deep Dive Investigation

Posted on November 5, 2012 by Lawrence Mandel

Not too long ago we kicked off an analysis to answer the question,

Does aliasing a subset of Webkit CSS properties in Gecko improve mobile Web compatibility?

The preliminary results of our small study showed little improvement. The next step in this analysis is to understand why the sites that were tested are broken even when aliasing Webkit prefixes in Firefox.

This is a call for help and your call to action. The sites to test are listed below. We need to know as much detail about why each site is broken as possible. Ideally, the for each site we will have a report that includes the lines of code that are broken and a suggested fix. It will benefit us to know any JavaScript frameworks that have issues. As we have already seen, it is common that the resolution of one site issue causes a new issue to become exposed. We need a complete list of issues in order to best decide how to target fixes. Ultimately, we will need to answer question like, can we make a set of changes to Gecko, possibly including Webkit CSS prefix aliasing, that does make a significant difference for mobile Web compatibility? Are the issues primarily in site specific code or a common set of frameworks?

Results can be reported by filing bugs against the Tech Evangelism: Mobile component or by sending them to the compatibility mailing list.

Site list with visible issues (as reported by Mozilla QA)

  • www.directv.com
    1. Completely broken on FF Android. Appears to be broken by looking for the Webkit JavaScript value “WebkitPoint” that does not exist in Gecko.
  • m.doctissimo.fr
    1. White screen renders on page
  • ocn.ne.jp
    1. Slideshow of icon shortcuts don’t allow swiping left and right
    2. Missing colors on certain buttons.
  • jutarnji.hr
    1. ads and transitions within ads are not shown correctly
  • m.allhiphop.com
    1. colors for refresh button are not right
    2. text is occasionally blacked out when scrolling page
  • beyond.com
    1. ads don’t render
  • carsensor.net
    1. very obvious layout issues in comparison to Android stock browser
Posted in mozilla | Tagged css, firefox, gecko, mobile, mozilla, web frameworks, web-compat, webkit

Come Test the Mobile Web! Tues Oct 23, 2012 – 12pm PT

Posted on October 23, 2012 by Lawrence Mandel

To support our mobile Web compatibility evangelism efforts, we need to understand the top site issues. Come out tomorrow at 12pm PT to test the mobile Web and report issues. No experience necessary. We’ll help you get your test environment set up and get testing with Firefox for Android.

For those in Mountain View, we’ll be in 10 forward with what I’m told is most excellent pizza. We’ll also be streaming live on Air Mozilla.

  • Sign-up (just so we have an idea of who’s coming)
  • Air Mozilla link

Want to learn more about mobile Web compatibility? Watch my presentation from today’s Mozilla project call.

Posted in mozilla | Tagged css, firefox, firefox os, gecko, mobile, mozilla, presentation, testing, web-compat

Mobile Web Compatibility Oct 19, 2012 – H.264, navigator.platform, Spade, Phony

Posted on October 19, 2012 by Lawrence Mandel

Here’s what’s new in mobile Web compatibility this week.

H.264 video playback

Maire Reavy (media product manager) provided a list of video sites to test for video playback compatibility. Aaron Train has bucketed them as follows:

H.264 video that’s working

  • Metacafe (Desktop site served)
  • Videobash.com (Mobile site served)
  • Ovguide (Mobile site served)
  • Vevo (Mobile site served)

H.264 video with issues

  • tv.com (Mobile, but don’t see any video)
  • ustream (Mobile site served, should be H.264 but don’t see any video playback)
  • Veoh (Mobile, H.264 offered but video content downloads rather than plays)

Flash video

  • Hulu (Desktop only site)
  • video.yahoo.com (Desktop site served)
  • vids.myspace.com (Desktop site served)
  • Break.com (Desktop site served)
  • Justin.tv (Desktop site served)

Silverlight video

  • Netflix (Desktop only)

The current focus of our video playback test effort is Advanced Video Coding (AVC) profile support across different devices and operating systems. You can track progress on the Mozilla QA H.264 wiki page.

You can contribute by filing a bug when you encounter an H.264 video playback error or a message that H.264 is not supported in Firefox.

navigator.platform

Firefox OS does not include any operating system identifier in its user agent string. Gervase Markham provided a detailed explanation for this decision. It follows from this explanation that Firefox OS should not expose itself to Web clients in any manner. Therefore, navigator.platform will return an empty string when called on Firefox OS.

Any comments on this function can be directed to bug 801614.

Spade update

Clint Talbert and the A-Team made some notable progress on Spade, an automated tool to analyze CSS property usage and UA sniffing practices on the Web. Spade completed a test run of 100 sites, which is 10x the previous test run size. The A-Team is continuing to work on running this tool at Web scale with a short term goal to analyze the top 500-1000 sites on the internet.

Phony

Matt Brubeck has updated the Firefox for Android Phony add-on, which allows you to change the UA served by Firefox, to include the Firefox OS UA as an option. With this change, you can now use your Android device to test the impact of UA sniffing on the content served to Firefox OS.

Posted in mozilla | Tagged add-ons, firefox, firefox os, h.264, mobile, mozilla, spade, user agent, web-compat

Mobile Web Compatibility Oct 12, 2012 – Issue Tracking, Brightcove H.264, Firefox OS UA Whitelist

Posted on October 12, 2012 by Lawrence Mandel

Site testing and outreach

Firefox mobile evangelism issues are currently tracked in the Firefox for Android -> Evangelism component in Bugzilla. However, there is another notable mobile Firefox platform: Firefox OS. In addition, there exists a Tech Evangelism product in Bugzilla, where several mobile evangelism issues have been filed. In order to consolidate our effort, a new Tech Evanglism -> Mobile component has been created. Evangelism bugs should be filed in this component. In addition, when filing a bug, please set the OS field to Android, Gonk (for Firefox OS), or All for issues with both platforms.

Brightcove served H.264 encoded media was failing to play in Firefox for Android. The source was determined to be a bug in the Gecko video element’s canPlayType function (bug 794171). This fix will be in today’s Firefox Nightly builds. This fix has also received approval for Firefox Aurora and Beta and should land there shortly.

Bug 40919 was filed against Wikipedia to recognize Firefox OS as a mobile browser.

Firefox OS user agent whitelist

As I wrote last week, a whitelist mechanism has been added to override the Firefox OS user agent (UA) on a per site basis. The introduction of this whitelist is a mitigation strategy to deal with sites that do not send mobile content to this platform. After discussion on the mailing lists and in Bugzilla, Gerv Markham has published the policy for adding sites to this list.

Posted in mozilla | Tagged brightcove, firefox, firefox os, h.264, mobile, mozilla, user agent, web-compat