Den letzten Monat habe ich den Kurs R Programming auf Coursera absolviert. Hier ein kurzer Rückblick.

Insgesamt war dieser Kurs in vielen Belangen genau das, was ich von einem Online-Kurs erwarte:

  • Kurze, gut gegliederte Vorlesungseinheiten.
  • Mit etwas Vorkenntnis sind die Folien auch ohne die Vorlesung zu verstehen.
  • Starker Praxisbezug

Videos

Die Vorlesungsvideos sind gut, es gibt einiges an ergänzenden Informationen zu den Folien. Das Niveau ist gefühlt recht moderat - mit Programmiersprachen bzw. Konzepten tut man sich aber als Softwareentwickler natürlich ohnehin leichter.

Prüfungen

Es gibt in diesem Kurs drei Arten von Prüfungen - zwei automatisiert ausgewertete sowie ein Kursprojekt. Zudem existiert mit Swirl eine recht originelle Lern- und Prüfungsbibliothek für R , auch damit lassen sich noch ein paar Zusatzpunkte ergattern.

Bei den Quizzes handelt es sich um Multiple Choice Prüfungen - allerdings ist auch hier teilweise die Verwendung von RStudio bzw. R notwendig bzw. vorgesehen. Die Fragen sind in etwa zur Hälfte zu theoretischen Konzepten aus den Vorlesungsvideos, zur Hälfte eben solche praktische Anwendungsbeispiele. Es gibt jeweils drei Versuche, der beste wird gewertet.

Die automatisch ausgewerteten Programmieraaufgaben werden mittels eines Script ausgewertet und an Coursera übermittelt. Ich hatte den Eindruck, dass hier 1:1 die Beispielausgaben aus der Angabe überprüft werden - getestet habe ich das aber nicht. Nichtsdestotrotz macht es Spaß, die Aufgaben umzusetzen.

  1. Methodenrümpfe aus der Angabe kopieren.
  2. Methoden ausprogrammieren.
  3. So lange korrigieren, bis die Beispielaufgaben erfüllt sind.
  4. Script laden und die Lösung übermitteln
  5. Auf Kursseite gehen und über die frischen Punkte freuen.

Schließlich gibt es noch eine mittels Peer-Grading bewertete Programmieraufgabe. Von der Aufgabenstellung her ist schaut diese ähnlich aus wie die automatisch bewerteten Lösungen - zur Bewertung muss die Lösung aber auf einem GitHub-Repository bereitgestellt werden, um dann von anderen Kursteilnehmern entsprechend recht eindeutig vorgegebener Kriterien bewertet zu werden. Interessant - und gut - ist der vorgegebene Auswertungsmodus. Der Programmcode soll nicht ausgeführt, sondern analsyiert und so beurteilt werden. Dies zwingt einen natürlich, den Code auch zu verstehen und nicht nur auf Ausgaben zu beurteilen. Passend dazu ist ein Punkt der Beurteilung auch die Strukturiertheit des Codes und dess Dokumentation durch Kommentare. Sehr schön - im Endeffekt ist dies wohl, sobald

swirl

Und dann gibt es da noch Swirl. Mit Swirl können Lerneinheiten für die Kommandozeile erstellt werden. Das Ganze fühlt sich etwa wie ein Text-Adventure oder ein komplexeres interaktives Kommandozeilenprogramm an. Jedenfalls wenig nach Unterricht oder Prüfung. Ist ein Kursteil fertig, kann das Ergebnis - wie bei den automatisch ausgewerteten Aufgaben - an Coursera übermittelt werden.

Fazit

Es gibt sie wohl doch, die richtig guten Online-Kurse. Oder richtiger: gut für mich. Die Schwierigkeit und der Zeitaufwand waren diese mal nicht all zu hoch, der Programmier-lastige Prüfungsmodus kam mir sehr entgegen. Da eine Sprache wie R im Endeffekt ohnehin hauptsächlich durch ihre Anwendung erlernt wird meines Erachtens auch der richtige Weg. Ich bin schon gespannt auf die weiteren Teile!