<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Frankfurt, Germany, September</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Hochschullehre der Programmierung außerhalb eines Informatikstudiengangs: Herausforderungen und Perspektiven</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Ralf Dörner</string-name>
          <email>ralf.doerner@hs-rm.de</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ulrike Spierling</string-name>
          <email>ulrike.spierling@hs-rm.de</email>
        </contrib>
      </contrib-group>
      <pub-date>
        <year>2018</year>
      </pub-date>
      <volume>10</volume>
      <issue>2018</issue>
      <abstract>
        <p>Increasing digitalization also raises the need for teaching programming at universities not only in courses related to computer science but other subjects as well. These new target groups for education in computer programming require a change of the classic didactic that is usually applied in universities today. This article presents a literature survey in the area of programming education. Moreover, it addresses challenges encountered when teaching programming in an interdisciplinary course program with media as major subject of study. These challenges comprise the fear of contact, the required ability of abstract thinking and the ability to tolerate frustrations. Based on this, solution approaches adopted and perspectives for future development are discussed. Digitalisierung transformiert alle Lebensbereiche - von der Berufswelt bis zum Privatbereich, von der schulischen Ausbildung in der Kindheit bis zum assistierten Leben im Alter. Von daher ist es nicht verwunderlich, dass die Fertigkeit, Computersysteme zu programmieren bzw. deren Verhalten auf formale Art so zu spezifizieren, dass dieses Verhalten maschinell umgesetzt wird, nicht mehr einer kleinen Gruppe von Spezialisten vorbehalten sein kann, sondern eine grundlegende Qualifikation darstellt. Während in Deutschland nicht nur über Informatik als Schulfach diskutiert wird, sondern auch über die Frage, ob eine Ausbildung im Programmieren überhaupt zu der in diesem Fach zu vermittelnden digitalen Kompetenz zählt, haben andere Länder wie z.B. Estland einen Programmierunterricht schon in der ersten Klasse der Grundschule eingeführt. In Deutschland gibt es auch außerschulische Programmierlehre für Kinder und Jugendliche, die z.T. von IT-Unternehmen angeboten werden [Sei18]. Eine ähnliche Heterogenität zeigt sich in der Hochschullehre für Nichtinformatiker etwa in Modulbeschreibungen aus Fächern wie z.B. Maschinenbau. Dabei stammen die Lehrenden teilweise aus einem Informatikfachbereich (die Lehrveranstaltung für Studierende der Informatik und Externe kann sogar identisch sein), in anderen Fällen</p>
      </abstract>
      <kwd-group>
        <kwd>Programmierlehre</kwd>
        <kwd>Programmieren Lernen</kwd>
        <kwd>Digitalisierung</kwd>
        <kwd>Interaktive Medien</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Einleitung</title>
      <p>2</p>
    </sec>
    <sec id="sec-2">
      <title>Programmierlehre in der Literatur</title>
      <p>Die Lehre von Programmierung ist Gegenstand einer großen Zahl wissenschaftlicher
Veröffentlichungen [RRR03]. Dabei liegt ein Fokus auf der Zielgruppe von Kindern und
Jugendlichen sowie von Informatikstudierenden in den ersten Fachsemestern.
Veröffentlichungen, die Studierende außerhalb von MINT-Fächern in der
Hochschullehre adressieren, sind selten.</p>
      <p>Ein häufig gewählter Ansatz in der Literatur ist die Verwendung von Visual
Programming in der Programmierausbildung, bei der Programmcode nicht durch
Schreiben eines Textes in einer formalen Sprache erzeugt wird, sondern durch
Anordnung grafischer Elemente. Grafische Repräsentationen wie
Nassi-ShneidermanDiagramme oder UML-Diagramme haben eine lange Tradition in der Informatik. Ein
anderer visueller Aspekt ist die Programmierung eines graphischen Systems (z.B. eines
Computerspiels) oder von Tangibles (z.B. Robotern). Hier wird neben einem
motivierenden spielerischen Effekt auch das direkte visuelle Feedback angestrebt, so
dass die Lernenden unmittelbar das von ihnen programmierte Verhalten wahrnehmen
und hinsichtlich Zielerreichung überprüfen können. Eine Kombination von beiden bietet
Alice [CPGB94]. Ursprünglich gedacht als Rapid Prototyping System für Virtual Reality
wurde es sowohl für die Progammierausbildung von Kindern als auch von Studierenden
eingesetzt. Eine Meta-Studie [CM17], die 232 Veröffentlichungen zum Einsatz von
Alice auswertet, weist positive Effekte hinsichtlich Effektivität verglichen mit der
Nutzung konventioneller Programmiersprachen in der Lehre nach. Ein Vorteil von
Visual Programming ist dabei, dass die Erstellung syntaktisch fehlerhafter Programme
verhindert werden kann und damit eine typische Quelle von Fehlern und Frustration
vermieden wird.</p>
      <p>Im Gefolge von Alice gibt es zahlreiche Programmiersprachen und
