Logiciels

Espaces ou onglets : de quel côté de la guerre êtes-vous ?

On parle beaucoup du conflit entre Israël et la Palestine, de la tension politique entre les États-Unis et la Russie ou encore de la lutte entre Mega Drive et Super Nintendo. je ne sais pas si vous regardez tous la série Silicon Valley, mais vous devriez le faire. Si vous n’avez pas vu le sixième épisode de la troisième saison, sautez la vidéo ci-dessous pour éviter les spoilers. Si vous voulez rire un peu, vous pouvez vous glisser dans la pièce :

Et, en tant qu’analyste de systèmes avec quelques années et des projets sur le dos, je peux dire : le débat entre les onglets et les espaces est réel. Cela se passe en ce moment même, pendant que vous lisez cet article. Partout dans le monde, les programmeurs titubent pour décider ce qui est le mieux quand il s’agit de formater du texte : tabulations ou espaces.

Certains suggèrent que les onglets sont les meilleurs pour la compression des fichiers. Certains prétendent que cela ne fait aucune différence car le compilateur rendra tout identique lors du traitement du code.

Certains font même appel à des facteurs émotionnels comme “je préfère l’espace et c’est mon opinion”, et bientôt, il est englouti par une foule de gens qui s’agitent pour des armes comme des claviers et des câbles USB très pointus.

  Voici quelques conseils pour libérer de l'espace sur votre iPhone

Pour mettre les choses au clair et décider une fois pour toutes de la meilleure façon de formater le code, le développeur Felipe Hoffa, qui travaille chez Google, a décidé d’analyser pas moins d’un milliard de fichiers de code source enregistrés dans 400 000 dépôts GitHub. Nous parlons de 14 téraoctets de lignes de code.

Les règles ?

  • Commençons par le commencement : seuls les tabulations et les espaces utilisés pour indenter le code sont comptés.
  • Les étoiles comptent : seuls les 400 000 dépôts ayant fait l’objet de la meilleure évaluation entre janvier et mai 2016 ont été pris en compte.
  • Pas de petits fichiers : les fichiers sources doivent avoir au moins 10 lignes qui commencent par un espace ou une tabulation.
  • pas de fichiers en double : si trouvés, les fichiers égaux obtiennent un vote, quel que soit le nombre de dépôts dans lesquels ils se trouvent.
  • Un vote par fichier : Certains fichiers ont un mélange de tabulations et d’espaces. Dans ce cas, il est compté selon la méthode la plus utilisée à l’intérieur de ce fichier. Plus d’onglets ou plus d’espaces.
  • Langues les plus importantes : le rapport a analysé les fichiers portant les extensions suivantes : .java, .h, .js, .c, .php, .html, .cs, .json, .py, .cpp, .xml, .rb, .cc, .go.
  •   Mininova supprime les torrents contenant des fichiers illégaux

    Non, les fichiers avec une extension .vb n’ont pas été pris en compte. Comme je l’ai dit, seules les langues les plus importantes. (C’est moi qui crache sur l’assiette que j’ai beaucoup mangée).

    Afin d’extraire les rapports de cette chasse aux données, Hoffa a utilisé le spectaculaire BigQuery, un outil de Google pour analyser les Big Data, avec une rapidité et une performance ignorantes.

    Par exemple, 133 Go traités en 16 secondes!!!1

    À titre de comparaison, j’ai déjà optimisé les requêtes sur d’énormes codes SQL, qui permettent maintenant de rechercher 12 Go de données en 25 secondes, et je me sentais déjà comme le constructeur de fusées. Puis ils m’apparaissent avec ce taux comme une gifle de la réalité.

    Impressionnant, hein ? Le développeur lui-même a fait un post expliquant plus sur BigQuery, je vous recommande fortement de le lire.

    Mais alors, Crapaud, qui a gagné ? Onglets ou espaces ?

    Alors, jetez un coup d’œil :

      Comment faire une sauvegarde de votre PC Windows

    Comme nous pouvons le voir d’après les données, le vainqueur à une écrasante majorité est espace. Dans toutes les langues ci-dessus, sauf le C, les espaces sont plus populaires parmi les codes GitHub analysés.

    En général, cela peut s’expliquer par le fait que les espaces sont affichés de manière unique, même sur des ordinateurs, des logiciels et des outils différents. Les onglets permettent de “décomposer” la mise en page du texte en différents outils.

    J’aimerais savoir comment cela fonctionne chez les professionnels français qui travaillent avec la programmation, ou même ceux qui éditent des textes et d’autres textes dans WordPress.

    Et avant que quelqu’un ne dise quelque chose comme “la nôtre mais quelle perte de temps”, ici la méthodologie utilisée vaut bien plus que la motivation de la recherche. Cet outil de Google est fantastique et Big Data est déjà en train de changer le monde. Arrêtez d’être grognon.

    Et regardez la Silicon Valley.

  • A propos de l'auteur

    Zineb

    Enseignante en lycée, je m'intéresse à tout ce qui touche aux nouvelles technologies. #teamMac sur PerlmOl (je ne me sépare d'ailleurs jamais non plus de mon Iphone).

    Laisser un commentaire