✨Méthode
Dernière mise à jour
Dernière mise à jour
Le contenu de ce cours colle davantage à ce qu'on appelle, dans le monde anglo-saxon, du Computational journalism. Il s'agit de l'application de l'informatique au journalisme.
Même le plan de cours que vous consultez en ce moment est un exemple de ce qu'on peut faire avec ces technologies. Il repose sur un système appelé git, qui permet de collaborer à plusieurs sur un même projet et de voir les différentes versions d'un même fichier (pour voir comment ce plan de cours a évolué, consultez ce répertoire sur le compte Github du programme).
Mais ce qu'on fera, surtout, c'est d'apprendre la programmation et ses applications journalistiques.
Le langage qu'on utilisera s'appelle Python. C'est un langage d'usage général qui est l'un des plus utilisés dans le monde. C'est celui qui, en 2023 et pour la prochaine décennie au moins, me paraît le plus utile pour vous comme journalistes et comme citoyennes. JavaScript est plus couramment utilisé par des informaticiennes, mais il est difficile à appréhender pour des gens qui n'ont jamais programmé. Le langage R est très utilisé par mes collègues en sciences humaines et sociales, mais en dehors des cercles académiques, il demeure plutôt inusité.
Python a ses avantages et ses inconvénients, comme tous les langages informatiques. C'est celui que j'ai choisi, car il est devenu la lingua franca dans l'univers de l'« intelligence artificielle » et de la science des données. C'est aussi un langage que comprendront les informaticiennes que vous croiserez peut-être dans les rédactions où vous travaillerez. Enfin, son grand nombre d'utilisatrices fait en sorte que vous pourrez compter sur une grande communauté pour répondre aux questions que vous poserez certainement en ligne au cours de la session.
Plus concrètement, on s'en servira pour :
moissonner des données, ou faire du data scraping, comme le font les artisans de Common Crawl, une archive colossale de 250 milliards de pages web archivées depuis 2008 (elle contient 10 petaoctets, c'est-à-dire 10 000 000 000 000 000 octets ou 10 milliards de gigaoctets; je sais, j'ai le tournis moi aussi)
extraire du sens de grands volumes de texte à l'aide du traitement du langage naturel (ou Natural Language Processing [NLP]),
se familiariser avec différentes techniques d'« intelligence artificielle » appliquée, ou d'apprentissage automatique (Machine Learning [ML]),
explorer l'utilisation programmatique d'outils d'intelligence artificielle générative comme OpenAI.
analyser des données lorsqu'elles sont trop volumineuses pour un tableur comme Excel ou Calc de LibreOffice.
On va le faire au moyen de Google Colaboratory, ou Colab. Pour ce faire, il faut que vous disposiez d'un compte Google (si vous vous servez déjà de Gmail et/ou de Google Drive, tout va bien).
Je ne suis pas un cheerleader des GAFA. Mais si j'ai opté pour Colab, c'est après avoir jonglé avec plusieurs autres options au cours des sessions précédentes :
à partir de 2018, j'ai demandé à tout le monde d'installer sur son ordi Anaconda, une plateforme d'analyse de données. On réutilisait Sublime Text, comme dans le EDM4455 (nostalgie) pour écrire du code. Mais cela se traduisait par une expérience différente selon que vous possédiez un ordinateur avec Windows ou avec Mac. En outre, les personnes munies d'un Chromebook étaient larguées (elles pouvaient utiliser CodeAnywhere ou PythonAnywhere, des services cependant payants). En 2020, j'ai même introduit un éditeur de code professionnel : Visual Studio Code.
à l'été 2020, j'ai donné avec deux collègues de la Faculté des sciences le cours Initiation à la science des données et à l'intelligence artificielle. C'était entre les deux premières vagues de la pandémie et le cours a exclusivement été donné en ligne. Je me suis alors servi des Azure Notebooks, un service auquel toute personne qui travaille ou étudie à l'UQAM avait accès gratuitement dans le cadre de l'abonnement de l'université à Office365... j'utilise l'imparfait parce que ce service n'existe plus...
En 2022, j'ai exploré des solutions de rechange comme PyCharm, Gitpod, Glitch ou les Codespaces de Github. Pour toutes sortes de raisons, je ne les trouvais pas appropriés pour cette session au cours de laquelle les risques de reconfinement sont grands et où j'ai besoin d'une solution en ligne. Je me suis donc tourné vers Colab. Ça s'est bien passé en 2023. On poursuit en 2024.
Il permet de programmer à l'intérieur de ce qu'on appelle des carnets, ou notebooks, en anglais. Vous me rendrez d'ailleurs vos devoirs sous la forme de carnets.
Lorsque ce sera nécessaire, je partagerai au préalable avec vous des fichiers qui seront utiles dans le cadre des exercices en classe dans ce répertoire partagé sur Google Drive, répertoire auquel vous pouvez aussi accéder directement à partir de Colab.
Je reste ouvert à vos demandes spéciales. Vous avez entendu parler d'un projet, d'un reportage retentissant, d'une technologie, d'une application particulière en journalisme? Si je puis vous aider à l'appréhender, voire la réaliser, je vais tâcher de le faire. La meilleure façon d'apprendre est avec un projet concret.
Inversement, si vous connaissez une technique, un outil, un truc, n'hésitez jamais à le partager avec l'ensemble du groupe. Parlez-m'en au préalable et on pourra prévoir une période dans le prochain cours pour que vous puissiez nous le ou la présenter. Si vous pouvez vous aussi m'apprendre quelque chose, je serai le prof le plus heureux du monde.
Il n'y a aucune honte à admettre qu'on ignore quelque chose. La seule honte est de prétendre avoir réponse à tout.– Neil deGrasse Tyson
en 2016 et 2017, je demandais aux étudiantes d'utiliser Cloud9; ce service en ligne a cependant été acheté par Amazon qui l'a intégré à ses AWS (Amazon Web Services) et l'a rendu payant
Ce service devrait donc fonctionner, quel que soit l'ordi que vous possédez : Mac, Windows, Linux, ChromeBook... Je l'ai même testé sur un téléphone dans l'application Chrome. Et ça marche !! Pas très pratique cependant...