Kindern das Programmieren beibringen

Guten Tag. Ich heiße Mikhail Kapelko. Ich bin seit mehr als 10 Jahren in der professionellen Softwareentwicklung tätig. Davon sind die letzten Jahre mit iOS verbunden. In meiner Freizeit entwickle ich Spiele und Tools für deren Erstellung.


Rückblick


Heute möchte ich über meine Erfahrungen im Unterrichten von Kinderprogrammieren sprechen, insbesondere werden wir Folgendes berücksichtigen:


  • Organisation des Lernprozesses
  • Trainingsprogramm
  • Gedächtnisspiel
  • Programmierwerkzeug
  • die Lektionen
  • Ergebnisse und Pläne

Organisation des Lernprozesses


Die Schulung findet im Rahmen der sozialen Verantwortung des Unternehmens statt: Das Unternehmen stellt einen Raum mit Geräten zur Verfügung und vereint Mitarbeiter, die sich als Lehrer versuchen möchten, mit Mitarbeitern, die ihre Kinder erziehen möchten. All dies ist ausschließlich auf freiwilliger Basis.


Potenzielle Lehrer werden in Gruppen eingeteilt, sodass eine Gruppe von drei Lehrern aus einem erfahrenen und zwei neuen Personen besteht. Eine Gruppe von Lehrern leitet eine Gruppe von Schülern. Die Schüler sind nach Alter und Können gegliedert.


2018 nahm ich zum zweiten Mal an einem Schulungsprogramm für Kinder im Alter von etwa zehn Jahren teil. Unsere Gruppe arbeitete von Oktober bis Dezember 2018 samstags von 10:00 bis 12:00 Uhr. Ich nutzte meine offizielle Position und schleppte meine Frau zu den Kursen.


Trainingsprogramm


Als ich zum ersten Mal teilnahm, unterrichtete unsere Gruppe Kinder ganz ziellos im Programmieren: Wir hatten einfache Aufgaben für die Lektion, um die Bediener zu erklären. Infolgedessen hatten wir am Ende des Trainings nichts Konkretes zu bewerten, womit wir angeben und was wir analysieren sollten.


Dieses zweite Mal habe ich beschlossen, dass meine Kinder und ich das sogenannte Memory-Spiel implementieren würden. Als Kriterium für den Erfolg des Trainings habe ich folgende Bedingung festgelegt: Am Ende des Kurses erstellt jeder Schüler unabhängig ein einfaches Gedächtnisspiel von Grund auf in 1 Stunde.


Um dieses Kriterium zu erreichen, habe ich mich entschlossen, die Aussage „Wiederholung ist die Mutter des Lernens“ zu überprüfen. Deshalb haben wir in jeder Lektion alles von Grund auf neu erstellt. Ich betone, dass wir nichts im Studentenkonto gespeichert haben. Die Aufgabe bestand darin, die Fähigkeit zu bewahren, ein Spiel im Kopf und nicht im Computer zu erstellen.


Gedächtnisspiel


Schauen wir uns an, was ein Memory-Spiel ist.


1) Im einfachsten Fall haben wir 16 Karten und nur 8 sind eindeutig, die restlichen 8 sind ihre Paare.



Im dargestellten Bild haben wir nur zwei Karten mit einer Katze, einem Hund usw.


2) Zu Beginn des Spiels mischen wir die Karten und legen sie verdeckt ab.



3) Der erste Teilnehmer des Spiels deckt zwei Karten auf.



4) Wenn die Karten unterschiedlich sind, bringen Sie sie wieder in ihre ursprüngliche Position: Legen Sie sie verdeckt ab.



5) Der nächste Teilnehmer des Spiels öffnet ein weiteres Kartenpaar.



6) Wenn die Karten übereinstimmen, entfernen Sie sie vom Spielfeld.



Das Ziel des Spiels ist es, alle Karten vom Spielfeld zu entfernen. Das Spiel in dieser Form enthält keinen Wettbewerb, sodass Sie eine Person spielen können.


Einerseits ist das Memory-Spiel recht einfach, andererseits wirkt sich die Implementierung des Spiels auf die grundlegenden Funktionen aus, die zum Erstellen eines mehr oder weniger komplexen Spiels erforderlich sind:


  • Elemente erstellen
  • ihre Platzierung auf dem Feld
  • Artikelauswahl
  • Vergleich ausgewählter Elemente
  • passende Gegenstände ausblenden

Programmierwerkzeug


Als Werkzeug haben wir das Scratch- Medium verwendet. Es wurde entwickelt, um Kindern das Programmieren beizubringen, sodass jede Aktion, jeder Bediener darin grafisch dargestellt wird.


Mit dem folgenden Skript können Sie beispielsweise eine Katze um 360 Grad pro Sekunde drehen:



Hier ist das Ergebnis:



Ich stelle fest, dass dies eine ziemlich erfolgreiche Lösung für die grafische Darstellung von Code ist. Bei einer kostenpflichtigen Lösung, die jetzt von SAP beworben wird, werden beispielsweise sogenannte Cubes für die Programmierung verwendet:



