Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Linus Torvalds fustige des développeurs du noyau Linux
Pour des styles de commentaires qu'il qualifie de « dégoûtants » et visuellement déséquilibrés

Le , par Michael Guilloux

40PARTAGES

11  1 
Linus Torvalds vient encore une fois de faire parler de lui, et comme vous le savez probablement déjà, ses interventions viennent pour remettre les choses en ordre. Le seigneur de Linux ne manque pas aussi de le faire à sa manière, avec un peu de grossièreté, mais de sorte que son message soit bien reçu par ceux à qui il s’adresse.

Aux dernières nouvelles, dans un message adressé à la liste de diffusion du noyau Linux il y a quelques jours, monsieur Torvalds a fustigé des développeurs qui utilisent un style de commentaires qu’il qualifie de « dégoûtant », « déséquilibré », et de « merde ». En matière de commentaires, Linus a une préférence pour les commentaires multilignes équilibrés et symétriques traditionnels de style C. Pour lui, si les développeurs du noyau ne peuvent pas gérer ce style de commentaires et qu’en lieu et place, ils utilisent ce qu’il appelle « de la merde dégoûtante déséquilibrée », alors il faudrait aller jusqu’au bout vers le mode C++. Pour être plus clair, Linus Torvalds recommande trois modèles :

Modèle a :
Code : Sélectionner tout
/* Ceci est un commentaire */
Modèle b :
Code : Sélectionner tout
1
2
3
4
/*
 * Ceci est également un commentaire, mais il peut maintenant être proprement
 * réparti sur plusieurs lignes
 */
Modèle c :
Code : Sélectionner tout
// Cela peut être une seule ligne. Ou plusieurs. Selon votre choix.
Sa préférence pour ces trois modèles se justifie par le fait qu’ils sont visuellement équilibrés. Linus Torvalds tolère également un autre style de commentaires multilignes qui n’est cependant pas du style du noyau Linux.

Modèle d :
Code : Sélectionner tout
1
2
/* Ceci est une alternative au format multiligne
Linus estime que ce ce n’est pas horrible, mais pas le style du noyau */
Ces styles de commentaires présentent également une certaine symétrie que le créateur du noyau Linux apprécie bien. Mais il semble que certains développeurs du noyau n’aient adopté aucun de ces « formats sains », mais plutôt d’autres que Linus ne veut pas du tout voir.

Ce que Linus ne veut pas voir :
Code : Sélectionner tout
1
2
3
/* Ceci est un style de commentaire que Linus ne veut pas voir
 * et dont on devrait se débarrasser selon lui
 */
Ce qu’il ne veut absolument pas voir :
Code : Sélectionner tout
1
2
/* Ceci est un style de commentaire que Linus ne veut absolument pas voir
 * c’est visuellement asymétrique */
Si vous faites partie de ces développeurs qui utilisent ces deux derniers styles, le seigneur de Linux dit ne pas comprendre pourquoi ces gens « pensent que leurs styles particulièrement laids sont très bien ». D’après Torvalds, « ce sont les versions qui sont les plus visuellement déséquilibrées de tous les styles de commentaires communs, et n'ont pas d'avantages réels. »

Cette nouvelle diatribe vient compléter le long palmarès du créateur du noyau Linux. Pour vous rafraichir la mémoire, on peut encore citer le fameux « Fuck you ! » adressé à NVIDIA pour une incompatibilité du matériel de la société, ou encore des propos agressifs contre un développeur de Red Hat pour avoir proposé un patch pour le support du Secure Boot dans le Kernel. Bien avant cela en 2012, Torvalds a violemment attaqué OpenSUSE et un an encore en arrière, il qualifiait le langage C++ d’horrible. Dans l’un de ses derniers coups de gueule datant de juillet 2015, c’est l’équipe Gmail de Google qui a payé les frais du comportement de l’américain d’origine finlandaise. Linus Torvalds les a ouvertement fustigés à travers un post Google+ dans lequel il critique l’impertinence du filtre anti-spam de Gmail.

Après tout, il faut dire que les remarques de Linus Torvalds sont le plus souvent très pertinentes, même si de nombreuses personnes n’apprécient pas sa manière de les dire. Qu’en est-il donc de cette nouvelle remarque au sujet des styles de commentaires ?

Source : Liste de diffusion du noyau Linux

Et vous ?

Qu’en pensez-vous ?

Voir aussi :

