Nike a tué son application de running

Jusqu’à aujourd’hui, quand je sortais courir à l’extérieur, j’utilisais l’application Nike+ running, qui me convenait très bien : calcul de la vitesse, moyennes, temps de parcours, historique de l’activité, et la petite voix féminine qui me dit si je cours vite ou pas dans mon oreille, par dessus la musique métal (avec un bon martellement sur le temps) que j’écoute pour me motiver.

Sauf que.

Nike a fait une mise à jour majeure, qui change toute l’appli. Nom, logo, ergonomie, rien n’est pareil. Il y a plus d’écrans, plus de touch pour la navigation et des trucs inutiles, comme des news, sont introduits.

news

Bon, pas grave je l’utilise quand même, et là, déception : plus de petite voix, je ne sais pas à quelle vitesse je cours, et pire, les distances sont en miles! Je n’ai aucune idée de la distance que j’ai parcouru.

activité

J’ai vérifié : il y a bien un paramètre pour choisir entre métrique et impérial, et dans mon cas, le système métrique est bien sélectionné. Les pauvres Talleyrand et Condorcet doivent se retourner dans leur tombe.

Pays n'utilisant pas le système métrique

Pays n’utilisant pas le système métrique

Donc Nike a refondu son application, et la fonctionnalité principale du produit, celle pour laquelle on télécharge, l’appli, on la garde installée, et on l’ouvre, plusieurs fois par semaine, ne fonctionne plus.

C’est typiquement le genre de choses qui arrivent quand on ne place plus la valeur apportée aux utilisateurs dans les priorités, et qu’on veut faire du marketing et dépenser du budget.

Je suis allé sur le store pour ronchonner, et mettre une étoile. Et je suis apparement loin d’être le premier.

J’aime beaucoup le label « les indispensables » au dessus de de la note à 1,5 étoiles 🙂

storecomments

 

 

Prog Rocks! – Réflexion sur la corrélation entre programmeurs et musiciens

J’ai toujours eu l’impression qu’il y avait beaucoup de musiciens parmi les programmeurs.

Il me parait anormalement courant de constater que tel ou tel collègue fait, ou a fait de la musique. Ou au moins en écoute beaucoup. Genre « Ah tu fais de la musique ? Ah toi aussi ? ».

Dans une mission, il y avait même une guitare disponible à tout moment dans l’open-space, avec pas mal de monde capable de s’en servir, et une bonne part des autres parlant de leurs autres instruments préférés et de leurs aventures musicales plus ou moins récentes.

On ne retrouve pas cela avec les autres formes d’art. Il y a plein de développeurs musiciens, mais des développeurs qui font du dessin ? De la sculpture ? Qui écrivent des romans ? Est-ce qu’on peut voir dans les open-space de devs des feuilles blanches et la gouache, comme on voit des guitares ?

Dans les conférences, on voit souvent des gens qui parlent de générer la musique à partir de code, mais rarement un tableau abstrait (ce serait pourtant facile).

Pendant longtemps, la coïncidence m’a intrigué, sans que j’y prête beaucoup d’attention. Puis au fil du temps, diverses associations d’idées, constatations, rapprochements, me sont venus à l’esprit. J’ai donc décidé de me plonger sérieusement dans le sujet et de noter mes pensées, de façon organisée.

Prog Rocks!

Prog RocksUn mot sur le titre de ce document : il s’agit à la base du titre d’une compilation de rock progressif, un sous genre du rock assez technique, influencé par le jazz et la musique classique, dont Pink Floyd, Genesis, King Crimson ou Yes sont des représentants typiques et célèbres.

Prog est à la base l’abréviation de « Progressive », mais ça marche aussi avec « programmation », et en anglais to rock signifie « être génial », « déchirer » .

Notez : un jeu de mot. C’est un pattern. On y reviendra.

Il y a corrélation

Can you do musical composition or arrangement ?

Do you have a lively imagination ?

IBM

Dans cette publicité de 1956, alors que l’ingénierie logicielle n’existe pas encore vraiment, et que peu en dehors des spécialistes ont jamais entendu parler de programmeurs, et moins encore ont envisagé cette carrière, IBM fait déjà la connexion entre la musique et programmation.

On peut voir aussi dans cette publicité la relation entre la programmation et les mathématiques, ce qui est beaucoup moins surprenant, surtout à l’époque, quand le domaine était encore beaucoup dans le théorique, en tout cas par rapport à aujourd’hui.

Dès les années 50, et même sans doute avant, il était déjà clair (au moins pour les recruteurs de big blue), que les musiciens et les programmeurs avaient le même genre d’esprit.

