Archives mensuelles : décembre 2013

MOOC HTML5 OpenClassrooms

Un MOOC HTML5/CSS3

J’ai participé entre le 23 septembre et le 25 octobre à mon premier MOOC.

Qu’est-ce qu’un « MOOC » me direz-vous ? Il s’agit d’un « Massive Open Online Course », soit un cours en ligne ouvert et massif. En gros, un cours est dispensé en ligne, gratuitement (ou non d’ailleurs) à un grand nombre de personnes simultanément.

Le sujet traité était « HTML5/CSS3 » et était organisé par le site OpenClassrooms (anciennement le Site du Zéro). C’était également le premier MOOC qu’ils organisaient.

Cela fait bien longtemps que j’utilise HTML et CSS dans le développement web, mais je n’avais pas encore eu l’occasion de me pencher sérieusement sur les « nouveautés » amenées par HTML5 et CSS3. Je me suis dit que c’était l’occasion d’apprendre de nouvelles choses en douceur. 🙂

Je me suis donc inscrit et joint aux quelques 18000 participants. Le niveau était assez hétérogène. Il y avait des débutants complets qui découvraient le HTML comme des développeurs expérimentés, des jeunes (voir très jeunes, une douzaine d’années de mémoire) et des plus vieux (je me compte dedans ;-)).

Le principe du MOOC était simple : toutes les semaines, durant cinq semaines, tous les participants inscrits avaient accès à un certain nombre de cours enregistrés en vidéo. La durée de chaque vidéo était relativement courte, ce qui faisait qu’il était possible de les répartir tout au long de la semaine en fonction de ses disponibilités. Chaque participant devait avant la fin de la semaine (avant le dimanche à 23h59) répondre à un questionnaire validant son apprentissage. Il s’agissait d’un QCM reprenant une partie des connaissances censées avoir été acquises durant la semaine. Seule la dernière semaine, un peu particulière, faisait l’objet d’une réelle évaluation avec des travaux pratiques : la réalisation d’une page HTML5/CSS3 à partir de deux maquettes (une classique et une « responsive ») fournies sous forme d’images. Les participants étaient notés toutes les semaines (chaque note comptant pour 25% de la note finale), la note du TP comptant comme un bonus (les règles de notation ont semble-t-il changé plusieurs fois en cours de route). Un forum était à la disposition des participants pour qu’ils puissent échanger sur les cours de la semaine. L’entraide  était la règle sur ce forum et l’ambiance plutôt sympathique dans l’ensemble.

Une fois par semaine, une session était organisée en direct durant laquelle un récapitulatif du cours de la semaine était présenté suivi d’une séance de questions / réponses (assurez-vous bien avant que votre micro fonctionne bien, ça évite de perdre du temps ;-)).

Au bout des cinq semaines, si la somme des notes obtenues est suffisante, un badge « HTML5 » est délivré et apparaît dans le profil. Une certification est également proposée, mais payante cette fois (même si il suffit de prendre un abonnement Premium qui n’est pas très cher).

Le principe est très intéressant. Les vidéos de cours étaient plutôt bien faites, même si un certain nombre de participants ont rencontré quelques problèmes techniques (le lecteur vidéo a été changé plusieurs fois). Il ne faut pas oublier que ce MOOC était le premier organisé par OpenClassrooms. Certaines fonctionnalités ont été développées au cours du déroulement du MOOC (le système de notation et de notification des résultats notamment). Malgré quelques râleurs (à juste titre ou non), l’ambiance générale était plutôt bon enfant. Les plus expérimentés aidaient généralement les débutants sur les forums.

Je n’ai pas appris grand chose durant les trois premières semaines durant lesquelles les bases du HTML et du CSS étaient abordées (non pas que les cours étaient mauvais, au contraire, mais mes propres connaissances allaient déjà bien au delà de leur contenu). J’aurais pu répondre aux QCM hebdomadaires sans regarder les vidéos, même si elles restaient intéressantes.

La quatrième semaine était une introduction aux spécificités de HTML5 et CSS3. Les cours m’ont donc beaucoup plus intéressés et j’ai effectivement appris pas mal de choses, notamment en ce qui concerne les « nouvelles » balises, la structuration sémantique…

