003. Qu'est-ce qu'un développeur ?
Qui sont-ils ? Quels sont leurs réseaux ?À la table, Fanny Cheung, David Leuliette, Michel Martens, Ronan Limon Duparcmeur, Loïc Boutet et Sylvain Abélard.
Télécharger l'épisode (17 Mo) - Date de publication : 2017-02-13
- • FOSDEM
- Free & Open Source Developers’ European Meeting
Qui sont-ils ? Quels sont leurs réseaux ?
Qu’est-ce qu’un développeur ?
Sylvain : “quelqu’un qui connaît suffisamment de technique, ET qui résout des problèmes (et pas nécessairement AVEC la technique)”
Fanny : “un technicien qui travaille pour un produit et des enjeux, et qui a les qualités sociales pour travailler en équipe”
Loïc : “retranscrire des contraintes du monde réel dans le monde de la technique” la Caverne de Platon
David : “celui qui cherche l’automatisation pour ne pas résoudre deux fois le même problème, et fait gagner du temps sur les tâches qui n’ont pas de valeur” Et ça peut être simplement de la doc. On n’est jamais tout seul.
Sylvain : face à l’automatisation les gens sont partagés : il y a “c’est tellement compliqué que je veux le faire moi-même, un ordinateur ne peut pas” et “c’est tellement compliqué qu’un humain va se rater, il faudrait qu’un ordinateur le fasse”
Michel : “identifier le problème, son sens, et savoir si c’est un vrai souci.” Résoudre avec du code, c’est créer un nouveau problème. On peut échanger un problème pour un autre, mais cet autre doit être plus facile à gérer.
Que doit savoir faire un développeur ?
Sylvain : une matrice de compétences du développeur Imparfaite et à adapter, mais un bon premier pas pour lister des compétences et des savoirs : pour se situer, s’auto-évaluer, voir ce qu’on peut apprendre ensuite.
- computer science : théorie, structures de données, algos
- engineering : méthodes de travail
- programming
- expérience : j’ajouterais l’humain
- connaissances pures
Loïc et Fanny : un MindMap des compétences pour Rails Issu d’un article “pourquoi Rails c’est compliqué”.
- Outils : OS, command line, IDE/text editor, git…
- SQL, WWW, déploiement
- Ruby & RubyGems
- Rails, MVC, conventions…
- Software Engineering, tests
Permet aussi de rappeler ce qu’on “sait sans le savoir” et de rappeler ce qu’il y a dans l’état de l’art, et ce qu’on pourrait ou devrait expliquer à des collègues.
Ronan : les savoir-être Pratiques d’un développeur agile Qualités morales et attitudes : modeste, courageux, humble, travail en équipe…
Michel : générosité
Sylvain : à l’inverse il y a les Trois Vertus du développeur “Paresse, Impatience et Hubris”.
Éthique
Et les remarques suite au Scandale VolksWagen, me rappellent the Order of the Engineer et leur serment. ERRATUM : c’est un anneau d’acier inoxydable porté sur le petit doigt.
Ronan : oui c’est aussi dans la conf de UncleBobMartin The Future of Programming
Loïc : je pense aux Fake News et l’esprit startup “réussir à tout prix”, “fake it till you make it” est très imprégné dans la culture dev :/
Sylvain : à écouter, l’excellent Planet Money - Fake-News King montre la responsabilité des revenus par la pub. Et la contre-attaque de @slpng_giants.
Attitude
Loïc : difficile d’avancer et avoir les bonnes infos dans une ambiance délétère.
Fanny : la bienveillance et la responsabilité en équipe. L’échec de l’un c’est l’échec de toute l’équipe.
Sylvain : le métier de développeur c’est de débugguer la spec. C’est difficile de le faire sans être bloquant, arrogant, méchant. Il faut apprendre à communiquer, étudier, proposer. Et avancer en sachant qu’on est faillible.
Fanny : important de pouvoir expliquer et parler aux non-tech.
David : the starter, architect, debugger and finisher. Dans les entretiens d’embauche, ça permet d’avoir leur rapport au code et aux projets. Chacune a ses avantages et inconvénients.
Michel : A Pattern Language de Christopher Alexander, contient plein d’éléments mais à son grand dam c’est “le moins important” qui a été retenu.
Sylvain : beaucoup d’auteurs finissent par avoir cet avis sur l’écrit qui les a rendus célèbres : GoF (livre des Design Patterns), la Conway’s Law, DDD et Agile Manifesto.
Découvertes des invités
- • Sylvain Abélard
- Guide de PagerDuty – Blameless Post Mortem
- Guide de Etsy – Debriefing Facilitation Guide
- • Loïc Boutet
- Réalité Virtuelle en Web – WebVR API
- • Fanny Cheung
- Dans son talk à MadisonRuby, Amy Wibowo (@SailorHG) propose de mélanger un hobby (tricoter) et le code, et fait... une API de machine à tricoter ! La programmation doit être fun et créative :) – Sweaters as a Service – Adventures in Machine Knitting
- • Ronan Limon Duparcmeur
- Réexplication simple de ce qu'un autodidacte peut rater du cursus classique – The Impostor's handbook
- • David Leuliette
- Spotlight sous stéroïdes - plein de recettes pour tâches communes – Alfred
- • Michel Martens
- livre de Christopher Alexander – A Pattern Language