Dans ma propre vie et carrière, j’ai pu constater qu’il y a beaucoup de musiciens parmi nous. Plus que dans la population générale, et comparativement peu de pratiquants des autres arts, comme le dessin ou la sculpture.

Je n’ai pas vraiment de chiffres Eric Eliott, qui a beaucoup plus de followers que moi, a fait un sondage parmi ses abonnés pour voir combien étaient musiciens. Résultat : quasiment la moitié. Dans un blog, il compare ce chiffre au 30% d’américains qui ont fait de la musique récemment.

De même dans les meetups et les conférences, on voit souvent des sujets autour de la musique.

Par exemple à Devoxx France 2016, Fred Cécilia, qui lie IOT et machine learning pour faire de la musique (c’est d’ailleurs ce talk qui a déclenché la rédaction du présent document – oui je sais la gestation a été longue). Ou encore à Best of Web 2015 la démonstration de l’API Web Audio par les chercheurs de l’Ircam, ou ce meetup de ladies of code dédié à l’interaction code+art.
Musical names

Un autre signe de corrélation : on a souvent des références musicales dans les noms des langages, des librairies, des frameworks.

Dans l’autre sens, l’outil informatique est beaucoup utilisé pour produire de la musique, il suffit de scanner cette page listant les langages de programmation sur le sujet pour s’en convaincre.

Similarité des domaines

En y réfléchissant, la musique et la programmation présentent pas mal de similarités, au niveau de la forme, et au niveau de la démarche.

Le lien ce sont les mathématiques

Il existe un lien évident entre la musique et la programmation : les mathématiques. Les deux domaines ont étés fortement influencés par cette science, voir y puisent leurs origines.

Origines et influences mathématiques de la programmation

Dans la majorité des cas, on fait bien peu de mathématiques dans notre quotidien de développeur. Nous faisons de la plomberie de flux de données, du mapping de propriétés, écrivons quelques règles de logique et de transformation, et affichons tout ou une partie de cela en se battant avec les bugs des navigateurs.

mathDifficile de rapprocher ce travail des constructions abstraites des mathématiciens.

Pourtant tout le monde, en tout cas parmi ceux qui ont étudié l’histoire de l’informatique et/ou la programmation fonctionnelle, sait que la programmation est un spin-off des mathématiques.

Le mot algorithme vient du nom latinisé du mathématicien perse Al-Khawarizmi. Il a été utilisé par Ada Lovelace, premier(e) programmeur(euse) de l’histoire. Nos programmes sont des cas particuliers de machines de Turing, et nous les exécutons sur des machines avec l’architecture décrite par Von Neumann. A chaque fois que nous écrivons function dans une application node.js, nous faisons référence au lambda calcul d’Alonzo Church.

Origines et influences mathématiques de la musique

Bien sûr on peut modéliser tout l’univers avec des mathématiques, trouver le nombre d’or dans chaque brin d’herbe, appliquer de la trigonométrie sur les triangles de Picasso, etc. Mais on ne peut nier que la musique est un art où les mathématiques sont particulièrement présentes.

PythagoreLa légende raconte que Pythagore, lors d’une promenade près d’une forge, aurait remarqué que la note produite par le choc du marteau sur l’enclume dépendait de la taille de celui-ci, et donc de sa masse. Si on prend des marteaux de 2, 3 et 4 unités de masse, le rapport entre le marteau de 2 et le marteau de 4 est une octave, le rapport entre le marteau de 2 et 3 est une quinte. Dans l’antiquité seuls ces deux intervalles étaient considérés comme assonants (c’est à dire comme sonnant juste). Cette simplicité correspondait très bien à leur philosophie que le monde était régi par les nombres. La musique est « l’art du nombre rendu audible », et longtemps classée parmi les sciences.

Bien sûr les homo sapiens du paléolithique faisaient déjà de la musique bien avant que les grecs n’expliquent le monde par des rapports de nombres. On chantait déjà dans les grottes à la lumière du feu, en s’accompagnant de percussions et en faisant vibrer les cordes d’arc.

Cependant, la culture gréco-romaine est celle qui a donné naissance à la culture européenne. La musique chantée par les moines au moyen âge, avec ses règles strictes d’harmonie héritée de l’antiquité est la racine de toutes les musiques occidentales modernes.

Nous savons aujourd’hui que chaque son, chaque note, est caractérisée par sa fréquence et que les intervalles d’octaves, de quinte, etc… correspondent aux fréquences qui entrent en résonance, plus ou moins naturellement, avec la fréquence de base. L’octave a par exemple une fréquence double de celle de la note de base.Cycle des quintes