Hier können Sie nur die gewünschten Werte in die erforderlichen Felder eingeben. Wenn Sie etwas benötigen, das nicht dem Standard entspricht, hilft nur das Skript, das wiederum mit einem Würfel dargestellt wird.


Aus persönlicher Erfahrung möchte ich sagen, dass die Scratch-Lösung überhaupt nicht langsamer wird, was nicht über die SAP-Lösung gesagt werden kann.


Erste Lektion


Die erste Lektion war eine Einführung, daher haben wir keine Computer verwendet.


Der Plan war wie folgt:


  1. Lernen Sie kennen
  2. Spiele ein Memory-Spiel
  3. Lernen Sie das Konzept eines Algorithmus
  4. Schreiben Sie einen Spielalgorithmus
  5. Analysieren Sie die Lektion

1) Bekanntschaft


Lehrer mit Schülern stehen im Kreis. Dies gleicht alle aus und macht alle zu einem Mitglied des Teams.


Der erste Teilnehmer nennt seinen Namen und spricht darüber, warum er sich für diesen Kurs entschieden hat. Der zweite und die nachfolgenden Teilnehmer wiederholen zunächst den Namen und die Geschichte jedes vorherigen Teilnehmers. Anschließend benennen sie ihren Namen und erzählen ihn.


Es sieht ungefähr so ​​aus:


  1. Vasya: "Mein Name ist Vasya, ich möchte Scratch lernen, weil mein Vater mich gemacht hat."
  2. Dima: "Das ist Vasya, Papa zwingt ihn, Scratch zu machen. Mein Name ist Dima und dies ist mein viertes Scratch-Jahr."
  3. Olya: "Das ist Vasya, seine Eltern zwingen ihn. Das ist Dima, er ist praktisch ein Scratch-Veteran. Mein Name ist Olya, ich unterrichte seit dem ersten Jahr, ich werde mit allen lernen."

Dieses Dating-Format hat folgende Ziele:


  • Bekanntschaft
    • Jedes Teammitglied muss den Namen der anderen Teammitglieder kennen
  • Gemeinschaftsraum
    • Alle Teilnehmer im Kreis und nicht hinter Jobs, was die Ablenkung für Spiele am Computer verringert
  • Gleichheit
    • Sowohl Lehrer als auch Schüler in einem Kreis, der alle als Teammitglieder ohne Hierarchie ausbalanciert
  • Achtung
    • Jedes Teammitglied muss dem Rest des Teams aufmerksam zuhören, um die Aussagen korrekt zu wiederholen.
  • Rückkopplung
    • Jedes Mitglied des Teams sollte seine Gedanken so klar wie möglich ausdrücken, sonst kann der Rest sie einfach nicht wiederholen
  • Spaß
    • Probleme, sich Namen zu merken, bringen alle zum Lachen

2) Speicherkartenspiel


  1. Wir nehmen zwei Kartenspiele und wählen aus ihnen 8 identische aus
  2. Wir legen die Karten in einem 4x4-Raster verdeckt auf den Tisch
  3. Die Schüler stehen um den Tisch herum
  4. Jeder Schüler dreht abwechselnd ein Kartenpaar um
    4.1. Wenn die Karten übereinstimmen, entfernen Sie sie vom Spielfeld
    4.2. Wenn die Karten unterschiedlich sind, drehen Sie sie verdeckt um

Die Schüler spielen sehr gerne Brettspiele. Während des Spiels sprechen die Lehrer aus, was passiert.


Nach einigen Partys gehen wir zum Studium des Konzepts eines Algorithmus über.


3) Das Konzept eines Algorithmus


  1. Zuerst fragen wir die Schüler, wir geben die Möglichkeit zu sprechen, wir finden das Niveau jedes Schülers heraus
  2. Korrigieren Sie gegebenenfalls Aussagen, wenn sie der erwarteten Antwort nahe kommen
  3. Wir empfehlen, einen Algorithmus zu schreiben, um eine Person vom Staat "vor der Bürotür stehend" in den Staat "am Computer im Büro arbeiten" zu übertragen.

Die Schüler gehen sehr gerne an die Tafel und schreiben darauf. Deshalb rufen wir jeden Schüler nacheinander an, um einen Absatz des Algorithmus zu schreiben. Wir verwenden den aktivsten Schüler als Algorithmus-Executor.


4) Der Algorithmus des Spiels


Wir empfehlen, einen Spielalgorithmus zu schreiben. Wieder rufen wir alle dazu auf, einen Punkt auf dem Brett hinzuzufügen. Nachdem wir die Beschreibung des Algorithmus abgeschlossen haben, spielen wir erneut mit den Karten, aber diesmal muss jeder Schüler den Schritt des Algorithmus aussprechen.


Es sieht ungefähr so ​​aus:


  1. Vasya: "Wir falten 16 Karten verdeckt."
  2. Dima: "Dreh ein paar Karten um"
  3. Pascha: "Wenn zwei Karten unterschiedlich sind, lege sie offen auf"
  4. Philip: "Ein paar Karten umdrehen"
  5. Mischa: "Wenn zwei Karten zusammenfallen, entferne sie vom Spielfeld."

5) Unterrichtsanalyse


