Gibt es ein Leben nach Scratch oder wie man ein Kind in Python einführt?

Bei EPAM haben wir eine Programmierschule für Kinder von Mitarbeitern - E-Kids. In der Schule bringen freiwillige Mitarbeiter Kindern die Arbeit mit Scratch bei, einer visuellen Programmierumgebung, die speziell für den Unterricht von Kindern und Jugendlichen entwickelt wurde. Aber immer, früher oder später, kommt der Moment, in dem Scratch für Kinder bereits uninteressant wird.

Durch Versuch und Irrtum gelang es unseren Lehrern, einen Weg zu finden, wie sie Kinder weiterentwickeln und unterrichten können, damit sie nicht das Interesse an der Programmierung aufgrund zu komplizierter Aufgaben verlieren. In E-Kids begann man also, eine komplexere Programmiersprache zu unterrichten - Python. In diesem Artikel habe ich nützliche Informationen von Kollegen gesammelt, die in der Schule unterrichten, wie man Kindern Python vorstellt.



Scratch ist eine visuelle Programmierumgebung. Sie müssen den Code nicht manuell eingeben. Sie können schnell das Ergebnis abrufen. Kinder können sofort sehen, wie sich das Projekt ändert, nachdem ein neuer Block hinzugefügt wurde. Mit Scratch müssen Sie keine Zeit damit verbringen, auf der Tastatur nach Buchstaben zu suchen. Außerdem entfällt die schmerzhafte Suche nach Syntaxfehlern im Projekt.

Aber wenn das Kind bereits genug über Scratch gelernt hat, verliert es allmählich das Interesse an der Arbeit. Die Aufgaben beginnen sich zu wiederholen. Scratch kann niemanden mit etwas Neuem überraschen. Das heißt, es ist an der Zeit, über den Wechsel von Scratch zu einer Programmiersprache nachzudenken, in der Sie mit dem Schreiben von Code beginnen können.

Bei der Auswahl einer Sprache sollten Sie nicht nur auf die Erfahrungen der Kinder achten, sondern auch auf deren Alter. Nach den Erfahrungen von E-Kids-Lehrern beträgt das Mindestalter für Kinder, um ihnen das Schreiben von Code anzubieten, 11-12 Jahre.

Trainingsvorbereitung


Warum Python?
Python hat eine einfache Syntax und eine große Community. Wenn das Kind Schwierigkeiten mit der Entscheidung hat, können Sie die Antwort leicht im Internet finden. Außerdem gibt es viele externe Quellen, Aufgaben und Ressourcen, die für unabhängige Studien verwendet werden können.

Hilfsprogramme


Für die Vorbereitung des Unterrichts oder der Hausaufgaben wurden manchmal spezielle Dienste in Anspruch genommen.

  • Code.org - Der Dienst enthält vorgefertigte Aufgaben und eine Beschreibung ihrer Lösung. Diese Aufgaben können nach Operatoren, Schleifen, Funktionen usw. kategorisiert werden.
  • CodeCademy , Python, . .
  • Code Combat — , RPG , . Python, , . , Scratch Python .
  • Kahoot - dieser Service hebt sich ein wenig von den anderen ab, da er nichts mit Python zu tun hat, aber es ist ein wunderbarer Service, sich daran zu erinnern, was in der letzten Lektion passiert ist. Kahoot kann zu Beginn jeder Lektion verwendet werden, damit sich die Kinder an die Schlüsselwörter, Ansätze und Technologien erinnern, über die sie zuvor gesprochen haben. Sie können eine Liste mit Fragen und Antwortoptionen erstellen. Darüber hinaus gibt es eine mobile Anwendung, die eine Verbindung zum Quiz herstellt, sodass Kinder über Telefone antworten können.

Alle von ihnen sind in Englisch, aber kostenlos.

Hilfsbücher


Von der Vielzahl der Bücher empfehlen E-Kids-Lehrer Folgendes:

  • Python für Kinder: Autodidakt Briggs Jason.
  • Python-Programmierung für Kinder , Louis Stowell.

Beide Bücher sind in einer Sprache verfasst, die für Kinder verständlich ist. Außerdem enthalten sie sehr interessante Aufgaben.

Wird eine integrierte Entwicklungsumgebung (IDE) benötigt oder nicht?
IDE , , , , Python. , , PyCharm 2018.2.4 (Community Edition) — IDE.

Konsole gegen Grafik


Jeder ist es gewohnt, dass „Hallo Welt“ normalerweise in die Konsole tippt, aber wenn die Kinder die Konsole sehen, werden sie sofort entmutigt.



Daher ist es besser, Bibliotheken wie Turtle und Tkinter zu verwenden. Beide sind Teil der Standard-Python-Distribution und erfordern keine zusätzliche Installation. Für Kinder wird es einfacher sein, über diese Bibliotheken zu Python zu wechseln, da viele Methoden Blöcke in Scratch wiederholen.



Turtle lässt sich leicht anpassen: Der Hintergrund kann durch ein Bild des Raums und die Schildkröte durch ein anderes Zeichen ersetzt werden.



Mit der Tkinter-Bibliothek können Sie wiederum Fensteranwendungen schreiben. Sie enthält bereits viele Grundelemente mit Schaltflächenschaltern, Schaltern, Flags, Menüs usw. Wenn Sie also Turtle und Tkinter kombinieren, können Sie bereits ein einfaches Spiel schreiben.

Wie schreibe ich ein Spiel in Python


