Bref, j'étais inspiré par un post et j'avais envie de partager mon ressenti.
J’avais déjà eu des réflexions sur mon parcours, et puis il y a eu le post de Cécile (@AtaxyaNetwork); je m’y suis reconnu et cela m’a inspiré à partager moi aussi mon ressenti.
J’adore l’informatique et la programmation, aucun doute dessus; mais je n’aime pas la plupart de mes cours, et ce qu’on y fait. Je ne peux pas lâcher cela sans donner mes fondements :
- le manque de pertinence de certains enseignement est flagrant. Pourquoi est-ce qu’on nous enseigne du Visual Basic 6 et quel est l’intérêt derrière ? Moi je ne comprends pas. Si c’est pour voir les bases d’une interface graphique, autant la faire en Javascript puisqu’on est dans une filière de développement web entre autres;
- le manque de contenu de certains cours font que passer quatre heures en classe est équivalent à moins lorsque je suis tout seul. En revanche, le professeur peut venir nous débloquer la situation et nous expliquer le pourquoi du comment sur ce blocage. J’en reparlerais plus tard.
- et enfin, si les deux premières vont bien, la forme est souvent problématique. Parce que des profs pas motivés n’aident pas, mais au moins il y a le contenu pertinent et c’est ce qu’on veut au final
Je ne dis pas que tout les cours sont mauvais, seulement que je trouve qu’une grande majorité d’entre eux ne sont pas adapté pour moi et mon apprentissage. Alors oui j’ai envie de sécher (et parfois je le fais) parce que le temps est précieux. Ou alors je bosse le minimum au grand désarroi de mes profs, parce que je m’intéresse à autre chose qui me semble plus pertinent.
Tout cela fait que l’Internet est plus attractif pour apprendre que les cours. Le contenu de ma formation est éparpillé sur les réseaux ^^. Le réseau de blog en français et en anglais couvre et explique déjà beaucoup de sujets, les documentations officielles sont ensuite très bien pour continuer à creuser, et il reste toujours les codes sources en eux-mêmes.
Toutefois, les cours d’allemand sont bienvenu, quoique ennuyeux, mais j’apprends ce que je peux; me retrouvant souvent à devoir et à vouloir en apprendre plus sur cette langue. Cependant, cela sors du cadre de l’informatique.Je vois plusieurs raisons à ces cours défectueux et j’essaye d’imaginer des solutions.
D’abord, l’informatique me semble incompatible avec des programmes universitaires datant de plusieurs années où lorsqu’ils sont mis à jour, sont encore à la traîne de quelques années. Un cours sur Docker et Git me semble bienvenu et pertinent; en revanche, un cours sur PHP5 en pur programmation fonctionnelle (absence d’un minimum de POO) me semble décalé. Où sont les frameworks, les évolutions depuis PHP7 ? Autant apprendre des langages et outils à jour avec les bonnes pratiques qui vont avec.
Les TPs, TDs ou exercices sont souvent les mêmes, avec les bases algorithmiques; alors qu’étudier les spécificités des langages me semblent beaucoup plus pertinent afin d’élargir la culture informatique et la capacité à résolution les problèmes. Au final, j’ai l’impression d’être décalé du réel, de créer de l’inutile et de réinventer la roue. Surtout en troisième année. Pourtant, nous pourrions partir de projets libres et les améliorer ! L’utilité n’est pas à démontrer, ainsi que les compétences acquises.
L’information transmise pendant les cours est bien souvent facilement disponible sur l’Internet. Dans ce cas, pourquoi le professeur se doit de l’expliquer en cours magistral (aucune discussion, assis-toi et gobes, dommage !). Dans bien des cas, StackOverflow apporte des réponses plus que pertinente voire plus intructives. Les autres informations se retrouvent dans les documentations.
À la place, s’adapter aux points de difficulté des étudiants pendant l’apprentissage me semble bien plus efficace. L’idée est la suivante : expliquer les différentes compétences à acquérir et simplement apporter de l’aide lors de blocage ou problèmes rencontrés; contruire empiriquement le cours là-dessus. Le professeur n’est pas celui qui saît, mais devient un facilitateur ou accélérateur d’apprentissage.
Pour ces raisons qui me sont propres, je rejoins ce qu’à écrit Cécile :
« L’informatique est un vaste monde, en constante expansion. On a de la chance (?) de vivre dans ce monde interconnecté. Il y a tant de choses à apprendre, à voir, à découvrir et pour moi les cours ne sont qu’un moyen de te limiter à ce que l’éducation national [l’université dans mon cas, ndla] veut t’apprendre. »
Et j’en arrive à la même sensation :
« En cours, je ne me sens pas à ma place. Appliquer une procédure, devoir utiliser les logiciels imposés, faire un examen sur une infra par-dessus une autre infra… Ce n’est pas ce que j’ai envie de faire. J’ai envie de tester de nouvelles choses, apprendre comment internet est fait, comprendre comment fonctionne les protocoles qui font internet [et de l’architecture des programmes, ndla]. »
Bien évidemment, il y a aussi des moments où je me sens réellement bien : lorsque je résous, crée ou comble un problème ou besoin particulier à la situation actuelle par le code. Bref, qui a du sens. L’envoi de SMS depuis l’ordinateur (via le shell et l’API de Free) par un script python; le site MovieMonday (vous vous reconnaîtrez les potos) et l’auto-hébergement en sont de bons exemples. Je galère, ça m’énerve quand je casse le code, je bidouille, répare et refactorise. Mais j’ai à ce moment « cette espèce de satisfaction personnelle quand tu as réussi à faire ce que tu imaginais ».
La piorité ne m’est pas d’apprendre en cours, mais d’apprendre. Je ne cherche plus à jouer aux jeux vidéos comme nombre de mes camarades de classes, ça ne m’intéresse plus.
J’avoue qu’au contraire de Cécile, je suis curieux à propos de BGP tout en ne sachant pas exactement de quoi il s’agit (merci Bortzmeyer pour tes articles à ce sujet, ce sera super des les lires en temps voulu). En revanche, les applications de Rust me font de l’oeil (un système de gestion de base de données réimplémenté en Rust, avec des performances différentes ou la réimplentation RusTLS). Le langage en lui-même m’attire de plus par ses concepts.
Dans le même temps, j’ai l’impression de ne jamais en savoir suffisamment, de ne pas être assez compétent, partout.
À ce que je lis, chacun à sa manière de se ressourcer. Les conférences en ligne et rencontres physiques (PSES <3), les voyages (récemment en Bretagne <3), parce que cela fait du bien. Je m’y retrouve, mon désir fougueux de programmer un truc ressurgit et je suis reboosté. « Ça ne dure qu’un temps » effectivement, je m’acccroche à ces moments, à l’avenir que je compose petit à petit de moments de bonheur.