Licence CC BY

Interview : Rencontre avec des étudiants contributeurs

Quand la contribution au projet technique de Zeste de Savoir devient un projet scolaire

Salut les gars et merci à vous d'avoir pris du temps pour répondre à notre première interview sur des contributions scolaires au projet technique de Zeste de Savoir !

Présentez-vous, les copains

Salutations !

Nous sommes au nombre de six (Benjamin, Guillaume, Kévin, Matthieu, Simon et Théo). Six étudiants, tous en 3ème année de Licence Informatique à l'Université de Lille 1 mais aux parcours d'études différents. La majorité d'entre nous est issue de la 2ième année de licence Informatique à l'exception de Benjamin et Simon. Ils ont quant à eux intégré la 3ème année de Licence après leur BTS Services Informatiques aux Organisations à Roubaix.

Qu’est-ce qui vous plaît le plus (et le moins) dans vos études ?

Ce qui nous plaît le moins dans nos études, c'est la partie administrative, notamment pour le stage, qui prend énormément de temps du fait du grand nombre d'intermédiaires.

Sinon, il y a pas mal de points que nous apprécions dans nos études :

  • du fait de la présence de deux centres de recherche en Informatique (CRIStAL et Inria Lille - Nord Europe) sur le campus de Lille 1, nos cours sont essentiellement assurés par des enseignants-chercheurs, hautement qualifiés, garantissant une formation à et par la recherche et l'innovation ;
  • la disponibilité et l'écoute de l'équipe pédagogique ;

  • la découverte et l'apprentissage de différents paradigmes de programmation (impératif, orienté objet, fonctionnel et logique) qui nous offre un éventail plus riche de stratégies de résolution de problèmes ;

  • un coût de formation très faible par rapport à une école privée et une formation publique reconnue ;

  • ceux venant du BTS SIO disposent déjà d'une expérience professionnelle (env. 3 mois) et d'un bon bagage technique.

Quel était votre projet et pourquoi avoir choisi Zeste de Savoir ?

Au 6ème semestre de notre formation, nous devions choisir une option parmi cinq et nous avons tous choisis l'option OpenDev. Séparée en deux phases, l'objectif de cette option est de nous faire découvrir et intégrer dans une communauté de développeurs de logiciels libres.

La première phase est appelée le bac à sable. L'idée est de nous apprendre à lire du code ― qui n'est pas le nôtre ― puis de se familiariser avec Git et GitHub. Pour ce faire, notre enseignant héberge sur GitHub un framework Java de jeu dans un état volontairement déplorable (peu de tests, quasiment pas de documentation/commentaires, etc.). Chaque équipe d'étudiants doit proposer le plus d'améliorations à l'enseignant par pull requests et accessoirement, réaliser un petit jeu de son choix utilisant le framework.

La seconde phase est appelée le projet. On enlève les brassards et on se lance dans le grand bain ! Chaque équipe recherche un projet libre de son choix. Le seul critère de recherche important est l'activité du projet libre car l'évaluation porte sur les interactions (Pull requests, tickets, mails, IRC, forum, …) avec la communauté.

De notre coté, après avoir établi une liste de projets, nous avons choisi à l'unanimité Zeste de Savoir car c'est un projet qui nous parle beaucoup. En effet, certains d'entre nous ont découvert l'informatique et une vocation grâce au feu Site du Zéro. Très reconnaissant de cette grande communauté qui promeut le partage de connaissances à tous, nous avons profité de l'occasion pour apporter notre pierre à l'édifice.

Qu'est ce que vous avez appris en contribuant à Zeste de Savoir ?

Nous avons découvert que contribuer à un projet libre est en réalité bien plus simple qu'on ne le pensait. C'est un excellent moyen de mettre à profit ses connaissances, mais aussi et surtout d'approfondir les siennes.

  • Sur le plan humain, contribuer à un projet libre forge la collaboration et l'esprit d'équipe. À cet effet, nous avons pu mesurer l'importance du respect des règles de contribution et des moyens de communication dans un contexte de travail à distance.

  • Sur le plan technique, outre le fait d'avoir appris à développer avec le framework Django et par conséquent en Python, nous avons surtout appris à lire du code qui n'est pas le nôtre. Une tâche pas forcément aisée surtout lorsque l'on découvre le langage. Cependant, cela permet de prendre conscience de l'importance d'avoir du code lisible (nom de variable explicite, commentaires, documentation) et testable. Car le test unitaire est aussi une source d'informations sur le comportement de la méthode.

Est-ce que vous auriez des suggestions pour améliorer le dev sur ZdS ?

Nous avons plus une suggestion pour GitHub que pour ZdS. Le bug tracking de GitHub est très bien exploité par ZdS. Néanmoins, l'outil mériterait d'être enrichi par un Kanban pour une meilleure visibilité du projet. Car jusqu'à présent, s'il est possible de trier grâce aux étiquettes, il est impossible de connaître l'état des tickets (issues) sans aller les consulter un par un.

