Einbindung von Konversationen in das Debugging
Immer wenn Schüler einen Roboter programmieren, um eine Herausforderung zu meistern, ist die Erfüllung der Aufgabe nur ein Teil dessen, was sie lernen. Eingebettet in diese Herausforderung sind breitere Lernziele rund um Codierungskonzepte oder Pfadplanung oder Zusammenarbeit usw. Wenn es jedoch darum geht, den Schülern bei der Fehlersuche oder Fehlerbehebung eines Projekts zu helfen, besteht unser Impuls zu oft darin, sozusagen „das Feuer zu löschen“ und Lösungen zu geben oder Befehle anzubieten, die das Projekt für unsere Schüler „reparieren“. Während dies die Schüler dazu bringen könnte, die Aufgabe zu erledigen, hilft es ihnen nicht unbedingt, die größeren Ziele der Herausforderung zu erlernen, noch ist es für uns als Lehrer nachhaltig. Und wenn es darum geht, das Lernen der Schüler zu bewerten, gibt das Wissen um das Endergebnis des Projekts nicht unbedingt ein genaues Bild des Verständnisses der Schüler.
Eine der besten Möglichkeiten, um herauszufinden, ob ein Schüler ein bestimmtes Konzept verstanden hat, besteht darin, ihn danach zu fragen. Das kann auch für den Prozess des Debuggens gelten. Die Integration von Gesprächen in unseren Debugging-Prozess kann den Schülern helfen, langsamer zu werden, ihre Projekte zu durchdenken, sinnvolle Programmierdiskussionen zu führen und mehr zu lernen, als nur den Roboter von Punkt A zu Punkt B zu bringen. Dies gibt uns nicht nur wertvolles formatives Feedback, sondern macht den Prozess auch schülerorientierter, indem die Erklärung der Schüler und die Agentur in den Mittelpunkt des Debuggens gestellt werden.
Identifizieren der Absicht
Bevor wir mit dem Debuggen beginnen können, müssen wir eine wichtige Sache wissen – was soll dieses Projekt tun? Debugging oder Fehlerbehebung tritt ein, wenn der Roboter etwas anderes tut, als geplant oder vorhergesagt wurde. Als Lehrer kennen wir die Aufgabe oft, aber das Schöne an der Informatik ist, dass es mehrere Möglichkeiten gibt, ein Problem zu lösen. Wie geht diese bestimmte Gruppe also an die Aufgabe heran? Wenn die Schüler ihren Plan artikulieren, erhalten sie wertvolle Einblicke in ihr Verständnis der Herausforderung als Ganzes. Verstehen sie, was sie auf hohem Niveau tun sollen, und haben sie dann eine Strategie, um die Herausforderung zu lösen, die Sinn macht?
Ermöglichung von Programmiergesprächen
Diese ersten Fragen und Aufforderungen können Ihnen und Ihren Schülern helfen, langsamer zu werden und wirklich darüber nachzudenken, was sie mit ihrem Roboter zu tun versuchen. Abhängig von den Lernzielen der Schüler variieren die Arten von Gesprächen, die Sie führen. Für unerfahrene Programmierer können Sie sich mehr auf Dinge wie Sequenzierung und Dekomposition konzentrieren - verstehen die Schüler die Schritte, die erforderlich sind, um die Aufgabe zu erledigen, und die Reihenfolge, in der diese Verhaltensweisen vom Roboter ausgeführt werden müssen? Wenn die Schüler weiter fortfahren, möchten Sie sich vielleicht mehr auf die Problemlösung oder Iteration konzentrieren - wissen die Schüler, wie sie feststellen können, ob ihre Iterationen effektiv sind?
Beispielaufforderungen aus dem Artikel Erleichtern von Programmierkonversationen
Während des gesamten Debugging-Prozesses sind diese Arten von Gesprächen ein wichtiges Werkzeug, um Ihnen zu helfen, zu verstehen, wo sich die Schüler in ihrem Lernprozess befinden, sowie in ihrem Codierungsprozess. Dieser Artikel (von dem ein Teil hier abgebildet ist) enthält einige großartige Aufforderungen und Fragen, die Sie verwenden können, um Programmiergespräche mit Ihren Schülern basierend auf ihren Lernzielen zu erleichtern.
Sie könnten die Aufforderungen aus diesem Artikel in Ihrem Klassenzimmer veröffentlichen, damit Schüler und Lehrer beide auf sie verweisen können. Wir können diese Gespräche modellieren, um die Erwartungen der Schüler festzulegen, aber es ist wichtig, dass die Schüler dieselben Programmiergespräche miteinander führen, um ihre Fähigkeiten zum kollaborativen Programmieren auszubauen. Im Laufe der Zeit kann sich die Stimme des Lehrers als "Führer" des Gesprächs gegenüber den Schülern, die sie für sich selbst führen, verändern und der Idee des schülerzentrierten Lernens auf hörbare, echte Weise eine Stimme verleihen.
Fortführung von Gesprächen während des Debuggens
Diese Unterhaltungen können fortgesetzt werden, während Sie mit dem Debuggen des Projekts arbeiten. Sobald Sie festgestellt haben, dass die Schüler das Ziel verstehen und was ihr Plan zur Lösung des Problems ist, haben Sie einen Ausgangspunkt, wenn Sie den Code mit dem beobachteten Verhalten des Roboters vergleichen, um zu sehen, wo und wie Probleme auftreten. Dies ist der Teil, durch den wir uns oft beeilen, aber dass wir wirklich davon profitieren können, langsamer zu werden und mit unseren Schülern zu sprechen.
Wussten Sie schon?
Bevor Sie tief in das VEXcode-Projekt eintauchen, stellen Sie sicher, dass Ihr physischer Roboter richtig gebaut und konfiguriert ist.
Überprüfen Sie immer, ob die Kabel sicher angeschlossen sind und sich an den richtigen Anschlüssen befinden, dass die Roboterkonfiguration mit dem Aufbau übereinstimmt, dass der Akku geladen ist und die Firmware des Gehirns auf dem neuesten Stand ist.
Dies sind einfache Korrekturen, die das Problem lösen und es den Schülern ermöglichen, sich wieder auf ihr Informatik-Lernen und die Programmier-Herausforderung im Allgemeinen zu konzentrieren.
Eine Möglichkeit, diese Gespräche in das Debuggen einzubauen, besteht darin, die Projektausführung physisch zu verlangsamen, um Ihnen und Ihren Schülern Zeit zu geben, Vorhersagen darüber zu treffen, was der Roboter bei jedem Schritt des Projekts tun wird. Es gibt mehrere Möglichkeiten, wie Sie dies tun können:
- Verwenden Sie Geschwindigkeitsbefehle, um den Antrieb des Roboters zu verlangsamen und die Geschwindigkeit auf 10 oder 20 % zu erhöhen, damit er sich langsamer durch das Projekt bewegt und Sie darüber sprechen können, was als nächstes passieren wird und warum.
- Verwenden Sie die Schrittfunktion in 123, GO oder VR, um die Projektausführung zu steuern, indem Sie jeweils einen Block ausführen. Bevor ein Block ausgeführt wird, können Sie die Schüler vorhersagen lassen, was der Roboter tun wird und warum, und dann durch diesen Block gehen, um zu sehen, ob das tatsächliche Roboterverhalten mit der Vorhersage übereinstimmt.
- Führen Sie kleine Abschnitte eines Projekts gleichzeitig aus, um klarer zu identifizieren, wo sich die Trennung befindet. Sie können Befehle aktivieren oder deaktivieren oder beim Codieren mit Blöcken Blöcke vom Stapel trennen, um nur die mit dem {When started} Block verbundenen Blöcke auszuführen.
Während Sie sich langsamer durch das Projekt bewegen, können Sie Fragen stellen, um den Schülern zu helfen, ihr Lernen anzuwenden, um Vorhersagen über das Verhalten des Roboters während des gesamten Projekts zu treffen. Als Fragen wie:
- Was wird der Roboter Ihrer Meinung nach tun, wenn dieser Block/Befehl ausgeführt wird? Warum?
- Wie weit wird sich der Roboter bewegen? Woher weißt du das?
- Wohin wird sich der Roboter drehen? Warum?
- Welches Sensor-Feedback verwendet das Projekt hier? Wie wird es verwendet?
Mit diesem Konversationsprozess haben Sie und Ihre Schüler die Möglichkeit zu sehen, wo die Trennung aus einer Lernperspektive liegt. Dies hilft Ihnen nicht nur, effektive Problemlösungspraktiken zu modellieren, sondern auch, das Verständnis der Schüler für ihren Code auf konzeptioneller Ebene aufzubauen und sie so einzurichten, dass sie dieses Lernen auf zukünftige Projekte und Herausforderungen anwenden können.
Verständnis mit Debugging-Gesprächen aufbauen
Eine weitere Möglichkeit, das Ziel des konzeptionellen Verständnisses zu erreichen, besteht darin, Debugging-Tools als Ausgangspunkt für Gespräche zu verwenden, die dazu beitragen, abstrakte Konzepte sichtbar und leichter verständlich zu machen. Zum Beispiel bietet die Monitor-Funktion in 123, GO und VR oderdas Drucken von Werten auf den Brain-Bildschirm oder die Druckkonsole für IQ, EXP oder V5 den Schülern die Möglichkeit, Sensordaten zu sehen, während ein Projekt in Echtzeit ausgeführt wird.
Im obigen Projekt besteht die Aufgabe darin, mit dem Augensensor durch das Farbscheibenlabyrinth zu navigieren. Der Monitor zeigt die Sensordaten für jeden der Booleschen Reporterblöcke im Projekt an. Als konversationelles Lehrmittel kann dieses Projekt für Studenten durchgeführt werden, während darüber gesprochen wird, welche Sensordaten gemeldet werden und der Projektablauf auf diesen Daten basiert.
Es wurden einige Anpassungen am Projekt vorgenommen, um die Sensordaten während der Projektlaufzeit hervorzuheben. Die Geschwindigkeit des Roboters wird verlangsamt, und die Blöcke [Stop driving] und [Wait] werden hinzugefügt, damit die Überwachungsdaten länger angezeigt werden können, sodass die Schüler Zeit haben, das Verhalten des Roboters und/oder die Sensordaten vorherzusagen, die bei der Ausführung des Projekts gemeldet werden.
Dies ist ein Beispiel dafür, wie Projekte konstruiert werden können, um absichtlich ein größeres Lernziel zu präsentieren, z. B. das Verständnis des Projektablaufs mit Sensorfeedback, anstatt am schnellsten ans Ende des Labyrinths zu gelangen.
Letztendlich ist es unser Ziel, dass nicht nur alle Schüler erfolgreich durch das Labyrinth navigieren, sondern auch, dass sie verstehen, wie und warum ein Projekt erfolgreich war. Die Verlangsamung unseres Debugging-Prozesses, die Einbeziehung von Gesprächen in unsere Praxis und der Aufbau von Projekten zur bewussten Präsentation von Konzepten können uns helfen, den Grundstein für das Verständnis von Informatikkonzepten zu legen und die Motivation zu haben, dieses Lernen im Laufe der Zeit zu erweitern und darauf aufzubauen.
Wohin geht es von hier aus?…
- Teilen Sie uns mit, wie Sie diese Strategien in Ihre Arbeit mit Schülern integrieren, indem Sie Ihre Geschichten in der PD+ -Community teilen, oder vereinbaren Sie eine persönliche Sitzung, um darüber zu sprechen, wie Sie dies in Ihrem Umfeld anwenden können.
- Suchen Sie nach den nächsten Schritten zur Fehlerbehebung mit Sensoren? Schauen Sie sich diese Artikel für 123, GO, IQ (1. Generation oder 2. Generation), EXP, V5 oder VR an.
- Möchten Sie mehr über den Unterricht mit VEXcode und insbesondere VEXcode VR erfahren? Schauen Sie sich die VEX Masterclass "Making the Most of Teaching with VEXcode VR" an.