J'ai une proposition de tutoriel dont je souhaiterais bien contribuer en tant qu'auteur mais clairement, je me vois mal rédiger ça tout seul. Peut-être que l'idée est foireuse mais bon, j'attend vos avis.
Sujet du tutoriel : Reprendre le contrôle avec Linux
Présentation du tutoriel : L'objectif de ce tutoriel est multiple. En particulier il n’existe pas un seul type d'utilisateur pour Linux. Un premier objectif serait de pouvoir s'adapter de façon modulable aux différents types d'utilisateurs. Certains voudront faire de la bureautique avec Linux, d'autres voudront programmer, ou bien d'autres voudront faire de l'administration.
Un deuxième objectif serait d'avoir de l’interactivité. Apprendre une système d'exploitation, c'est comme apprendre à programmer : il faut pratiquer ! Il faut donc, je pense, proposer des moyens d’interaction avec l'utilisateur. Cela peut passer par une video, par des exercices etc…
Enfin un troisième objectif serait de rendre ça ludique. Le problème je trouve de beaucoup de tutoriels est d'être trop abstrait. Beaucoup de livres se placent dans un contexte trop théorique : ils présentent des notions sans montrer des cas d'application. L'objectif serait donc d'avoir un thématique derrière pour rendre le tutoriel un peu attractif.
Pour avoir un bon exemple je trouve d'intéractivité je souhaite donner ce tutoriel. Il est pour python, mais clairement il est très orienté sur l'intéractivité.
Un autre exemple qui concerne git.
En ce qui concerne le domaine de GNU/Linux et dans un contexte de sécurité, j'avais beaucoup apprécié le site Over the wire. Le parcours bandit se compose en plusieurs niveaux. L'idée c'est que pour faire le niveau $n+1$ il faut compléter le niveau $n$.
Ce dernier exemple est celui qui m'inspire le plus dans l'optique de faire un tutoriel répondant aux objectifs précédents.
L'idée que j'avais en tête était de faire une machine virtuelle – préparée à l'avance – pour un utilisateur lambda. Cette machine virtuelle pourrait comporter différent exercices que l'utilisateur devrait compléter en entrant les bonnes commandes, ou le bon script etc…
La théorie pourrait être apprise en utilisant le format "classique" du tutoriel.
L'intérêt d'utiliser la machine virtuelle est qu'il est possible de la configurer afin de faire ce dont on a envie : par exemple introduire des bogues pour que l'utilisateurs les corrige. Réagir à un événement produit par l'utilisateur etc…
Pour le côté ludique , cela peut se faire en introduisant des parcours style bandit par exemple : la progression se fait par niveau.
Il est possible aussi d'introduire un contexte général : l'administration d'une application, ou bien la développement d'un programme. Pour des utilisateurs souhaitant faire de la bureautique, je n'ai pas d'exemple mais je pense qu'il est possible de trouver un fil rouge.
En ce qui concerne le second objectif, je trouve que c'est un bon compromis. On a de l’interactivité, mais aussi de la lecture.
Enfin pour le premier objectif, la machine virtuelle est en soit assez modulable. Donc il est assez facile de proposer plusieurs types d'exercices en fonction de l'utilisateur souhaité. Il est même possible d'aller un peu plus loin en proposant l'apprentissage d'outils liés à GNU/Linux.
Un dernier point sur la machine virtuelle est qu'il serait possible d'imaginer pour n'importe quelle personne d'ajouter des exercices.
Pourquoi la nécessite d'un tel tutoriel : A ma connaissance, il existe peu de tutoriel sur GNU/Linux qui soit interactif. L'apprentissage de GNU/Linux se fait surtout par l'expérience. Je pense qu'avoir de l'intéractivité permettrait d'accélérer un peu ce processus et d'apprendre plus rapidement des astuces, des bonnes façon d'utiliser le système. Ca m'arrive après deux ans d'utilisation intensive de découvrir de nouvelles options pour ls ou mkdir.
Au programme (en vrac) je pensais :
- Découverte de GNU/Linux et de son fonctionnement global, notamment le système de fichiers
- Apprendre la ligne de commande de tous les jours (mise à jour, ls, cd etc…)
- Un peu plus de ligne de commande (ssh, .bashrc etc…)
- Apprendre le bash
- Sed/Awk
- Découvertes de nouveaux shell
- Développement sous GNU/Linux
C'est assez générique, mais c'est juste pour donner une idée.
Pourquoi ce tutoriel : Je l'ai déjà mentionné avant, mais je trouve que beaucoup de tutoriels ne sont pas assez interactifs et certains sont vieux. L'idée serait aussi de centraliser plusieurs sources d'information au même endroit. Le tutoriel serait aussi modulable et facilement extensible pour s'adapter aux changements.
Voilà, je sais que c'est un peu long, mais je voulais partager cette idée.