211service.com
Aux Jeux olympiques des algorithmes, un Russe continue de remporter l'or
Si Vladimir Poutine jette un coup d'œil par les fenêtres du Kremlin au bon moment, il a une chance d'apercevoir le meilleur programmeur informatique du monde dans le bureau de Google à Moscou de l'autre côté du fleuve.

Câblé en : Le programmeur le mieux classé Petr Mitrichev résout un problème lors d'un concours de codage en 2010.
Il s'agit de Petr Mitrichev, un Russe de 27 ans qui travaille sur le moteur de recherche de Google et a remporté son titre de champion de la programmation compétitive, un sport où les pirates écrivent du code informatique à la recherche de prix en argent, d'opportunités de voyage et d'un accomplissement profond inaccessible nulle part ailleurs. .
Vous avez un sentiment de satisfaction dans un concours lorsque vous résolvez un problème, explique Mitrichev, affable et un peu pâle en T-shirt Google lors d'un entretien sur la pelouse du siège de l'entreprise à Mountain View, en Californie.
Depuis 2005, Mitrichev, diplômé de l'Université d'État de Moscou, est le leader mondial de la programmation algorithmique. C'est le Grand Prix des catégories de codage compétitives, dans lesquelles les énigmes impliquant des plateaux de jeu infinis ou le niveau de décibels de n + 1 vaches meuglantes nécessitent des connaissances mathématiques instantanées et des doigts rapides sur le clavier. Mitrichev est connu pour sa courte pause, c'est-à-dire qu'il commence à répondre aux questions presque dès qu'il les voit.
Pour Mitrichev, la programmation compétitive offre un îlot d'absolu rare dans un monde subjectif. Le bel aspect est que c'est totalement automatique et qu'il n'y a aucun jugement humain impliqué, dit-il. C'est l'une des compétitions les plus équitables que j'aie jamais vues.
Il n'y a pas que les créateurs d'algorithmes tels que Mitrichev qui voient de la beauté là-dedans. Les entreprises technologiques utilisent la scène de la programmation sportive comme un lieu pour découvrir les codeurs les plus intelligents et les plus rapides au monde. Des géants tels que Facebook et Google sponsorisent les meilleures compétitions, apposant leurs logos autour des salles d'événements comme Rolex à Wimbledon (voir Letting Hackers Compete, Facebook Eyes New Talent ).
L'ascension de Mitrichev a commencé à l'âge de 10 ans, après avoir acheté un livre appartenant à son frère aîné sur le langage informatique Pascal. Bien qu'il n'y ait pas d'ordinateur dans sa maison de Moscou, l'année suivante, il s'est classé 60e sur 100 au concours national de programmation russe pour les lycéens. Comme il n'avait que 11 ans, les juges ont décerné un ordinateur au jeune. A 15 ans, il remporte le concours d'emblée. Peu de temps après, il était sur le circuit international, faisant ses débuts aux Olympiades internationales d'informatique à Pékin.
Mitrichev n'a obtenu son classement mondial actuel qu'après avoir rejoint les premières ligues de programmation compétitive, une série de concours hebdomadaires et annuels organisés par la société Connecticut. TopCoder qui attirent plus de 400 000 programmeurs du monde entier. Passant du langage de programmation Pascal au langage C#, il a bondi dans le classement pour prendre la première place en 2005, poste qu'il occupe toujours aujourd'hui.
Une telle maîtrise et un comportement sportif ont fait de Mitrichev un héros geek. Les messages du forum dissèquent chacune de ses performances, qu'il publie comme vidéos en ligne . Lors du plus grand concours annuel qui réunit des centaines de codeurs dans une salle de bal d'hôtel, de grands écrans relaient les flux en direct des moniteurs des concurrents. Les chaises sont dressées 20 minutes à l'avance pour une bonne vue de Mitrichev au travail.
Des murmures traversent la foule quand ils voient qu'il a un bug, et encore quand ils voient qu'il l'a corrigé, dit Mike Lydon, CTO de TopCoder. Pour le profane, il n'y a rien à voir. Mais pour ces gars, c'est fascinant.
Les problèmes de ces compétitions décrivent souvent des situations physiques qui doivent être décrites mathématiquement. Pour ce faire, il faut écrire un algorithme, c'est-à-dire une séquence d'opérations à effectuer sur les données. L'un des problèmes de la dernière compétition de Mitrichev, le 21 juillet, était de prédire la position des pièces dans un jeu de dames joué sur un échiquier infini. Les concurrents gagnent des points lorsque leurs programmes traitent correctement les données de test. Certains concours incluent une phase de défi, où l'objectif est de soumettre des données qui déclenchent le programme d'un concurrent.
Il y a beaucoup d'argent en jeu dans le sport. Les meilleurs prix peuvent valoir 25 000 $ (Mitrichev en a remporté plusieurs), et parce que les algorithmes conduisent des entreprises lucratives dans la Silicon Valley et à Wall Street, de nombreux codeurs de haut niveau sont recrutés pour des emplois bien rémunérés. (Un représentant des relations publiques de Google ne laisserait pas Mitrichev discuter de sa rémunération.)
Mitrichev est inhabituel car il a continué à concourir – et à gagner – même après avoir obtenu un tel emploi : il a commencé à travailler chez Google en 2007. Il dit qu'il continue de concourir parce que l'écriture de code est relaxante. Les compétitions hebdomadaires en ligne de TopCoder durent environ 90 minutes. Vous pouvez regarder une émission de télévision ou vous pouvez entrer, dit-il.
Même à loisir, Mitrichev est une force avec laquelle il faut compter. En 2011, il a remporté le premier concours de programmation de Facebook, le désormais annuel Coupe des pirates . Il s'est présenté pour la finale au siège de Facebook et a récupéré son trophée avec son badge d'employé Google attaché à son jean. Certains y ont vu une raillerie effrontée dans la rivalité des entreprises pour la suprématie des hackers. Je l'avais laissé la veille, dit Mitrichev. Je n'essayais pas de faire valoir quoi que ce soit.
Le travail de Mitrichev chez Google est d'améliorer son outil de recherche, construit à partir des algorithmes peut-être les plus finement réglés et les plus précieux de l'histoire, qui enregistre près de cinq milliards de requêtes par jour. C'est difficile, dit-il, car la plupart des techniques simples ont déjà été mises en œuvre, y compris dans le PageRank, l'algorithme emblématique écrit à l'origine par les fondateurs de Google. L'amélioration des résultats de recherche implique désormais des ajustements plus subtils, tels que la recherche de synonymes ou d'autres astuces linguistiques pour aider à extraire un sens supplémentaire des termes de recherche d'un utilisateur.
Lorsque vous avez une idée, vous l'implémentez sous forme d'algorithme, puis vous lancez une expérience, explique-t-il. Si les classements de recherche sont meilleurs, si les gens cliquent plus souvent sur les meilleurs résultats dans les tests en direct, le nouvel algorithme reste.
La prochaine fois qu'une recherche Google renvoie exactement le résultat que vous vouliez, vous pouvez juger par vous-même.