Themen für das nächste Arbeitstreffen - bausteine-der-datenanalyse/bcd-dokumentation GitHub Wiki

Reihenfolge für das Protokoll: MP, FB, MF

Treffen am 17.04.2025 11 Uhr (Protokoll: MF)

  1. Florian fehlt im Zitiervorschlag in allen Bausteinen
  2. Sicherheitsanalyse rendert seltsam. Branch wird neu aufgesetzt.
  3. Numpy Fitting scheint in der neuen Verion im Output ncht os trivial zu sein. Einfachheit in der Bedienung wie bei R ist nicht gegeben.

Treffen am 09.04.2025 13 Uhr (Protokoll: FB)

  1. Aktuelles

Evaluation in Dortmund hat nun 5 Teilnehmer erreicht.

  1. Abgabemodalitäten ORCA.nrw oder wie kriegen wir BCD in ein ILIAS-/Moodle-Format?

Eine Abgabedatei (entweder ILIAS oder Moodle, vermutlich Moodle). Lösungsideen:

  • Wir speichern stupide alles
  • Wir erstellen Kurse mit Links
  1. Geplottete Elemente für ein Book irgendwie als Action erzeugen und nicht in einem figure-html Ordner hochladen?

Erwartungen aufschreiben für weitere Besprechung mit MF.

  1. Ordnerstruktur und Aufteilung in der Dateien in Skript und Aufgaben
  • Punkt für die Agenda des nächsten Onlinetreffens.

  • Momentane Vorlage ist das umgearbeitete Repository für Energiedatenanalyse von MF

    • MP: Kann ich ein neues Repo anlegen oder muss ich etwas beachten?
      • QMDs in Unterordner, Index.qmd im Hauptordner

Treffen am 12.03.2025 11 Uhr (Protokoll: MP)

  1. Aktuelles

  2. Brainstorming zu Matthias' Musterlösungswünschen (Erläuterung durch Florian)

  • MB stellt in den Moodle-Kursen Links zu den Übungsblättern bereit. Die Links werden per GitHub-Action aus .qmds erstellt.
  • MB möchte, dass wenn die Studis eine Lösung einreichen, die Musterlösung verfügbar ist.
  • Die Musterlösung wird auch aus .qmds erstellt und der Link ist "verschlüsselt" (dass man ihn nicht erraten kann).
  • Im Repository sieht man die Musterlösung trotzdem

Mögliche Lösungen

  • private / extra Repos für die Musterlösungen (können aber nicht so leicht bearbeitet werden)
    • GitHub pages funktioniert nicht mit privaten Unterrepos
  1. Umgang mit Daten/Datenquellen, die wir nicht hochladen dürfen, aber essentiell für Inhalt der Bausteine sind (Erläuterung durch Florian)
  • bspw. Verkehrsdaten
  • Dummy-Daten erstellen mit runif (sd = Originaldaten, mean = Originaldaten)
  • Daten im Skript runterladen und die Auswertung lokal machen
  • einfach mal fragen, ob man für das Lehrprojekt die Daten nutzen und im Repo zur Verfügung stellen kann
  1. HTML mit Mermaid rendern
  • Das Problem ist, dass Marmaid eine Chromium-Instanz aufruft, um die Grafiken zu rendern und das stürzt zufällig ab. Dafür gibt es bereits Quarto Issues.
  • Beim Rendern auf GitHub kommen Warnungen
  • --> Als Bilder einbinden
  1. Videoskript w-python
  • MP sendet das Skript MF zu

Treffen am 08.01.2025 (Protokoll: MF)

  1. Aktuelles
  2. BCD Logo
  • Tablogo: im YAML-Header funktioniert favicon nur für Quarto Books (und Websites), in HTML geht es so:
## Logo im Browsertab
### Logo in Quarto Books
favicon: "skript/00-bilder/favicon_bcd_new.svg"

### Logo in HTML
include-in-header:
  text: |
    <link rel="shortcut icon" href="skript/00-bilder/favicon_bcd_new.svg" />
    <link rel="icon" type="image/x-icon" href="logo.ico">
  • Logo über dem toc (MF hat es im w-NumPy über der sidebar). Optionen:
## Inhaltsverzeichnis / table of contents
toc: true
toc-title:  |
  Leitfaden zur Erstellung von Bausteinen  

  ![](skript/00-bilder/logo_bcd_new.svg)
  • die Logo Einstellungen müssen unter format: html: eingetragen werden (sonst stürzt bei mir das Erstellen der PDF ab)
  • wie man das Logo in die PDF kriegt, habe ich nicht getestet
## Formatoption / formating options
format:
  html:
    ## Logo im Browsertab
    ### Logo in Quarto Books
    favicon: "skript/00-bilder/favicon_bcd_new.svg"
    
    ### Logo in HTML
    include-in-header:
      text: |
        <link rel="shortcut icon" href="skript/00-bilder/favicon_bcd_new.svg" />
        <link rel="icon" type="image/x-icon" href="logo.ico">
    
    default-image-extension: svg
    code-copy: true # hover is default
  pdf:
    cite-method: biblatex
    biblio-title: Quellen
    default-image-extension: pdf # Vektorgrafiken werden als PDF eingebunden / vector grafics are embedded as PDF

  • MF: schickt neues Logo per Mail
  • Logo in der der PDF Datei nicht so schön
  1. Styleguide
  • language: de oder language: de-DE (w-NumPy)? (MF?!)
  • Einstellung ist egal, MF ändert zu de
  • Lizenzhinweis aktualisiert: "Ausgenommen von der Lizenz sind alle Logos Dritter und anders gekennzeichneten Inhalte."

To Do:

  • Ergänzen: bausteinübergreifende Quellenverwaltung. Marc: Wenn man ein Quarto Projekt anlegt, kann man global den Pfad setzen. -> MF schreibt script
  • Ergänzen: Anleitung Quarto Book ?! -> Verweis auf Quarto Web Anleitung
  • Im Styleguide steht noch eine Passage: #### Verwendungsvorschlag Callout Blocks in den Bausteinen {#sec-Verwendungsvorschlag}
    • ergänzen der Bochumer-Elemente (?!) -> Verschieben auf nächste Woche
  1. w-Python
  • MP hat bereits über grundliegende Datentypen und Operatoren geschrieben. Es folgen Containertypen und typische Operationen (Loops, Funktionen schreiben)

Treffen am 17.12.2024 (Protokoll: FB)

  1. Aktuelles
  2. Nachlese Projekttreffen

Treffen am 13.11.2024 (Protokoll: MP)

  1. Aktuelles

Treffen am 09.10.2024 (Protrokoll: MF)

  1. Aktuelles
  2. Barrierefreiheit
  • fig-alt fehlt für das Lizenzsymbol: ![](skript/00-bilder/CC-BY.svg){fig-alt="Symbol des Lizenzhinweises Creative Commons BY"}
  1. BCD Logo im Styleguide: Wo, wie groß? LogoBCD
  • Marc probiert mal ein bischen rum
  1. Konfigurationsdatei oder Frageliste der Evaluation aus Dortmund zur Verwendung der Evaluation in Bochum.
  • finaler Fragebogen sollte heute Nachmittag online sein (sollten wir noch einmal sichten)

  • Fragebogen geht an MP und kann an HSBO/BUWU weitergeleitet werden - Umfrage in Eigenregie oder über System der FHDO möglich

  1. Hollywood goes Dortmund: Erster Videodreh am 30.10.

  2. Verschwindende Bilder auf GitHub (w-Pseudocode, Grafik unter 3. Was ist Pseudocode?)

  • Ersatzrepository für Pseudocode-HTML
  • Marc richtet sich an Github und fragt mal nach