Damit ist die erste Lektion beendet, und die Lehrer haben die Möglichkeit, sowohl ihre Eindrücke von der Lektion als auch von den Schülern zu diskutieren, Ansätze für ruhige Menschen und Aktivisten zu entwickeln und weitere Pläne für den nächsten Unterricht zu vereinbaren.


Wir hatten folgende Lösungen:


  1. Ruhe und Aktivisten durch einen zu pflanzen, um ein Gleichgewicht zwischen Lärm und Stille aufrechtzuerhalten. Andernfalls schafft eine Gruppe von Aktivisten eine Brutstätte für Stürme, und eine Gruppe von Beruhigungsmitteln schafft eine Brutstätte für Wüste, was den Lernprozess verlangsamt.
  2. Fordern Sie von den Schülern Genauigkeit Aktivisten machen gerne Gesichter, was sich negativ auf die Disziplin auswirkt.

Zweite und dritte Lektion


Wir begannen den folgenden Unterricht erneut mit einem Aufwärmen: Wir standen im Kreis auf, riefen einen Namen und sagten, wer was tat. Und wenn nicht, warum dann? Nach wie vor wiederholte jeder Teilnehmer zunächst die Aussagen der Vorgänger und sprach erst dann über sich.


In der zweiten Lektion haben wir Anforderungen für ein Element des Spielfelds erstellt und versucht, dieses Element in Scratch zu erstellen. Es war völlig erfolgreich.


In der dritten Lektion haben wir versucht, 16 Elemente zu erstellen und sie in einem 4x4-Raster anzuordnen. Hier sind wir festgefahren, weil Die Schüler konnten das Koordinatensystem zum Anordnen von 16 Elementen im Raster nicht verstehen. Es wurde deutlich, dass Unterrichtspläne nur Pläne sind und die Realität sich ändert.


Wir hatten zwei Möglichkeiten, das Problem mit dem Koordinatensystem zu lösen:


  1. Unterrichten Sie das Koordinatensystem weiterhin mit dem Risiko, dass Sie vor Ende des Kurses keine Zeit haben, ein Spiel zu erstellen
  2. Ändern Sie die Anforderungen für das Spiel so, dass das Koordinatensystem nicht benötigt wird

Wir haben uns für den zweiten Weg entschieden, weil Wir sind immer noch keine Schule und unser Ziel war es zu lehren, wie man ein Spiel erstellt, d. h. Wissen in der Praxis anwenden, nicht in der Theorie. Aus diesem Grund haben wir beschlossen, das 4 x 4-Elementraster durch einen Kreis mit 16 Elementen zu ersetzen.


Diese Entscheidung führte mich zu folgenden Schlussfolgerungen:


  1. Um das Problem zu lösen, finden Sie oft einen einfacheren Weg.
  2. Dieser Weg ist leichter zu verstehen, wenn auch weniger flexibel.
  3. Sie können einen schwierigen Weg einschlagen, um die Flexibilität später zu erhöhen, wenn dies wirklich notwendig ist.
  4. Die Vereinfachung bringt das Endziel näher, die Komplikation entfernt sich davon

Vierte und nachfolgende Lektionen


Ab der vierten Lektion haben wir die Phase der Schreibanforderungen abgesagt, weil Sie begann, den größten Teil der Lektion in Anspruch zu nehmen: Wir gingen wieder zur Praxis über, nicht zur Theorie, um die Fristen einzuhalten. Diesmal wurden alle Anforderungen im Voraus geschrieben und "von oben" ausgestellt. Aber immer noch las niemand sie.


In der vierten und fünften Lektion haben wir 16 Elemente in Form eines Kreises erstellt, ein Elementpaar ausgewählt und auf ihre Übereinstimmung überprüft.


Von der sechsten bis einschließlich der neunten Lektion haben wir das Spiel jedes Mal von Grund auf neu erstellt. Jedes Mal geschah dies schneller und schneller. Ab der achten Lektion führten wir eine Rangliste ein, in der wir die Phasen der Erstellung des Spiels und die Zeit jedes Schülers aufzeichneten.


Letzte Lektion


In der letzten Lektion war jeder damit fertig, ein Spiel in ein oder zwei Stunden mehr oder weniger unabhängig von Grund auf neu zu erstellen.


Dies ist die Rangliste der letzten Lektion (Namen sind versteckt):



Im Folgenden sehen Sie, wie Sie in Scratch ein Memory-Spiel für den Schüler erstellen, der das Spiel am schnellsten erstellt hat: in 30 Minuten.



Ergebnisse und Pläne


Das Ergebnis des Trainings hat meine Erwartungen übertroffen:


  • Drei Schüler erledigen das in ungefähr einer Stunde oder schneller
  • zwei in ungefähr anderthalb Stunden oder schneller

In diesem Jahr plane ich, Schulungen nicht mit Scratch, sondern mit dem Opensource Game Studio-Toolkit durchzuführen: Die Schüler werden mit Lua-, Git- und GitHub-Seiten arbeiten.



Die englische PS-Version finden Sie hier


UPDATE: Ein Artikel über das Training im Jahr 2019

Source: https://habr.com/ru/post/de438278/


All Articles