Programmierumgebungen, die speziell für die Programmierausbildung gedacht sind.
Scratch [Scr18] zielt auf Kinder und erlaubt die Programmierung multimedialer
Anwendungen, die in einem sozialen Netzwerk verbreitet und mit anderen Lernenden
diskutiert werden können. Scratch kann dabei nicht nur die Lernmotivation erhöhen
[EK17], sondern neben Programmieren auch grundsätzliche Kompetenzen in
Problemlösungsstrategien fördern [KG14]. EOS [EOS18] fokussiert auf die Vermittlung
objektorientierter Konzepte an Jugendliche, wobei Features aus Programmierwerkzeugen wie
Syntax Highlighting oder Auto Completion unterstützt werden. Blockly [Blo18a]
dagegen ist eine Bibliothek für den Bau visueller Code-Editoren, die Programmcode z.B.
in Javascript erzeugen. Darauf aufbauend gibt es mit code.org [Cod18] eine Umgebung
zum spielerischen Erlernen von Programmierung mit Unterrichtsmaterial zum
Selbstlernen und für Schulen. Die Initiative arbeitet auch an einer Verbesserung des
Images von Programmieren, indem prominente wie Bill Gates, Mark Zuckerberg oder
Barack Obama sie bewerben. Während code.org von Google, Microsoft, Facebook und
Twitter unterstützt wird, bietet Apple mit Playgrounds [App18] ein ähnliches Angebot,
um einen möglichst breiten Personenkreis für Programmierung zu interessieren.
Playgrounds dient dem Erlernen der Programmiersprache Swift und zeichnet sich durch
ein ansprechendes Design aus, das auch Interaktionsmöglichkeiten durch Touchscreens
ausnutzt. Eine besondere Motivation liefert das Projekt freeCodeCamp [Fre18], das nicht
nur eine interaktive Lernplattform und soziale Medien für das Erlernen von Web
Engineering bereit stellt, sondern auch gemeinnützige Organisationen an die Lernenden
vermitteln, so dass das Gelernte direkt angewendet werden kann, indem ehrenamtlich
Webseiten für diese Organisationen erstellt werden.</p>
      <p>Techniken des Software Engineerings wie z.B. Pair Programming können auch als
Ausgangspunkt für neue Ansätze der Programmierausbildung dienen [MWB02].
Daneben gibt es Ansätze, die das Erreichen allgemeiner didaktischer Zielsetzungen wie
z.B. ein selbstbestimmtes Lerntempo für die Lehre der Programmierung anstreben
[OAD17]. Allgemeinere Ansätze denken darüber nach, wie Methoden aussehen, die
verschiedene Abstraktionsebenen im Kontext von Programmierung und insbesondere
den Zusammenhang zwischen Code und dem daraus hervorgehenden Verhalten
visualisieren [CAP17]. Grundsätzliche Überlegungen gehen der Frage nach, wie der
Spalt zwischen Technikdidaktik und Bildung in Informatikthemen (wie z.B.
Modellbildung) einerseits und der Fachdidaktik von Nicht-Informatikfächern (wie z.B.
Medienpädagogik und Mediendidaktik) überbrückt werden kann [Rei17]. Derartige,
mehr grundsätzliche Überlegungen sind in der Literatur selten. Sie sollten auf einer
sorgfältigen Erhebung von Herausforderungen bei der Programmierlehre gerade für
Nicht-Informatiker im Hochschulbereich basieren.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Herausforderungen im Bereich Medien</title>
      <p>Bei Studierenden außerhalb Informatikfächern sind sehr unterschiedliche