La cinquième semaine était très différente. Elle était consacrée entièrement à la réalisation d’une page web à partir d’une maquette fournie sous la forme de deux images en appliquant les principes appris durant les quatre premières semaines. C’était à mes yeux et de loin la semaine la plus intéressante. De la pratique, enfin ! Il m’a fallu une bonne dizaine d’heures pour réaliser la page web : j’ai commencé par la structuration avec les balises sémantiques, et une fois celle-ci complète, j’ai construit la feuille de styles pour la mise en page. La version « responsive » de la feuille de styles a été finalement très facile à réaliser dans la mesure où j’avais respecté les standards dès le début.

Au final, j’ai obtenu le précieux badge (avec la note maximum de 125 ;-)). Outre la satisfaction d’avoir obtenu le badge, je suis content de ce que j’ai appris. C’était une expérience sympathique et je pense que si un sujet intéressant (pour moi) se présente, je m’inscrirai de nouveau.

Néanmoins, ce premier MOOC n’était pas sans défauts (mais comme c’était le premier, ils seront sans nul doute corrigés dans les prochaines sessions). Les cours vidéos étaient plutôt bien faits, mais les QCM hebdomadaires n’étaient sans doute pas suffisants pour évaluer les acquis des participants. Ils étaient cours, et une seule chose à mon avis permet réellement d’apprendre un langage, qu’il soit de description, de mise en page, de programmation… : la pratique. Il n’y a donc pas eu assez de pratique avant la dernière semaine. Un petit TP était bien proposé (semaine 3 je crois), mais il était optionnel. Il y avait donc une énorme différence entre les quatre premières semaines et la dernière, notamment en terme de quantité de travail à fournir. C’est durant cette semaine je pense que les débutants se sont rendus compte du gouffre qu’il y avait entre la théorie et la pratique. Je pense qu’un petit TP par semaine, avec une continuité et une difficulté grandissante, serait plus formateur et rendrait la réalisation de la dernière semaine moins effrayante.

Les sessions hebdomadaires en direct ont été à la fois une source de contentement et de mécontentement. Ces sessions permettaient de bien faire la synthèse de la semaine et en même temps de rendre la formation plus vivante avec la séance de questions / réponses (en passant, il n’est pas utile de demander la parole si c’est juste pour exprimer son admiration envers l’animateur (Mathieu Nebra en l’occurrence), ça évite de faire perdre du temps à tout le monde ;-)). Ça, c’est la partie positive. Le côté négatif, c’est que pour des questions de coût financier, l’accès à la salle virtuelle était limitée à 100 personnes. Sans dire que les 18000 inscrits souhaitaient participer, un grand nombre de personnes se sont retrouvées à la porte. Heureusement, ces sessions étaient enregistrées et il était donc possible de les visionner en différé.

Le dernier point à améliorer peut-être est le système de correction du TP de la dernière semaine. Il s’agit d’un système de correction participatif. Il est évident qu’avec le nombre d’inscrits, même si tous ne rendent pas leur copie, il y en a quand même beaucoup trop pour que la correction soit uniquement du ressort de l’équipe qui organise le MOOC.

Chaque participant, si il voulait voir ses propres résultats validés, devait corriger trois copies. Chaque copie devait normalement recevoir trois corrections de trois correcteurs différents. Une moyenne était ensuite faite. Le problème venait du fait que le niveau des participants était très hétérogène : des développeurs expérimentés côtoyaient des débutants. Les notes pouvaient donc varier beaucoup pour une même copie en fonction du correcteur, même si un barème était fourni et que des consignes de « souplesse » avaient été données aux correcteurs. Cela a fait quelques mécontents. Des participants insatisfaits de leurs notes se sont abondamment exprimés sur le forum, surtout quand le correcteur n’avait laissé qu’une note, sans aucun commentaire qui aurait pu expliquer son choix. Il est clair que certains correcteurs n’ont pas joué le jeu et ont mis des notes farfelues, sans explication, mais cela reste une minorité. Peut-être aurait-il fallu ne pas tenir compte des notes les plus hautes et les plus basses pour effectuer un lissage.  J’ai proposé à un certain nombre de personnes mécontentes sur le forum qu’ils m’envoient leur travail de façon à ce que je le corrige afin de comparer le résultat avec les notes qu’ils avaient eues. J’ai noté les copies que je devais corriger plutôt « sèchement » apparemment. J’ai eu un regard professionnel, les copies étant anonymes, je ne pouvais pas savoir si il s’agissait d’un débutant (auquel on peut pardonner certaines erreurs) ou un participant « avancé ». Néanmoins, à chaque note que j’attribuais, j’ajoutais un commentaire détaillé (même si nous avions pour consigne de faire court), et même mon pseudo, même si la correction devait rester anonyme, de façon à ce que le participant puisse me contacter si il souhaitait une explication plus poussée de la raison de ma notation, ce qui est arrivé. J’ai également, à la demande de plusieurs participants, corrigé des copies envoyées sur le forum. A chaque fois que j’ai corrigé une de ces copies, je suis retombé, à un point près, sur la note obtenue par la correction collective. 🙂