Les intervalles de quinte et d’octave ont été utilisés, de manière assez rigoureuse et, oui, mathématique, pour construire, progressivement, la gamme moderne que nous avons sur nos claviers. Voir par exemple le cycle des quintes, ou les calculs pour construire le tempérament égal.

De même la composition suit des règles précises, la construction de canon, de contrepoints, de fugues, etc… Exige du créateur une démarche basée sur les motifs, les calculs, les formules.

Les correspondances vont aussi dans l’autre sens. En creusant un peu, on peut trouver dans les exercices que font les musiciens quotidiennement depuis des siècles des notions mathématiques qui ne seront formalisées que beaucoup plus tard. Par exemple en associant un rapport de fréquence et un intervalle, on introduit un logarithme. De même, l’ensemble des notes, munie de l’addition d’intervalles avec le principe d’identification des octaves produit un groupe.

Pour approfondir le sujet, allez lire l’excellent papier de Rémi Coulon.

Les patterns

On dit que les mathématiques sont la science des motifs, des patterns. Le fait qu’un nombre soit pair, premier ou parfait est un pattern. Qu’un triangle, quelle que soit sa taille puisse être rectangle ou isocèle est un pattern. De même pour des droites parallèles, des courbes sinusoïdales, des fractales, etc…

Ensemble de JuliaLes mathématiques sont l’art d’expliquer et de représenter le monde, et au delà, de créer des univers, en déduisant et inventant des abstractions, qui sont des motifs répétables de réalité.

En informatique, il y a des patterns partout. Par construction. Tout programme est un arbre de modules, de fonctions, d’expressions. On retrouve les mêmes structures partout. Et l’art de la programmation, fonctionnelle, déclarative, orientée objet, est de trouver la bonne abstraction, le bon motif, qui permettra une modélisation efficace et élégante d’une réalité exécutable.

Le rapport avec la musique ? Il y a aussi des patterns partout : mesures, mélodies, accords, tempo… D’ailleurs une musique sans aucune forme de répétition est inécoutable.

La musique, comme un programme, a un côté fractal, une pièce est structurée de façon macroscopique et microscopique, de l’organisation des mouvements et thèmes jusqu’aux polyphonies et accords, en passant par les phrases, les contrepoints, les mesures.

Mais non, le lien c’est le langage

Le lien c’est le langage. C’est la position défendue par Marco Panigada sur la page dédiée au sujet sur le wiki C2.

Langage informatique, langage mathématique, langage musical

La musique, comme la programmation est une sorte de langage. Cette comparaison n’est pas originale, c’est un lieu commun depuis des siècles de parler de langage musical et des émotions que les compositeurs transmettent. De même la notation classique de la musique, sous forme de partitions ou tablatures, est clairement un langage écrit, comme les hiéroglyphes de la vallée du Nil ou les rûnes scandinaves.

La programmation se fait avec des langages. Ceux-ci ont une grammaire, des mots (les tokens), une syntaxe, comme détaillé dans la hiérarchie de Chomsky. Ils ont aussi une expressivité, une personnalité unique.

Même si la comparaison n’est pas évidente avec les langages naturels ou le langage musical, les langages de programmation sont des moyens d’expression. Les langages naturels ont aussi une grammaire, une syntaxe, des patterns reconnaissables, c’est d’ailleurs un jeu amusant de reconnaître un langage qu’on ne parle pas à son rythme et à sa sonorité. De plus on peut insérer du langage naturel sous forme écrite dans un programme.

Un programme est quelque part la forme écrite d’une création exécutable, exprimée suivant la personnalité du langage choisi, du programmeur ou de l’équipe de programmeurs.

La musique est aussi un moyen d’expression, une forme de langage, avec un vocabulaire de notes, une grammaire de mesures et de tempo, des règles d’harmonies, et permet d’exprimer beaucoup, et de créer des choses. La comparaison a été faite de nombreuses fois, et une grande majorité des créations musicales, instrumentales ou non, racontent quelque chose.

Le lien avec le langage est plus frappant encore sous forme écrite, ce qui n’a rien d’étonnant, puisque le fait de transcrire sur un support implique en soi l’existence d’une forme de communication.

Les mathématiques aussi, sont un langage, une façon de représenter le monde, des idées, des concepts, et de les développer.

Literate Programming - Knuth - WikimédiaDans les trois cas (musique, programmation, mathématiques), le langage est à la fois le média de communication et l’artefact cognitif permettant d’approfondir la discipline, la création, la propre compréhension de l’auteur, et le langage lui même.

Un cas intéressant de jonction entre la programmation et le langage est le concept de Literate Programming (programmation lettrée), préconisé par Donald Knuth. Il s’agit d’écrire le programme comme un essai, en suivant la logique et l’ordre des pensées qu’un humain peut suivre. Le programme est ensuite dérivé de cette source grâce à des macros.