Motivationslagen bezüglich des Erlernens von Programmierung anzutreffen. In den
seltensten Fällen wird Programmieren um seiner selbst willen erlernt, oder auf Vorrat,
damit man das Können später einmal nutzen kann. Erfahrungen, die z.B. im Bereich von
Medienstudiengängen oder im digitalen Mediendesign gemacht wurden, deuten darauf
hin, dass die Zielsetzung beim Arbeiten häufig in der erfolgreichen Erschaffung eines
digitalen Werks liegt, das bestimmte interaktive Verhaltensqualitäten haben soll. Um
dies zu erreichen, ist Programmierung nötig – und wird zumindest zu Beginn zuweilen
als notwendiges Übel empfunden. Zudem ist hierfür nicht nur das Programmieren im
Sinne einer technischen Implementierung eine Herausforderung, sondern es werden
bereits bei der Konzeption prozedurale Denkweisen nötig, die als unbequem und
kompliziert erlebt werden. Deutlich wird letzteres insbesondere in Gebieten, in denen
durch graphische Autorenwerkzeuge das eigentliche Coding erleichtert wird, in dem
Codezeilen – wenn überhaupt – erst nach Bedienen oder Durchdringen einer graphischen
Oberfläche sichtbar gemacht werden.</p>
      <p>Im Studiengang Media Management der Hochschule RheinMain besteht ca. die Hälfte
der Fächer aus Wirtschaftsfächern und die andere Hälfte aus technisch-gestalterischen
Fächern und Projekten des "Medien Machens". Im Bereich der letzteren wählen
Studierende im 3. Semester ein Schwerpunkt-Interessensgebiet zwischen
Bewegtbildmedien/Film oder Interaktiven Medien. In Informationsveranstaltungen und
Diskussionen vor der Wahl war wiederholt feststellbar, dass obwohl eine große Gruppe
Begeisterung für das Design von "Apps" äußerte, eine weit geringere Anzahl an
Studierenden aber schlussendlich den Schwerpunkt der Interaktiven Medien wählte –
hier wurden Programmierkurse für Einsteiger angekündigt.</p>
      <p>Im Kontext von Konzept-Diskussionen über "Gamification" – als einem typischen