Treffen am 04.09.2024 (Protokoll: FB)

  1. Aktuelles

  2. Zitiervorschlag in den Bausteinen. Eindeutige Zuordenbarkeit der Autorschaft (GWP).

  • MP schlägt vor Hinweis für Zuordenbarkeit zu erstellen, wer genauer Autor des Bausteins ist. FB und MF finden den Beispielvorschlag akzeptabel.
  1. w-Pandas: Wer (MP?) und Was?

    • Struktur pd.DataFrame und pd.Series
    • Umgang mit Dictionaries
    • Zeitreihen in Pandas (datetime Funktionen)
    • Pandas plot Funktion (Unterschiede zu matplotlib)
    • Pandas random Funktion (Unterschiede zu random.random) [keine Ahnung?!]
  • Wer (MP!) und seltene Zusätze von MF und FB
  1. Zusätze für w-NumPy

    • Übung mit mehrdimensionalen Datensätzen?
    • Multiplikation von Matrizen
  • Vorschau BCD-Treffen 3 Videos: Teaservideos (in 2 Versionen: 90 Sekunden und 5 Minuten) Das Wichtigste Lehrstuhlvideos Nur Methodenbausteine zweisprachig Drehtage für Videos?

Treffen am 24.07.2024 (Protokoll: MP)

  1. Aktuelles
  • 3 Bausteine vorläufig fertig: Pilotbaustein Numpy, a-Energiedatenanalyse, w-pseudocode

  • nächster Baustein MP: Einlesen strukturierter Datensätze

    • Idee: Zweisprachig für Python und R schreiben. Mögliches Problem: Grafiken werden doppelt erzeugt
  1. Verzeichnisstruktur für englische Bausteine - eigenes Repo?
  • Kommt auf die Agenda für BCD-Projekttreffen
  1. Lokalisierung von Querverweisen: Lösung oder Quarto issue
    (war bereits Thema am 15.05.2024, Quarto issue ist offen unter https://github.com/quarto-dev/quarto-cli/issues/8281)
  • nte-title, nte-prefix usw. gehen für HTML, nicht für PDF (in der Div muss eine ID vergeben werden: {#imp-ID .callout-important}
lang: de
language:
  de:
    crossref-imp-title: "Definition"
    crossref-imp-prefix: "Definition"
    crossref-lst-title: "Code-Block"
    crossref-lst-prefix: "Code-Block"
    crossref-nte-title: "Beispiel"
    crossref-nte-prefix: "Beispiel"
    crossref-tip-title: "Tipp"
    crossref-tip-prefix: "Tipp"
    crossref-wrn-title: "Hinweis"
    crossref-wrn-prefix: "Hinweis"

  • To Do MP: Styleguide aktualisieren
  1. Direktlinks auf die Baustein-HTML in der README wie in https://github.com/bausteine-der-datenanalyse/w-python-numpy-grundlagen
  • im Repo: settings - Pages (linke Leiste) - Link unter "Your site is live at" kopieren und Dateiname der HTML anfügen

Treffen am 26.06.2024 (Protokoll: MF)

  1. Aktuelles
  • NumPy Baustein ist gut angekommen.
  • Marc stellt Fragebogen rein, damit Maik da mal reinschauen kann
  • Maik kontaktiert Umfragen-Beauftragte
  1. Vorgehensweise bei zu großen Rohdaten für Github?
  • Florian hat große Datensätze (>300 Mb)
  • MP: Option geteilter Sciebo-Ordner https://hochschulcloud.nrw/de/hilfe/webinterface/teilen-link.html
    • Nachteil: man braucht einen Sciebo-Zugang
    • Marc schlägt öffentliche Links vor
  • Alternative Datensatztypen? Es gibt ein R Datenformat. Maik schlägt vor, dass wir direkt auch auf den Ursprung verlinken.
  • Datensätze nur das nötigste Speichern um Daten klein zu halten.
  • MP: Datei packen?!
  1. Lizenzdatei (MF)
  • Lizensdatei in jedes Repository packen (siehe NumPy-Baustein). Regel erstellen, das jeder Baustein automatisch mit licence Datei erstellt wird.
  1. pd.Series.plot.bar() vs. pd.Series.plot.line()
import pandas as pd
pd.set_option("display.precision", 2) # places after decimal for floats
import matplotlib.pyplot as plt
import random as rd

# Testdaten erzeugen.
n_values = 100
data = []
for i in range(n_values):
  zahl = rd.random()
  data.append(zahl)

data = pd.Series(data)
print(data)

# plotten
plt.subplot(2, 1, 1)
data.sort_values(ascending = False)[::4].plot.bar()
plt.title(label="Ein sortiertes Balkendiagramm für jeden 4. Wert")

plt.subplot(2, 1, 2)
data.sort_values(ascending = False)[::4].plot.line()
plt.title(label="pd.Series.plot.line(): Sortierung funktioniert nicht")

plt.tight_layout()
plt.show()

pd Series plot line Fehler

Die Erklärung / Lösung: pd.Series.plot.line() stellt xy-Koordinaten dar. Werden keine x-Koordinaten übergeben, wird der Index benutzt. Der Index wird in sortierter Reihenfolge dar. Dadurch wird sort_values rückgängig gemacht. Man kann das mit reset_index(drop = True) umgehen.

(MF) Alternativ geht auch: data.sort_values(ascending = False,ignore_index=True)[::4].plot.line()

  1. Marc Stellt Profiles vor und zeigt, dass man mehrere Bücher mit unterschiedlichem Inhalt rendern kann.

Treffen am 12.06.2024 (Protokoll: MP)

  1. Aktuelles
  • Marc hat den NumPy-Baustein hochgeladen.
  1. Farbpalette standardisieren (Python und R, hauptsache barrierefrei)?
  • Florian verwendet aktuell: https://ggplot2.tidyverse.org/reference/scale_viridis.html
  • Diese ist seit Version 2.0 die default colormap in matplotlib.
  • Die Farbpalette soll Farbenblindheit entsprechen, das entspricht aber nicht dem Empfinden von MP
  • Probieren, ob einfarbige Paletten wie "Blues" besser funktionieren. Diese können bei Bedarf um eine weitere Palette wie "Reds" erweitert werden.
  1. Querverweise im Text - Gestaltungsoptionen (Hyperlink?).
  • Hyperlinks klappen nur, wenn das Zielrepo Teil des Buches ist.
  • Querverweise in _voraussetzungen.md sammeln --> ggf. Skript erstellen, dass die Zielkapitel mit in ein Projekt holt bzw. einen Hinweis darauf ausgibt.
  1. Zweisprachigkeit Python und R?!
  • Erst mal alles in der jeweiligen Sprache bauen und dann muss man sich im Dreierteam absprechen, wie die Übersetzung umgesetzt wird.
  • Für die englischsprachige Übersetzung muss vermutlich auch der Code überarbeitet werden (Variablenbezeichnungen)

Treffen am 29.05.2024 (Protokoll: FB) Teilnehmer: FB, MF, MP

  1. Aktuelles
  2. Verständnisfrage von FB zum Kanban-Board bei fertigen Bausteine, die noch Referenzen zu noch nicht erstellten Inhalten benötigen.
  • MF und MP sagen Baustein als fertig deklarieren und dann neues To-Do mit Referenzen erstellen
  1. Datensätze einlesen in R und Python als Bausteine getrennt oder gemeinsam?
  • vermutlich zuerst getrennt und dann später kombinieren
  1. Numpy-Baustein von MF kurz vor Fertigstellung und wird als eigenes repository bald hochgeladen.

Treffen am 15.05.2024 (Protokoll: MP) Teilnehmer: FB, MF, MP

  1. Aktuelles

  2. Bug, Feature oder User Error: Quarto Issues für Anfänger

Vorgehen allgemein:

  • Testen mit der aktuellen Quarto-Version, auf der Quarto-GitHub-page https://github.com/quarto-dev/quarto-cli gucken, ob schon jemand issues und discussions ein ähnliches Problem angemerkt hat (auch is:open entfernen, falls es schon ein gefixtes Problem gibt)
  • Meldung via Issues - New Issue - Bug report
  • Code um den Fehler zu reproduzieren + Umgebung angeben + Quarto check ausführen

Treffen am 24.04.2024 (Protokoll: MF) Teilnehmer: FB, MF, MP

  1. Aktuelles
  • Maik teilt mit, dass studentische Hilfskraft Pilotbaustein durchgearbeitet hat. Anmerkung kleine Beispielaufgaben in regelmäßigen Abständen einbinden, da sonst Übungsaufgaben nur am Ende kommen -> zu lang bis Wissen abgefragt wird.
  • Marc teilt mit, dass Frontseite der Organisation nun schicker aussieht (keine Einrichteseite mehr und Titel angepasst)
  1. Styleguide
  • Marc schlägt Änderung vor für Vektrographiken. Quarto kann automatisch SVG in PDF umwandeln (Quarto). Dazu muss aber Dateiendung .svg an Datei beibehalten werden und librsvg installiert sein. Marc kümmert sich um Änderung des Styleguides.
  • Maik fügt Zitiervorschlag zu Stylguide hinzu
  • CSS-Hinweis kann aus Styleguide entfernt werden
  • yml Option: engine Knitr braucht zusätzlichen Kommentar
  • Tabsets Beispiel sollte nicht für unterschiedliche Programmiersprachen sein (Python und R wird ja getrennt gehandhabt) sondern allgemein gehalten werden.
  • Optionen für Codeblöcke sind soweit vollständig und werden aber ergänzt sollten weitere Optionen benötigt werden.
  1. GitHub Push eines neuen Repos (Pseudocode)
  • Unklar wie Bausteine in Github abgelegt werden. Maik lädt Testbaustein hoch, damit andere diesen schonmal einsehen können. Maik wird diesen Baustein aber noch aktualisieren. Gemeinsames pushen des Repositorys.
  1. Vorplanung Werkzeugbaustein BOW/DO Python
  • Marc hat mit numpy-Baustein "begonnen" und Maik setzt sich an Energiedatenanalyse-Baustein sobald Pseudocode fertig ist.

Treffen am 10.04.2024 (Protokoll: FB) Teilnehmer: FB, MF, MP

  1. Aktuelles
  2. Git für Dummies
  • MP hat git grundlegend verstanden
  1. Migration von diesem Wiki zu bausteine-der-datenanalyse/bcd-dokumentation (Marc)
  • Wiki umziehen zur Organisation. BCD-Dokumentation erstellen: Agendapunkt für Projektreffen am 11.04.
  • Dieses Repository redundant/komplett löschen?
  1. Stand der Pilotbausteine
  • MP plant nächster Woche mit einer ersten vorstellbare Version und Testung der SHK :
    • Momentane Arbeit Flussdiagramme mit mermaid
    • Aufpassen bei Syntax und Kommentaren
    • Theme von mermaid immer in quarto anpassen

Treffen am 03.04.2024 (Protokoll: MP) Teilnehmer: FB, MF, MP

  1. Aktuelles
  • FB ist mit Kapiteln 1 und 2 des Skripts von MB fertig
    • die optische Gestaltung wird noch abgestimmt
    • Der Block zu Wahrscheinlichkeitstheorie wird mglw. verschoben
  1. Styleguide
  • Umgang mit dekorativen Grafiken: Lizenzhinweis nach TULLU-Regel in Div ::: {.border}

grafik

  • Dadurch wird das Quellenverzeichnis nicht mit inhaltlich unbedeutenden Quellen gefüllt
  • MF hat den Styleguide gepusht unter BCD Styleguide --> FB übernimmt
  1. Quarto Profiles https://quarto.org/docs/projects/profiles.html
  • MF: Man kann verschiedene YAML-Dateien definieren, z. B. für ein Buch mit mehreren Kapiteln. Dann kann man sich ein Buch mit ausgewählten Kapiteln erstellen lassen. Ebenfalls ist es möglich, verschiedene Variablen zu übergeben, um z. B. nur R-Code rendern zu lassen, etwa um einen Kurs Datenanalyse mit R zu erstellen.
    • MP: Problematisch bleiben dann die Formulierung in den Texten, z. B.: „Im Folgenden finden Sie ein Beispiel für R und Python“ (auch: Querverweise auf andere Bausteine)
  1. Beschreibbares Textfeld: H5P-Element exportable text area kann nicht in tabset panel integriert werden
  • MF: HTML-Textfeld geht
<textarea id=“test” name=“test” rows="4" cols="50"></textarea>
  1. GitHub Actions, Desktop Clients und Mergen
  • In VS Code kann man sich in GitHub einloggen – da kann man alle Aktionen für GitHub auswählen
  • Mit RStudio muss man den Client benutzen.
    • Wenn eine Datei mehrfach parallel bearbeitet wird, müssen die Änderungen gemerged werden – das war nach den Erfahrungen von FB nicht so einfach
    • MF: Es hat sich bewährt, auf verschiedenen Branches zu arbeiten.
      • Main Branch: das, was die Leute später sehen und nie kaputt gehen sollte
      • 2 Development Branches für Florian und Matthias, auf denen gearbeitet wird und deren Entwicklungen regelmäßig in den Main Branch gemerged werden.
    • MF: Im GitHub-Ordner werden die Branches zusammen gespeichert. Um in einen anderen Development Branch zu schauen, muss der eigene Development Branch vorher gepusht werden.
    • MF: Bei Arbeitsbeginn sollte zunächst GitPull ausgeführt werden, um den aktuellen Stand vom Repo lokal zu holen. Vorher kann mit GitStatus geprüft werden, ob die lokale Version niedriger ist als die im Repo.

Treffen am 13.03.2024 (Protokoll: MF)

Teilnehmer: FB, MF, MP

  1. Aktuelles
  • Zoom löscht je nach Accountart die Chatnachrichten nach 7 bzw. 14 Tagen. Es wird nochmal nach permanenter Verängerung gefragt.
  1. Erster Entwurf Styleguide
  • Maik stellt aktuellen Stand des Styleguides vor. Muss von Florian und Marc gesichtet und ergänzt (z.B. Codeblöcke) werden. Marc fängt an mit Sichtung und leitet Dokument dann an Florian weiter.
  1. Callout-Boxen
  • Marc stellt kurz vor das callout-Boxen nur mit Hilfe von Filtern zu implementieren sind und Forderungen nach einer vereinfachten Lösungen stetig in github eintrudeln.
  1. Besprechungstermin für pdd Dokument noch offen.

Treffen am 06.03.2024 (Protokoll: FB)

Teilnehmer: FB, MF, MP

  1. Aktuelles
  2. Soll das PDD in das Wiki überführt werden?
  3. Handreichungen zu einzelnen Bausteinen erstellen / Vollständiges PDF als Handreichung für Lernende deklarieren?
  4. Ersteindruck: Typst keine sinnvolle Alternative zur LaTeX PDF-Erstellung
  5. Erstellung von interaktiven Aufgaben :
  6. Serifenlose Schriften verwenden für Barrierefreiheit

Treffen am 21.02.2024 (Protokoll: MP)

Teilnehmer: FB, MF, MP

  1. Aktuelles
  2. Zoom-Chat-Gruppe einrichten (erledigt)
  • Chat-Gruppe für die kleine Frage zwischendurch - Einrichtung durch Marc Fehr. Unverschlüsselte Kommunikation funktioniert, sobald man sich wechselseitig als Kontakt hinzugefügt hat.
  1. Minesweeper in JavaScript mit Quarto
  • MP: Idee, im Baustein Pseudocode einen Lösungsalgorithmus für das Spiel Minesweeper entwickeln zu lassen. Problem: Es gibt mehrere Varianten des Spiels.
  1. Verfahren für Formatvorlage / Styleguide
  • MP erarbeitet eine erste Vorlage, die dann in der Gruppe abgestimmt / weiterbearbeitet und dann im Projekttreffen vorgestellt wird
    • Bereitstellung via GitHub
⚠️ **GitHub.com Fallback** ⚠️