Veranstaltungsprogramm

Eine Übersicht aller Sessions/Sitzungen dieser Tagung.
Bitte wählen Sie einen Ort oder ein Datum aus, um nur die betreffenden Sitzungen anzuzeigen. Wählen Sie eine Sitzung aus, um zur Detailanzeige zu gelangen.

 
 
Sitzungsübersicht
Sitzung
M16-S17: Kollaboratives Programmieren in der Bildungsforschung in R für Einzelkämpfer*Innen
Zeit:
Mittwoch, 25.03.2020:
16:45 - 18:30

Ort: S17

Präsentationen

Kollaboratives Programmieren in der Bildungsforschung in R für Einzelkämpfer*Innen

Peter Wulff, David Buschhüter, Andreas Borowski, Sven Strickroth

Universität Potsdam, Deutschland

***

Achtung: Anmeldung beachten, Vorinstallationen erforderlich

***

Projektwebsite zur Vorbereitung und Anmeldung: https://github.com/dbuschhue/gebf2020_kollaboratives_programmieren/

Die Teilnehmendenzahl ist aufgrund der Räumlichkeiten eingeschränkt (angemeldete Personen haben Vorrang)

Zielgruppe

Dieses offene Format richtet sich insbesondere an programmierinteressierte Bildungsforschende, die noch nicht den Schritt getan haben, ihren Code zu teilen oder sich an Open Source Projekten zu beteiligen, aber grundsätzlich motiviert sind, diesbezüglich mehr zusammenzuarbeiten.

Vertiefte Programmierkenntnisse werden zur Teilnahme nicht vorausgesetzt. Grundkenntnisse in R wie das Schreiben einfacher Funktionen sind aber hilfreich. Die Ergebnisse sind im Anschluss für alle Teilnehmenden auf einer Onlineplattform (GitHub) verfügbar und können weiterentwickelt werden.

Hintergrund

Die Digitalisierung ermöglicht es der empirischen Bildungsforschung mittlerweile massiv auf Open-Source Software wie Python oder R zurückzugreifen (Rosenberg, 2017). Im Zuge dessen entstanden bisher eine Reihe wichtiger Anwendungen beispielsweise in Form von Paketen zur Datenverarbeitung wie scikit-learn (Pedregosa et al., 2011), spaCy (Honnibal & Montani, 2017), TAM (Robitzsch, Kiefer & Wu, 2019), psych (Revelle, 2018), lavaan (Rosseel, 2012) u.v.m. Solche Pakete ermöglichen es Forschenden, im Bereich der Bildungsforschung effektiv Vorhaben der Datenaufbereitung, Datenauswertung und Datenpräsentation umzusetzen.

Ein Anwendungsfall ist die Textanalyse, bei der Datenaufbereitung, Datenauswertung und Datenpräsentation eine zentrale Rolle spielen und wo bisher noch kein Konsens erreicht ist, welche Formate am geeignetsten sind. Zu gleicher Zeit ermöglichen beispielsweise Weiterentwicklungen im Bereich des Machine Learning zunehmend komplexe Aufgabenlösungen wie Fragen-Beantwortung (Bengfort, Bilbro & Ojeda, 2018), womit ganz neue Forschungsfragen gestellt werden können. Fortschritte sind bei Anwendungsfällen wie der Textanalyse insbesondere dann gewinnbringend, wenn neben den eigentlichen Entwickler*Innen einer breiten Community Partizipation ermöglicht wird. Während letztere sich beispielsweise mit der Weiterentwicklung der Kernfunktionen und Objektklassen von Paketen auseinandersetzen, können sich Einsteiger*Innen bei der Dokumentation, Beispielentwicklung und bei der Erstellung von Metapaketen einbringen. Zur Forcierung der dafür notwendigen Zusammenarbeit werden in diesem Bereich begleitend zu Konferenzen häufig Hackathons oder Sprints angeboten. Dies sind Zusammenkünfte der Entwickelnden sowie interessierter Nutzer*Innen, die gemeinsam an der Weiterentwicklung von Anwendungen wie beispielsweise Paketen oder Modulen arbeiten (Trainer, Kalyanasundaram, Chaihirunkarn & Herbsleb, 2016). Wichtig bei diesen Zusammenkünften ist, dass hierbei alle Teilnehmenden partizipieren können. Deshalb reichen die im Rahmen von Sprints zu bewältigenden Aufgaben oft von der Generierung einfacher Umsetzungsbeispiele bis hin zur Weiterentwicklung zentraler Funktionen von Paketen.

Bildungsforscher*Innen bleiben, unserer Einschätzung nach, bei ihrer Programmiertätigkeit häufig isoliert. Selbst Tätigkeiten wie das Schreiben nützlicher Funktionen, Dokumentationen oder Beispiele sind hier auf wenige Expert*Innen beschränkt oder werden von den Forschenden häufig nicht publiziert. Dies führt zu einigen Problemen. So bleiben zum einen etwa viele publizierte Programmierbeispiele und Tutorials einiger Pakete für Durchschnittsanwender*Innen schwer verständlich. Zum anderen ist die Programmierung als Einzelkämpfer*In fehleranfällig. Ein breiterer Austausch über Code könnte dem entgegenwirken und wäre wünschenswert, da viele auftretende Probleme und Projektideen beim Programmieren für Forschende ähnlich oder sogar identisch sind.