motivationsfördernden Instrument, das speziell durch interaktive Medien ermöglicht
wird – sollten Studierende im Selbsttest vier Kapitel von Blockly Games [Blo18b]
durchspielen, und über ihre Erfahrungen berichten. Die Aufgabe war an dieser Stelle
jedoch nicht, auf den entstehenden Code zu achten bzw. auf diese Weise JavaScript zu
lernen, sondern es sollten die abgestimmten Fortschritts-Bedingungen und das
Gamification-Konzept bewertet werden. Letzteres erlaubt einen schnellen und sehr
leichten Einstieg, wobei die konkreten einzelnen Aufgaben aber eine zunehmende
Abstraktion im Denken erfordern. Beispielsweise muss eine Figur mit zu
spezifizierenden Regeln durch ein Labyrinth geführt werden, oder eine klassische
TurtleGrafik [Pap80] durch Längen- und Winkeleinheiten geskriptet werden.
Überraschenderweise (für die Lehrenden) wurden nur weniger als die Hälfte der Teilnehmenden von
dem zu Grunde liegenden Konzept angesprochen; noch weniger äußerten sich begeistert.
Einige Studierende scheiterten gar an manchen Aufgaben, bzw. fanden die nötigen
Überlegungen zu abstrakt und für Kinder entschieden zu schwer. In der Diskussion
wurde deutlich, dass dies Studierende waren, die in ihrer Jugend nie mit ähnlichen
Aufgaben in Kontakt kamen und die Denkweise als unnatürlich empfanden, während
manche der Begeisterten in der Schule bereits mit Logo [Pap80] o.ä. zu tun hatten.
Hohe Motivation wird hingegen häufiger durch das gewünschte Erreichen einer eigenen
gestalteten Umsetzung von interaktiven Medien freigesetzt. Hier wurden im genannten
Studiengang sowohl Erfahrungen im Bereich aktueller Methoden des Responsive
Webdesign als auch mit alternativen Interaktionsformen wie im Bereich "Interactive
Storytelling" oder auch der Erstellung kleiner Games oder VR-Welten gemacht.
Webdesign gehört dabei zum Grundkanon bei der breiten Vermittlung im Bereich
interaktiver Medien, während die Bereiche Games und VR/AR eher in kleineren
Projektgruppen aus geneigten Studierenden höherer Semester stattfindet.
Beide Gruppen von Studierenden haben regelmäßig und erwartungsgemäß
FrustrationsErlebnisse während verschiedener Stufen ihrer Umsetzungen. In den ersten
CodeÜbungen wird bereits die Erfahrung mit Klammer- und anderen Syntaxfehlern gemacht,
deren Suche als erster Schritt des "Debugging" – insbesondere wenn es länger dauert –
spaßreduzierend wirkt. Dies wird von den Lehrenden jedoch als eine sinnvoll zu
erwerbende Erfahrung angesehen. Absolventen des Studiengangs, die später im Bereich
der interaktiven Medien professionell arbeiten wollen, werden voraussichtlich in
interdisziplinären Teams arbeiten, in denen sie vermutlich selbst nicht programmieren
müssen, aber Verständnis für sämtliche Aufgaben benötigen, um managen zu können.
Debugging kann bei interaktiven Medien auch nötig werden, wenn nicht direkt mit Code
gestaltet wird, sondern mit grafischen Autoren-Werkzeugen, sowie auf der
konzeptionellen Ebene. Dies wird zum Beispiel deutlich, wenn ein Interaktionsfortschritt
unmöglich wird auf Grund nicht erfüllbarer eingestellter Vorbedingungen, bei
EndlosSchleifen in falsch konzipierten Abläufen, oder auf Grund fehlender Medienbausteine,
o.ä. Diese Art von Problemen wird insbesondere im Gebiet des interaktiven
Geschichtenerzählens thematisiert, bei dem mehrere Erzähl- oder Aktionspfade abhängig
von komplexeren Nutzerinteraktionen ermöglicht werden. Beispiele hierfür sind Spiele
mit Dialogen mehrerer Chatbots, bei denen auch Muster von Freitext-Eingaben der
Nutzenden abgeglichen werden [GJK+18]. In der Endnutzererfahrung kann dies zur
Wahrnehmung von "emergentem" Verhalten führen, wobei auch Autoren durch ihre
eigenen Kreationen überrascht werden können, wenn z.B. Bot-Antworten an Stellen
kommen, wo sie sie nicht vorgesehen haben. An dieser Stelle ist für die Konzeption
prozedurales Denken unter Berücksichtigung von komplexen Vor- und
Nachbedingungen erforderlich. Auch wenn man hierbei nicht direkt und textlich "coden"
müsste, sind Erfahrungen mit dem Programmieren nützlich, um
Konzeptionsanforderungen besser erfüllen zu können.
Zusammengefasst bestehen Herausforderungen in vorgelagerten Berührungsängsten, in
eventueller mangelnder Technik- und Logikaffinität bzw. auch geäußerter Unlust oder
vermuteter Schwerfälligkeit bei der Abstraktion von Abläufen, in der notwendigen
Motivation durch Ziele, die außerhalb des Programmierens selbst liegen, und in der
notwendigen Frustrationstoleranz bei langwieriger Fehlersuche.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Ansätze und Perspektiven</title>
      <p>Bei den festgestellten Herausforderungen führte bereits eine Mischung aus Ansätzen, die
zum Teil auch bei der Literaturstudie (Abschnitt 2) benannt wurden, zu Teilerfolgen.
Wie sich in zahlreichen Medienkategorien gezeigt hat, sind so genannte grafische
Authoring-Tools oder visuelle Programmierwerkzeuge für Nichtprogrammierer
geeignet, das Problem der vorgelagerten Berührungsängste vor Syntaxfehlern zu
reduzieren.</p>
      <p>Dies allein reicht jedoch nicht, um sich auch der Unbequemlichkeit einer abstrakten
Konzeption zu widmen. Dagegen wurden (bei heruntergeschraubter Erwartungshaltung
seitens der Lehrenden überraschende) Erfolge erzielt, wenn bei Studierenden eine
intrinsische Motivation im Laufe eines Projekts entstand, ein gewisses kreatives Ziel
erreichen zu wollen. Zunächst musste allerdings das Selbstvertrauen und die
Vorstellungskraft für ein Ziel unterstützt werden. Dies kann mit Autorenwerkzeugen
erreicht werden, wobei insbesondere ein direkt abspielbares Feedback motiviert und
Sicherheit verleiht. Eine wiederholte Erfahrung war dann die, dass Autorenwerkzeuge
bezüglich während der Arbeit neu entstehender Ideen in ihrer Funktionalität begrenzt
sind, oder ihre Usability bei steigendem Inhaltsumfang schlecht skaliert. In oben
genanntem Chatbotprojekt [GJK+18], in einem weiteren anspruchsvollen Projekt mit
location-based Augmented Reality, sowie in Projekten des Responsive Webdesign,
gaben involvierte Studierende bei anwachsendem Inhalt freiwillig die Nutzung
grafischer Tools auf und widmeten sich direkt dem Code im Texteditor (meist
XMLDialekten oder Java Script), weil nach Einarbeitung die Kontrolle über den Umfang bei
gleichzeitiger Fehlersuche leichter fiel. Dies betraf eine kleine Teilmenge an
Studierenden, die sich für derartige Wahl-Projekte interessierte.</p>
      <p>Eine weitere Erfahrung dabei war die Nützlichkeit von physischem Paper-Prototyping
