Création d’une REL avec logiciels libres
Creating an OER with Open Source Software

                   

Christopher Fuhrman (christopher.fuhrman@etsmtl.ca)

École de technologie supérieure

09 mars 2023

Introduction

Ressource Educative Libre (REL)
Open Educational Resource (OER):
Manuel « Analyse et conception de logiciels (LOG210) »

Catégorie 1 : « Phase 2 de création d’un manuel (complétion d’un projet existant) ». Ajouter exercices + normes CC.

Analyse et conception de logiciels (LOG210)

Software Analysis and Design

Objectifs Goals1

  • Logiciels libres Open source software
  • Facilité pour évoluer le contenu (fichiers sources accessibles) Easy to modify (accessible source files)
  • Facilité de construction Easy to build
  • Contrôle de versions Version control
  • Durabilité Sustainability
  • Format Web et PDF

Quarto + GitHub

Quarto.org \(\leftarrow\) R Markdown

Les « codes sources » de la REL sont dans les fichiers Markdown sur un dépôt GitHub.

Fichiers sources accessibles Accessible source files

Markdown est un langage de balisage léger lightweight markup language

::: hanging-indent

**Ce manuel** a été utilisé dans le 
cadre du cours *Analyse et conception 
de logiciels (LOG210)* à l'École de 
technologie supérieure (ÉTS).

:::

Ce manuel a été utilisé dans le cadre du cours Analyse et conception de logiciels (LOG210) à l’École de technologie supérieure (ÉTS).

Avantages : Facilité, portabilité, lisibilité, rapidité
Inconvénients : Limitation de formatage, de personnalisation, dépendance sur la syntaxe

Quarto.org

Quarto simplifie la transformation. Quarto simplifies the transformation.

Inteface de commande en ligne : Command-line interface :
quarto render --to html (pdf/epub/docx/pptx/etc.)

Structure d’un livre Quarto Book structure

Exemple de Creating a book (Quarto.org)

project:
  type: book

book:
  title: "mybook"
  author: "Jane Doe"
  date: "8/18/2021"
  chapters:
    - index.qmd
    - intro.qmd
    - summary.qmd
    - references.qmd

bibliography: references.bib

format:
  html:
    theme: cosmo
  pdf:
    documentclass: scrreport
  epub:
    cover-image: cover.png

Logiciels libres
Open Source Software2

Éditeur texte Text editor

Visual Studio Code IDE + Extension Quarto (.qmd)

RStudio IDE

Code source diagrammes Diagram source code

```{.plantuml #fig-ddcDes caption="Diagramme de classes."}
@startuml
skinparam style strictuml
skinparam backgroundcolor transparent
class Dé {
    + face : int
    brasser()
}
class JeuDeDés {
    getJoueurs()
    démarrerJeu(nom : string)
    jouer(nom : string)
    terminerJeu(nom : string)
}
class Joueur {
    + nom : string
}
JeuDeDés --> "d1" Dé
JeuDeDés --> "d2" Dé
JeuDeDés -right- "[nom]" Joueur : "             "
@enduml
```

Figure 1: Diagramme de classes.

```{.graphviz #fig-tq caption="Transformations de Quarto."}
digraph mygraph {
  bgcolor="transparent"; rankdir=LR
  node [fontname="Helvetica Bold,Arial Bold,sans-serif"]
  node [shape=note fillcolor="lightgray" style=filled height="1"];

  qmd [label=".qmd"]
  md [label=".md"]

  node [shape=rectangle style="rounded,filled"]
  quarto [fillcolor="lightblue" label="Quarto" shape=circle]
  pandoc [fillcolor="pink" label="Pandoc"]

  node [shape=note fillcolor="white" style=filled]; html; pdf
  qmd -> quarto -> md -> pandoc 
  -> {html pdf "..."};
}
```

Figure 2: Transformations de Quarto.

Filtre Pandoc diagram-generator.lua

kroki.io d’autres possibilités other ways to produce diagrams

Construction automatisée Automated build

GitHub + Action GitHub (script pour générer la REL avec Quarto en ligne)
« Déploiement continue Continuous deployment »

Filtre fr-nbsp Pandoc

Code en Markdown (simple à écrire) :

Descartes a dit: 
"Je pense, donc je suis."

Résultat (bonne typographie avec espaces insécables non-breaking spaces, etc.) :

Descartes a dit : « Je pense, donc je suis. »

Contrôle des versions Version control

  • Git 🤓
  • GitHub issues – système de suivi de problèmes issue tracking system
  • « GitHub flow » – collaboration

Défis Challenges3

  • Différences entre formats (HTML vs PDF vs EPUB)
  • Structure « book » trop simple en Quarto
  • Diagrammes en SVG malgré tout
  • Environnement LaTeX (PDF) complexe
  • License MIT (fichier markdown sur GitHub) vs CC (REL)
  • Réviseurs ne travaillent pas avec Markdown (ou GitHub)

Conclusion4

La création d’une REL grâce aux logiciels libres est aussi l’occasion de contribuer à la communauté de logiciels libres.
Creating an OER thanks to OSS is also an opportunity to give back to the open-source community.

😁

Notes de bas de page

  1. objectives (CC BY) par Creative Mania de Noun Project

  2. open source software (CC BY) par Ralf Schmitzer de Noun Project

  3. technical (CC BY) par Eucalyp de Noun Project

  4. volunteering (CC BY) par Rusmaniah de Noun Project