Skip to main content

Outils pratiques pour les étudiants

Ceci est une petite liste des outils que j'utilise pour mes études et qui pourrait peut'être vous intéresser aussi

Bookstack

C'est le logiciel du site sur lequel vous êtes. Je l'utilise pour écrire mes synthèses (et d'autres trucs aussi) et les partager. Il a pas mal de gros avantages :

  • Très facile d'utilisation
  • Fonctionne avec markdown et avec une prévisualisation en temps réel et une sauvegarde automatique
  • Chaque page a une historique qui permet de revenir en arrière dans les révisions
  • Possibilité d'ajouter des fichiers en pièce jointes au pages
  • Possibilité d'ajouter des tags sur chaque page
  • Chaque page a une catégorie (son livre) mais peut aussi avoir 2 catégories supplémentaires (les étagères et les chapitres)
  • On peut rechercher dans toutes les pages en même temps
  • On peut customizer le site pour y ajouter de nouvelles fonctionalités simplement (par exemple pour y ajouter un support pour MathJax pour générer des équations mathématiques $\frac{\Delta x}{\Delta y}$
  • On peut créer des templates de pages
  • On peut facilement naviguer sur chaque page avec le menu de navigation de la page, et celui du livre (à gauche), les pages précédentes et suivantes (en desosus)
  • On peut ajouter des commentaires sur les pages (en dessous)
  • On peut exporer les pages sous différents formats (à droite)
  • On peut gérer les permissions de chaque étagère, livre, chapitre ou page assez précisément
  • Il a une très bonne API, on peut donc automatiser le transfert des pages facilement pour migrer depuis ou vers BookStack
  • Permet aussi d'ajouter des webhooks, et donc de se connecter à différentes plateformes (tel que Discord) ou de créer des scripts plus automatisés sur base d'évènements précis
  • On peut aussi créer des rôles personnalisés et gérer finement les permissions. Ce qui permet de donner l'impression d'un site différent pour chaque groupe d'utilisateur·ice·s

Désavantages :

  • Il nécessite d'être installé sur un serveur, il faut donc un serveur et un peu de connaissances pour l'installer (ou utiliser celui de quelqu'un d'autre)

HedgeDoc

C'est aussi un logiciel de site, mais qui lui a une instance publique, qui permet d'éditer des documents Markdown à plusieurs et en temps réel.

Avantages

  • Facile d'utilisation
  • Système de permission facile à comprendre
  • Support pour différents types de diagrammes et équations mathématiques par défaut
  • Preview en temps réel
  • Possibilité d'exporter en différents formats
  • Possibilité de générer une présentation à partir du Markdown (diaporama)
  • Possibilité d'upload des images ou d'embed des vidéos

Désavantages

  • Les diagrammes ne sont vraiment pas beaux (opinion personnelle) et relativement peu lisible
  • La preview est assez peu fluide

Mermaid Live

Mermaid est la syntaxe que HedgeDoc utilise pour générer les diagrammes, mais il y a un site qui s'appelle mermaid.live qui permet de créer ces diagrammes avec une preview en temps réel et un affichage beaucoup plus beau

Avantages

  • Facile d'utilisation (lien direct avec la documentation, des exemples en un clic)
  • Beaucoup plus beau
  • Les URL encode tout le code des diagrammes, ainsi en prenant l'URL d'affichage et en remplaçant view par edit on peut retrouver le code source ce qui plus tôt pratique
  • Plein de diagrammes disponibles (séquences, classes, Gantt, Flow, State, MLD, user journey, Git, pie et mind map)

Désavantages

  • N'est pas collaboratif

Bash scripting (les lignes de commande)

Savoir utiliser le terminal est perçu par beaucoup comme étant presque un superpouvoir, car on peut automatiser toute une série de choses. Les possibilités sont globalement illimitées, mais je vous recommande très fort de les utiliser sur Linux ou a la limite macOS parce que sinon vous allez être dégouté si vous le faites sur Windows.

Voici quelques chose que l'on peut faire avec des commandes bash de base :

  • Automatiser des requêtes à des API avec curl
  • Rechercher une chaine de caractère ou un pattern dans une série de fichiers avec grep et find ou rg
  • Modifier quelque chose dans une liste de fichiers selon une regex avec sed
  • Extraire des informations d'un/plusieurs fichiers avec grep, awk et jq
  • Archiver des sites entiers avec wget

Pour vous rassurer, vous ne devez pas tout connaître, car ce n'est simplement pas possible, chaque commande est un programme à part entière, et chaque commande a son propre manuel. Le tout est de savoir quel outil utiliser et comment les combiner ensemble.

DBeaver