außerhalb des Computers für die Vermittlung von bestimmten non-linearen
DenkKonzepten. Hier wurde in der Lehre mehrere Male erfolgreich ein bereits 2010 selbst
entwickeltes Kartenspiel [HSS11] eingesetzt, das beim Spiel anschaulich eine
Konzeption mit Plan-Operatoren abhängig von Vorbedingungen und Effekten vermittelt.
Während eine Gruppe Studierender gemeinsam die Funktion einer Planungssoftware,
nämlich hier die Suche in den Karten nach nächst-möglichen Ereignisfortschritten
simuliert, entsteht durch den Karteninhalt eine humorvolle Geschichte – jedes Mal mit
sich anders entwickelndem Verlauf. Dabei werden erste typisch auftretende
VerständnisIrrtümer durch unvollständiges Analysieren von Vorbedingungen besprochen. Auch
dient das Spiel als Anregung, in einer interaktiven Konzeption selbst zuerst
Papierprototypen anzufertigen und iterativ auf anfängliche inhaltliche Konsistenz zu
testen, bevor dann darauf aufbauend eine Implementierung gestartet wird, die
erfolgversprechender ist als ein direktes erstes Probieren im Code. Selbstredend sind
Papierprototypen in ihrer möglichen Dynamik begrenzt, wecken aber auch wiederum die
Aussicht, selbige durch eine Implementierung in Software dann zu erhöhen.
Ein weiterer zukünftiger Ansatz, verwandt mit dem planerischen Denken, könnte darin
bestehen, andere Formen der Verhaltensbeschreibung speziell aus dem Bereich der
Artificial Intelligence einzusetzen. Regelbasierte Systeme, die z.B. aus Sammlungen von
ECA (Event Condition Action)-Regeln bestehen, sind ein alternativer Ansatz zum
Spezifizieren von Systemverhalten. Der Vorteil ist, dass Regeln unabhängig und parallel
zueinander ausgeführt werden, so dass keine Abläufe beim Programmieren zu bedenken
sind. Zwei Regelmengen können auch einfach zu einer größeren Regelmenge gemischt
werden. Daher kann man Verhalten spezifizieren in einer Reihenfolge wie es einem
einfällt und man muss nicht das Systemverhalten als Ganzes betrachten. Game Engines
wie Unity3D nutzen in Ergänzung zu Skripting in einer Programmiersprache bereits
Artificial Intelligence Methoden wie Entscheidungsbäume oder Agenten [Uni18].
Allerdings ist es schwer, unterspezifiziertes Verhalten zu erkennen und mit eventuell
unerwünschtem emergenten Verhalten umzugehen. Weitere Methoden der Artificial
Intelligence wie Maschinelles Lernen oder Programming by Example können einen
neuen Zugang zum Programmieren eröffnen. Dabei sind Methoden wie z.B. evolutionäre
Algorithmen, die ein iteratives Vorgehen im Sinne einer Zusammenarbeit von Mensch
und Maschine fördern, von besonderem Interesse.</p>
    </sec>
    <sec id="sec-5">
      <title>Literaturverzeichnis</title>
      <p>[App18]
[Blo18a]</p>
      <p>Apple Inc.: Homepage von Swift
https://www.apple.com/swift/playgrounds/ Letzter Zugriff: 27.06.2018.</p>
      <p>Playgrounds.</p>
      <p>Google Inc.: Blockly. A library for building visual programming editors.
