Le choc des générations dans les technologies de l'information

par joebeone

par joebeone

Avez-vous remarqué un choc de générations ces dernières années dans l’industrie des TI? Il me semble que les jeunes dans ce domaine passent leur temps à affronter la génération qui les a précédées. Vous me direz que ce n’est pas limité aux TI, vous avez raison, mais puisque c’est mon domaine, pardonnez-moi cette étroitesse dans ce billet.

Depuis que l’informatique existe, de nouvelles technologies et de nouveaux concepts révolutionnent notre monde. À chaque fois, une confrontation s’en suit. Malgré que ce domaine est censé être accoutumé au changement, il est rare de voir un spécialiste se renouveler. Notre capacité d’assimiler des nouvelles notions diminue avec l’âge. Je le constate moi-même. Mon fils de 4 ans est en mesure d’acquérir des connaissances avec une seule explication. Quand je lis des textes explicatifs, je me perds parfois. J’ai alors besoin de visionner une présentation vidéo pour y saisir les nuances. Ça n’ira pas en s’améliorant à force de le constater.

Pour vous aider à vous aussi de comprendre, voici quelques phénomènes qui ont révolutionné les TI.

L’ordinateur personnel

La première division a été entre celles de l’informatique d’entreprise et personnelle. L’abréviation PC (Personal Computer) signifiait un ordinateur pour la maison. Ceci se differienciait aux ordinateurs centraux ou mini (ex: VAX ou AS400) qui dominaient les grandes corporations et les gouvernements. Cette division perdure à ce jour. Il n’est pas rare de voir des spécialistes d’ordinateur central lire leur courriel une fois par jour (et écrire en majuscules!). Toutefois, les adeptes des ordinateurs centraux sont de moins en moins nombreux. TECHNOcompétences a même produit un rapport assez éloquent à ce sujet.

Les logiciels libres

Sachant que les PC dominaient le marché, des futés ont pensé de créer un système d’exploitation qui utiliserait la même architecture matérielle. Linux est né en 1991 et n’a jamais cessé d’évoluer. On y attribue beaucoup l’essor du web, puisque son faible coût d’acquisition (0$) a permis de l’installer sur des millions de serveurs sur internet. L’idée que le développement d’une technologie est l’affaire de tout de le monde est difficile à comprendre pour un spécialiste d’une technologie propriétaire éprouvée. Ces derniers voient le phénomène avec beaucoup de méfiance. Ils s’imaginent que le logiciel a été développé anarchiquement et peut être abandonné à tout moment. Mais, si on se fie aux finissants des cégeps et universités, le logiciel libre a la cote. Il sera important de voir l’évolution dans les prochaines années à cet égard.

Agile

Le développement de systèmes depuis la nuit des temps a toujours été une affaire de gestion de processus serrés. Les grandes compagnies de consultation en TI, ont développé des méthodologies qui ont fait longtemps des jaloux. Ils étaient maîtres de la gestion du temps, des coûts et de la qualité, mais malheureusement pas toujours de la satisfaction des utilisateurs. Les grands chantiers informatiques perdent parfois leur dimension humaine. Les méthodologies agiles comme Scrum ont adressé ces problématiques à leur manière. La philosophie nombriliste des méthodologies waterfall perd du terrain vis-à-vis l’approche agile qui fait plus de place aux utilisateurs dans le processus de développement de systèmes.

Le web

Le web est probablement le plus grand diviseur. Le web n’a pas juste divisé les informaticiens en deux clans, une seconde industrie s’est créée parallèlement. Le phénomène était trop grand et les TI ont perdu le contrôle sur la destinée du web. Tous les succès du web sont attribuables à de nouveaux joueurs. Les grands joueurs d’autrefois se sont taillé une place malgré tout en achetant des petits startups (ex. : Hotmail par Microsoft). Les technologies les plus utilisées ne sont pas celles des grands joueurs non plus. Les technologies Java, PHP, Perl, Python et Ruby on rails domine le paysage.

La venue de la virtualisation par le nuage (cloud computing) risque d’élargir le fossé encore plus. L’industrie des TI est en mode réaction face à ce phénomène. Il invalide en quelque sorte leur modèle d’affaire qui a fait leur succès. Le cloud fera-t-il Microsoft, Oracle, Novell et IBM les GM et Chrysler de demain?

Que devrions-nous faire?

En conclusion, on peut constater que le changement n’est pas toujours facilement accepté. Mais, que l’on veuille ou non, il est là pour rester. Il est là parce que les gens en ont le besoin. L’adoption générale se fait par nécessité. Si on ne veut pas, en prendre part, c’est louable et c’est un choix personnel. Le changement fait peur et parfois il est difficile à assimiler.

