Les secrets de fabrication de Stack Overflow décryptés

Malgré son audience massive, le site de questions-réponses Stack Overflow a su préserver la qualité de son contenu... alors qu'elle aurait dû mécaniquement s'éroder.

D'après Quantcast, Stack Overflow se hisse à la 41e place des sites web à plus fort trafic aux États-Unis... et enregistre au niveau mondial pas moins de 47 millions de visiteurs uniques par mois. Mais alors que les sites communautaires voient souvent la qualité de leur contenu s'éroder au fur et à mesure de la croissance de leur trafic (une tendance presque mécanique), le site américain de questions-réponses a su, lui, maintenir la pertinence de ses informations. Comment Stack Overflow est-il parvenu à résoudre cette délicate équation ? Le JDN a pu poser la question à son CEO, Joel Spolsky.

Un astucieux système de modération

"La qualité d'un site comme Stack Overflow repose principalement sur l'editing et la modération. C'est ce deuxième point qui a été le plus complexe à gérer", explique Joel Spolsky. "Compte-tenu de nos objectifs initiaux en termes de trafic, d'emblée ambitieux, il n'était pas possible de miser sur des modérateurs salariés. C'était irréaliste, à cause de la masse de travail que cela aurait impliqué. Nous avons par conséquent décidé dès le départ de donner la possibilité aux utilisateurs de modérer eux-mêmes." Partant de ce postulat, Stack Overflow a mis sur pied un astucieux système de modération incitatif. 

Stack Overflow compte plusieurs centaines de modérateurs

Pour devenir modérateur, un visiteur doit en premier lieu être actif sur le site, poster des questions et des réponses. Un dispositif permet ensuite aux utilisateurs d'attribuer des points à ces contenus en fonction de leur niveau d'intérêt. Plus les éléments publiés par un développeur engrangeront de points, plus ce développeur disposera de privilèges en matière de contribution et modération. Au total, le site compte 26 niveaux de privilège. 15 points permettent par exemple de voter pour des questions, 100 points de créer des chat rooms ou enrichir un post, 10 000 points d'accéder aux outils de modération complets... "Le niveau le plus élevé, qui correspond à 25 000 points, donne accès à notre Google Analytics pour suivre l'audience du site", ajoute Joel Spolsky (voir aussi la liste complète des privilèges).

Au total, Stack Overflow compte plusieurs centaines de modérateurs.

Comment Stack Overflow fait émerger de nouvelles communautés

Pour faire émerger une communauté autour d'une nouvelle thématique, Stack Overflow s'adosse, notamment, au système de privilèges, évoqué plus haut, attribués aux visiteurs. Un développeur qui se sera vu attribuer 1 500 points aura ainsi la possibilité d'ajouter de nouveaux tags thématiques sur le site. "Ce niveau de réputation apporte les gages que nous considérons nécessaires, il permet aussi aux contributeurs de fédérer assez rapidement une communauté pour faire vivre le nouvel espace", indique-t-on chez Stack Overflow.

Une fois les communautés et le contenu créés, reste à promouvoir les contenus. Sur ce point, Stack Overflow va prendre en compte les votes attribués aux questions-réponses pour mettre plus ou moins en avant un contenu sur ses pages.  Ce signal va jouer en quelque sorte le rôle de système de ranking interne. Comment le niveau de qualité de ce classement est-il géré ? Directement par l'élite des modérateurs du site, c'est-à-dire par ceux qui accèdent aux outils de modération (et qui ont par conséquent la possibilité, également, de supprimer des votes sur des questions qui auraient été mal évaluées ou spammées). 

Un site optimisé en termes de SEO avec un système de ranking interne

Toujours dans l'optique de générer du trafic, Stack Overflow fait ensuite en sorte que son site soit optimisé pour être au mieux présent dans les résultats de Google. Sur ce point, Stack Overflow apporte un soin particulier à la structuration HTML de ses pages, en matière de balise <Title> notamment. "En lien avec Google, nous avons aussi mis en place un tag associé aux votes sur les questions qui est pris en compte par le moteur de recherche", confie Joel Spolsky. "Compte-tenu de la richesse de notre contenu, il est dans l'intérêt de Google d'avoir une bonne relation avec nous", pense-t-il. Stack Overflow envoie ainsi son propre signal de ranking à Google.

Des techno Microsoft sous le capot... mais pas seulement

S'adressant à des développeurs, Stack Overflow se devait, également, d'offrir un niveau de qualité technique irréprochable. Pour maintenir une performance à l'état de l'art, le site est équipé de sa propre infrastructure d'hébergement répartie sur deux datacenters - l'un situé à New York, l'autre à Denver. Pourquoi n'a-t-il pas opté pour le cloud ? "Les offres comme Azure ou AWS ne sont pas adaptées à nos enjeux de performance et de vitesse d'accès", explique Joel Spolsky. "Nous avons préféré miser sur notre propre matériel informatique pour optimiser au mieux notre infrastructure en termes de disque dur et de stockage Flash."

Sous le capot, Stack Overflow a fait le choix de la plateforme Microsoft : le serveur web IIS (avec une couche applicative en C#) et la base de données SQL Server. Mais, le site ne s'est pas non plus empêché de recourir à des briques tierces. Le serveur de cache open source Redis, par exemple, qui fait le tampon entre serveurs web et base de données. Pour optimiser les performances d'accès, Stack Overflow fait par ailleurs appel au réseau de diffusion de contenu CloudFlare. "Nous sommes en train d'envisager de passer à un autre CDN", lâche toutefois, pour finir, Joel Spolsky.

Serveurs / Microsoft