Jeux et patterns

Dans les langages naturels

Les jeux de mots, que l’on peut faire en français ou en anglais sont des patterns : on joue sur la similarité des sons ou d’autres similitudes.

De même les palindromes, les anagrammes ou les ambigrammes  sont des jeux de logique, de symétrie, de patterns que l’on peut faire avec le langage naturel.

Palindrome

Un palindrome est un texte qui peut se lire dans les deux sens. Par exemple, le mot kayak, inversé, est toujours kayak.

Kayak est un palindrome est assez bref. Un autre exemple de palindrome, plus intéressant, par Alain Damasio, dans « la horde du contrevent »  :

« Et si l’arôme des bottes révèle madame, le verset t’obsède, moraliste ! »

Anagramme

Un anagramme est un texte qui est composé des mêmes lettres qu’un autre texte, par exemple « Tom Elvis Jedusor » est l’anagramme de « Je suis Voldemort » ou encore : « Rien n’est établi » est l’anagramme de « Albert Einstein ».

Ambigramme

La notion d’ambigramme est moins familière. Il s’agit de texte que l’on peut lire dans plusieurs directions et qui prend (ou non) un sens différent. Par exemple dans cette figure les mots « faux » est « vrai » peuvent être lus, selon l’orientation du texte.Ambigramme - Faux Vrai - Wikimédia

En musique

En musique également on a des patterns et des jeux de ce type, il s’agit même des techniques de bases de la composition. Les possibilités sont encore plus grandes, du fait que l’on dispose de plusieurs voix, de plusieurs instruments et de la possibilité d’utiliser des accords.

Voici quelques exemples, brièvement :

Mouvement rétrograde

ll s’agit de lire la partition à l’envers, en commençant à l’a fin. Le thème sonne alors très différemment.

On peut même avoir un palindrome musical si la partition donne quelque chose d’identique dans les deux sens

J.S. Bach l’a d’ailleurs concrétisé dans sa célèbre offrande musicale.

Mouvement contraire

Les intervalles montants sont remplacés par des intervalles descendants.

Canon

Il s’agit de répéter un thème en ajoutant ou retirant un instrument à chaque répétition (éventuellement en décalé), l’exemple le plus célèbre est le canon de Pachelbel.

On a aussi d’autres curiosités musicales comme des changements de tonalité indétectables du fait de la structure harmonique.

Similarité des démarches

En termes de démarche, les deux disciple aussi beaucoup en commun.

Créativité et ingénierie / artisanat

Dire qu’un musicien est un créatif est un pléonasme. A partir du moment où il se permet une improvisation occasionnelle ou l’écriture d’une pièce, même courte, on peut dire qu’il crée quelque chose. Même les interprètes purs, quelque part, créent, dans le sens où ils font sortir du vide une oeuvre intense, y transmettant l’intention et l’émotion du compositeur.

On en parle moins, mais faire de la musique implique des compétences relevant de l’ingénierie.

En lisant ces mots, vous visualisez peut-être un studio d’enregistrement moderne avec les impressionnantes tables de mixage aux dizaines de boutons, les appareils intimidants avec des graphiques abscons et les rivières de câbles.

En fait, même un guitariste amateur doit s’accorder, régler la hauteur de son chevalet et de ses micros, enchaîner ses effets dans le bon ordre, noter les réglages, et de manière générale, connaître pas mal de notions techniques pour produire quelque chose. Quelle est la différence entre reverb, écho et delay ? Wah et auto-wah ? Fuzz, overdrive, distortion ? Pourquoi mettre tel effet avant tel autre ? Mais cet aspect ne se limite pas aux musiques rock : même avec des instruments acoustiques, genre violon ou clarinette, il faut des connaissances techniques pour l’entretien, le réglage, l’accordage, etc…

The software Craftsman - Sandro MancusoJe parle d’ingénierie, pour que l’on fasse bien l’association avec l’ingénierie logicielle, mais tout cela a un côté artisanal : on ne calcule pas avec des formules, et une précision mathématique comme des ingénieurs, on bricole, on assemble, on teste, et le savoir faire et l’expérience permettent des résultats.

Le développement informatique est aussi, beaucoup plus de l’artisanat que de l’ingénierie. Cela peut paraître moins flatteur, mais reflète beaucoup mieux la réalité. Je suis un supporter de la philosophie software craftsmanship, qui assume ce constat et dans laquelle un artisan développeur se doit de devenir un maître dans son art, par l’expérience et l’apprentissage constant, et aussi un mentor, par le partage, à la façon des menuisiers et des forgerons d’antan.

