Mit der Initiative „Computing for All“ (#CSforall) von Präsident Obama und dem wachsenden Fokus auf MINT (Naturwissenschaften, Technik, Ingenieurwesen und Mathematik) sind wir an einem Punkt angelangt, an dem wir Computer für Kinder bauen müssen. Es ist Zeit für Standards und Best Practices in der Bildung . Die Branche ist sich einig, dass visuelles Programmieren der beste Weg ist, Kindern Informatik und rechnerisches Denken beizubringen. Dadurch kann die schwierige Programmiersyntax beseitigt werden und Kinder können sich bereits in sehr jungem Alter flexibel mit dem Wesen der Softwareprogrammierung vertraut machen.
Verbesserte Logo-Sprache
In den letzten fünfzig Jahren haben Designer die von Seymour Papert entwickelte Programmiersprache Logo (LCTT-Anmerkung: Einige Schüler hätten die „kleine Schildkröte“ sehen sollen) weiter verbessert und eine große Anzahl von Programmiersprachen mit leicht unterschiedlichen Schnittstellen entwickelt Es sind die gleichen Kernideen entstanden. Dank der Beliebtheit der MIT-Programmiersprache Scratch basiert der aktuelle Unterrichtsstandard auf der Programmierung von Modulen (Blöcken). Die K-12-Informatikunterrichtsstandards der CSTA erfordern für die Klassen K-5 die Programmierfähigkeit, „Lösungen mithilfe einer modulbasierten visuellen Programmiersprache zu erstellen und zu testen“ .
Immer jünger werden
Ein weiterer Trend im Informatikunterricht ist, dass das Publikum immer jünger wird. Studien zeigen, dass Kinder bereits im Alter von fünf Jahren in der Lage sind, die Konzepte der Computerprogrammierung zu verstehen, daher ist dies ein unvermeidlicher Trend. Um Kindern, die noch nicht lesen können, das Programmieren beizubringen, müssen Sie die Verwendung von Wörtern vermeiden. Aktuelle First-Level-Kurse wie Scratch Jr und Code.org verwenden in modulbasierten Programmiersprachen Symbole anstelle von Text.
Roboterprogrammierung
Zu sehen, wie Ihr Code zum Leben erweckt wird, ist etwas Magisches. Bereits zu Beginn dieses Jahrhunderts arbeiteten LEGO und MIT an einem Projekt, um modulbasierte Programmierung in die reale Welt zu bringen. Schüler können Programme auf ihren Computern schreiben und diese dann in die von ihnen gebauten Roboter herunterladen. Das frühe RIS (Robotics Invention System) sah Scratch sehr ähnlich.
Die 2013er Version von Lego Mindstorms macht die meisten der gleichen Dinge wie die Vorgängerversion, ist jedoch komplexer geworden. Es ist jetzt möglich, dem Modul Eingabeparameter hinzuzufügen, um Distanz, Zeit, Ausgabe usw. anzugeben.
Martin Exner hat eine prägnante Infografik erstellt , die die von Logo und neuerdings auch von Scratch abgeleiteten Programmiersprachen zusammenfasst. Viele Derivate der Logo-Sprache konzentrieren sich auf bestimmte Szenarien, wie das Erstellen von Spielen, das Erstellen von 3D-Storyline-Umgebungen, das Zeichnen von Bildern, das Programmieren von Robotern und sogar die Steuerung virtueller Aquarien. Dieser Ansatz spricht eine Vielzahl von Kindern an, aber vielen Kindern fällt es immer noch schwer, das Schreiben eines Programms zu lernen.
Programmierideen basierend auf Logo
Im wirklichen Leben erfordert die Computerprogrammierung normalerweise die Berücksichtigung verschiedener Arten von Eingaben und die gleichzeitige dynamische Verarbeitung verschiedener logischer Urteile. Lassen Sie uns ein einfaches Beispiel dafür geben, was wir nach dem Aufstehen tun sollen: Wenn es Samstag und Sonntag ist, gehen wir zum Spielen nach draußen; wenn es Montag ist, müssen wir Sportkleidung anziehen; den Müll rausbringen; nicht am Wochenende an den Tagen, an denen wir zur Schule gehen müssen. Die mit Scratch implementierte Logik ist unten dargestellt.
Zusätzlich zu diesen modulbasierten Programmiersprachen gibt es eine neue Sprache, die einen anderen Ansatz verfolgt, um Kindern das Programmieren beizubringen. Im Jahr 2015 entwickelte Wonder Workshop eine neue Programmiersprache namens Wonder, die eine Stream-basierte Programmierschnittstelle nutzte . Wonder ermöglicht es den Schülern, sich auf die Verbindungen einiger vordefinierter Funktionseinheiten (oder Anweisungen) zu konzentrieren, um eine Zustandsmaschine zu erstellen. Der Roboter befindet sich zu jedem Zeitpunkt in einem bestimmten Zustand; er führt eine Aktion aus, und wenn eine Eingabe erfolgt, ändert er sich, um eine andere Aktion auszuführen.
Die folgende Abbildung zeigt, wie Sie mithilfe eines flussbasierten Ansatzes Aufgaben nach dem Aufstehen ermitteln können.
Diese Programmiersprache entfernt sich nicht nur vom Paradigma der linearen Programmierung, sondern bietet auch einen anderen Ansatz für die Datenverarbeitung, der es Schülern ermöglicht, Reaktionen auf Veränderungen in der realen Welt auf leicht verständliche Weise zu simulieren. Schüler können Probleme leichter in kleinere Teile zerlegen und diese Teile dann zur Lösung komplexer Probleme verwenden. Die Schüler müssen sich beim Lösen von Problemen jeweils nur auf ein Problem konzentrieren. Dieser Vorgang wird als Zerlegung bezeichnet und ist sowohl Grundwissen im Computerbereich als auch der Entwurfszweck von Wonder.
Es gibt viele Beispiele für Roboter und Zustandsmaschinen in unserem täglichen Leben, und sie werden immer häufiger eingesetzt. Wenn Sie die richtige Münzkombination einwerfen, gibt Ihnen der Automat das entsprechende Essen. Ein selbstfahrendes Auto entscheidet anhand der Hindernisse um es herum, wie es sich fortbewegt. Zustandsmaschinen können außerdem eine Vielzahl von Problemen weiter modellieren, darunter Sprachanalyse, künstliche Intelligenz, Kommunikationsprotokolle, Charakteränderungen in Spielen und sogar neuronale Netze.
Mit zunehmender Verbreitung von Robotern werden Lehrer darin geschult , modulbasierte Programmierung als Standard für den Informatikunterricht für Kinder zu verwenden. Da es in immer mehr Klassenzimmern Einzug hält, sollten wir uns fragen, ob dies die richtige Richtung ist. Gibt es eine andere bessere Möglichkeit, Kindern das Programmieren beizubringen?
Die Raubkopien von „Celebrating More Than Years 2“ wurden auf npm hochgeladen, was dazu führte, dass npmmirror den Unpkg-Dienst einstellen musste und sich gemeinsam mit Hunderten von Menschen in die USA begab Front-End-Visualisierungsbibliothek und Baidus bekanntes Open-Source-Projekt ECharts – „Going to the Sea“ zur Unterstützung Fischbetrüger nutzten TeamViewer, um 3,98 Millionen zu überweisen! Was sollten Remote-Desktop-Anbieter tun? Zhou Hongyi: Für Google bleibt nicht mehr viel Zeit. Es wird empfohlen, dass alle Produkte Open Source sind. Ein ehemaliger Mitarbeiter eines bekannten Open-Source-Unternehmens brachte die Nachricht: Nachdem er von seinen Untergebenen herausgefordert wurde, wurde der technische Leiter wütend hat die schwangere Mitarbeiterin entlassen. Google hat gezeigt, wie man ChromeOS in einer virtuellen Android-Maschine ausführt. Bitte geben Sie mir einen Rat, welche Rolle time.sleep(6) hier spielt. Microsoft reagiert auf Gerüchte, dass Chinas KI-Team „für die USA packt“. People's Daily Online kommentiert die matroschkaartige Aufladung von Bürosoftware: Nur durch das aktive Lösen von „Sets“ können wir eine Zukunft haben