Cours IUT - environnement de développement

En arrivant, je présente le contexte.

Vous arrivez dans une agence. C'est votre premier jour. On vous donne une machine vierge sur Linux. Votre premier projet commence demain. Vous devez installer votre environnement de développement qui vous permettra de développer votre premier maquette HTML/CSS.

Idée et contrainte

L'idée de cette session est de préparer les élèves à installer leur environnement de développement ; comprendre que la configuration de la machine est essentielle pour travailler avec l'équipe en place.

Le choix est motivé par la décision d'enseigner Git et par l'impossibilité de pouvoir configurer leur machine à cause des droits administrateur. Je profite qu'ils disposent d'une machine virtuelle installée lors d'un autre cours.

Les conditions

L'exercice est collectif. Tout le monde a les points à condition que chacun ait répondu à l'exercice ; c'est-à-dire que chacun ait une page github.

Le principe n'est pas banal et contraire aux préceptes de l'éducation nationale qui demande une évaluation individuelle. Seulement, le premier jour en entreprise, tout se joue sur sa faculté à lever les fesses de sa chaise et aller discuter avec les autres.

Ils doivent se débrouiller seuls, je suis là pour les guider et répondre à leur question. Je ne donne pas de procédure.

L'installation

Apache

Je leur demande d'installer Apache et de modifier leur répertoire de travail. L'exercice va se révéler complétement inutile puisque nous n'utiliserons pas Apache, mais il permet de comprendre la complexité de la chose.

Dès cette phase, nous avons des élèves qui se soutiennent entre eux, et des élèves qui soutienne un peu le professeur, car il ne connait pas assez linux.

Ruby / Jekyll

Après avoir installé Apache, nous passons à Ruby / Jekyll. Les commandes ne sont pas les mêmes, il faut essayer d'expliquer ce qu'est Ruby et le principe des Gems. Il n'y a pas que PHP dans la vie.

Les élèves comprennent bien le copier/collé. Ils y arrivent surtout quand ils copient sur les bons articles ; leur capacité de recherche ne sont pas toujours au point. Ils pratiquent le "je teste, je verrai bien" ; ce qui n'est pas une mauvaise chose.

Les aptget sont plutôt faciles à faire sur Linux. On commence à essayer à mettre en place Jekyll. Mais, je découvre après recherches que l'installation de la dernière version n'est pas si évidente. Cela ne marche que si on installe une version dev de Ruby (documentée sur un article). Grosse panique derrière mes 14 élèves mais on peut dire que ça fait partie de l'exercice (on apprend en apprenant aux autres).

C'est à peu près à se niveau, en fonction des classes, que la première partie du cours se termine. Il faut 3 heures pour arriver à avoir un Jekyll fonctionnel. Cet article décrit donc 6 heures d'ateliers

Jekyll et Git

Pour voir Jekyll est fonctionnel, on crée un petit fichier index.html et on lance le serveur. Rien de compliqué en soit mais avec 14 configurations différentes, il faut faire pas mal de pédagogie et de débuguage.

On teste les commande Git.

Github Pages

Un des points phare du cours, la création de leur compte Github et la configuration d'un Github Pages pour la réalisation de leur éventuel portefolio professionnel.

Un par un, je les aide à comprendre à se retrouver dans le tutoriel. Il faut créer le dépôt avec le nom approprié (penser au readme) et récupérer ce même dépôt sur leur machine.

L'excercice n'est validé qu'à condition que je sois collaborateur de leur dépôt.

Conclusion

La première expérience de cet exercice donne pas mal de sueurs froides car on se lance dans un exercice dans lequel pas mal de paramètres ne sont pas maîtrisés. Ce qui m'a poussé à faire ça a été qu'ils disposent d'un compte Github, élément essentiel à la recherche de stages et d'emplois.

Ça aura certainement été le cours le plus difficile à préparer ; seulement maintenant, je vais pouvoir enseigner le fonctionnement des "templates" et "moteurs de template" avec Jekyll.