La programmation est aussi une discipline créative : nous faisons naître des choses du néant. Parfois triviale, parfois merveilleuses. La création est même double : nous créons le code, le texte structuré, dont la beauté est indiscutable, parsemé de joyaux littéraires en langage naturel, mais aussi le résultat de l’exécution du programme, qui peut être beau, grandiose, complexe, inspirant.

Une même arborescence des livrables

Dans sa forme, un programme écrit peut être comparé à une pièce de musique (ou à un roman). Dans les deux cas on a une structure globale, perceptible de loin, une architecture, avec des sections, des parties de différentes tailles qui s’articulent et s’imbriquent. On a aussi des éléments de détails, une fonction ou une instruction ou bien une note, une phrase ou une ornementation, selon le domaine. On a clairement un côté fractal.

Le musicien, comme le programmeur, doit être capable d’alterner entre la vision globale, macroscopique de la pièce sur laquelle il travaille, et le détail, le petit élément qu’il est en train d’ajouter.

Un travail à la fois collaboratif et individuel

On réalise rarement un logiciel seul. Il s’agit presque toujours d’un travail d’équipe, où il faut savoir communiquer, s’adapter et apprendre du style des autres, orchestrer le travail pour une division harmonieuse. Il faut savoir écouter, pour recueillir les besoins et les feedbacks, avoir assez d’empathie pour comprendre les différents points de vue et connaître assez du travail de ses partenaires (même dans des domaines différents comme le design) pour suivre leurs conseils.

En même temps, entre les points de synchronisation, nous enfilons nos écouteurs et nous isolons dans notre bulle musicale (oui encore de la musique) devant nos IDE. Ce qui d’ailleurs correspond au mode opératoire de n’importe quel créatif : la création se fait la porte fermée, en isolation.

En musique aussi le travail est à la fois collectif et individuel. Individuel, car la pratique se fait en solitaire. La plupart des heures que passe un musicien avec son instrument, il les passe seul. Collectif, car souvent, on joue ou dans un groupe dans un orchestre, et il faut être synchronisé avec les autres, les écouter, avec empathie et culture. Le contact avec d’autres musiciens est aussi une excellente source d’inspiration.

Ce n’est pas un hasard si on retrouve des métaphores musicales pour le travail en équipe, que j’ai d’ailleurs volontairement utilisées dans un paragraphe précédent, comme « orchestration des tâches » ou « travailler en harmonie » (Et oui, je vous fait re-scanner l’article vers le haut pour retrouver où j’ai utilisé ces expressions, ce post est un peu récursif en fait 🙂 )

Des moyens d’expression

Je l’ai évoqué rapidement dans la partie langage : la musique et la programmation sont des moyens d’expression.

Dans les deux cas, l’exécutant utilise un artefact cognitif – j’adore cette expression, artefact cognitif, je l’ai piqué à David Allen – son instrument ou sa machine, et exprime quelque chose à travers ce média.

Dire que la musique permet l’expression de sentiments, d’émotions, de narration ne surprend personne.

Dire la même chose de l’écriture de logicielle peut-être plus. Mais même s’il s’agit du plus ennuyeux des logiciels d’entreprise, son existence a été exprimée par une équipe, à travers un outil. Plus convainquant, les programmeurs s’expriment très souvent de façon tout à fait subjective à travers les commentaires ou les noms de variables.

De plus, chaque programmeur a son style d’écriture, ses préférences, qui sont souvent reconnaissables très rapidement, et il s’exprime dans des langages qui ont des personnalités, si bien que quelques dizaines de lignes de programme forment une structure particulière d’une grande individualité.

Enfin quand on développe une interface – qu’elle soit graphique, textuelle ou autre – on lui donne une forme, par définition subjective, qui traduit la personnalité et les préférences du programmeur.

Similarité d’esprit

QI et intelligence générale

Bien que la définition de l’intelligence soit un sujet de débat, il existe une métrique à laquelle tout le monde pense quand le sujet est évoqué : le QI. Le QI mesure les aptitudes en logique/mathématiques et en langage de la personne examinée.

Mathématiques et langage ? Quelle coïncidence! Ce sont les liens que l’on a trouvé entre musique et programmation.

Les deux domaines attireraient donc des personnes ayant un bon QI, ou qui s’y sentent à l’aise pour cette raison.

D’autres observations vont dans ce sens : les hauts QI sont souvent des gens créatifs, cela fait partie des symptômes permettant de les repérer. Autre point, l’association Mensa, dont le critère d’admission est d’avoir un QI supérieur à 130, est composé en France de 60% d’informaticiens.