Linus Torvalds blâme l'équipe Gmail de Google, après avoir constaté que plus de 30 % de ses spams étaient en fait des mails légitimes

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de tomlev
Rédacteur/Modérateur https://www.developpez.com
Le 11/07/2016 à 21:27
Bref, Torvalds nous apporte encore une nouvelle confirmation (s'il en était encore besoin) qu'il est une personne absolument détestable (pour rester poli). Il est bourré de TOCs, cherche à imposer ses préférences personnelles à tout le monde, et est totalement fermé à l'idée que sa conception des choses n'est pas forcément universelle, comme le montre cette phrase :

le seigneur de Linux dit ne pas comprendre pourquoi ces gens « pensent que leurs styles particulièrement laids sont très bien »
Le jour où Torvalds ne dirigera plus le développement du kernel, je pense que la communauté Linux poussera un grand soupir de soulagement...

Je suis bien conscient qu'il a apporté de grandes choses à l'informatique, notamment Linux et Git... mais il semble croire que ça lui donne le droit d'être odieux, et personne n'ose le remettre à sa place.
7  0 
Avatar de jlliagre
Modérateur https://www.developpez.com
Le 17/07/2016 à 2:48
Et vous ?

Qu’en pensez-vous ?
Linux a été créé par Linus Torvalds et il n'a jamais délégué à qui que ce soit la gouvernance de ce projet. C'est à dire qu'il est clairement le seul maître à bord. C'est *son* projet. Même s'il l'a rapidement mis sous une licence open-source, il n'est pas du tout obligé d'accepter toutes les contributions extérieures, et pourrait même toutes les refuser s'il le voulait. Il a cependant bien sûr choisi d'en accepter beaucoup, mais il relit et valide beaucoup d'entre-elles et ne délègue une partie de ces validations qu'à une groupe très restreints de contributeurs.

La relecture de code écrit par quelqu'un d'autre est un tâche souvent ingrate. Il est souvent très difficile d'apprécier le fond quand on est perturbé par la forme. C'est l'une des raisons pour lesquelles la quasi-totalité des gros projets logiciels définit ses propres conventions de codage. Torvalds à documenté les siennes dans un document ( https://www.kernel.org/doc/Documenta...on/CodingStyle ) et il y est écrit, le style de codage est très personnel et je ne force personne à adhérer à mon point de vue, mais c'est ce qui va bien pour tout ce que je dois maintenir. Il esr donc clair, vu que Torvalds peut être amené un jour ou l'autre à maintenir à peu près n'importe quelle partie du code de Linux, que tous les contributeurs doivent respecter les règles qu'il définit. Il existe cependant peut-être d'autres documents car le CodingStyle rejette les commentaires du style C++ ( // commentaire ) alors que Torvalds les accepte dans son mail.

Torvalds est un "benevolent dictator", un dictateur éclairé donc, mais dictateur quand même. Ceux qui contribuent au code de Linux doivent le faire en connaissance de cause. Ceux qui ne sont pas contents de cette dictature sont libres d'aller travailler sur un autre projet ou de créer un fork de Linux et définir d'autres règles de codage et de gouvernance...
6  0 
Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 11/07/2016 à 18:13
Sympa l'ambiance dans la mailing list... c'est ça la synergie d'équipe façon Linus, insulter ses collègues de retardés mentaux drogués au LSD pour une astérisque en trop dans un commentaire ?

Ceci dit ça n'a pas l'air d'avoir choqué le reste de l'équipe. Peut-être une habitude chez le grand patron ? Ou un humour douteux ?
5  0 
Avatar de David_g
Membre éclairé https://www.developpez.com
Le 12/07/2016 à 9:46
Citation Envoyé par SylvainPV Voir le message
Sympa l'ambiance dans la mailing list... c'est ça la synergie d'équipe façon Linus, insulter ses collègues de retardés mentaux drogués au LSD pour une astérisque en trop dans un commentaire ?
Ceci dit ça n'a pas l'air d'avoir choqué le reste de l'équipe. Peut-être une habitude chez le grand patron ? Ou un humour douteux ?
Oh bah heureusement il a beaucoup de gens payés par leurs entreprises pour le supporter. je pense que sinon par pur passion, cela doit rester difficile de s'accrocher à le supporter.
Perso il y a des phrases qu'il a dit, mon manager me la sort je ferais une faute professionnelle mais il mouchera rouge.
5  0 
Avatar de tomlev
Rédacteur/Modérateur https://www.developpez.com
Le 12/07/2016 à 23:01
Citation Envoyé par shkyo Voir le message
Mais tout le monde n'a pas forcément besoin de savoir comment est "rangée" la mémoire...
Tout le monde, non, mais quand tu développes un système d'exploitation, ça peut servir
5  0 
Avatar de Thorna
Membre éprouvé https://www.developpez.com
Le 13/07/2016 à 7:17
Lui aussi, il vieillit, le Linus. Plutôt que de "s'insurger" contre certains types de commentaires, il ferait bien de relire ses sources Linux dont 9 dixièmes des pages ne sont quasiment pas commentées du tout : un mauvais style de commentaire vaut infiniment mieux que pas de commentaire du tout !
5  0 
Avatar de LapinGarou
Membre confirmé https://www.developpez.com
Le 13/07/2016 à 17:43
Si seulement les commentaires etaient le problème principal... Je dirais qu il n a que ca a faire. Pourquoi il ne se penche pas sur l ordonnanceur de taches (cf article je sais plus ou sur developpez) pour ameliorer les perfs sur multi cœurs ?

Le probleme principal de Linux, cest Linus...
5  0 
Avatar de derderder
Membre averti https://www.developpez.com
Le 14/07/2016 à 12:11
Citation Envoyé par sazearte Voir le message
Je parlais de la mémoire, pas de l’ordonnancement des processus, mais la situation est encore pire
Il n'a pas été maj depuis 20ans, la dernière modif fut faite pas Linus torvald se vantant que son code était le meilleur jusqu’à aujourd'hui ou on voit que (avec les architectures multicœur) c'est de la merde. Je croit que les prochaines versions du noyaux devrait implémenté un nouvelle algorithme (faisant gagner 20-30% de perf en plus).

Quand je dis nouvelle algorythme faut le comprendre dans le sens de remplacement, car les algo d’ordonnancement n'ont pas évoluer depuis 30ans.
FIFO
Round-robin
Completely Fair Scheduler
Shortest job first
Earliest deadline first scheduling

Les prochains algo qu'on inventera je pense qu'en plus de prendre en compte la priorité des processus, prendrons en compte le cœur du processeur.
Pour moi la prochaine évolution des processeurs, se sera des processeurs avec 10-20 cœur spécialisé dans des instructions précises (sa commence à se faire sur smartphone, ou on à des processeurs 10 core, certains spécialisé)
Pas modifié depuis 20 ans ? Pas vraiment... http://www.computerworld.com/article...ot-faster.html

Et oui les dernieres versions améliore encore plus l'ordonnancement.

Et contrairement à ce que tu sembles penser, il y a sans cesse de nouveaux algos de sheduling: http://www.sciencedirect.com/science...68494610003078

Pour les processeurs des smartphones, on n'a pas de processeur spécialisé ( hormis pour les gpu qui n'ont rien à voir ) mais beaucoup de processeurs de faible puissance et de faible consomation, plutôt qu'un gros coeur puissant mais inutile 99% du temps et drainant la batterie...
5  0 
Avatar de abriotde
Membre expérimenté https://www.developpez.com
Le 11/07/2016 à 18:51
Citation Envoyé par RaphaelG Voir le message
je n'aime pas la balise //.
Moi c'est l'inverse j'aime pas trop /* et */ car tu ne peux pas les imbriquer et en debug c'est casse pieds.

Je m'explique : Dans mon code j'ai des commentaire, mais parfois pour du debug, j'ai besoin de virer une grosse partie du programme pour savoir, si je peux le mettre hors de cause... Et alors faire un /* et un */ marche très bien sauf s'il y a déjà du commentaire utilisant le */ car alors le */ arrête mon commentaire au lieu de le poursuivre jusqu'à la fin. Pour faire simple le problème c'est que l'on ne peux pas imbriquer les commentaires . Un solution est de faire du if(1==0){ ... } mais ça ne marche qu'a l'intérieur d'une fonction a l'extérieur il y a bien la solution du #ifndef DEBUG... mais c'est moins clair et en cas de debug il faut être sur de son coup parce que les cas ou on cherche longtemps sur un bug qui n'en est pas un mais juste un test mal fait...
4  0 
Avatar de 23JFK
Membre expérimenté https://www.developpez.com
Le 11/07/2016 à 21:22
Prochain débat tabulation versus espace.

Cela étant, si l'on choisit de programmer dans l'un des langages de la famille C/C++/Java, c'est que l'on doit être un minimum sensible à l'apparence visuel du code source et surtout la symétrie que permet la syntaxe de ces langages.
4  0