Nous avons reçu la commande suivante de notre équipe de coordination :
« Bonjour à tous,
Comme vous le savez, le plan de travail adopté en département comporte une action visant à réviser la branche Web. Joan et moi souhaitons que cette action soit réalisée cette session, pour qu'elle puisse avoir un impact réel sur la cohorte qui vient de commencer sa formation, et pour que nous puissions tenter d'ajuster la formation des étudiants de 2e année, si cela s'avère nécessaire (et possible). Vous trouverez ci-joint, le plan d'intervention que nous souhaitons appliquer.
La première étape de ce plan consiste à définir le cadre conceptuel et technologique de la branche Web. Une fois ce cadre défini, nous pourrons mieux évaluer si notre formation permet réellement d'atteindre ces objectifs. Nous invitons donc, tous les enseignantes et enseignants du département à dresser et ordonner une liste des concepts et des technologies qu'ils considèrent comme devant faire partie de ce cadre de formation. Nous aimerions recevoir cette information d'ici 11 h le mercredi 5 octobre. Par la suite, vos coordonnateurs vont compiler ces informations et dresser le contenu du cadre de formation. Nous pourrons, par la suite, en discuter lors de la réunion de l'assemblée départementale du mercredi 12 octobre.
Bonne journée »
Le détail de ce qui nous est demandé pour l'étape « Établir les cadres conceptuel et technologique » est : « Chacun doit présenter les éléments qu’il juge importants, ainsi que la chronologie idéale de présentation ».
Voici ma compréhension de cet enjeu en date du 4 octobre 2016. Évidemment, considérant la vitesse à laquelle ce créneau technologique change, il est probable que cette vision se voit accolée une date de péremption pas très lointaine. Notez aussi que c'est ma perception de non-expert, alors ça vaut ce que ça vaut.
Nous avions à l'origine une vision que je trouvais intéressante, à l'effet qu'il y ait un cours à la S2 où on donnerait dans le monde de l'informatique de manière visuelle et attrayante, mais sans pour autant exiger de connaissances en programmation. Ce cours, qui peut introduire des concepts connexes à la programmation (notation XML, où les balises sont balancées et où on trouve des propriétés; langage HTML pour la sémantique structurelle des documents, et distinguer l'imprimé de l'électronique en préférant les balises sémantiques aux balises de formatage; CSS pour le volet présentation, pouvant à la limite aller jusqu'à des Media Queries pour donner dans une forme simple de Responsive Design; etc.) me semble toujours utile, mais je ne suis pas sûr qu'on l'offre sous cette forme.
Les intentions derrière cette façon de faire étaient :
Il me semble que c'était pas bête comme approche. Je ne sais pas si on fait maintenant de la programmation dans ce qui tient lieu de cours où se fait le premier contact avec les technologies Web, mais si c'est le cas, il me semble que nous perdons une opportunité intéressante d'accueil et de maintien des étudiantes et des étudiants parmi nous.
Je n'ai mis que des trucs qu'il me semble probable que nos étudiant(e)s soient appelé(e)s à rencontrer en stage ou peu de temps après; dans le monde du Web, j'évite les prédictions moyen ou à long terme.
Élément | Raison | Chronologie | Importance | Notes |
---|---|---|---|---|
Langage JavaScript | C'est à mon avis le langage le plus important dans le monde du Web aujourd'hui. |
S3 ou S4, mais pas plus tard car trop de choses importantes en dépendent. On peut en faire avant pour jouer mais il faut quelques acquis de base pour vraiment en tirer profit |
Essentiel |
Les étudiant(e)s peuvent l'apprendre par elles-mêmes ou par eux-mêmes, mais ça donne parfois des résultats discutables. On a avantage à formaliser ceci |
Bibliothèque jQuery | Outil précieux pour qui utilise JavaScript côté client. Je pense qu'il est raisonnable de s'assurer que ce soit vu et compris |
Une fois au moins les bases de JavaScript couvertes |
Essentiel |
Pas un cours sur le sujet, mais intégré à un cours où JavaScript est utilisé |
Technologie ASP.NET | On a l'expertise et ça aide à l'accès à un emploi |
S3 ou S4, mais pas plus tard car ça peut aider dans les projets |
Essentiel |
Les étudiant(e)s peuvent l'apprendre par elles-mêmes ou par eux-mêmes, mais ça donne parfois des résultats discutables. On a avantage à formaliser ceci |
Approche Ajax | L'approche privilégiée pour dynamiser le volet client d'une interface Web |
Une fois les sockets et le protocole http couverts, donc probablement la S4 |
Essentiel |
Peut se faire en appui à diverses technologies, incluant JavaScript (avec jQuery si désiré) et ASP.NET |
Format JSON | C'est le format dominant pour fins d'interopérabilité sur le Web aujourd'hui |
Une fois au moins les bases de JavaScript couvertes |
Essentiel |
Pas un cours sur le sujet, mais intégré à un cours où JavaScript est utilisé |
Frameworks JavaScript | Pour apprivoiser ces grosses bêtes que les étudiant(e)s risquent de rencontrer en pratique |
Une fois au moins les bases de JavaScript couvertes. Je dirais pas avant la S3 |
Utile |
Peut être Angular.js, Ember.js, Backbone.js ou d'autres |
Node.js | Technologie côté serveur utilisant JavaScript comme levier |
Une fois au moins les bases de JavaScript couvertes. Je dirais pas avant la S3 |
Utile |
Permet d'intégrer une approche fortement événementielle. Peut être utile pour écrire des serveurs Web |
Format XML | C'est un format important pour fins d'interopérabilité, entre autres sur le Web, même si JSON lui a fait mal |
On a de la latitude, et il faudrait probablement que ça revienne à plusieurs reprises; ça peut être couvert avec Java, un langage .NET, en présentant des fichiers de configuration de serveurs Web, etc. |
Essentiel |
|
Norme HTML5 | Le Web repose là-dessus aujourd'hui |
On a de la latitude; ça peut être couvert avec plusieurs technologies Web distinctes. Pourrait être abordé dès la S2, mais faudrait l'approfondir par la suite |
Essentiel |
Idéalement, à couvrir par la pratique |
Langage PHP | Porteur d'emploi encore aujourd'hui |
On a de la latitude |
Essentiel |
L'expertise existe. Idéalement, couvert en intégration avec d'autres technologies |
Expressions régulières | Utile à bien des égards, mais particulièrement utile dans les applications Web |
On a de la latitude, mais je dirais pas avant la S3 car la syntaxe est rebutante; ça peut être couvert avec plusieurs technologies Web distinctes |
Utile |
|
Approche REST | C'est devenu l'approche dominante pour exposer des services sur le Web |
On a de la latitude, mais je dirais S4 ou S5; ça peut être couvert avec plusieurs technologies Web distinctes |
Essentiel |
De prime abord, c'est simple à expliquer, mais il faudrait s'assurer de mettre l'accent sur les bonnes pratiques, pas juste sur l'approche |
Les Wiki | Il y en a partout et on en consomme, mais je pense qu'il serait bien que les étudiant(e)s en fassent aussi |
On a de la latitude (pourrait à la limite se faire en S2). Ça implique d'apprendre Markdown aussi mais c'est très facile d'approche |
Utile |
À intégrer avec d'autres tâches |
CSS | Ce sur quoi repose le volet « présentation » des documents Web |
On a de la latitude. Pourrait à la limite se faire en S2 |
Utile |
Je pense qu'il faut développer une familiarité avec cette technologie, pas nécessairement une expertise |
Services Web | Consommer ou offrir des services en utilisant le Web comme plateforme |
Je dirais autour de la S4. Peut se faire à travers plusieurs technologies (et idéalement, serait fait à travers plusd'une technologie) |
Essentiel |
Examiner les volets consommation (p. ex. : intégrer la consommation de services de réseaux sociaux aux travaux pratiques) et offre (exposer une API qui serait utilisée par une autre équipe?) |
Les étudiantes et les étudiants d'informatique industrielle sont appelés à toucher au Web, comme tout le monde je présume, mais leur formation est moins centrée sur le sujet.
Je pense que pour eux, outre la formation de base mentionnée plus haut, plusieurs des trucs marqués « Utile » dans le tableau utilisé pour la branche « gestion » mériteraient d'tre approchés :
Exprimé autrement, il me semble que pour les étudiantes et les étudiants en informatique industrielle, les compétences de base du volet Web priment, et que quelques ajouts à leur culture en fin de parcours (S4, S5) peuvent être utiles pour l'accès à l'emploi et pour les projets de fin d'études. Cependant, je ne pense pas que le Web devrait devenir la dominante de leur formation.
Ça correspond à ma perception des choses pour le moment.