La créativité, c’est de l’intelligence qui s’amuse

— Albert Einstein

Les hauts QI ont souvent une soif de connaissance, un désir et un plaisir de savoir. Or, la musique et la programmation sont deux domaines qui sont très étendus : on peut tomber dedans et les étudier pendant des années sans s’ennuyer. Le bonheur pour un être avide de savoir.

Dans la même veine, le facteur-G, dont l’énoncé est compliqué, mais qui peut se corollairiser : « en étant assez intelligent, à force, on y arrive » (pour ce qui est des tâches intellectuelles) (c’est moi qui reformule, c’est imprécis au possible, j’assume).

Une autre étude, citée ici, indique une corrélation entre les compétences en musique, programmation et mathématiques avec l’intelligence générale.

Les gens intelligents sont donc plutôt doués pour la musique, les mathématiques, et la programmation.

Un effet bien visible dans le cerveau

Je n’ai pas trouvé d’étude montrant un lien direct entre programmation et musique, mais j’ai trouvé une étude, citée ici, basée sur l’imagerie cérébrale, qui fait le lien entre les performances mathématiques et l’entraînement musical.

neuro

Quelques extraits :

Musical training was associated with increased activation in the left fusiform gyrus and prefrontal cortex, and decreased activation in visual association areas and the left inferior parietal lobule during the mathematical task.

We hypothesize that the correlation between musical training and math proficiency may be associated with improved working memory performance and an increased abstract representation of numerical quantities.

Cela renforce les constatations déjà listées sur les liens entre mathématiques et musique.

Inversement, il semble que la musique soit très bonne pour le cerveau, ainsi une étude de l’institut de recherche de Rotman au Canada, citée par science et avenir, met en évidence un lien entre un entraînement musical intensif et précoce, et la compréhension de discours (donc l’intelligence verbale). Cet entraînement retarde également le déclin cognitif.

Autres points de vue sur l’intelligence, et la place de la musique

Les intelligences multiples de Gardner

Il n’y a pas à ce jour de définition d’intelligence qui soit universellement reconnue. Le QI et l’intelligence générale se focalisent sur les compétences logiques et verbales, qui ne représentent pas toutes les aptitudes qu’un humain peut avoir. En particulier toutes les compétences physiques, des danseurs ou des athlètes, et les compétences sociales ne sont pas prises en compte.

int-mult

Howard Gardner a une théorie des intelligences multiples, qui différencie huit types d’intelligences différentes et où il sépare en particulier l’intelligence musicale / rythmique de l’intelligence verbale ou mathématique.

Cette théorie a été vivement critiquée, car elle n’est basée que sur peu de science, et semble même être contredite par d’autres sources et par l’imagerie, de plus on peut voir certaines aptitudes (comme l’intelligence « naturaliste ») comme des cas particuliers d’autres aptitudes particulièrement développées (visuelle et logique ici). (pour approfondir, voir le papier de Jacques Juhel).

Personnellement, étant donné tous les liens trouvés entre musique, mathématiques et langage (et donc programmation), séparer les aptitudes musicales des aptitudes verbales et logiques me parait étrange.

Les types d’esprits de Temple Grandin

Temple Grandin est un professeur en science animale, autiste, dont la vie a semblé assez intéressante pour qu’on en tire un film.

Je n’ai pas vu le film, mais j’ai vu sont TED talk, où elle raconte sa vision du monde, et en particulier, classe les esprits en trois types:

  1. Les esprits orienté visuel : qui voient le monde surtout à base d’images, qui ont de grandes compétences visuelles et spatiales. Elle se classe parmi ceux là.
  2. Les esprits orientés patterns, comme les mathématiciens, les musiciens et les programmeurs.
  3. Les esprits orientés mots, « ils savent quelque chose sur tout »

Notez le 2.

J’ajoute de l’emphase (ce sont ses propres mots) : Les esprits orientés patterns, comme les mathématiciens, les musiciens et les programmeurs.

Temple Grandin n’est pas spécialisée en psychologie ou en neurosciences, et cette division n’a rien de scientifique et aucune preuve à ma connaissance.

Mais cette mise en relation des musiciens, programmeurs et mathématiciens ensemble, autour des patterns m’a beaucoup marqué et impressionné. C’était pour moi un ce des moment « Ah ah, oui! » comme on en a rarement.

Ces quelques secondes de talk de Temple Grandin sont une des sources principales de motivation et d’inspiration pour ce document.

Déterminisme génétique et environnemental

La corrélation n’implique pas nécessairement la causalité. Peut-être suis–je tombé dans le piège du biais de confirmation en accumulant les observations sur le liens entre programmation et musique, ou ai-je fait une généralisation abusive.

