Les moyens pour se former au métier de développeur (web/IA/logiciel/etc) se multiplient mais il me semble essentiel de garder à l’esprit que, au-delà de la technique, ces métiers s’accompagnent d’obligations éthiques.

Pourquoi?

Acquérir un bagage technique n’est pas le plus difficile. Les cursus de formation (en ligne ou en présentiel), les articles et les tutos sont partout. Reste à se tenir au courant mais nous en avons déjà parlé (voir l’article sur la veille techno.
On nous répète suffisamment que le monde du travail est en manque de développeurs et que trouver un job n’est pas un souci. En vrai, c’est un peu plus compliqué que ça mais c’est l’idée.
Au-delà de la technique et de l’insertion pro, le développeur doit garder en tête l’impact qu’il a sur le monde qui l’entoure. En particulier sur les personnes et sur l’environnement. Je parle ici essentiellement de l’éco-conception, de l’accessibilité, de la performance, de la sécurité, des données personnelles et plus généralement de l’éthique.
Pour beaucoup, ces notions sont trop souvent perçues comme difficiles à appréhender, coûteuses à mettre en place voire superflues.
Il est temps de changer notre point de vue à ce sujet.
Le but de cet article est de vous proposer mon point de vue sur la question ainsi que quelques liens sur ces sujets de même que des éléments qui, je l’espère vous aideront à revoir comment aborder tout cela.

Les valeurs

Les notions dont nous parlons ici (éco-conception, accessibilité, performance, sécurité, données personnelles et éthique) seront désignées sous le terme de valeurs. Ce n’est évidemment pas innocent. Derrière ces aspects liés à la qualité d’une appli ou d’un site, il y a un impact social donc des valeurs, ce qui fait que nos choix sont motivés par ce en quoi nous croyons. Parce que nous faisons preuve d’empathie et voulons ce qu’il y a de mieux pour le monde qui nous entoure.
La mission du développeur est de créer/modifier des outils utilisables par le plus grand nombre sans pour autant nuire à l’utilisateur. Ces valeurs sont là pour fournir les outils et principes qui permettent de mieux cerner cette mission.
Le développeur doit tout d’abord prendre conscience de l’impact potentiel qu’il peut avoir, ce qui va souvent bousculer sa façon de penser. Voici quelques petits exemples afin d’amorcer cette démarche :

Aborder les valeurs

J’ai l’habitude de dérouler dans mes formations une présentation sur les valeurs en général (sobrement intitulée “Internet, c’est de la merde”). J’essaierai par la suite de proposer sur le présent site un récap rapide sur chacune de ces valeurs :

  • Accessibilité
  • Performance
  • Sécurité
  • Données personnelles
  • Eco-conception
  • Ethique (et dark patterns)

L’objectif est pour chacune d’entre elles de :

  • resituer le contexte, en quoi elle est essentielle
  • fournir des outils pour diagnostiquer
  • donner des éléments pour commencer à potasser le sujet
  • essayer d’identifier les actions prioritaires à mettre en place (en fonction de la difficulté de mise en oeuvre et des impacts attendus)
  • présenter les bénéfices attendus. Pas les bénéfices directs (les plus évidents) mais plutôt les effets de bord. Par exemple : bosser sur l’accessibilité améliore le référencement naturel.

On peut en venir à se demander pourquoi toutes ces bonnes pratiques ne sont pas systématiquement respectées. Il y a plusieurs réponses possible mais, à mon sens, la réponse tourne autour de plusieurs préjugés :

Il y a bien sûr aussi le manque de temps, la difficulté à convaincre le client et autres. L’enjeu des articles suivant sera donc de permettre de monter rapidement en compétence pour une mise en oeuvre rapide des valeurs. Quitte à donner des arguments “de vente” à même de parler à un client ou à un chef de projet.

Conclusion

De mon point de vue, un bon développeur sait faire des choix (techniques et autres) et c’est ce qu’une entreprise et un client attendent de vous. Les valeurs sont un moyen d’orienter et d’appuyer ces choix. Elles sont aussi un moteur pour votre carrière de développeur, ce qui alimentera votre curiosité, votre veille techno, le choix d’un futur employeur ou d’un projet.
En résumé, un développeur n’est pas condamné à écrire du code dans son coin. Il doit prendre conscience de l’impact qu’il peut avoir sur le monde et du poids de ses choix (ainsi que des choix qu’il refuse de faire). J’espère sincèrement que le présent article et les suivants vous aideront à prendre du recul sur la place que vous donnez à ces valeurs et je conclurai en affirmant qu’un développeur sans valeurs n’a pas de valeur.