27 mai 2022
Cet article est une traduction de la page The Ten Rules of a Zen Programmer.
The Zen programmer est un livre écrit par Christian Grobmeiers publié en 2013. Ce livre explique comment adopter une posture Zen face au stress, aux impératifs du quotidien et aux urgences et deadlines. Ce livre n'est pas uniquement écrit pour les développeurs mais peut être utilisé par d'autres corps de métier pour rétablir un peu plus d'équilibre dans votre quotidien professionel.
Si vous avez décidé de travailler sur une tâche, faites-le du mieux que vous pouvez. Ne démarrez pas plusieurs choses en même temps. Ne faites qu'une seule chose à la fois. Vous ne deviendrez pas plus rapide ou meilleur, vous vous disperserez simplement trop. Si vous travaillez trop, vous vous épuiserez, ferez plus d'erreurs et perdrez du temps à sauter d'une tâche à l'autre. Il ne s'agit pas seulement de programmation; ceci est un conseil général.
Kôdô Sawaki dit : si tu as besoin de dormir, dors. Ne planifiez pas votre logiciel lorsque vous essayez de dormir. Dors. Si vous codez, codez. Ne rêvez pas, codez. Si vous êtes si fatigué que vous ne pouvez pas programmer, dormez. Même les multitâches connus comme Stephan Uhrenbacher ont décidé de travailler en monothread. J'ai eu une expérience similaire à Stephan, quand j'ai finalement écrit Time & Bill, un outil de suivi du temps. Mon objectif était de suivre mon temps si facilement que je pouvais le faire même pour de petites tâches comme un appel téléphonique. Maintenant, je peux créer quelques chronomètres en début de journée et suivre mon temps en un seul clic. Au début, c'était un désastre : parfois, je ne travaillais que quelques minutes sur une tâche jusqu'à ce que je passe à la suivante. Maintenant je vais mieux. Semblable à la technique Pomodoro, je planifie quelques créneaux horaires et je me concentre sur eux. Pas de bavardage, pas de sommeil, pas de vérification d'un nouveau jeu génial dans l'Appstore.
Avant de travailler sur votre logiciel, vous devez nettoyer votre esprit. Jetez tout ce qui vous passe par la tête pour le moment. Si vous avez des problèmes avec quelque chose, ne vous laissez pas influencer. Dans la plupart des cas, ce problème disparaîtra. Si le problème est tel que vous ne pouvez pas le laisser partir, ne travaillez pas. Essayez de nettoyer les choses. Mais lorsque vous commencez à travailler, laissez le monde extérieur fondre.
Quelque chose d'excitant sur la liste de diffusion? Laisse-le ici. Vous pouvez suivre les choses passionnantes plus tard. Arrêtez ce qui vous remplit l'esprit de merde : fermez Twitter, Facebook, vos e-mails. Vous devriez même couper le son de votre téléphone et le laisser dans votre poche. Vous pourriez dire que c'est similaire à l'élément 1, focus. Mais il y a une autre restriction : n'utilisez pas ces outils avant le travail ou au déjeuner. Ils vous connectent avec le monde extérieur et soulèvent de nouveaux problèmes ou des choses qui nécessitent votre attention.
Pensez comme ceci : la plupart du temps, votre esprit est assez clair lorsque vous vous réveillez le matin. Si ce n'est pas le cas, faire du sport aide (je fais de la course de fond). Si vous vous sentez propre et reposé, allez au travail et travaillez aussi bien que vous le pouvez. Lorsque vous quittez votre travail, vous pouvez remplir votre esprit de fouillis. Vous verrez que ce n'est pas tellement amusant si vous avez une journée de travail complète derrière vous. Twitter et Co. consomment une grande partie de votre énergie. Ne pensez pas que cela ne prend qu'une minute. Ce n'est pas le cas.
Vous savez que c'est vrai.
Rappelez-vous les jours où vous étiez débutant ou si vous êtes encore débutant, gardez ce sentiment. Vous n'avez jamais assez appris. Si vous êtes déjà un expert, considérez-vous comme si vous étiez un débutant tous les jours. Essayez toujours de voir les technologies dans l'esprit d'un débutant. Vous pouvez mieux accepter les corrections de votre logiciel et quitter le chemin standard si vous en avez besoin plus facilement. Il y a de bonnes idées même de la part de personnes qui n'ont pas votre expérience. Y a-t-il déjà eu un logiciel construit deux fois de la même manière ? Même si vous copiez un logiciel, c'est quelque peu différent.
Certains programmeurs ont un énorme problème : leur propre ego. Mais il n'y a pas de temps pour développer un ego. Il n'y a pas de temps pour être une rockstar.
Qui est-ce qui décide de votre qualité de programmeur ? Toi? Plus personne? Probablement. Mais peut-on vraiment comparer des pommes et des bananes ? Non. Vous êtes un particulier. Vous ne pouvez pas vous comparer entièrement à un autre être humain. Vous ne pouvez comparer que quelques facettes.
Une compétence n'est rien dont vous pouvez être fier. Vous êtes bon en Java ? Frais. Quelqu'un d'autre n'est pas aussi bon que vous, mais meilleur au bowling. Java est-il plus important que le bowling ? Ça dépend de la situation. Vous gagnez probablement plus d'argent avec Java, mais l'autre gars pourrait avoir plus de plaisir dans la vie à cause de ses amis qui jouent au bowling.
Pouvez-vous vraiment être fier d'être un geek ? Les programmeurs avec ego n'apprennent pas. Apprenez de tout le monde, des expérimentés et des noobs en même temps.
Kôdô Sawaki a dit un jour : "Tu n'es pas important."
Pensez-y.
Si vous voulez gagner quelque chose et ne vous souciez pas de votre vie "maintenant", vous avez déjà perdu la partie. Agissez simplement du mieux que vous pouvez, sans regarder le but que vous pourriez atteindre après un long moment.
Travailler pendant vingt ans pour devenir l'associé d'une entreprise ? Pourquoi ne travaillez-vous pas aussi dur que possible juste parce que c'est amusant ? Le travail acharné peut être amusant. "Un jour sans travail est un jour sans nourriture" est un dicton zen.
Il n'est pas nécessaire de commencer à être heureux après vingt ans. Vous pouvez être heureux en ce moment, même si vous n'êtes pas un associé ou ne conduisez pas de Porsche. Les choses changent trop facilement. Vous pouvez tomber malade. Vous pouvez vous faire virer. Vous pouvez vous épuiser (si vous suivez tous ces éléments, je suppose que la probabilité est faible).
À moins que ces mauvaises choses ne se produisent, travaillez aussi bien que vous le pouvez et amusez-vous à le faire. Aucune raison de regarder les gains de vos collègues. Aucune raison de penser au nouveau poste cool que vous n'avez pas obtenu.
Après tout, vous obtiendrez quelque chose. Vous vous retrouverez avec de beaux souvenirs, peut-être un bon poste et vingt excellentes années. Chaque jour est un bon jour.
Si jamais vous en arrivez au point où vous pensez que travailler dans votre entreprise n'est pas du tout amusant, vous devez partir immédiatement. Ne restez JAMAIS dans une entreprise qui vous enlève le bonheur dans votre vie. Bien sûr, cela n'est possible que dans les pays riches, où les gens ont le choix de partir. Mais si vous vivez dans un si bon environnement, faites-le. Partez sans regret. Vous n'avez pas de temps à perdre, vous pourriez être mort demain.
Quand on n'a pas d'objectif de carrière, partir est facile.
Si vous n'avez rien à dire, ne faites pas perdre le temps de vos collègues. Cela ne vous fait pas paraître mauviette. Chaque jour où vous travaillez, vous devez essayer de ne pas énerver quelqu'un d'autre. Imaginez si tout le monde essayait cela - quel serait ce lieu de travail formidable ? Parfois, ce n'est pas possible. Essayez dur, vous l'aimerez.
Si vous ne développez pas d'ego, il est assez facile de se taire et de ne se soucier que des choses dont vous pouvez parler. Ne confondez pas votre ego avec votre « expérience » et rappelez-vous toujours : vous êtes un débutant. Si quelqu'un a une bonne idée, soutenez l'idée.
Oui, vous travaillez. Mais en même temps vous vivez et respirez. Même lorsque vous avez des moments difficiles au travail, vous devez écouter les signes de votre corps. Vous devez apprendre les choses qui sont bonnes pour vous. Cela inclut tout, y compris les choses de base comme la nourriture. Vous devez prendre soin de vous et de tout ce qui se trouve dans votre environnement, car après tout, l'eau que vous buvez est celle qui coule dans la rivière. Vous ne vivez que pour vous-même. Tu vis seul et tu mourras seul. Le monde continue même sans toi.
Évitez de travailler dans des situations que vous n'aimez pas. Évitez de travailler gratuitement si cela signifie que vous ne vous amuserez pas et vous éloignera de votre lit. Lâchez ce qui ne vous rend pas heureux. Pensez-vous que les gens ne travaillent que gratuitement en théorie ? Considérez les personnes qui font de l'Open Source pendant leur temps libre. Si vous vous êtes abonné à la liste de diffusion d'un projet, vous savez probablement quel conflit il y a (parfois). Si vous ne vous amusez pas avec ça, arrêtez de le faire. Je connais un tas de gens qui travaillent dans un environnement Open Source qu'ils n'aiment pas. Encore une fois avec Time & Bill, j'ai suivi le temps que j'ai passé dans des projets Open Source et j'ai été surpris du temps que j'y ai perdu, en particulier sur des projets que je n'aimais pas tellement.
Gardant cela à l'esprit, certaines personnes pensent qu'elles ne sont heureuses que lorsqu'elles ont du temps libre et peuvent passer la soirée avec une Xbox et de la bière. Bien que ce soit une bonne idée de temps en temps, il n'est pas nécessaire que chaque instant de votre vie soit «amusant». Si vous pouvez éviter les situations que vous n'aimez pas, évitez-les. Mais parfois, il faut faire quelque chose de vraiment merdique. Par exemple, copiez/collez manuellement des éléments de la feuille de calcul Excel de votre responsable dans phpmyadmin. Cela peut vous prendre des jours, et c'est vraiment ennuyeux. Ce n'est pas amusant, mais parfois vous devez faire ce genre de choses. Vous ne pouvez pas toujours quitter votre emploi lorsque vous obtenez une tâche ennuyeuse. Les moines zen n'hésitent pas non plus à faire leur travail. Ils se lèvent à 3h du matin (parfois plus tôt, parfois plus tard, cela dépend du couvent) et commencent la méditation et le travail (ils envisagent même la pratique de la méditation au travail). Ils ont des trucs à faire comme nettoyer les toilettes. Ou travailler dans le jardin. Ou en tant que Tenzo, ils cuisinent. Ils le font avec tout le soin qu'ils peuvent apporter. Quoi qu'ils fassent, ils le font sans souffrir et ils sont (ou devraient être) heureux, car chaque seconde, même les moments où ils nettoient les toilettes, est une seconde de leur vie.
Cela étant dit : arrêtez de vous plaindre si vous avez besoin de copier/coller Excel. Fais-le c'est tout. Ne gaspillez pas votre énergie avec de telles choses; ils passeront. Devenez plutôt le meilleur copier/coller Excel.
Si vous subissez une crise cardiaque, les gens diront probablement : "Euh oui, c'était vraiment un travailleur acharné, il travaillait même gratuitement pour moi la nuit". Personne ne peut vous guider vers l'autre monde. Cette dernière étape est franchie par nous seuls. Vous ne pouvez rien échanger dans ce monde. Pas même un pet. C'est donc à vous d'en prendre soin, chaque seconde. Si tu meurs, tu meurs. Mais quand tu vis, tu vis. Il n'y a pas de temps a perdre.
"Care" est un mot énorme dans le bouddhisme zen (et je pense dans toutes les formes de bouddhisme). Je ne peux pas exprimer tout ce qui doit être dit. Il est difficile de comprendre les différentes significations de « care ». Vous êtes probablement mieux avec le mot « sensibilisation ». Vous devez être conscient de ce que vous faites, à chaque seconde de votre vie. Vous devez être attentif dans votre vie. Sinon vous le gaspillez. Mais, bien sûr, c'est à vous de le faire, si vous le souhaitez.
Oui, il y a quelqu'un qui vous paie. Il y a quelqu'un qui vous dit ce qu'il faut faire. Et il peut vous virer. Mais ce n'est pas une raison pour donner sa propre vie ou en avoir marre de son travail. Enfin, votre patron n'a aucun contrôle sur vous. On peut même douter que vous ayez le contrôle sur vous, mais n'empruntez pas cette voie.
Revenons à votre patron : il peut empirer votre vie si vous lui permettez de le faire. Mais il y a une issue. Dites « Non » si vous devez faire quelque chose qui vous rend malade ou qui va à l'encontre de votre éthique. Que va-t-il se passer ? Dans le pire des cas, il vous licenciera. Et alors ? Si vous vivez dans les pays occidentaux et si vous êtes codeur (ce qui est très probable si vous lisez ceci), vous obtiendrez un autre emploi.
Je ne veux pas dire "Non" à des tâches telles que la copie de données CSV au format HTML. Je parle de semaines de quatre-vingts heures et de sentir votre corps se décomposer. Ou le sentiment que vos enfants ont aussi besoin d'attention. Ou si vous êtes obligé de licencier des gens simplement parce que votre patron ne les aime pas. Ou si vous êtes consultant et que vous obtenez le travail de développer des logiciels pour les centrales nucléaires (certains pourraient dire que c'est parfaitement bien de travailler pour les compagnies d'énergie nucléaire - c'est contraire à mon éthique et sert d'exemple) ou pour les réservoirs. Vous pouvez dire "Non".
Un programmeur est plus qu'un programmeur. Vous devriez faire quelque chose qui n'a rien à voir avec les ordinateurs. Pendant votre temps libre, faites de la voile, de la pêche, de la plongée. Faites de la méditation, des arts martiaux. Jouez au Shakuhachi. Quoi que vous fassiez, faites-le avec tout le pouvoir qu'il vous reste. Comme vous le faites dans votre temps de travail. Faites-le sérieusement. Un passe-temps n'est pas seulement un passe-temps, c'est une expression de qui vous êtes. Ne laissez personne vous tromper, quand ils disent que les loisirs ne sont pas importants. De nos jours, nous pouvons nous permettre d'avoir des loisirs. J'ai enregistré plusieurs CD et écrit des livres de fantasy (le dernier étant inédit, je dois m'entraîner davantage). Ces choses ont fait de moi la personne que je suis maintenant, et finalement elles m'ont conduit au Zen et à ce livre. Ces jours-ci, je pratique le Zen Shakuhachi. C'est un aspect très important de ma vie quotidienne.
Une fleur est beauté. Mais c'est juste une belle fleur, rien de plus. Il n'y a rien de spécial à ce sujet. Vous êtes un humain capable de programmer. Peut-être que tu es bon. Il n'y a rien de spécial à votre sujet. Vous êtes de la même étoffe que moi et que tous les autres sur cette planète.
Vous devez aller aux toilettes et vous avez besoin de manger. Bien sûr, vous avez besoin de dormir. Après (espérons-le) longtemps, vous mourrez et tout ce que vous avez créé sera perdu. Même les pyramides se perdent, après un long moment. Connaissez-vous les noms des personnes qui les ont construits ? Si oui, est-il important que vous le sachiez ? Ce n'est pas. Les pyramides sont là, ou elles ne sont pas. Rien de spécial.
Il en va de même pour votre logiciel. La banque gagne de l'argent avec votre logiciel. Après votre départ, personne ne se souvient de vous. Il n'y a rien de mal à cela. C'est l'écoulement du temps. Rien ne devrait vous inquiéter à ce sujet. Si vous suivez les neuf premières règles, vous verrez que ce dernier projet était un projet bon et amusant. Il est maintenant temps de continuer et de se concentrer sur autre chose.
Si votre entreprise ferme à cause de problèmes financiers, pas de problème. La vie continuera. Il n'y a pas vraiment besoin d'une Xbox, d'une voiture ou de quelque chose d'autre. La plupart des gens sur cette planète vivent dans la pauvreté la plus profonde. Ils ne se soucient pas d'une Xbox car ils seraient heureux d'avoir de la nourriture ou même de l'eau.
Alors… pourquoi es-tu spécial exactement ? Parce que vous avez eu la chance d'être né dans un pays occidental ? Parce que tu sais coder ? Non, il n'y a rien de spécial à ce sujet. Vous pouvez lâcher prise sur votre ego et vivre librement. Profitez des couleurs et de l'odeur des fleurs. Ne soyez pas trop triste quand l'hiver arrive et ne soyez pas trop heureux quand le printemps revient. Ce n'est qu'un flux. Gardez-le à l'esprit lorsque quelqu'un refuse votre candidature. Parce qu'aucune entreprise n'est si spéciale que vous devez vous inquiéter pour le travail.