� Les �quipes Rust chez Google sont deux fois plus productives que celles qui se servent de C++ �, d�apr�s un responsable de l�entreprise
Qui lance le d�bat de la productivit� entre Rust et C++
Les comparatifs entre les langages Rust et C++ portent en g�n�ral sur des aspects comme la performance et la s�curisation des espaces m�moires des applications. Certains benchmarks sugg�rent que les applications Rust sont plus rapides que leurs �quivalents en langage C. Et c�est justement pour ces atouts que sont la parit� en termes de vitesse d�ex�cution en comparaison avec le C, mais surtout pour la s�curisation et la fiabilit� que de plus en plus d�acteurs de la fili�re du d�veloppement informatique recommandent le Rust plut�t que le C ou le C++. C�est sur la question de l�impact que le choix de ces langages a sur la productivit� des d�veloppeurs que les intervenants ne se sont pas trop pench�s. Google vient de publier les r�sultats d�un sondage en interne et il en ressort que les �quipes Rust en son sein sont deux fois plus productives que celles qui se servent du langage C++.
Les conclusions de Google se basent sur les perceptions des r�pondants au sondage. Le temps n�cessaire � une r�impl�mentation en Rust compar� � celui d�une pr�c�dente r�impl�mentation en langage C++ est l�un des premiers aspects sur lesquels le sondage en interne au g�ant technologique a port�.
� Nous avons not� une r�duction de 50 % de l�effort n�cessaire pour mettre sur pied un service en langage Rust ainsi que pour en assurer la maintenance �, d�clare Lars Bergstrom dans son comparatif d�impact sur la productivit� des d�veloppeurs caus� par les langages Rust et C++.
L�enqu�te comparative de l�impact du choix des langages C++ et Rust sur la productivit� des d�veloppeurs s�est �tendue au-del� de la production du code informatique. Les r�pondants ont en sus partag� leurs perceptions pour ce qui est de la productivit� en Rust compar�e � celle d�autres langages (C++, Java, etc.) dont ils font usage. Dans les chiffres, le tiers des r�pondants a d�clar� devenir aussi productif en Rust que dans les autres langages en 2 mois au maximum.
Lorsqu'un d�veloppeur a fini de travailler sur un ticket, un autre membre de son �quipe passe en revue le code en se posant les questions suivantes :
- Le code pr�sente-t-il des erreurs logiques �videntes ?
- Apr�s examen des exigences, tous les cas ont-ils �t� compl�tement mis en �uvre ?
- Les nouveaux tests automatis�s sont-ils suffisants pour le nouveau code ? Les tests automatis�s existants doivent-ils �tre r��crits pour int�grer les modifications apport�es au code ?
- Le nouveau code est-il conforme au guide stylistique actuel ?
C�est un jeu de questions qui d�montre le potentiel impact des revues de code sur la productivit� d�un ou d�une �quipe enti�re de d�veloppement. Les r�sultats de l�enqu�te de Google sugg�rent que le langage Rust est susceptible de s�av�rer �tre un bon choix pour ceux d�sireux de se simplifier les revues de code. En effet, plus de la moiti� des r�pondants du sondage d�clarent que les revues de code en langage Rust sont plus ais�es que dans d�autres langages (C++, Java, Python, etc.)
Le sondage s�est en sus pench� sur la qualit� du code comme indicateur de productivit�. Dans les chiffres, 85 % des r�pondants sont d�avis que le langage Rust permet d�obtenir des bases de code d�un niveau de qualit� sup�rieur � celui d�autres langages.
L�analyse du temps pass� par les d�veloppeurs de logiciels dans les activit�s de cr�ation de produits et les t�ches n�cessaires pour mettre le code en production fait partie des m�triques sur lesquelles s�appuie McKinsey dans l��valuation de la productivit� des d�veloppeurs. De fa�on concr�te, il s�agit de mesurer la r�partition du temps entre les activit�s de codage, de construction et de tests unitaires (boucle interne) et les activit�s d�int�gration, de test d�int�gration, de publication et de d�ploiement (boucle externe). C�est la mise en �uvre d�un proc�d� en principe similaire qui permet � Google d�arriver � la conclusion que les �quipes Rust chez Google sont deux fois plus productives que celles qui s�appuient sur le langage C++.
La productivit� des d�veloppeurs est en g�n�ral sujette � d�bats. Certains intervenants de la fili�re sont d�avis que le sondage de Google souffre d�un biais de s�lection des r�pondants dont les perceptions orientent les r�sultats.
Certains intervenants de la fili�re mettent souvent la cha�ne d�outils du langage Rust en avant comme l�un des atouts susceptibles d�am�liorer la productivit� des d�veloppeurs en comparaison � d�autres langages de programmation. Des observateurs sont n�anmoins d�avis que le compilateur Rust est un tueur silencieux de la productivit� des d�veloppeurs qui travaillent sur des bases de code importantes.
Source : Lars Bergstrom
Et vous ?
Quelle appr�ciation faites-vous des r�sultats de ce sondage men� en interne par Google ? Sont-ils pertinents ? Quels sont les aspects qui vous semblent biais�s ?
Que pensez-vous de l�analyse du temps pass� en C++ puis en Rust dans les activit�s de cr�ation de produits et les t�ches n�cessaires pour mettre le code en production comme m�trique de mesure de la productivit� des d�veloppeurs ? Quelles sont les m�triques susceptibles de la compl�ter dans le processus de comparaison de l�impact du choix des langages C et C++ sur la productivit� des d�veloppeurs ?
Voir aussi :
Programmation : une �tude r�v�le les langages les plus voraces en �nergie, Perl, Python et Ruby en t�te, C, Rust et C++, les langages les plus verts
Linus Torvalds souligne une bonne avanc�e du langage Rust dans le d�veloppement du noyau Linux, et aurait qualifi� le C++ de � langage de m... �, apr�s le message de Google
Microsoft, Google, AWS, Huawei et Mozilla s'associent pour cr�er la Fondation Rust, une organisation � but non lucratif charg�e de g�rer le langage de programmation
Facebook rejoint AWS, Huawei, Google, Microsoft et Mozilla dans la Fondation Rust, et renforce son �quipe Rust par des nouveaux talents
Partager