navigation

But

Compétences visées (d’après le BO) :

  • analyser et modéliser un problème ou une situation, notammant en utilisant les objets conceptuels de l’informatique pertinents (table relationnelle, graphe, dictionnaire, etc.) ;
  • imaginer et concevoir une solution, décomposer en blocs, se ramener à des sous-problèmes simples et indépendants, adopter une stratégie appropriée, décrire une démarche, un algorithme ou une structure de données permettant de résoudre le problème ;
  • décrire et spécifier les caractéristiques d’un processus, les données d’un problème, ou celles manipulées par un algorithme ou une fonction ;
  • mettre en œuvre une solution, par la traduction d’un algorithme ou d’une structure de données dans un langage de programmation ou un langage de requête ;
  • justifier et critiquer une solution, que ce soit en démontrant un algorithme par une preuve mathématique ou en développant des processus d’évaluation, de contrôle, de validation d’un code que l’on a produit ;
  • communiquer à l’écrit ou à l’oral, présenter des travaux informatiques, une problématique et sa solution ; défendre ses choix ; documenter sa production et son implémentation.

Préalable

Pour le fonctionnement des 3 prochains trimestres, il faut que vous ayez :

  • un compte Google (ancien ou créé pour l’occasion) pour pouvoir utiliser Colaboratory
  • un compte Github où seront créés les reopositories des TP (répertoires à l’historique sauvegardé).

La vidéo suivante présente le protocole à suivre pour être opérationnel :

 

Déroulement

Pour chaque TP, on suivra la démarche suivante :

  • Vous trouverez un lien à cliquer au début de l’énoncé du TP sur ce site web. Il s’agit d’une invitation générer par Github Classroom.
  • En acceptant l’“assignment” (le travail demandé), un nouveau repository est créé sur Github.
    Il contient un ou plusieurs fichiers notebook python (d’extension “.ipynb”) produits par l’application Jupyter notebook. Ce sont ces fichiers qu’il va falloir modifier pour gagner des points.
  • Un notebook est découpé en cellules qui peuvent contenir soit du texte et des images, soit du code. Chaque cellule peut s’exécuter individuellement et fait alors tourner le code qu’elle contient, mais Github n’est pas encore capable d’interagir avec un notebook aujourd’hui.
    On passe par une solution en ligne pour y pallier : Colaboratory (ou Colab).
  • Pour transiter de Github à Colab, la démarche est très simple (sur le papier…) : une fois qu’on a cliqué sur le notebook, il suffit de modifier l’adresse url en ajoutant “tocolab” après github (‘https://github.com/blablabla/tpx.ipynb' $\rightarrow$ ‘https://githubtocolab.com/blablabla/tpx.ipynb' ).
  • Si pour une raison ou une autre, vous n’arrivez pas à passer de Github à Colab directement, il y a une autre méthode, un peu moins confortable, mais qui fonctionnera à coup sûr : vous téléchargez le notebook depuis github sur votre disque (pour cela, il faut d’abord cliquer sur Raw pour accéder au code source, puis sauvegarder la page en prenant soin que le navigateur n’ajoute pas une extension après le .ipynb), puis vous l’importez depuis Colab.
  • Le vrai travail commence alors. Des consignes sont disséminées dans le notebook et il faudra modifier les cellules en fonction de ce qui est demandé. Généralement, l’endroit où une modification est attendu est clairement indiqué par le commentaire # VOTRE CODE.
  • Tout est exécutable, ce qui veut dire que vous pouvez tester immédiatement vos modifications. Vous pouvez aussi ajouter autant de cellules que souhaité, où vous le souhaitez.
    Seules les cellules de test contenant les commentaires # Cellule de test, ne pas modifier ne doivent en aucun cas être modifiées ou supprimées.
  • Pour être validées, vos modifications devront être sauvegardées dans le repo github du TP. Depuis Colab, il suffit théoriquement d’aller sur Fichier > Enregistrer une copie dans Github, puis de sélectionner le repo du TP.
    L’autre solution est d’enregistrer le fichier modifié sur le disque (Fichier > Télécharger > Télécharger le fichier .ipynb) puis de le glisser sur la fenêtre Github du repo (ou de cliquer sur Add file > Upload files). Pensez alors à commiter (= cliquer sur le bouton vert commit) pour valider.
    Attention, il ne faut pas créer un autre fichier ! C’est le notebook portant le nom initial qui sera ramassé et corrigé une fois le temps imparti pour le TP écoulé.

Aide

  • La partie Feedback du repository du TP, caché dans l’onglet Pull requests, permet de me demander de l’aide en dehors des TP.
  • Ou vous pouvez m’envoyer un mail à l’adresse suivante : cordier.info @ protonmail.ch