<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://moocwiki.org/index.php?action=history&amp;feed=atom&amp;title=P5.js</id>
	<title>P5.js - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://moocwiki.org/index.php?action=history&amp;feed=atom&amp;title=P5.js"/>
	<link rel="alternate" type="text/html" href="https://moocwiki.org/index.php?title=P5.js&amp;action=history"/>
	<updated>2026-06-06T09:55:20Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in MediaWiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://moocwiki.org/index.php?title=P5.js&amp;diff=19884&amp;oldid=prev</id>
		<title>Glanz: Die Seite wurde neu angelegt: „{{T}} {| align=center {{:D-Tab}} &#039;&#039;&#039;p5.js&#039;&#039;&#039; # JavaScript # Creative Coding # Processing # Programmieren # Algorithmus # Variable # Funktion # Schleife # Bedingte Anweisung # Canvas # Koordinatensystem # Debugging # Interaktion # Datenvisualisierung # Generative Kunst |} {{BR}} = p5.js (Programmieren lernen) =  {{BR}} = Einleitung =  zentriert  &#039;&#039;&#039;Hinwe…“</title>
		<link rel="alternate" type="text/html" href="https://moocwiki.org/index.php?title=P5.js&amp;diff=19884&amp;oldid=prev"/>
		<updated>2026-04-26T05:19:13Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „{{T}} {| align=center {{:D-Tab}} &amp;#039;&amp;#039;&amp;#039;&lt;a href=&quot;/index.php?title=P5.js&quot; title=&quot;P5.js&quot;&gt;p5.js&lt;/a&gt;&amp;#039;&amp;#039;&amp;#039; # &lt;a href=&quot;/index.php?title=JavaScript&quot; title=&quot;JavaScript&quot;&gt;JavaScript&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Creative_Coding&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Creative Coding (Seite nicht vorhanden)&quot;&gt;Creative Coding&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Processing&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Processing (Seite nicht vorhanden)&quot;&gt;Processing&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Programmieren&quot; title=&quot;Programmieren&quot;&gt;Programmieren&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Algorithmus&quot; title=&quot;Algorithmus&quot;&gt;Algorithmus&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Variable&quot; title=&quot;Variable&quot;&gt;Variable&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Funktion&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Funktion (Seite nicht vorhanden)&quot;&gt;Funktion&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Schleife&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Schleife (Seite nicht vorhanden)&quot;&gt;Schleife&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Bedingte_Anweisung&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Bedingte Anweisung (Seite nicht vorhanden)&quot;&gt;Bedingte Anweisung&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Canvas&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Canvas (Seite nicht vorhanden)&quot;&gt;Canvas&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Koordinatensystem&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Koordinatensystem (Seite nicht vorhanden)&quot;&gt;Koordinatensystem&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Debugging&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Debugging (Seite nicht vorhanden)&quot;&gt;Debugging&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Interaktion&quot; title=&quot;Interaktion&quot;&gt;Interaktion&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Datenvisualisierung&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Datenvisualisierung (Seite nicht vorhanden)&quot;&gt;Datenvisualisierung&lt;/a&gt; # &lt;a href=&quot;/index.php?title=Generative_Kunst&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;Generative Kunst (Seite nicht vorhanden)&quot;&gt;Generative Kunst&lt;/a&gt; |} {{BR}} = p5.js (Programmieren lernen) =  {{BR}} = Einleitung =  &lt;a href=&quot;/index.php?title=Datei:P5js_Logo.svg&quot; title=&quot;Datei:P5js Logo.svg&quot;&gt;500px|rahmenlos|zentriert&lt;/a&gt;  &amp;#039;&amp;#039;&amp;#039;Hinwe…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{T}}&lt;br /&gt;
{| align=center&lt;br /&gt;
{{:D-Tab}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[p5.js]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# [[JavaScript]]&lt;br /&gt;
# [[Creative Coding]]&lt;br /&gt;
# [[Processing]]&lt;br /&gt;
# [[Programmieren]]&lt;br /&gt;
# [[Algorithmus]]&lt;br /&gt;
# [[Variable]]&lt;br /&gt;
# [[Funktion]]&lt;br /&gt;
# [[Schleife]]&lt;br /&gt;
# [[Bedingte Anweisung]]&lt;br /&gt;
# [[Canvas]]&lt;br /&gt;
# [[Koordinatensystem]]&lt;br /&gt;
# [[Debugging]]&lt;br /&gt;
# [[Interaktion]]&lt;br /&gt;
# [[Datenvisualisierung]]&lt;br /&gt;
# [[Generative Kunst]]&lt;br /&gt;
|}&lt;br /&gt;
{{BR}}&lt;br /&gt;
= p5.js (Programmieren lernen) =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Einleitung =&lt;br /&gt;
&lt;br /&gt;
[[Datei:P5js Logo.svg|500px|rahmenlos|zentriert]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Hinweis&amp;#039;&amp;#039;&amp;#039;: In diesem aiMOOC wird die Eingabe „ps.js“ als [[p5.js]] verstanden. [[p5.js]] ist eine freie [[JavaScript]]-[[Bibliothek]], mit der Du [[Programmieren]] besonders anschaulich lernen kannst. Der Schwerpunkt liegt auf [[Creative Coding]], also auf dem kreativen Einsatz von [[Code]], um Bilder, Animationen, Interaktionen, Simulationen, kleine Spiele, Datenvisualisierungen oder audiovisuelle Experimente zu gestalten. [[p5.js]] eignet sich deshalb besonders gut für Schule, Ausbildung und Studium, weil Du sofort im [[Webbrowser]] sichtbare Ergebnisse erzeugst.&lt;br /&gt;
&lt;br /&gt;
Mit [[p5.js]] lernst Du zentrale Grundlagen der [[Informatik]]: [[Variable|Variablen]], [[Funktion|Funktionen]], [[Algorithmus|Algorithmen]], [[Schleife|Schleifen]], [[Bedingte Anweisung|Bedingungen]], [[Koordinatensystem|Koordinatensysteme]], [[Ereignis|Ereignisse]], [[Objektorientierte Programmierung|objektorientiertes Denken]], [[Debugging]] und [[Modularisierung]]. Gleichzeitig arbeitest Du mit gestalterischen Fragen: Wie entstehen Formen? Wie beeinflussen Farben eine Wirkung? Wie reagiert ein Programm auf Maus, Tastatur oder Zufall? Wie lässt sich Bewegung programmieren?&lt;br /&gt;
&lt;br /&gt;
{{#ev:youtube|   https://www.youtube.com/watch?v=8j0UDiN7my4   |500|center}}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Was ist p5.js? ==&lt;br /&gt;
&lt;br /&gt;
[[p5.js]] ist eine [[JavaScript]]-Bibliothek für [[Creative Coding]]. Eine [[Bibliothek]] stellt fertige [[Funktion|Funktionen]] bereit, damit Du nicht alles selbst von Grund auf programmieren musst. Bei [[p5.js]] betrifft das vor allem das Zeichnen auf einer digitalen Zeichenfläche, die häufig als [[Canvas]] bezeichnet wird. Du kannst Linien, Kreise, Rechtecke, Texte, Farben, Bilder, Klänge und interaktive Elemente verwenden.&lt;br /&gt;
&lt;br /&gt;
Der Name [[p5.js]] steht in der Tradition von [[Processing]]. [[Processing]] wurde entwickelt, um Menschen aus Kunst, Design, Bildung und Medien einen einfachen Zugang zum Programmieren zu ermöglichen. [[p5.js]] überträgt diese Idee in den [[Webbrowser]] und nutzt dafür [[JavaScript]], [[HTML]] und häufig auch [[CSS]].&lt;br /&gt;
&lt;br /&gt;
[[Datei:Processing 2021 logo.svg|300px|rahmenlos|zentriert]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Warum eignet sich p5.js zum Programmierenlernen? ==&lt;br /&gt;
&lt;br /&gt;
[[p5.js]] ist besonders lernfreundlich, weil Programmierkonzepte sofort sichtbar werden. Wenn Du eine [[Variable]] veränderst, kann sich die Position eines Kreises ändern. Wenn Du eine [[Schleife]] verwendest, entstehen Muster. Wenn Du eine [[Bedingte Anweisung]] formulierst, reagiert Dein Programm unterschiedlich auf Eingaben. Dadurch wird [[Abstraktion]] greifbar.&lt;br /&gt;
&lt;br /&gt;
Ein weiterer Vorteil ist der schnelle Einstieg. Du kannst im [[p5.js Web Editor]] direkt im [[Webbrowser]] programmieren. Dadurch brauchst Du am Anfang keine komplizierte Entwicklungsumgebung. Du schreibst Deinen Code, startest das Programm und siehst sofort das Ergebnis. Fehler werden im Editor oder in der [[Konsole]] sichtbar, wodurch Du [[Debugging]] üben kannst.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Die Grundstruktur eines p5.js-Programms ==&lt;br /&gt;
&lt;br /&gt;
Ein einfaches [[p5.js]]-Programm besteht häufig aus zwei wichtigen [[Funktion|Funktionen]]: &amp;#039;&amp;#039;&amp;#039;setup&amp;#039;&amp;#039;&amp;#039; und &amp;#039;&amp;#039;&amp;#039;draw&amp;#039;&amp;#039;&amp;#039;. Die Funktion &amp;#039;&amp;#039;&amp;#039;setup&amp;#039;&amp;#039;&amp;#039; wird einmal zu Beginn ausgeführt. Dort richtest Du zum Beispiel die Zeichenfläche ein. Die Funktion &amp;#039;&amp;#039;&amp;#039;draw&amp;#039;&amp;#039;&amp;#039; wird danach immer wieder ausgeführt. Dadurch entstehen Animationen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function setup() {&lt;br /&gt;
  createCanvas(400, 400);&lt;br /&gt;
  background(240);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function draw() {&lt;br /&gt;
  circle(mouseX, mouseY, 50);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In diesem Beispiel wird eine Zeichenfläche erstellt. Danach zeichnet das Programm immer wieder einen Kreis an die aktuelle Mausposition. Die Werte &amp;#039;&amp;#039;&amp;#039;mouseX&amp;#039;&amp;#039;&amp;#039; und &amp;#039;&amp;#039;&amp;#039;mouseY&amp;#039;&amp;#039;&amp;#039; sind eingebaute [[Variable|Variablen]] von [[p5.js]]. Sie speichern die aktuelle Position der Maus im [[Koordinatensystem]] der Zeichenfläche.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Das Koordinatensystem verstehen ==&lt;br /&gt;
&lt;br /&gt;
Die Zeichenfläche in [[p5.js]] verwendet ein [[Koordinatensystem]]. Der Punkt oben links hat die Koordinaten &amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039; und &amp;#039;&amp;#039;&amp;#039;0&amp;#039;&amp;#039;&amp;#039;. Die x-Achse verläuft nach rechts, die y-Achse nach unten. Das ist anders als in vielen mathematischen Darstellungen, bei denen die y-Achse nach oben zeigt. Dieses Wissen ist wichtig, wenn Du Formen gezielt platzieren, Animationen planen oder Bewegungen berechnen möchtest.&lt;br /&gt;
&lt;br /&gt;
Ein Kreis kann zum Beispiel mit einer x-Position, einer y-Position und einem Durchmesser beschrieben werden. Wenn Du die x-Position in jedem Durchlauf von &amp;#039;&amp;#039;&amp;#039;draw&amp;#039;&amp;#039;&amp;#039; erhöhst, bewegt sich der Kreis nach rechts. Wenn Du die y-Position erhöhst, bewegt er sich nach unten. Aus solchen einfachen Veränderungen entstehen Animationen.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Formen, Farben und Gestaltung ==&lt;br /&gt;
&lt;br /&gt;
Mit [[p5.js]] kannst Du geometrische Grundformen erzeugen. Dazu gehören [[Punkt|Punkte]], [[Linie|Linien]], [[Dreieck|Dreiecke]], [[Rechteck|Rechtecke]], [[Ellipse|Ellipsen]] und [[Kreis|Kreise]]. Diese Formen sind die Bausteine für komplexere Bilder. Farben werden häufig durch Zahlenwerte beschrieben, etwa für Rot, Grün und Blau. Dieses Modell nennt man [[RGB-Farbraum]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function setup() {&lt;br /&gt;
  createCanvas(500, 300);&lt;br /&gt;
  background(220);&lt;br /&gt;
  fill(255, 120, 80);&lt;br /&gt;
  stroke(30);&lt;br /&gt;
  rect(80, 70, 160, 100);&lt;br /&gt;
  circle(330, 120, 90);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hier lernst Du, dass Gestaltung und Programmierung zusammenhängen. Eine Form ist nicht nur ein Bildobjekt, sondern auch eine strukturierte Anweisung an den Computer: Wo soll sie erscheinen? Welche Größe soll sie haben? Welche Farbe soll sie tragen? Soll sie eine Kontur besitzen?&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Variablen als Gedächtnis eines Programms ==&lt;br /&gt;
&lt;br /&gt;
Eine [[Variable]] ist ein benannter Speicherplatz. Sie kann zum Beispiel eine Position, eine Geschwindigkeit, eine Farbe oder einen Punktestand enthalten. Wenn Du programmieren lernst, sind [[Variable|Variablen]] besonders wichtig, weil Programme ohne Speicher kaum flexibel reagieren können.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
let x = 50;&lt;br /&gt;
&lt;br /&gt;
function setup() {&lt;br /&gt;
  createCanvas(400, 200);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function draw() {&lt;br /&gt;
  background(240);&lt;br /&gt;
  circle(x, 100, 40);&lt;br /&gt;
  x = x + 1;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die [[Variable]] &amp;#039;&amp;#039;&amp;#039;x&amp;#039;&amp;#039;&amp;#039; beginnt mit dem Wert &amp;#039;&amp;#039;&amp;#039;50&amp;#039;&amp;#039;&amp;#039;. In jedem Durchlauf wird ein Kreis an der x-Position gezeichnet. Danach wird &amp;#039;&amp;#039;&amp;#039;x&amp;#039;&amp;#039;&amp;#039; um eins erhöht. Dadurch wandert der Kreis nach rechts. Dieses Beispiel zeigt, wie aus einer einfachen Wertveränderung eine Bewegung entsteht.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Bedingungen: Programme entscheiden lassen ==&lt;br /&gt;
&lt;br /&gt;
Eine [[Bedingte Anweisung]] ermöglicht Entscheidungen. Ein Programm kann prüfen, ob etwas zutrifft, und dann unterschiedlich reagieren. In [[p5.js]] kann das zum Beispiel bedeuten: Wenn die Maus auf der linken Seite ist, soll der Hintergrund hell sein. Wenn die Maus auf der rechten Seite ist, soll der Hintergrund dunkel sein.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function setup() {&lt;br /&gt;
  createCanvas(400, 200);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function draw() {&lt;br /&gt;
  if (mouseX &amp;lt; 200) {&lt;br /&gt;
    background(230);&lt;br /&gt;
  } else {&lt;br /&gt;
    background(80);&lt;br /&gt;
  }&lt;br /&gt;
  circle(mouseX, mouseY, 40);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bedingungen sind ein Kernkonzept der [[Informatik]]. Sie kommen in Spielen, Apps, Webseiten, Robotik, Simulationen und Datenverarbeitung vor. Mit [[p5.js]] kannst Du sie visuell und interaktiv ausprobieren.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Schleifen: Wiederholung als Gestaltungsmittel ==&lt;br /&gt;
&lt;br /&gt;
Eine [[Schleife]] wiederholt Anweisungen. In [[p5.js]] lassen sich damit Muster, Raster, Ornamente, Animationen oder Datenbilder erzeugen. Statt hundert Kreise einzeln zu schreiben, formulierst Du eine Regel. Der Computer führt diese Regel wiederholt aus.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function setup() {&lt;br /&gt;
  createCanvas(500, 200);&lt;br /&gt;
  background(245);&lt;br /&gt;
  for (let x = 40; x &amp;lt; 480; x = x + 40) {&lt;br /&gt;
    circle(x, 100, 25);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dieses Beispiel zeichnet viele Kreise in regelmäßigen Abständen. Du erkennst daran einen wichtigen Gedanken des Programmierens: Ein guter [[Algorithmus]] beschreibt nicht jedes Ergebnis einzeln, sondern die Regel, nach der Ergebnisse entstehen.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Funktionen: Code ordnen und wiederverwenden ==&lt;br /&gt;
&lt;br /&gt;
Eine [[Funktion]] fasst Anweisungen zusammen. Dadurch wird ein Programm übersichtlicher. Wenn Du eine eigene Funktion schreibst, kannst Du eine Aufgabe benennen und wiederverwenden. Das ist ein Schritt zur [[Modularisierung]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function setup() {&lt;br /&gt;
  createCanvas(400, 300);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function draw() {&lt;br /&gt;
  background(240);&lt;br /&gt;
  zeichneGesicht(200, 150);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function zeichneGesicht(x, y) {&lt;br /&gt;
  circle(x, y, 120);&lt;br /&gt;
  circle(x - 25, y - 20, 15);&lt;br /&gt;
  circle(x + 25, y - 20, 15);&lt;br /&gt;
  arc(x, y + 15, 60, 40, 0, PI);&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die eigene Funktion &amp;#039;&amp;#039;&amp;#039;zeichneGesicht&amp;#039;&amp;#039;&amp;#039; macht den Code verständlicher. Du kannst später weitere Werte übergeben, zum Beispiel Größe, Farbe oder Stimmung. So entstehen flexible Bausteine für größere Projekte.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Interaktion: Maus, Tastatur und Ereignisse ==&lt;br /&gt;
&lt;br /&gt;
[[Interaktion]] bedeutet, dass ein Programm auf Eingaben reagiert. In [[p5.js]] kannst Du die Mausposition verwenden, Mausklicks erkennen oder Tastatureingaben auswerten. Dadurch entstehen einfache Zeichenprogramme, Spiele, Simulationen oder Lernanwendungen.&lt;br /&gt;
&lt;br /&gt;
Ein [[Ereignis]] ist etwas, das während der Laufzeit passiert: ein Klick, ein Tastendruck, eine Bewegung, ein geladener Klang oder ein berührter Bildschirm. In [[p5.js]] kannst Du spezielle Ereignisfunktionen nutzen, um darauf zu reagieren.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
let farbwert = 200;&lt;br /&gt;
&lt;br /&gt;
function setup() {&lt;br /&gt;
  createCanvas(400, 250);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function draw() {&lt;br /&gt;
  background(farbwert);&lt;br /&gt;
  circle(200, 125, 80);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function mousePressed() {&lt;br /&gt;
  farbwert = 120;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn Du mit der Maus klickst, ändert sich der Hintergrund. Dieses einfache Beispiel zeigt das Prinzip vieler interaktiver Programme: Eine Eingabe verändert einen Zustand, und der veränderte Zustand verändert die Ausgabe.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Zufall und generative Gestaltung ==&lt;br /&gt;
&lt;br /&gt;
[[Zufall]] ist in [[p5.js]] ein wichtiges Gestaltungsmittel. Mit zufälligen Werten kannst Du Bilder erzeugen, die bei jedem Start anders aussehen. Das führt zur [[Generative Kunst|generativen Kunst]]. Dabei legt der Mensch Regeln fest, während der Computer viele mögliche Ergebnisse erzeugt.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
function setup() {&lt;br /&gt;
  createCanvas(500, 300);&lt;br /&gt;
  background(250);&lt;br /&gt;
  for (let i = 0; i &amp;lt; 80; i = i + 1) {&lt;br /&gt;
    let x = random(width);&lt;br /&gt;
    let y = random(height);&lt;br /&gt;
    let d = random(10, 50);&lt;br /&gt;
    circle(x, y, d);&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hier entscheidet der Zufall über Position und Größe der Kreise. Trotzdem ist das Ergebnis nicht völlig beliebig, denn Du bestimmst die Regeln: Anzahl, Bereich, Form und mögliche Größen. Genau darin liegt der Reiz von [[Creative Coding]].&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Debugging: Fehler finden und verstehen ==&lt;br /&gt;
&lt;br /&gt;
[[Debugging]] bedeutet, Fehler im Programm zu finden, zu verstehen und zu beheben. Fehler sind beim Programmieren normal. Sie zeigen Dir, an welcher Stelle Dein Denken, Deine Schreibweise oder Deine Programmstruktur noch nicht zum gewünschten Ergebnis passt.&lt;br /&gt;
&lt;br /&gt;
Typische Fehler beim Einstieg in [[p5.js]] sind fehlende Klammern, falsch geschriebene Funktionsnamen, verwechselte Groß- und Kleinschreibung, nicht definierte [[Variable|Variablen]] oder falsche Koordinaten. Ein wichtiger Lernschritt besteht darin, Fehlermeldungen nicht als Scheitern zu sehen, sondern als Hinweise.&lt;br /&gt;
&lt;br /&gt;
Hilfreiche Strategien sind: Lies die Fehlermeldung genau. Prüfe die Zeile, die genannt wird. Suche auch in den Zeilen davor. Vereinfache Dein Programm. Gib Zwischenwerte in der [[Konsole]] aus. Verändere immer nur eine Sache auf einmal. Dokumentiere, was Du geändert hast.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Projektideen mit p5.js ==&lt;br /&gt;
&lt;br /&gt;
Mit [[p5.js]] kannst Du sehr unterschiedliche Projekte umsetzen. Für den Einstieg eignen sich kleine Projekte, die ein klares Ziel haben und trotzdem Raum für Gestaltung lassen. Beispiele sind ein digitales Namensschild, ein interaktives Farbenspiel, ein einfacher Ball, ein Zeichenprogramm, ein Muster-Generator, eine Wettervisualisierung, ein Mini-Spiel, eine Simulation von Teilchen oder eine Klangreaktion.&lt;br /&gt;
&lt;br /&gt;
Für fortgeschrittene Lernende kann [[p5.js]] mit [[HTML]], [[CSS]], [[Web Audio API]], [[Webcam]], [[Sensor|Sensoren]], [[Datenvisualisierung]], [[Maschinelles Lernen]] oder [[WebGL]] verbunden werden. Dadurch wird aus einem einfachen Zeichenprogramm eine vielseitige Umgebung für digitale Medienprojekte.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Kompetenzen, die Du in diesem Kurs entwickelst ==&lt;br /&gt;
&lt;br /&gt;
# [[Algorithmisches Denken]]: Du formulierst klare Schrittfolgen und Regeln, die ein Computer ausführen kann.&lt;br /&gt;
# [[Problemlösen]]: Du zerlegst ein größeres Projekt in kleinere Teilprobleme.&lt;br /&gt;
# [[Kreativität]]: Du nutzt Code als Werkzeug für Gestaltung, Ausdruck und Experiment.&lt;br /&gt;
# [[Medienkompetenz]]: Du verstehst, wie interaktive digitale Medien technisch entstehen.&lt;br /&gt;
# [[Fehlerkultur]]: Du lernst, Fehler systematisch zu untersuchen und produktiv zu nutzen.&lt;br /&gt;
# [[Projektarbeit]]: Du planst, entwickelst, testest und präsentierst eigene digitale Produkte.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Interaktive Aufgaben =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Quiz: Teste Dein Wissen ==&lt;br /&gt;
&lt;br /&gt;
{{MC}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Wofür wird p5.js besonders häufig eingesetzt?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Kreatives Programmieren mit JavaScript)&lt;br /&gt;
(!Textverarbeitung ohne Internet)&lt;br /&gt;
(!Tabellenkalkulation im Betriebssystem)&lt;br /&gt;
(!Datenbankverwaltung ohne Code)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Welche Funktion wird in einem typischen p5.js-Programm einmal zu Beginn ausgeführt?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(setup)&lt;br /&gt;
(!draw)&lt;br /&gt;
(!mouseX)&lt;br /&gt;
(!background)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Welche Funktion wird in p5.js normalerweise fortlaufend wiederholt?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(draw)&lt;br /&gt;
(!setup)&lt;br /&gt;
(!createCanvas)&lt;br /&gt;
(!fill)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was beschreibt der Begriff Canvas im Kontext von p5.js?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Eine digitale Zeichenfläche)&lt;br /&gt;
(!Eine externe Festplatte)&lt;br /&gt;
(!Ein Passwortspeicher)&lt;br /&gt;
(!Eine Programmiersprache)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Welche Programmiersprache nutzt p5.js?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(JavaScript)&lt;br /&gt;
(!Python)&lt;br /&gt;
(!C)&lt;br /&gt;
(!Ruby)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was speichert die Variable mouseX in p5.js?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Die horizontale Mausposition)&lt;br /&gt;
(!Die Hintergrundfarbe)&lt;br /&gt;
(!Die Kreisgröße)&lt;br /&gt;
(!Die Tastaturhöhe)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was bewirkt eine Schleife beim Programmieren?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Sie wiederholt Anweisungen)&lt;br /&gt;
(!Sie löscht automatisch Fehler)&lt;br /&gt;
(!Sie beendet jedes Programm)&lt;br /&gt;
(!Sie ersetzt alle Variablen)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was ist Debugging?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Fehler im Programm finden und beheben)&lt;br /&gt;
(!Bilder automatisch vergrößern)&lt;br /&gt;
(!Programme ohne Test veröffentlichen)&lt;br /&gt;
(!Eine Datei komprimieren)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Was ermöglicht eine bedingte Anweisung?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Eine Entscheidung im Programm)&lt;br /&gt;
(!Eine zufällige Installation)&lt;br /&gt;
(!Eine feste Bildschirmgröße)&lt;br /&gt;
(!Eine automatische Übersetzung)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Warum ist p5.js für Anfängerinnen und Anfänger geeignet?&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
(Weil Code schnell sichtbare Ergebnisse erzeugt)&lt;br /&gt;
(!Weil man keine Logik verstehen muss)&lt;br /&gt;
(!Weil es nur auf Spezialcomputern läuft)&lt;br /&gt;
(!Weil es keine Fehler geben kann)&lt;br /&gt;
&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Memory ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;memo-quiz&amp;quot;&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| setup || Startfunktion&lt;br /&gt;
|-&lt;br /&gt;
| draw || Wiederholfunktion&lt;br /&gt;
|-&lt;br /&gt;
| Canvas || Zeichenfläche&lt;br /&gt;
|-&lt;br /&gt;
| Variable || Speicherwert&lt;br /&gt;
|-&lt;br /&gt;
| Bedingung || Entscheidung&lt;br /&gt;
|-&lt;br /&gt;
| Schleife || Wiederholung&lt;br /&gt;
|-&lt;br /&gt;
| Debugging || Fehlersuche&lt;br /&gt;
|}&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Drag and Drop ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;lueckentext-quiz&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
! Ordne die richtigen Begriffe zu.&lt;br /&gt;
! Thema&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;setup&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Einmaliger Programmstart&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;draw&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Fortlaufende Programmausführung&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Canvas&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Digitale Zeichenfläche&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Variable&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Veränderbarer Speicherwert&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Bedingung&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Entscheidung im Programm&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Schleife&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Wiederholung von Anweisungen&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Debugging&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Systematische Fehlersuche&lt;br /&gt;
|}&lt;br /&gt;
{{E}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Kreuzworträtsel ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div class=&amp;quot;kreuzwort-quiz&amp;quot;&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| Canvas || Wie heißt die digitale Zeichenfläche in p5.js?&lt;br /&gt;
|-&lt;br /&gt;
| Variable || Wie nennt man einen benannten Speicherwert?&lt;br /&gt;
|-&lt;br /&gt;
| Schleife || Welches Konzept wiederholt Anweisungen?&lt;br /&gt;
|-&lt;br /&gt;
| Funktion || Wie nennt man einen wiederverwendbaren Codeblock?&lt;br /&gt;
|-&lt;br /&gt;
| Maus || Welches Eingabegerät liefert mouseX und mouseY?&lt;br /&gt;
|-&lt;br /&gt;
| Debugging || Wie nennt man die systematische Fehlersuche?&lt;br /&gt;
|}&lt;br /&gt;
{{E}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== LearningApps ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;iframe&amp;gt; https://learningapps.org/index.php?s=p5.js+Programmieren+lernen &amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
== Lückentext ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;quiz display=simple&amp;gt;&lt;br /&gt;
{&amp;#039;&amp;#039;&amp;#039;Vervollständige den Text.&amp;#039;&amp;#039;&amp;#039;&amp;lt;br&amp;gt;&lt;br /&gt;
|type=&amp;quot;{}&amp;quot;}&lt;br /&gt;
p5.js ist eine { JavaScript } Bibliothek für kreatives Programmieren im Web. Eine digitale Zeichenfläche wird häufig { Canvas } genannt. Die Funktion { setup } wird in einem typischen p5.js-Programm einmal zu Beginn ausgeführt. Die Funktion { draw } wird fortlaufend wiederholt und eignet sich deshalb für Animationen. Eine { Variable } speichert einen Wert, der sich während des Programms verändern kann. Eine { Bedingung } ermöglicht es einem Programm, zwischen verschiedenen Handlungen zu entscheiden. Eine { Schleife } wiederholt Anweisungen und hilft beim Erzeugen von Mustern. Beim { Debugging } suchst und behebst Du Fehler im Code. Mit { mouseX } kann die horizontale Mausposition genutzt werden. Creative Coding verbindet { Gestaltung } mit Programmierung.&lt;br /&gt;
&amp;lt;/quiz&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Offene Aufgaben =&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Leicht ===&lt;br /&gt;
&lt;br /&gt;
# [[Erstes p5.js-Bild]]: Erstelle ein digitales Bild aus mindestens fünf geometrischen Formen. Beschreibe anschließend, welche Funktionen Du verwendet hast und welche Koordinaten besonders wichtig waren.&lt;br /&gt;
# [[Farben erkunden]]: Programmiere drei Varianten desselben Motivs mit unterschiedlichen Farben. Vergleiche, wie sich die Wirkung durch den [[RGB-Farbraum]] verändert.&lt;br /&gt;
# [[Maus-Kreis]]: Erstelle ein Programm, bei dem ein Kreis der Maus folgt. Ergänze eine kurze Erklärung zu &amp;#039;&amp;#039;&amp;#039;mouseX&amp;#039;&amp;#039;&amp;#039; und &amp;#039;&amp;#039;&amp;#039;mouseY&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
# [[Fehler-Tagebuch]]: Baue absichtlich drei kleine Fehler in einen p5.js-Sketch ein, behebe sie und notiere, welche Fehlermeldungen oder Beobachtungen Dir geholfen haben.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Standard ===&lt;br /&gt;
&lt;br /&gt;
# [[Interaktives Plakat]]: Gestalte ein digitales Plakat, das auf Mausbewegungen oder Mausklicks reagiert. Achte auf eine klare gestalterische Aussage.&lt;br /&gt;
# [[Muster-Generator]]: Entwickle mit einer [[Schleife]] ein Muster aus Formen. Erkläre, welche Regel Dein Muster erzeugt.&lt;br /&gt;
# [[Mini-Animation]]: Programmiere eine animierte Figur oder ein bewegtes Objekt. Verwende mindestens eine [[Variable]] für Position oder Geschwindigkeit.&lt;br /&gt;
# [[Entscheidungsprogramm]]: Erstelle einen Sketch, der mit einer [[Bedingte Anweisung|Bedingung]] auf verschiedene Mausbereiche reagiert. Beschreibe, warum Bedingungen für interaktive Programme wichtig sind.&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
=== Schwer ===&lt;br /&gt;
&lt;br /&gt;
# [[Generative Kunst]]: Entwickle ein generatives Kunstwerk, das bei jedem Start anders aussieht. Begründe, welche Rolle [[Zufall]] und Regeln in Deinem Projekt spielen.&lt;br /&gt;
# [[Einfaches Spiel]]: Programmiere ein kleines Reaktionsspiel mit Punktestand, Bewegung und einer Gewinn- oder Verlustbedingung.&lt;br /&gt;
# [[Datenvisualisierung mit p5.js]]: Wähle eine kleine Datensammlung, zum Beispiel Temperaturen, Lieblingsfächer oder Umfragewerte, und visualisiere sie mit Formen, Farben oder Größen.&lt;br /&gt;
# [[Projektpräsentation]]: Plane, entwickle und präsentiere ein eigenes p5.js-Projekt. Dokumentiere Ziel, Entwurf, wichtigste Codebestandteile, Probleme, Lösungen und mögliche Erweiterungen.&lt;br /&gt;
&lt;br /&gt;
{{:Offene Aufgabe - MOOC erstellen}}&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Lernkontrolle =&lt;br /&gt;
&lt;br /&gt;
# [[Code erklären]]: Erkläre an einem selbst gewählten p5.js-Sketch, wie &amp;#039;&amp;#039;&amp;#039;setup&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;draw&amp;#039;&amp;#039;&amp;#039;, [[Variable|Variablen]] und [[Funktion|Funktionen]] zusammenwirken.&lt;br /&gt;
# [[Algorithmus übertragen]]: Beschreibe einen Alltagsvorgang als [[Algorithmus]] und übertrage das Prinzip anschließend auf eine p5.js-Animation.&lt;br /&gt;
# [[Fehleranalyse]]: Du siehst ein Programm, bei dem ein Kreis nicht an der erwarteten Stelle erscheint. Entwickle eine Strategie, mit der Du mögliche Ursachen systematisch überprüfst.&lt;br /&gt;
# [[Gestaltung begründen]]: Vergleiche zwei interaktive p5.js-Bilder. Beurteile, wie Farben, Bewegung, Eingaben und Formen die Wirkung verändern.&lt;br /&gt;
# [[Projekt verbessern]]: Nimm ein einfaches p5.js-Programm und entwickle drei sinnvolle Erweiterungen. Begründe, welche Erweiterung den größten Lerngewinn bietet.&lt;br /&gt;
# [[Transfer auf Webseiten]]: Erkläre, wie p5.js mit [[HTML]], [[CSS]] und [[JavaScript]] zusammenhängt und warum dieses Wissen auch für andere Webprojekte nützlich ist.&lt;br /&gt;
# [[Ethik digitaler Gestaltung]]: Diskutiere, welche Verantwortung Programmierende haben, wenn interaktive Medien Menschen beeinflussen, Daten nutzen oder Aufmerksamkeit lenken.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= OERs zum Thema =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;iframe&amp;gt; https://de.m.wikipedia.org/wiki/Creative_Coding &amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;iframe&amp;gt; https://de.m.wikipedia.org/wiki/JavaScript &amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;iframe&amp;gt; https://de.m.wikipedia.org/wiki/Processing &amp;lt;/iframe&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= Links =&lt;br /&gt;
&lt;br /&gt;
{| align=center&lt;br /&gt;
{{:D-Tab}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[p5.js]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
# [[JavaScript]]&lt;br /&gt;
# [[Creative Coding]]&lt;br /&gt;
# [[Processing]]&lt;br /&gt;
# [[Programmieren]]&lt;br /&gt;
# [[Algorithmus]]&lt;br /&gt;
# [[Variable]]&lt;br /&gt;
# [[Funktion]]&lt;br /&gt;
# [[Schleife]]&lt;br /&gt;
# [[Bedingte Anweisung]]&lt;br /&gt;
# [[Canvas]]&lt;br /&gt;
# [[Koordinatensystem]]&lt;br /&gt;
# [[Debugging]]&lt;br /&gt;
# [[Interaktion]]&lt;br /&gt;
# [[Datenvisualisierung]]&lt;br /&gt;
# [[Generative Kunst]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Informatik]]&lt;br /&gt;
[[Kategorie:Programmieren]]&lt;br /&gt;
[[Kategorie:JavaScript]]&lt;br /&gt;
[[Kategorie:Creative Coding]]&lt;br /&gt;
[[Kategorie:Medienbildung]]&lt;br /&gt;
[[Kategorie:Kunst]]&lt;br /&gt;
[[Kategorie:Digitale Bildung]]&lt;br /&gt;
[[Kategorie:Sekundarstufe]]&lt;br /&gt;
[[Kategorie:Studium]]&lt;br /&gt;
&lt;br /&gt;
{{BR}}&lt;br /&gt;
= aiMOOC-Projekte =&lt;br /&gt;
{{TM}}&lt;br /&gt;
[[Kategorie:AI_MOOC]] [[Kategorie:GPT aiMOOC]]&lt;/div&gt;</summary>
		<author><name>Glanz</name></author>
	</entry>
</feed>