À part cela, le projet Zeste de Savoir dispose déjà de nombreux outils de développement très bien utilisés (versionning, intégration continue, bug tracking, etc.). De même qu'il est aisé de communiquer avec les autres développeurs grâce au forum, IRC et le bug tracking. Tout est fait pour être efficace, c'est très appréciable !

Votre projet serait à refaire, vous ferez pareil ?

Le début a été difficile car nous avions une forte appréhension. Contribuer à un projet libre nous semblait hors de porté, mais nous étions motivés. Finalement, nos appréhensions ont été très vite levées et à notre grande surprise, nous avons pris énormément de plaisir aussi bien humainement qu'intellectuellement.

Maintenant que nous avons eu cette expérience, en plus de ce que nous avons appris, nous sommes beaucoup plus à l'aise à intégrer un projet en cours de route sans en connaître les moindres recoins. Ainsi, si c'était à refaire et on peut s'en douter, nous n'agirions plus de la même manière.

C'est d'ailleurs le sentiment que nous avons aujourd'hui dans nos stages de L3, sur des projets tout aussi inconnus que ZdS au début.

Un mot pour la fin les copains ?

Nous voulons remercier la communauté de Zeste de Savoir de rendre ce projet possible et de participer de ce fait à l'une de nos plus belles expériences. Merci aussi aux développeurs du projet pour leurs conseils et leur disponibilité. Nous n'oublions pas notre enseignant, Damien Cassou, qui est l'initiateur de cette option au sein de Lille 1.

Et vive le libre, vive Zeste de Savoir !


Un grand merci à votre équipe de vous être prêtés au jeu pour cette interview. Si vous avez des remarques ou des questions à poser à nos étudiants, rendez-vous dans la zone des commentaires !

13 commentaires

Merci beaucoup pour votre travail, ce fut une excellente expérience pour tout le monde !

Ce n'est pas dit dans l'article mais orandin continue de contribuer et ça, c'est vraiment génial.

+10 -0

J'aime bien ces formes d'enseignement où les étudiants sont fortement impliqués. C'est plus formateur que d'ingurgiter des informations souvent. :)

Sinon j'ai une quetion :

Néanmoins, l'outil mériterait d'être enrichi par un Kanban pour une meilleure visibilité du projet.

J'ai lu Wikipédia pour savoir ce qu'est un Kanban, mais je n'ai pas compris comment ça pouvait aider à la visibilité dans un projet logiciel. Qui peut m'expliquer ?

J'ai lu Wikipédia pour savoir ce qu'est un Kanban, mais je n'ai pas compris comment ça pouvait aider à la visibilité dans un projet logiciel. Qui peut m'expliquer ?

Globalement, ça permet en un coup d'oeil de savoir où on en est et d'identifier des entonnoirs (pas assez de dev, trop de choses en test…).

J'ai lu Wikipédia pour savoir ce qu'est un Kanban, mais je n'ai pas compris comment ça pouvait aider à la visibilité dans un projet logiciel. Qui peut m'expliquer ?

Globalement, ça permet en un coup d'oeil de savoir où on en est et d'identifier des entonnoirs (pas assez de dev, trop de choses en test…).

artragis

Pas sur cependant que ça soit adapté a de la gestion de projet associative bénévole…

+2 -0

Merci ! :)

J'ai lu Wikipédia pour savoir ce qu'est un Kanban, mais je n'ai pas compris comment ça pouvait aider à la visibilité dans un projet logiciel. Qui peut m'expliquer ?

Globalement, ça permet en un coup d'oeil de savoir où on en est et d'identifier des entonnoirs (pas assez de dev, trop de choses en test…).

artragis

Pas sur cependant que ça soit adapté a de la gestion de projet associative bénévole…

Eskimon

À voir.

Parce qu'à la différence du scrum, le Kanban ne dispose pas de sprint. Il n'y a donc pas de pression de temps. Cela apporte juste un confort visuel car on sait où l'on en est d'un seul coup d’œil. Les issues deviennent dès lors comme des post-its que l'on peut déplacer dans différentes colonnes (à faire, en cours, à tester/à QA, terminé).

Parce qu'à la différence du scrum, le Kanban ne dispose pas de sprint.

scrum = méthode, kanban = outil. Souvent le kanban est utilisé par la méthode scrum, mais aussi dans le lean management… c'est du pragmatisme en entreprise où il y a souvent des équipes dédiées à chacune dse tâches, le kanban board n'est qu'un snapshot du flux de travail. Sur zds, c'est un poil trop complexe de mettre ça en place, et c'est pas faute d'avoir essayé.

scrum = méthode, kanban = outil.

artragis

Le Kanban est à la fois un outil (Kanban board) et une méthode pour visualiser le workflow (i.e le processus de traitement d'un ticket/issue). Le dev' de ZdS utilise déjà cette méthode. On traite les tickets demandés quand l'on peut. Ces derniers évoluent en plusieurs étapes discrètes selon s'il y a une discussion (todo), des commits (in progress) ou une Pull Request (test/QA). Simplement, nous n'avons pas de Kanban board car l'interface de GitHub en est dépourvue.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte