Programmieraufgabe 98

Ab dem 9.2.2018 finden die Olympischen Winterspiele in Südkorea statt. Ein guter Anlass um Datenbank praktisch auszuprobieren. Da ich erst funktionales Programmieren bzw. Excel gemacht habe und nun erst mit Datenbanken anfange, benutze ich die Olympische Spiele jetzt einfach als Transferaufgabe. Den eigentlich Stoff erkläre ich wie immer am Beispiel eines Sportvereins. Der Aufgabenablauf für meine Schüler sieht daher in etwa so aus:

Aufgabe

Erstelle eine Excel-Tabelle um alle benötigten Ergebnisse der Olymischen Winterspiele 2018 zu erfassen.

Die Aufgabe ist bewusst schwammig formuliert. Denn ich finde es immer schwierig den Schülern das Kernproblem bei Datenbanken zu verdeutlichen:

“Ermögliche es, Daten zu erfassen, die du noch nicht vollständig kennst. Und Fragen an diese Daten zu beantworten, wobei du den Wortlaut der Frage noch nicht kennst.”

Im Rahmen der Tabelle kann man dann auch prima auf Probleme wie Rechtschreibfehler (Insert- bzw. Update-Anomalie) eingehen, wenn z.B. ein Sportler öfters auftaucht, aber Schreibfehler gemacht werden. Anschließend kann man dann auf die Normal-Formen eingehen und die eine Tabelle in mehrere Tabellen aufspalten.

Lösungsansatz 1: Ein erster Lösungsansatz (Schema) einer passenden Tabelle sähe im übrigen vielleicht so aus, wobei die Wertung die Zeit oder die erreichten Punkte wären:

Ergebnis={Wettkampf, Datum, Platz1_Name, Platz1_Wertung, Platz1_Land, Platz2_Name, Platz2_Wertung, Platz3_Land, Platz3_Name, Platz3_Wertung, Platz3_Land}

Falls jemand das ebenso im Unterricht versucht, wäre ich über ein kurzes Feedback natürlich dankbar. Das Ergebnis meiner Klasse werde ich hier auch noch vorstellen.

Kommunikation

Wir Lehrer stehen den ganzen Tag vor einer Klasse, sprechen mit den Kollegen im Lehrerzimmer, diskutieren mit dem Chef oder tauschen uns mit Eltern aus. Eigentlich müssten wir Kommunikationsexperten sein. Wenn ich jetzt aber die vergangenen Wochen mit den diversen Fortbildungen zum Thema Kommunikation, aber auch Schulentwicklung, Revue passieren lasse, so muss ich feststellen, dass ich eigentlich keine Ahnung hatte.

Also, natürlich hatte ich schon Ahnung. Schließlich kam einiges davon im Studium vor. Nur ist man am Anfang des Lehrerdaseins so mit den Inhalten des Unterrichts beschäftigt (Jetzt muss ich das machen, dann das sagen und Hausaufgaben aufgeben), dass man nicht wirklich Zeit hat, sich über Kommunikation so richtig Gedanken zu machen, geschweige denn sie einfach mal gut anzuwenden. Es tat daher gut nochmal einiges davon wieder zu hören, aber auch praktisch auszuprobieren.

Damit ich nicht vergesse, was ich alles (wieder) kennengelernt habe, möchte ich einfach noch mal ein paar Dinge in der Reihenfolge, wie sie mir einfallen, hier auflisten:

  • Egal ob Feedbackgespräch, Problemgespräch oder Leitung einer Sitzung – ich bin in der Rolle des Gastgebers. Dieser Gedanke soll mich offen für den Gegenüber und seine Probleme und Ansichten machen.
  • Deutlich und klar Stellung beziehen. Viele von uns (Lehrern) wollen “gemocht” werden. Egal ob von Schülern oder von Kollegen, wir wünschen uns, dass wir gemocht werden. Leider kommt aber dieses “Rumgeier” gar nicht gut an: “Nicht das Sie mich jetzt falsch verstehen, aber so richtig gut war der Beginn Ihrer Stunde nicht.” Hier kommt dann auch noch der Aspekt der Ich-Botschaft hinzu.
  • Ich-Botschaft: Eine Du-Botschaft wird nicht zur Ich-Botschaft, nur weil der Satz mit “Ich” beginnt: “Ich finde, du bist stur.” Stattdessen gibt es bestimmte Aspekte, die man erwähnen sollte:
      • Was habe ich beobachtet?
      • Was habe ich gefühlt?
      • Was hätte ich gerne?
      • (Einen Wunsch formulieren)
  • Botschaften haben mehrere, nämlich 4 Ebenen : Appel, Selbstoffenbarung, Inhalt- oder Sachebene, Beziehungsebene. Und das ist nicht nur beim Sender so, sondern auch beim Empfänger. Daher ist es gut, mal darüber nachzudenken mit wem man spricht. Denn auch wenn wir als Lehrer oftmals die Apell-Ebene domieren lassen. Bei Unterstufenschülern kann die Beziehungsebene viel größere Bedeutung haben. Viele Lehreraussagen werden dann zu einem “Der mag mich nicht.” uminterpretiert. Und als sich mal wieder eines meiner Kinder über die zurückgegbene Prüfung aufregte, kam abschließend nur noch: “Und wie der/die sich anzieht! Das geht ja gar nicht. Und dann immer auf dem Pult sitzen und ein auf jugendlich machen.”
  • Das innere Team: Werde ich verbal angegriffen, so springt in mir entweder der Verteidiger oder der Angreifer an. Als Lehrer bin ich mal mehr Vater, mal Besserwisser oder General. Gehe ich bowlen, so bin ich mehr Kind. Alle diese Rollen sind in mir und bilden mein inneres Team. Und ich bin ihnen nicht nur ausgeliefert. Wenn ich mein Team kenne, so kann ich vielleicht auch im Unterricht mal mein Kind rausholen. Das äußerst sich dann bei mir so, dass ich, während die Schüler programmieren, ich vorne sitze, ebenfalls programmiere und das pfeife:

https://youtu.be/vS4DNnp8ZhM

Im Übrigen hatte ich schon mal so eine Zusammenfassung unter meiner anderen Internetseite flow-learning.de geschrieben. Man sollte halt öfters mal lesen, was man früher geschrieben hat.

Programmieraufgabe 97

Basierend auf der letzten Programmieraufgabe wird nun, passend zur Weihnachtszeit und vor allem Silvester, ein Feuerwerk implementiert. Hierzu wird die Aufgabe in mehrere Teilaufgaben zerlegt und schrittweise bearbeitet. Ähnlich, wie es bei einem Agilen Projektmanagement vielleicht der Fall wäre. Hier wird das Endprodukt auch erst in seine einzelne Bestandteile zerlegt und priorisiert (Backlog). Anschließend wird mit dem wichtigsten Element, welches in Teilschritte zerlegt wird, begonnen. Was wichtig ist, entscheidet zwar eigentlich der Product Owner, aber den gibt es hier nicht bzw. es ist fast alles gleich wichtig. Ich fange mit der Rakete an, da ich die “Flugphysik” für die bunten Funken auch benötige.

Es ergäben sich daher wahrscheinlich folgende Schritte und damit die folgende…

Aufgabe

Programmiere ein Feuerwerk mit Hilfe von processing. Gehe dabei wie folgt vor:

  1. Rakete, die vom unteren Bildschirmrand starten (-> class Rockets)
  2. Buntes Explodieren der Rakete an einer beliebigen Stelle (->class Sparkles)
  3. Eine Rakete explodiert und wird durch “Sparkles” ersetzt.
  4. Löschen nicht mehr benötigter “Rockets” und “Sparkles”, um den Speicher nicht unnötig zu belasten.

Rockets und Sparkles können in ArrayListen verwaltet werden.

Am Ende ergibt sich ein solches Bild:

Ein bisschen Text. wie “Happy New Year” kann man ja noch ergänzen. Oder man macht gleich einen explodierenden Text. Sozusagen als neue Aufgabe.

Lösung: Firework2d

Durch die weitere Nutzung der Seite (Scrollen, Navigieren) stimmen Sie der Verwendung von Cookies zu. Weitere Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen" eingestellt, um das beste Surferlebnis zu ermöglichen. Wenn du diese Website ohne Änderung der Cookie-Einstellungen verwendest oder auf "Akzeptieren" klickst, erklärst du sich damit einverstanden.

Schließen