Peut-être d’autres facteurs impliquent qu’il y a beaucoup de musiciens parmi les programmeurs, qui n’ont rien à voir avec la similarité des domaines et des esprits.

Alcoolisme geekNos vies sont clairement en grande partie façonnées par notre environnements et les opportunités que nous avons rencontrées, en plus de nos aptitudes et faiblesses innées.J'accuse

Emile Zola a longuement développé autour de la théorie du déterminisme (génétique et social) dans ses romans. L’alcoolisme de ses personnages est par exemple héréditaire, un enfant d’alcoolique deviendra alcoolique, même élevé dans une famille qui n’abuse pas de l’alcool.

Inversement l’environnement influence positivement ou négativement les capacités et les comportements des personnes.

Déterminisme génétique

On sait qu’il est fréquent de voir des familles de musiciens. On peut citer les dynasties Mozart, Bach ou Chedid en exemple, mais aussi tous nos voisins, amis et connaissances dont parents et enfants font de la musique.

Voici mon propre arbre généalogique, avec une information bien sélectionnée : mes deux grands pères étaient musiciens, mon père est musicien. Mon attirance et mes aptitudes pour le domaine sont sans doute en partie innées.

Family tree

De même il n’est pas rare voir des programmeurs raconter leurs premières expériences avec l’ordinateur de leur père, lui même ingénieur ou programmeur. Mais comme la discipline est beaucoup plus récente, la corrélation n’est pas aussi évidente.

Déterminisme social

Le débat entre l’inné et l’acquis n’est pas encore tranché, mais on ne peut nier que les opportunités fournies par l’environnement sont un facteur crucial dans le développement d’un individu.

Ecole et musiqueUn enfant ayant accès à des instruments de musique et/ou des ordinateurs chez lui s’intéressera plus facilement à ces domaines, ce qui explique une partie de la corrélation : les familles de gens curieux et cultivés, produisent des enfants curieux et cultivés, qui bricolent de la musique et des programmes.

Le système scolaire, de façon systémique, encourage également la corrélation : les forts en maths choisissent des filières scientifiques, ce qui augmente la possibilité de les voir devenir programmeurs. Ce sont les mêmes qui font de la musique. On a donc le même genre de personnes dans les deux disciplines.

La pression des proches est également un facteur : un enfant fera de la musique pour suivre ses amis, et ira à la fac ou à l’école d’ingénieur apprendre à programmer pour les mêmes raisons.

Conclusion

Programmation et musique sont donc deux disciplines qui ont beaucoup de similarités : leurs liens avec les mathématiques, avec le langage, la même démarche créative et artisanale, l’aspect arborescent des livrables, etc…

Ce sont disciplines qui attirent le même genre de personnes, qui s’y plongent et s’y sentent à l’aise : des esprits vifs, orientés patterns, qui aiment collectionner les connaissances et bricoler et créer.

La corrélation est reconnue depuis les années 50 et est même visible, indirectement, par des études impliquant de l’imagerie cérébrale.

Inné ou acquis ? Cette préférence et aisance pour ces disciplines est, comme toutes les aptitudes humaines, un reflet à la fois du patrimoine génétique de l’individu et de l’environnement qui l’a façonné. On a vu aussi qu’il y avait un encouragement de la corrélation par le système éducatif.

Et sinon, vous ne trouvez pas qu’il y a beaucoup de développeurs photographes ?

Objectif

 

Six petits trucs pour soigner sa santé mentale au quotidien

Conserver sa santé mentale dans un monde plein d’agressions de l’esprit n’est pas forcément facile.

Voici une liste non exhaustive de petits trucs que j’utilise.

Des devices rapides

Pour moi un device que j’utilise, genre mon mac, mon téléphone, ma tour au boulot, doit aller plus vite que moi.

Si j’ai le temps de réfléchir (ou pire, de prononcer à haute voix « leent »), ça m’énerve. Pas beaucoup. Un peu. mais ça m’énerve. Et si on empile un petit peu de stress des dizaines de fois par jour, ça a forcément un impact.

Donc j’ai des devices avec de bonnes specs (SSD, beaucoup de mémoire), et j’utilise des navigateurs rapides (vous savez lesquels).

J’ai aussi désactivés les animations sur mon iPhone : les transitions étaient trop longues à mon gout (elles le sont toujours, mais moins).

Pas d’interruption. Pas de notifications

Notifications désactivées

J’ai désactivé toutes les notifications sur mon smartphone, en laissant juste les pastilles pour les applications sociales.

Je connais des gens dont le téléphone vibre tout le temps, avec plein de notifications venant d’applications diverses.

Le mien ne vibre presque jamais : seulement pour les appels et les SMS. Les quelques rares autres applications ayant les notifications activées (genre inbox) n’ont le droit qu’aux pastilles, et rien sur l’écran verrouillé.

Le but est de ne pas être coupé dans ma concentration, ma tâche, ma conversation, par une notification dont le contenu ne m’intéresse pas (eg : le monde me donnant le gagnant de Roland Garros), ou que je pourrais retrouver sereinement plus tard, au moment que j’ai choisi (tiens je suis dans le métro et je capte, voyons voir ce qui se passe sur twitter).

Inbox 0

zenbox

Inbox : zéro

J’ai lu getting things done il y a longtemps. Une des choses qui m’a marqué, c’est l’image que David Allen donne de l’état d’esprit idéal : « Mind like water ».

Il compare l’esprit serein à un lac d’eau calme, qui une fois stimulé par la chute d’une pierre, réagit avec tout juste la bonne amplitude, ni plus, ni moins, puis revient au point de départ, plat, calme, serein.

D’après lui, une tâche, une idée (« ah il faut que j’achète du lait »), qui n’est pas évacuée de l’esprit (typiquement dans une todo list) laisse sa trace dans le cerveau, elle va et vient en premier et second plan, elle boucle, en occupant une partie du temps et surtout de l’énergie disponible. Ce qui est source de fatigue et de stress.

L’idée de GTD est de vider toutes les sources de tâches, et d’organiser les prochaines actions dans des listes priorisées (c’est un peu plus compliqué mais ce n’est pas le sujet ici).

Un email qui reste dans la boite de réception (genre on se dit « Ah ça je vais regarder plus tard » ou « Ah oui je le garde comme référence ») est donc quelque part une de ces boucles, quelque chose d’inachevé.

C’est d’autant plus vrai si vous avez implémenté un système de gestion de tâches (ok je parlerais du mien dans un post ultérieur) : l’élément reçu n’est pas traité.

C’est vraiment un soulagement et un plaisir de traiter chaque email, et de voir le petit soleil indiquant que l’inbox est vide, que tout est traité ou prévu.

Pas de TV

La base.

Oui je sais qu’il y a de bonnes émissions.

Mais faire l’effort de les trouver, de se poser devant le poste à l’heure qu’il faut (ou de chercher le replay sur des sites faits en silverlight), de se taper toutes les pubs (dont le volume est plus fort que celui des programmes, et qui sont calibrés pour vous vriller la tête), …

Moi non.

Utiliser un adblocker

slate

Un site de presse typique sans adblocker.

slate-clean

Le même article, avec adblocker : c’est maintenant utilisable.

 

 

 

 

 

 

 

 

En parlant de publicité, le web est bien plus agréable sans elle.

Je sais que c’est méchant et qu’il y a des gens qui en vivent (ça a été mon cas, indirectement), mais franchement, la plupart du temps, c’est abusé.

Une bannière discrète ne pose pas de problème mais quand un tiers de la page est dédiée au contenu, et le reste à la pub, que ça clignotte de partout, qu’il des popups, des vidéos qui lancent toute seule (en plein solo de David Gilmour et deux fois plus fort bien sur). C’est abusé.

Donc adblocker.

(j’ai déjà ma dose de pub dans le métro d’ailleurs)

(boulet, avec son talent habituel, en parle mieux que moi)

Pas d’actualité (surtout politique)

politique

Eviter l’actualité.

A une époque, j’écoutais France Info en me préparant le matin. Mes horaires étaient concomitant à un journal et à une interview d’un politique.

Je commençais donc toutes mes journées par une énumérations de mauvaises nouvelles sensationnelles, comme les journalistes les aiment, et par une interview d’un politicien, avec la langue de bois, les approximations, la malhonnêteté de cette caste. De plus, les journalistes étant ce qu’il sont, il s’agissait une fois sur deux d’un extrémiste, rouge ou noir, donc encore plus énervant.

Je partais de chez moi énervé et triste, et en colère contre le monde, et me sentant impuissant.

Donc j’ai arrêté d’écouter la radio le matin. Puis j’ai arrêté de lire la presse en ligne régulièrement. De temps en temps, je regarde les titres, ou un article qui m’intéresse. Je vois aussi un peu d’actualité via twitter.

C’est certainement le tips le plus rentable de ce post si vous êtes comme moi. Ca fait vraiment une différence.

Un autre avantage de pas suivre l’actualité dans toute son émotionnalité, c’est qu’on a plus de recul sur les choses.

En conclusion

Avez-vous des trucs similaires à me partager ?