Faut-il alors se ranger et laisser nos prochains prendre les règnes? Si on ne le fait pas, devient-on obligatoirement un empêcheur?

Avez-vous d’autres exemples où les générations s’affrontent en TI? Quelles sont vos solutions pour mieux intégrer les ressources seniors aux nouveautés?

Pourquoi l'industrie des TI n'attire pas les jeunes?

En participant à une discussion dans le forum du groupe Réseau Action TI sur LinkedIn, j’ai émis mon opinion pourquoi l’industrie des TI depuis quelques années n’attire plus les jeunes. Je ne veux pas nuire davantage au recrutement, mais je crois que notre industrie doit faire un peu d’introspection avant de promouvoir la profession. Voici ce que j’en pense.

adrian on computer par Bombardier

"adrian on computer" par Bombardier

Un aspect indéniable pour attirer des nouveaux et jeunes talents en TI est d’adapter nos milieux de travail à cette génération. Comparons-nous aux industries parallèles à la nôtre (multimédia, web, jeux vidéos). Ces industries réussissent davantage à attirer les jeunes, car le travail est plus attrayant et l’organisation du travail les valorise plus.

J’ai débuté mon DEC en informatique en 1995. À cette époque, je m’intéressais aux jeux vidéos et à l’internet. Mes premiers projets personnels en informatique étaient des projets multimédias. Je participais activement à des groupes d’intérêts qui se réunissaient par chat sur IRC. À l’époque, on appelait ce milieu la « Demoscène« . Je vous promets de vous en parler plus en détail dans un futur billet, j’en aurais long à dire sur ce sujet.

Je voulais aller en informatique pour innover et améliorer la vie des gens. Si j’avais eu un débouché de carrière dans de quoi  d’aussi créatif que mes projets personnels, j’aurais pris ce chemin. Hélas, à l’époque il n’avait que le domaine sérieux des technologies de l’information. Bienvenue dans le monde des grandes personnes!

Le domaine traditionnel des TI dévalorise souvent les juniors au profit des séniors. Ils peuvent rarement exprimer leur créativité lorsqu’ils travaillent dans des milieux de travail stricts et trop organisés.

Par exemple, en développement de systèmes dans une méthodologie de type waterfall, le junior assume très souvent le rôle de programmeur. Il assume une tâche très limitée avec peu de latitude. Il est encadré par un architecte de système et des analystes fonctionnels qui définissent le travail à réaliser.

Des approches agiles comme Scrum pourraient éventuellement dynamiser notre industrie qui, à mon avis, a besoin de sang neuf et devrait faire davantage de place à l’individu qu’aux structures et aux méthodologies.

Le junior en TI n’est pas respecté. Il est intelligent et doit faire partie intégrante de la conception des solutions. L’expérience en informatique n’est pas toujours synonyme de succès. L’innovation est un facteur important de réussite et le jeune talent est nécessairement une source d’idées nouvelles.

Les micro-livraisons rendent les choses plus concrètes

Le défaut des gros projets est leur temps de réalisation. Le temps entre la prise de connaissance des besoins des utilisateurs et la livraison finale est très long. Vos utilisateurs peuvent changer leurs méthodes de travail et dans les cas les plus extrêmes, vous pouvez changer d’utilisateur final. Les risques que la solution finale ne convienne plus sont assez importants.

Un moyen pour pallier à ce problème est de diviser le projet en microlivraisons. Une microlivraison signifie qu’on livre une solution fonctionnelle régulièrement tout au long du projet. L’utilisateur peut rapidement commencer à intégrer l’outil dans son quotidien. Il aura donc une meilleure compréhension de ce que doit être le produit final.

L’autre aspect positif de livrer fréquemment aux utilisateurs finaux est la gestion du changement. L’être humain n’est pas capable de digérer trop de changements à la fois. Même avec les meilleurs analystes, les utilisateurs finaux ont trop de misère à visualiser le livrable final. Ils ont besoin d’avoir de quoi entre les mains régulièrement pour se sentir impliqués dans le projet.

Faisons une analogie avec la restauration. Aimeriez-vous un souper sept services où le serveur vous servirait tous les plats à la fin du repas et surtout au bout de 3 heures d’attente? Il aurait des assiettes froides et séchées, et la trop grande quantité de ces dernières sur la table envahirait votre espace. Les restaurants amènent un plat à la fois et ne laissent pas les clients attendre trop longtemps avec rien sur la table. Prenons des notes et appliquons ça aux TI !