A noter également qu’OpenClassrooms propose une certification HTML5/CSS3, payante naturellement, mais dont le prix reste plus que modique (en fait, il suffit de souscrire à un compte premium pour avoir accès à l’examen). Je ne l’ai pas passée, et ça ne m’intéresse pas à priori. D’une part, je ne pense pas avoir suffisamment d’expérience en HTML5/CSS3 (pas juste HTML/CSS), donc à quoi bon la passer, et d’autre part, je ne pense pas que cette certification soit suffisamment reconnue dans le monde professionnel pour qu’elle ait une valeur quelconque. Peut-être qu’avec le temps, OpenClassrooms deviendra une référence suffisamment solide auprès des professionnels au point que ses certifications soient reconnues, mais pour l’instant, ce n’est pas le cas (ce qui n’enlève encore une fois rien à la qualité des cours proposés).

Pour conclure, l’exercice du MOOC est intéressant. Il permet de suivre un cours structuré et d’échanger avec des formateurs et des participants, mais avec des contraintes moindres que dans le cadre de formations classiques « sur site ». C’est plus vivant et peut-être plus poussé que de suivre un tutoriel « simple ». Il permet d’évoluer à son rythme, en fonction de ses disponibilités. Il doit être un mélange de théorie et de pratique (ce qui a clairement manqué dans ce MOOC).

De nouvelles structures se mettent en place pour l’organisation de cours en ligne. Beaucoup d’universités s’y mettent aussi, adaptant même certaines de leurs formations diplômantes. C’est à la fois un progrès pour ceux qui ne peuvent pas forcément se déplacer ou se libérer totalement le temps d’une formation. Par contre, j’ai peur qu’on y perde un peu en contacts humains.

Quelques compléments :

Inauguration du blog !

Ça faisait quelques temps déjà que j’envisageais d’ouvrir un blog, depuis que j’avais été sollicité par le magazine PHP-Solutions l’an dernier pour leur écrire des articles. Mais un blog sur quoi ?

Cela fait maintenant plus de quinze ans que je développe des applications web, principalement en PHP, et je me suis dit que peut-être il pouvait être intéressant de faire partager ma petite expérience.

Après avoir hésité sur la solution à utiliser pour ce blog, j’ai finalement opté pour WordPress. Je ne le connaissais pas, je ne l’avais jamais utilisé, mais ce que j’en ai lu m’a convaincu de l’essayer. C’est donc l’occasion de le découvrir et peut-être qu’un jour, j’utiliserai ces compétences acquises pour un projet professionnel, qui sait. Le blog va donc évoluer au fur et à mesure que je découvrirai WordPress, ses thèmes, ses extensions, et je ne manquerai pas de vous faire partager mes découvertes à ce sujet…

Je vais essayer de publier (régulièrement) des articles, des tutoriels, des impressions… sur tout ce qui concerne le développement web au sens large. Je vais dans un premier temps essayer de me tenir à une publication par mois, quel que soit le sujet. J’espère sincèrement pouvoir le faire et surtout trouver des sujets qui puissent vous intéresser, qu’il soit question de techniques, de méthodes ou d’expériences.

J’espère que le contenu vous intéressera, et surtout, n’hésitez pas à laisser des commentaires, en bien comme en mal (mais toujours courtois si possible), c’est comme cela que l’on progresse.