https://developers.google.com/blockly/ Letzter Zugriff: 27.06.2018.
[Blo18b] Google Inc.: Blockly Games. https://blockly-games.appspot.com/ Letzter Zugriff:
27.06.2018.
[CAP17] López, P. E. M.; Ciolek, D.; Arévalo, G.; Pari, D.: The GOBSTONES method for
teaching computer programming. In Computer Conference (CLEI), 2017 XLIII Latin
American (pp. 1-9). IEEE, 2017.
[CM17]</p>
      <p>Costa, J. M.; Miranda, G. L.: Relation between Alice software and programming
learning: A systematic review of the literature and meta‐analysis. British Journal of
Educational Technology, 48(6), 1464-1474, 2017.
[Cod18]</p>
      <p>Code.org: Homepage von code.org. http://code.org Letzter Zugriff: 27.06.2018.
[CPGB94] Conway, M.; Pausch, R.; Gossweiler, R.; Burnette, T.: Alice: a rapid prototyping
system for building virtual environments. In Conference Companion on Human
Factors in Computing Systems (pp. 295-296). ACM. Conway, M., Pausch, R.,
Gossweiler, R., &amp; Burnette, T. (1994, April). Alice: a rapid prototyping system for
building virtual environments. In Conference Companion on Human Factors in
Computing Systems (pp. 295-296). ACM, 1994.</p>
      <p>Erol, O.; Kurt, A. A.: The effects of teaching programming with scratch on pre-service
information technology teachers' motivation and achievement. Computers in Human
Behavior, 77, pp. 11-18, 2017.</p>
      <p>Pabst Software: Homepage von EOS.
https://www.pabstsoftware.de/doku.php?id=programme:eos:start Letzter Zugriff: 27.06.2018.
freeCodeCamp: Homepage von freeCodeCamp. https://www.freecodecamp.org/
Letzter Zugriff: 27.06.2018.
[EK17]
[EOS18]
[Fre18]
[HSS11]
[KG14]
Hoffmann, S.; Spierling, U.; Struck, G.: A Practical Approach to Introduce Story
Designers to Planning. In: Proceedings of GET 2011, IADIS International Conference
Game and Entertainment Technologies, 22-24 July 2011, Rome, Italy, 2011.</p>
      <p>Kalelioglu, F.; Gülbahar, Y.:The Effects of Teaching Programming via Scratch on
Problem Solving Skills: A Discussion from Learners' Perspective. Informatics in
Education, 13(1), 2014.
[Knu74]</p>
      <p>Knuth, D. E.: Computer programming as an art. Commun. ACM 17, 12, 667-673, 1974.
[MWB02] McDowell, C.; Werner, L.; Bullock, H.; Fernald, J.: The effects of pair-programming
on performance in an introductory programming course. ACM SIGCSE Bulletin,
34(1), 38-42, 2002.
[OAD17] Offutt, J.; Ammann, P.; Dobolyi, K.; Kauffmann, C.; Lester, J.; Praphamontripong, U.;
White, L.: A Novel Self-Paced Model for Teaching Programming. In Proceedings of
the Fourth (2017) ACM Conference on Learning@ Scale (pp. 177-180). ACM, 2017.
[Pap80]
[Rei17]
[RRR03]
[Scr18]</p>
      <p>Reimann, D.: Informatische Modellbildung als Dimension einer künstlerisch-technisch
konzipierten Medienbildung. MedienPädagogik: Zeitschrift für Theorie und Praxis der
Medienbildung, 25, 109-130, 2017.</p>
      <p>Robins, A.; Rountree, J.; Rountree, N.: Learning and teaching programming: A review
and discussion. Computer science education, 13(2), 137-172, 2003.
[Sei 18]
[Uni18]</p>
      <p>Unity3D,</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <given-names>Scratch</given-names>
            <surname>Foundation</surname>
          </string-name>
          :
          <article-title>Homepage von Scratch</article-title>
          . https://scratch.mit.edu/ Letzter Zugriff:
          <volume>27</volume>
          .
          <fpage>06</fpage>
          .
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          //SEIBERT/MEDIA: Hompage des Angebots “
          <article-title>Programmieren lernen für Kinder und Jugendliche in Wiesbaden“</article-title>
          . www.programmieren.de. Letzter Zugriff:
          <volume>01</volume>
          .
          <fpage>06</fpage>
          .
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <given-names>Unity</given-names>
            <surname>Technologies</surname>
          </string-name>
          : Maschinelles Lernen in https://unity3d.com/de/machine-learning.
          <source>Letzter Zugriff: 01.06</source>
          .
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>