B2G/User Agent/Partner Changes Policy: Difference between revisions

No edit summary
Line 5: Line 5:
Note: The Firefox OS UA, along with the rationale behind its selection, is [[B2G/User_Agent|documented on the Mozilla wiki]].
Note: The Firefox OS UA, along with the rationale behind its selection, is [[B2G/User_Agent|documented on the Mozilla wiki]].


==Pragmatic==
==Pragmatic reasons for not modifying the Firefox OS UA==
 
Mozilla suggests that it is not in the best interest of any partner to modify the Firefox OS UA for the devices that they ship.


===Risk of individual site regressions===
===Risk of individual site regressions===


We have been informing sites about the chosen default Firefox OS UA for nearly a year, since [http://lawrencemandel.com/2012/07/27/decision-made-firefox-os-user-agent-string/ the decision was made] in July 2012. We have worked with a large number of sites, includes Google, Facebook, Twitter, and many others, and have made good inroads into making sure the correct content is delivered to Firefox OS. Changing the default UA risks changing the content that Firefox OS receives for the worse - e.g. by getting desktop content or feature phone content.
Mozilla has been informing sites about the chosen default Firefox OS UA since [http://lawrencemandel.com/2012/07/27/decision-made-firefox-os-user-agent-string/ the decision was made] in July 2012. Mozilla and our partners have worked with a large number of sites, such as Google, Facebook, and Twitter, to ensure that the correct content (i.e. mobile content) is delivered to Firefox OS. Due to the widespread use of UA detection, a change to the UA risks sites no longer detecting Firefox OS as a mobile device and reverting to sending desktop or feature phone content to Firefox OS.


===Risk of framework regressions===  
===Risk of framework regressions===  


Lawrence Mandel of the Mobile Compatibility team has personally worked with the largest UA detection frameworks (WURFL, Categorizr, and 51Degrees) and they all now recognize Firefox OS. This was no small feat. Changing the default UA would, to avoid regressing the sites which use these frameworks, require going back to all of these companies to make changes again. And there can be significant lag time in the adoption of changes to these frameworks by sites.
Mozilla has worked with UA detection frameworks, such as WURFL, Categorizr, and 51Degrees, and they all now recognize Firefox OS. Changing the Firefox OS UA would require going back to all of these companies to make further changes. Assuming all of the companies do make the requisite changes, there can be significant lag time in the adoption of these changes by sites that make use of these frameworks.


Therefore we suggest that, even if we did not prohibit it, it is not in the best interests of any OEM or carrier to modify the default UA of the Firefox OS phones that they ship.
Mozilla has also worked with media companies, such as YouTube, Vimeo, and SoundCloud, to ensure that content that is frequently embedded within sites is functional on Firefox OS.


===Stores up trouble for the future===
===Future compatibility issues===


We hope that Firefox OS will appear on a wide range of devices with differing capabilities, and we want to encourage the use of detection methods which will work on all those devices, both ones that currently exist and ones which have not yet been invented. Giving each Firefox OS device a different UA string gives sites the opportunity to, accidentally or on purpose, design their code to work with only a subset of Firefox OS devices, excluding other ones. This is a bad thing for Mozilla and for Firefox OS.
Mozilla wants to encourage the use of detection methods which will work on all Firefox OS devices, both ones that currently exist and ones which have not yet been invented. Specifying a different UA string for each Firefox OS device provides a site the mechanism to, accidentally or deliberately, design their code to work with only a subset of Firefox OS devices. This is a bad for the Firefox OS ecosystem and the open Web.


==Principled==
==Principled==
Confirmed users
2,473

edits