Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.

For the best experience please use the latest Chrome, Safari or Firefox browser.

Les User Agents, c'est le mal !

Histoire et déchéance d'une plaie du Web


Rudy Rigot

Utilisez votre clavier pour naviguer !

Clever Age New York

C'est quoi une ziouzeur èdjentes ?

Définitions

Headers HTTP

(paramètres de requête, langue, ...)

Un serveur

Ze Oueb

Si seulement j'avais un header HTTP propre à chaque navigateur !

Introducing...

Le User Agent !

Mais d'où vient tout ce bordel ?

Histoire et préhistoire

NCSA_Mosaic/2.0
(Windows 3.1)

Mozilla/1.0 (Win3.1)

 

^Mozilla/.*

MSIE/2.0 (Windows 95) ?

Mozilla/1.22 (compatible;
MSIE 2.0; Windows 95)

Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.1) Gecko/20020826

Mozilla/5.0 (Windows; U; Windows NT 5.1; sv-SE; rv:1.7.5) Gecko/20041108 Firefox/1.0

Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.7.2) Gecko/20040825 Camino/0.8.1

Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.8) Gecko/20071008 SeaMonkey/1.0

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; en) Opera 9.51

Mozilla/5.0 (Windows NT 6.0; U; en; rv:1.8.1) Gecko/20061208 Firefox/2.0.0 Opera 9.51

Opera/9.51 (Windows NT 5.1; U; en)

KHTML

Apple WebKit

Mozilla/5.0 (Macintosh; U; PPC Mac OS X; de-de) AppleWebKit/85.7 (KHTML, like Gecko) Safari/85.5

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13

Opera/9.8 (Windows NT 6.0; U; en) Presto/2.2.0

Opera 10

Opera/10.0 (Windows NT 6.0; U; en) Presto/2.2.0

Mais que faire ?

Solutions

Non !
Décision côté client !

Ah mais oui mais non !

Limites des

Le front-end vous ment !

Font-face ?

Un téléphone Nokia Bulle de BD

Yep !

Wrong !

(Mais quand même moins que les User Agents)

(et en plus, ça reste tout de même plus pérenne)

Le front-end se moque de vous !

videoElem.canPlayType('video/ogg');

"yes"

"" (no)

"maybe"

"probably"

(Mais toujours quand même moins que les User Agents)

Solution simple et pérenne

→ le lâcher-prise du Web

Solution perfectionniste

→ les Server-Side
     Components

BBC  a une équipe
dédiée aux User-Agents !

(Outil DEMI)

Si vous voulez en savoir plus, demandez à super-Kaelig !

(il est dans la salle !)

D'ailleurs merci à lui
pour ses infos précieuses...

... et merci à vous d'avoir écouté !

Retrouvez cette présentation ici :

http://rudyonweb.net/f/useragent/

Source principale pour l'Histoire des User Agents :
"History of the browser user-agent string", Aaron Andersen

http://webaim.org/blog/user-agent-string-history/

Et merci encore à
Kaelig Deloumeau-Prigent !