Afin d'encourager une plus large adoption de son protocole Open Graph, Facebook a livré des détails sur un certain nombre d'applications développées en interne, utilisant la norme web maison. Paul Tarjan, un développeur de Facebook, expose dans un blog différentes facettes de l'Open Graph, et explique comment le protocole est utilisé, aussi bien pour examiner du code informatique, pour partager des images, ou pour se connecter au centre de remise en forme de Facebook.

« Au départ, ces outils ont été créés pour tester le protocole Open Graph utilisé en interne, avant d'être destinés à d'autres usages », explique le développeur. Les applications dont il parle, qui ne représentent qu'un échantillon de toutes les applications développées en interne, ont été créées pendant les « hackathons », ce temps que les développeurs peuvent consacrer à leurs propres projets avec la bénédiction de l'entreprise. « L'une des choses remarquables concernant cette plate-forme développée en interne, c'est que nous avons pu faire nous-mêmes la chasse aux bugs et mettre en évidence les points qui posaient poroblèmes », a écrit Paul Tarjan. « Nous avons appris qu'il était très important de réfléchir dès le départ à la façon dont on voulait modéliser les objets et les actions ».

Même si aucune de ces applications n'est disponible pour le grand public, le développeur s'emploie à décrire comment elles fonctionnent, et revient sur certaines décisions prises pendant leur conception. L'un des outils en question permet de relier le logiciel Phabricator, utilisé par les ingénieurs de Facebook pour examiner le code, à la timeline de Facebook. Il permet aux personnes participant au projet de partager des informations sur les changements de code. Il permet aussi de voir facilement et rapidement le nombre de lignes de code transformées par tel ou tel développeur et visualiser la contribution de chacun au projet.

Phabricator de Facebook

Application Phabricator de Facebook

Une autre application, appelée Pixelcloud, permet aux développeurs de Facebook de partager des échantillons de code, des captures d'écran et d'autres fichiers graphiques, et de garder la trace des actions particulières réalisées par tel ou tel utilisateur.

Des programmes plus triviaux

Toutes les applications ne concernent pas le travail de production proprement dit. L'une d'elle, appelée StayFit, se connecte au centre de remise en forme des salariés de Facebook. Jusqu'à présent, 322 employés de Facebook ont installé l'application et 249 personnes l'utilisent tous les mois. Les développeurs de Facebook cherchent désormais à faire remonter directement dans l'application des données provenant des machines elliptiques et des tapis de course du centre de fitness. Dans son descriptif, Paul Tarjan parle également d'applications chargées de dépister les spams (SIOG) ou d'agréger de données en mémoire (Scuba) afin de les analyser. Une autre application diffuse une animation Pokemon à travers la page chaque fois que l'utilisateur termine une tâche.

Application pour l'entraînement à la salle de Fitness de Facebook

L'application Stayfit, sur le centre de Fitness de Facebook

Même si ces programmes semblent très disparates, ils sont exécutés par des applications qui renvoient à un même modèle de conception. Ce cadre obéit à la syntaxe Open Graph conçue par les développeurs du réseau social et s connecte à Facebook via une API. Lancé en 2010, le protocole Open Graph permet à des applications tierces de publier des informations sur le réseau social en utilisant des tags RDFa (Resource Description Framework in attributes) qui sert à décrire des données structurées dans une page web. Le RDFa est une technologie instrumentale utilisée pour le web sémantique. Elle permet de structurer les pages web de manière à ce que les informations qu'elles contiennent puissent être directement consommées par les services Internet. Avec Open Graph, une application tiers peut envoyer des données utilisateurs sur Facebook, lesquelles sont automatiquement reprises dans la timeline.