Lassen Sie mich Ihnen ein Beispiel zeigen, wie die Kinder Python im Unterricht bei e-kids kennengelernt haben.

  1. Zunächst wurden die Kinder in Code Combat eingeführt. Hier kann der Charakter auf der Karte gehen, Kristalle sammeln, Feinden mit Hilfe eines Codes ausweichen. Dies ist ein einfaches Spiel, aber die Kinder haben bereits Code geschrieben, und vor allem konnten sie sofort sehen, was davon betroffen war.
  2. Dann stellten sie den Kindern die "Schildkröte" vor. Sie lehrten sie, verschiedene Fraktale zu gehen, zu schreiben und zu malen.
  3. Danach haben wir versucht, Scratch-Blöcke in Python-Code umzuwandeln.

Zum Beispiel wurde die Scratch-Katze von der Funktion addHero mit einem Bild beschrieben, das als Argument an diese Funktion übergeben wurde.



In einem anderen Block beschrieben die Kinder eine Funktion, bei der unser Held ein Argument war, und gaben an, dass er sagen sollte, wie lange und welche Farbe die Inschrift haben würde.

Durch die Kombination dieser Blöcke könnten die Kinder bereits ein Spiel schreiben, das dem ähnelt, das sie auf Scratch entwickelt haben. Einige der Blöcke befinden sich bereits in der Turtle-Bibliothek, andere wurden selbst hinzugefügt.

Der Code, den die Kinder geschrieben haben, war ungefähr so: Es gibt ein Hintergrundbild, einen Helden, Sätze, die er sagt, und Müll, den der Charakter sammeln könnte.



In einem separaten Block haben wir die Logik beschrieben - der Charakter sammelt Müll, wenn er sich in der Nähe des Mülls befindet, sagt er eine Art Satz. Dies ist sehr ähnlich zu der Beschreibung der Zeichenlogik in Scratch. Dort können Sie den Charakter auch öffnen und einige Verhaltensblöcke hinzufügen, nach denen der Charakter zum Leben erweckt wurde.



Im Unterricht erhalten die Kinder eine Vielzahl von Aufgaben, sowohl die Entwicklung des Spiels als auch die Korrektur von Fehlern. Sie können beispielsweise die Blöcke mischen, dann funktioniert das Programm nicht mehr und die Kinder müssen herausfinden, was falsch ist und in welcher Reihenfolge die Blöcke ablaufen sollen.

Der Versuch und Irrtum Pfad


Einige Leute wählen JavaScript oder Java anstelle von Python. Bei einem der E-Kids-Kurse beschlossen die Lehrer, mit Flask, einem Framework zum Erstellen von Webanwendungen in Python, rumzumachen, aber diese Idee stürzte ab. Die Aufgaben waren zu ehrgeizig: zu zeigen, wie man eine Website mit einem Blog, einer Galerie und einem Gästebuch erstellt. Obwohl die Struktur all dieser Komponenten ähnlich war, scheint es, dass die Kinder einfach etwas im Blog ändern und zum Beispiel eine Galerie erstellen könnten. Aber die Lehrer hatten viele Probleme:

  • Wir haben herausgefunden, dass es für Kinder schwierig ist zu erklären, welche Rahmenbedingungen im Prinzip sind. Darüber hinaus stellte sich heraus, dass es selbst einigen Erwachsenen schwer zu erklären war.
  • Kinder mussten mit einer großen Anzahl von Dateien arbeiten, was dazu führte, dass sie verwirrt waren, wo sie was einfügen sollten.
  • Hohe Eintrittsbarriere. Um zu erklären, wie eine solche Webanwendung erstellt wird, mussten Kinder eine Vielzahl von Technologien kennen, einschließlich der Arbeit mit Datenbanken.


Trotz der Tatsache, dass das Durchschnittsalter der Teilnehmer 14-15 Jahre betrug und sie bereits Erfahrung mit Python hatten, verlor fast die Hälfte der Gruppenmitglieder das Interesse an Flask-Klassen, die Kinder zeigten keine Aktivität, sie schrieben einfach um, was ihnen gegeben wurde und tauchten nicht ein Thema.
Aber es kann nicht gesagt werden, dass es ein völliger Misserfolg war, es war eine lohnende Erfahrung.

Fazit


Technologie wird zu einem wichtigen Teil unseres Lebens. Code ist die Sprache unserer Welt, die Mathematik, Logik und Algorithmen kombiniert und eine neue Sicht auf die Welt lehrt.

Durch die Programmierung lernen Sie, wie Sie große Probleme lösen und sie in eine Folge kleinerer, besser handhabbarer Probleme aufteilen. Wir hoffen, dass unsere Klassen Kindern helfen, Probleme effizienter zu lösen und global zu denken.

Das E-Kids-Programm entwickelt sich in Russland, der Ukraine, Weißrussland und Kasachstan. Im Jahr 2019 wurden in Russland 203 Studenten, Kinder von Angestellten, ausgebildet. Darüber hinaus beschäftigen wir uns seit September 2019 mit Kindern aus Waisenhäusern und mit Behinderungen. Mehr als 80 Mitarbeiter haben sich freiwillig für das Programm gemeldet.

Aus verschiedenen Gründen werden Mitarbeiter zu Freiwilligen: Viele von ihnen haben Kinder, und Entwicklungseltern möchten ihnen IT zeigen oder die Lücken in der Schulbildung schließen, und jemand mag einfach den Lernprozess.

All Articles