Dazu möchten wir für die GEBF 2020 das Format eines Hackathons/Sprints adaptieren. Da dieses Format auf Konferenzen der Bildungsforschung kaum etabliert ist, ist es das Ziel dieser Veranstaltung, mit den Teilnehmenden exemplarisch kollaborativ zu programmieren und im Anschluss die daraus erwachsenen Chancen und Grenzen zu diskutieren. Dies wird hier im Kontext der automatisierten Textanalysen (Textmining, Natural Language Processing) stattfinden. Im Vordergrund steht aber noch nicht das Produkt, sondern die Generierung von Grund- und Erfahrungswissen, dass für die gemeinsame Zusammenarbeit notwendig ist. Dabei lernen die Teilnehmenden beispielsweise den Umgang mit der Versionsverwaltung GitHub.

Ablauf und Umsetzung

Der Ablauf dieses Offenen Formates wird wie folgt gestaltet: Zunächst werden Ziele definiert, die erreicht werden sollen. Hierbei ist es uns wichtig, dass alle Teilnehmenden etwas zum Projekt beitragen können. Als Arbeitsgrundlage wird dann die beispielhafte Implementation einer Textanalyse mit Datenaufbereitung und Datenauswertung in R auf einer Austauschplattform zur Verfügung stehen. Die Teilnehmenden werden anfangs in die Austauschplattform eingeführt, die kollaboratives Programmieren ermöglicht (GitHub). Im Anschluss ordnen sich die Teilnehmenden Interessengruppen zu, je nach Expertisegrad und Anwendungsfall. Sie erhalten dann einen Teil der Zeit, um in einem kollaborativen Format an der Code-Umsetzung zu programmieren. Zum Abschluss wird dieses Offene Format in Bezug auf die gesetzten Ziele und Potentiale für die empirische Bildungsforschung reflektiert.

In diesem Offenen Format wird ein eigenes Notebook benötigt. Zur Umsetzung wird die Programmiersoftware R und RStudio verwendet. Eine Installationsanleitung finden sie ab dem 07.02.2020 auf der Projektseite https://github.com/dbuschhue/gebf2020_kollaboratives_programmieren/. Als Beispielprojekt wird die Themenanalyse (Bengfort et al., 2018) implementiert. Von den Veranstaltenden wird beispielhaft eine erweiterbare Grundstruktur zu den beiden Anwendungsfällen vorgegeben, die auf Basis etablierter Pakete (bspw. zu topicmodels) die Analysen von der Datenaufbereitung bis zur Auswertung umsetzen. Um möglichst allen Teilnehmenden Partizipation zu ermöglichen, werden im Projekt sogenannte Issues (zu lösende Probleme) definiert, die von der Erstellung eines Beispiels bis zu Programmierung eigener Funktionen (bspw. Output eines zielführenden Plots) reichen. Je nach Interesse und Expertise können sich die Teilnehmenden dann diesen Issues zuordnen. Im Gegensatz zu einer Einführung in bestimmte Pakete (bspw. im Workshopformat), geht es in diesem Offenen Format vielmehr darum, die Expertise der Teilnehmenden in den Vordergrund zu rücken, auf deren Erfahrungswissen zurückzugreifen und dieses zu erweitern. Dieses Offene Format richtet sich an Anfängerinnen und Anfänger im kollaborativen Programmieren.

Was Sie vorab wissen sollten und benötigen:

- Interesse gemeinsam zu programmieren/Code zu teilen

- Keine vertieften Programmierkenntnisse notwendig

- Sie benötigen zur Teilnahme einen aktiven GitHub-Account

- Die Teilnehmendenzahl ist auf ca. 30 Teilnehmende begrenzt

- Sie benötigen die aktuelle Version von R, RStudio, Git und GitHub -> Eine Installationsanleitung finden Sie im Link (siehe oben) zum Projekt

Ausblick

Heute ist es möglich eine komplexe Machine Learning Analyse mit einem Knopfdruck auszuführen. Allerdings scheint das kein geeigneter Weg, um Transparenz und Expertise unter Forschenden zu stärken, sodass alternative Wege des Wissensmanagements erforderlich sind (Stallman, o.D.). Das kollaborative Programmieren ist hierbei ein Weg, um die Expertise und Interessen verschiedener Forschender mit ähnlichen Problemen zu bündeln und Bottom-up-Prozesse der Entwicklung von Anwendungen zu forcieren. Im vorliegenden Offenen Format soll dazu an Erfahrungswissen der Teilnehmenden angeknüpft, dieses zusammengeführt und Möglichkeiten der Weiterentwicklung aufgezeigt werden. Es ist eine offene Frage, inwieweit dieses Format auf Resonanz bei Forschenden in der empirischen Bildungsforschung stößt. Zu dieser Frage soll Evidenz generiert werden, die gegebenenfalls zur Verstetigung solcher Formate auf Konferenzen der empirischen Bildungsforschung stößt.