Mathematik ... pure Mathematik und nur Mathematik!
Nein Scherz - eine Mischung aus Theorie und Praxis sollte es sein.
Aber wenn man alle abholen will - und in den verschiedenen Altersgruppen, sollte man sich einen Plan für jeden Jahrgang machen. Das Jahr ist lang, es kommen einige Stunden zusammen. Problem ist aber, dass viele eher in Ruhe fokussiert arbeiten können und es einige Dinge gibt, wo man schon ne gewisse Zeit braucht.
Manche packt es auch richtig, wenn die zu Hause den Erfolg selbst merken, dass die mehr als benötigt machen.
Lehrmethode: Wissens-Stand erfahren, Tech-Kiddys erkennen und Supporter suchen
Als Informatiker würde ich folgendes vorschlagen - in der Theorie erstmal Grundlagen schaffen und versuchen zu klären wie der Stand ist. Am besten vorher einmal jeden einen Zettel ausfüllen lassen, wo du alle möglichen Themen auflistest + Beispiel und die sollen ihren Wissens-Stand einschätzen auf einer Skala von 0-10. Und die können auch Kreuzchen machen, was sie am meisten interessieren würde (ob in einer Skala oder ob von ausgewählten Themen - kannst dir ja selbst überlegen). Dann weißt auf welche Themen du Schwerpunkte legen kannst oder wen du vllt als Support für Gruppen als Hilfe nehmen kannst - Freiwilligkeit vorausgesetzt.
Die in dem Thema besten Schüler die dann gleichzeitig "Lehrer-Assistenz" spielen, denen stellst du gewisse Fragen, um sein Knowhow zu verifizieren und einzuschätzen. Sollte sich das bestätigen, ist quasi die gute Note garantiert - und wird entsprechend besser je nach Erfüllung seiner Rolle.
Das hilft auch, dass man sich nicht an den Personen aufhängt, die schon alles können - und die sich dauernd melden alles beantworten (wollen). Damit verliert man schnell den Rest.
Wenn viele das Thema kennen, kannst das Thema kürzer machen oder TIEFER gehen.
Lehrmethode: Fragen & Bonus zur Note
-> Überleg dir, ob du jemand für Quiz-Fragen bist.
Vor der Einheit gibt es eine DIN-A4 Seite (oder GANZ am Anfang wie ne Klausur mehrere Seiten) machst, auf dem du zu jedem Thema Fragen mit unterschiedlichen Schwierigkeitsgrad Fragen stellst.
Klassisch stehen natürlich zur Auswahl (je höher die Nummer, desto aufwändiger die Korrektur. 1+2 sogar fix im Unterricht möglich):
-> (1) Multiple-Choice mit Einzel/Mehrfach-Auswahl
-> (2) Lücken-Text und einzelne Wörter reinsetzen ("Beim Spielen von PC-Games wird neben einer schnellen CPU und genügend RAM auch eine schnelle ____________ benötigt.")
-> (3) Erkennen von Behauptungen - Wahr/Falsch/Fangfrage - optional mit Begründung.
-> (4) Frage + Text-Antwort
Betone es, dass es nicht bewertet wird, dass du nicht erwartest das jeder alles richtig hat. Aber wenn
Und am Ende der Einheit ODER am Ende der ganzen Kurse machst du die Gleichen oder ähnliche Fragen nochmal und somit kannst du und die Person selbst den Fortschritt sehen.
Sag du wirst es aber dafür verwenden, wenn das Gefühl entsteht die Note wäre für die Person zu schlecht - hier wären super Ergebnisse natürlich ein Grund für Verbesserungen zu nehmen. Kleine Extra-Projekte, Unterstützung bei anderen oder zwischendurch die Fragen genauso. Und im Notfall zwischen 2 Noten kannst du über kleine mündliche Fragen da die Klärung anbieten. Bei 5 Themen darf die Person 2 raus streichen und zu den übrigen gibt es leichte, mittlere und schwere Fragen.
-> Und eine Bitte ... NIEMALS und wirklich NIEMALS einene Schüler eine 6 geben, weil der sich nicht an die Aufgabe gehalten hat und ne kleine HTML-Webseite mit fetten Bordgeschützen baut (ja das ist Kumpel passiert in der Schule - wäre jemand für Note1+ bzw. 15 Punkte safe).
Lehrmethode: Lehrmaterial & Fileshare
-> Achte drauf, dass du für alle Themen dann die PDFs hast, dass sich die Leute das nachlesen können.
Von der Tafel abzuschreiben ist zwar oldschool, aber man sollte mehr an der Vermittlung und dem Verständnis arbeiten als schnell genug den Stift zu schwingen.
Und am besten auch einen Share haben, wo sich die Schüler die Sachen KOPIEREN können und einzelne Ordner mit unterschiedlichen Berechtigungen, wohin die auch ablegen können (dort einen read-only bereich für ABGABEN von Arbeiten und einen persönlichen Ablagebereich mit Lese+Schreib+Änderungs-Rechten) und andere Schüler keinen Zugriff haben. Einen Schüler-Share zum Austauschen sollte es auch geben.
Das soll auch etwas den Umgang der Schüler mit Dateien austauschen schulen - wo legt man was ab, wie kann man gut die Dateien und Ordner benennen ("C:/Neuer Ordner/Neue Datei (2).txt")
Basics: Starten mit
-> Als erstes immer lernen ... PC-Starten, Browser aufmachen, Suchmaschine (Google vs Alternativen) starten. Kurz handvoll tipp zur Suche. Dann kann sich niemand rausreden
-> Basics zu Word & Excel kannst mit den jüngeren natürlich auch machen, vllt noch bisschen Umgang mit Windows & Linux. Hab vllt einen alten billigen gammeligen Rechner, auf dem du dann das jeweils mal vom Stick installierst (bitte ne SSD und kein Pentium4, sonst reicht die Unterrichts-Stunde nicht aus). Am besten nebenbei die Zeit mit Fragen oder allgemeinen Sachen überbrücken. Oder Aufgaben geben, während das durchläuft. Ist ja nur der Anfang und Ende relevant.
-> Es wird leute schockieren, wie einfach das am Ende ist ... so viele können das nicht! Scheitert am Stick erstellen (am besten vorher zu Hause machen und dann nur zeigen, wie es theoretisch ginge - Schul-Netzwerk ist bestimmt super lahm) ;-)
Basics: Hardware kennen lernen und Fehlersuche
-> Gute Folien/PDF für eine PC-Übersicht und bring einen alten PC mit, den sich interessierte im Innenleben anschauen können. Unter Anleitung auch mal neu verkabeln. Vllt auch als Gruppen-Projekt in Einzelteile zerlegen und die Schüler bauen es gemeinsam zusammen.
-> Schüler müssen zu einzelnen Themen was Präsentieren. Einzelne Hardware-Teile sind dafür immer gut: SSD/HDD, Grafikkarte, CPU, Ram, Mainboard, Netzteil ... ! Einsatzzweck, Anschlüsse, Historie, worauf man achten soll. Eventuell sind zu den Themen noch eine spezielle Bonus-Frage zu recherchieren, z.B. in Foren oder mit Freunde - wichtig sei es sich damit auseinander zusetzen.
-> Vllt hast für wenige Euros IDENTISCHE Office-PCs und 2-4 Gruppen und die werden komplett auseinander gebaut und dann zusammen gesetzt bis zum Booten. Danach nochmal auseinander+zusammen und kleines Wettrennen daraus machen ;-)
-> Pick dir auch ab und zu mal wen raus und achte drauf, was grade besonders im Fokus stand. Z.B. wurde gerade ne Grafikkarte eingebaut, dann frag z.B. eins der Mädels "was ist das?" und wenn sie "Grafikkarte" sagt, trag das in dein Taschen-Notiz-Buch ein mit "+" und lobe es. Das animiert zum Aufpassen ... und am Anfang kann man sich auch nen Tagträumer raus suchen und fragen. Entweder er kennt die Antwort oder merkt mit nem Minus "oh, vllt doch aufpassen!" ;-)
-> Bonus-Verständnis-Ziel: Die Person kann selbst recherchieren, ob PC1 oder PC2 prinzipiell schneller wäre.
[1] AMD FX9370 (8x4.40Ghz), 32GB RAM, 1000GB HDD, AMD HD7950
vs [2] AMD Ryzen5 3600 (6x 4.2ghz), 16GB RAM, 1000GB SSD, AMD RX5700
... als gesamter PC oder Multiple-Choice als Einzelfragen - dann aber geschickter!
-> Ich würde als Praxis-Projekt auch das Thema PC-Informationen und PC-Analyse direkt danach machen.
Nimm die kostenlosen System-Informations-Tools (HWINFO+Speccy) nehmen und die Analyse-Tools (CrystalDiskInfo, HWMONITOR) und Test-Tools (Benchmark, MemTest, usw). Schaffe Verständnis für Themen wie "Was ist in meinem PC drin - wie kann ich das nachgucken?", "Sind meine PC-Komponenten im einwandfreien Zustand?" und "Läuft mein System auch unter Last stabil?". Für Interessierte kannst das Thema Temperaturen, was ist das Problem als Auslöser (schlechte Kühlung, Übertaktung, Lüfterprobleme, Wärmeleitpaste) & deren Auswirkung und was hilft zur Verbesserung einbringen.
-> Du könntest z.B. mal eine defekte HDD (z.b. notebook 2.5") mitbringen + externen USB3.0-Adapter und die Diagnose-Meldung aus CrystalDiskInfo zeigen. Oder kaputten RAM-Riegel mit MemTest86-Stick Fehler zeigen.
-> Wärmeleitpaste auftragen und CPU-Kühler aufbringen hab ich mich erst spät getraut. Weil ich in den späten 90ern sehr viel experimentell kaputt bekommen habe (bzw. andere oft Schuld waren), habe ich das andere machen lassen. Und ich würde sagen das ist neben der SAUBEREN Netzteil-Verkabelung quasi das, was viele nicht so gut können
=> Wenn jemand meint er kann das gut, dann nimm den PC und verändere was beim Einbau: mach ein paar Veränderungen (CPU-Kabel abstecken, Mainboard-Kabel abstecken, Stromkabel abstecken, GPU-Stromversorgung nicht anschließen, SATA-Kabel eine oder beide Seiten abmachen), steck den Power-On-Button ab. Als Kür dann noch die Boot-Reihenfolge verstellen oder AHCI->IDE (=Bluescreen) umstellen. Und dann lass ihn/sie die Fehler finden. Wenn alles zum Booten findet --> Bonus-Punkte. Sowas kann man auch den Personen mit Vorwissen als Aufgabe geben, die in Ruhe gemacht wird, während der Rest die richtigen Basic macht ;-)
Basics: Pixel & Farben
-> Basics sind auch z.B. BITS&Bytes. Und auch Auflösung am PC/Handy - wie setzt sich mit RGB die Farbe zusammen.
-> Kannst ja verschiedene Bilder in verschiedenen Auflösungen zeigen. 320x240 bis 4k. Dann auch zu den Farben - also die Farbtiefe in verschiedenen Bit-Stufen zeigen. Wie viele Bits=Farben, Wie sieht ein Bild mit 16 Farben (4Bits) vs 256 Farben (8Bit) aus? Und was ist überhaupt eigentlich grau in RGB (R=G=B)? Das gleiche mit Graufstufen.
-> Präsentation von Schüler könnte noch die Bonus-Fragen zu (1) Sättigung und Transparenz geben.
und (2) Pixel-basierte Bilder vs Vektorgrafik (SVG).
Netzwerk:
-> Lokal vs Clients<>Server, Verständnis von einem HOST/Hoster schaffen
-> Netzwerk-Technologien: LAN vs Wlan vs Internet: Schaff etwas Verständnis für IPv4 und für IPv6 (warum reicht ipv4 nicht für die welt, warum ipv6 schon), Adress-Bereiche? Bisschen DHCP, wo im Lan mit Ipv4 jedem ne IP-Adresse gegeben wird, worüber im Netzwerk kommuniziert wird. Warum ist Verschlüsselung bei WLAN wichtig und welches sollte man nicht mehr nutzen, welches schon. Eventuell auch mal Netzwerk-Settings ohne DHCP mal selbst machen und 2-3 Rechner kommunizieren lassen (z.B. Filezilla-Server + Client oder ein IPv4 Chatclient oder Blobby-Volley ^^). Danach Thema Firewall einführen - wenn man das Verständnis entwickelt hat, dass ja nicht jede Art von Kommunikation aus der Welt gewünscht wird - passt auch zum Thema ROUTER.
-> Praxis: einen Switch mitnehmen, mehrere LAN-Kabel
-> Bonus-Fragen Personen: Unterschied HUB vs SWITCH, was ist RJ45, Kabel-Typen U/UTP vs S/FTP, Kabel-Speed (10mbit 100mbit vs 1000mbit vs 10gbit)
Datenbanken:
-> Datenbanken - Beginn mit Excel als Basic, erzählt den Grundlagen über Datenbanken (wozu benutzt man das? warum braucht man die, wenn man Millionen/Milliarden/Billionen von Daten hat - z.B. am Beispiel von gigantischen Daten wie Google/Facebook, ...
-> Bonus: kannst ja kurz an SQL und NoSQL für die SEHR Interessierten was erzählen.
-> Als Praxis-Projekt wäre hier auch denkbar für verschiedene Gruppen da verschiedene Schemata mit Daten zu bauen mit verschiedenen Schwerigkeitsstufen. Person, Klasse, Klausur[Noten],... ). Am besten mit einem Muster da zeigen, wie das aussieht und die müssen es in adaptierter Logik nachmachen in der jeweiligen DB.
-> Ich würde für ein Projekt vorschlagen, dass ihr eine kleine Quiz-Fragen-Datenbank mit Multiple-Choice aufbaut.
FRAGE (id, Thema/Beschreibung, Schwierigkeitslevel) mit n
ANTWORTEN (id, FK_frage_id, Text, korrekt <boolean>). Und dann
QUIZ (id, titel) mit einer NxM-Tabelle
Quizfragen (id, FK_quiz_id, FK_frage_id) womit man dann verschiedene Quiz zu den einzelnen Themen erstellen kann ... da lassen sich sehr schnell dann auch von Schülern was zusammen stellen als Test-Daten.
-> Über XMPP oder anderen lokalen Instanzen kann das jeder lokal dann machen.
-> Die DB-Oberfläche selbst nutzen um Daten einzutragen vs z.B. MySQL-Befehle abfeuern. Am besten dann eine .SQL-Datei erstellen mit Fragen
Programmieren
-> Programmieren ist immer gut - aber liegt nicht jedem. Also bitte kein klassisches C oder C++, es ist zu mächtig und schwer zum Einsteigen. Java/C# wären besser, guck aber ob du da nicht noch was high-level mäßiges findest. Kotlin/Python vllt? Grundlagen der Basics wie Datentypen (boolean, Number, String, evtl. noch Liste), einfache Berechnungen, String-Manipulation, IF/ELSE, Schleifen. Am besten noch Objekt-Orientierte Klassen. Evtl. mal einen einfachen REST Service bauen, der mit Hibernate auf eine DB Zugriff hat und das im DB-Teil erstellte Schema nutzt. Bitte auch nicht im Text-Editor anfangen selbst zu schreiben und zeilenorientiert selbst zu kompilieren - sondern direkt mit einer gratis IDE (Visual Studio Community, Eclipse, SpringToolSuite, NetBeans, IntelliJ ♥, Visual Studio Code ... ) starten. Je einfacher der Einstieg, desto besser!
Ein kleines Hello-World Beispiel mit neuen Projekten geht immer zum Starten. Danach kannst du ja wie gesagt einen Rohling nehmen, wo schon Basics integriert sind zum Starten und dann wird hier wie gesagt einfach nur entsprechend ergänzt. Oder du nimmst etwas, wo man mit Klicki-Klicki sich ne Oberfläche zusammen bauen kann und hinter den Buttons und Textfeldern Logik anbaut - aber die Dinger sind nicht selten fragil.
Wichtig wäre hier auch noch die Boolsche-Algebra mit UND &&, ODER || und Klammern für paar Abfragen wie z.B. mit Gültigkeitsprüfung von Alters-Eingaben.
Eine Android-App wäre natürlich auch ne Idee - aber das ist nicht so perfekt zum Testen. Wäre eher als Projektarbeit eine Idee.
Ein kleiner REST-Service zum Daten-Lesen, Daten-Einfügen der DB-Daten und ggfalls Ändern wären natürlich super.
Webseiten / Webentwicklung
-> Einfache Mini-Webseite bauen ist auch immer gut für erste Erfahrungen, die JEDER erlernen kann. Aber die Lernkurve überfordert je nach Technik die Leute und es siebt sich sehr fix aus. Paar Beispiele mit HTML->CSS -> PHP/JavaScript/Angular/etc ... immer selbst irgendetwas bauen, dann als Muster behalten - danach entfernst du bestimmte Abschnitte und zeigst als Beispiel diese Füllung und was damit entsteht. dann hoffen, dass einer vllt Bock auf ein Praxis-Projekt hat, der tief eintauchen will.
Groß-Projekt: Teil-Themen verbinden
-> ... und die Kür wäre natürlich ein Geschmeinschaftsprojekt, wo sich die einzelnen Teams dann um die unterschiedlichen Teile kümmern. Von DB über Zugriffslogik vom Service bis zur Oberfläche zur Darstellung+Eingabe. Aber dafür müssen die anderen Sachen wirklich vorhanden sein und Hilfe bei dem Zusammen setzen entstehen. Wenn das für alle aus dem Netzwerk heraus benutzbar ist, wäre das natürlich guter Erfolg, wenn man sieht wie sich das alles zusammen fügt.
-> Ziel ist es dann auf der Oberfläche mein Beispiel mit dem QUIZ zu nehmen und ein Quiz aus einer Liste auszuwählen. Dann geht der die Fragen nacheinander in dem Quiz durch, checkt beim Antworten ob diese korrekt sind. Die kür wäre dann die richtig/falschen am Ende anzuzeigen oder einfacher-modus nur bei richtiger Antwort zur nächsten Frage gehen lassen.
-> Bonus-Aufgabe für Unterforderte Note1 Kandidaten: Auf einer 2. Seite Quiz & Fragen verwalten können ^^
Groß-Projekt: Aufgaben & Rollen
-> Hier würde ich anknüpfen an das Thema "Informatiker sind nicht alles Code-Monkeys" sondern ein Team aus verschiedenen Rollen, Aufgaben, Fähigkeiten, usw und entsprechend daraus die Rollen-Vergaben machen.
Also eine Person bekommt die Leitung über das Gesamt-Projekt "Projektleiter/in" und übernimmt die Kommunikation, überwacht den Zustand und gibt auch Status-Meldungen (Mädchen sind kommunikativer, Klassensprecherin - why not?). Natürlich sollten nicht die mit mehr Know-How alle in einem Team sein, sondern sich gut verteilen - aber nicht alles für den Rest machen, dass die verdrängt werden.
Dann in den Teil-Teams: Ein Entwickler-Team "Programmierung vom Service", ein Team-Datenbanken, ein Team-Oberfläche, ... und natürlich - einem Tester ;-)
-> Alternativ je nach Personenanzahl könnte man auch mehrere solcher kleinen Teams machen, wo dann Datenbank, Entwickler usw nicht Teams, sondern Einzelpersonen sind. Da kann man zum Schluss noch Awards vergeben: Wer hat die schönste Oberfläche gebaut? Wer hat die besten Fragen erstellt? Wer hat am schnellsten eine lauffähige Version erstellt?
-> Am Ende dann noch die Fragen: Konntet ihr eure Rolle bleiben und sie erfüllen? Was war schwer, was lief nicht so gut? Was hättet ihr gerne anders gemacht oder was hättet ihr euch mehr gewünscht?
-> Schaffe das Bewusstsein, dass nicht jeder ALLES macht. "Fullstack-Entwickler" sind oft nur der Wunschgedanke in Firmen, in der Praxis seltener. Mach ruhig hier eine Liste von Aufgaben in Firmen, was für Leute im Bereich Informatik alles gesucht wird. Mal Abseits der Elektro-Technik gibt es in Firmen Admins, System-Integratoren für Hardware und Software, Grafiker / 3D-Modelling, Security, die verschiedenen Programmierer Frontend + Backend für verschiedene Programmiersprachen - von Webprogrammierung bis zu klassischen Sprachen oder Großrechner-Systemen, Datenbankler, (Backend vs Frontend), Tester, Projekt-Leitung, dazu noch weitere wie Scrum-Master.
Und damit alles möglichst schnell in kurzer Zeit klappt, am besten vorher selbst das einmal machen, um das Level selbst einzuschätzen und eine Musterlösung selbst zu haben.
Dann baust du in kleinerer Aufgabe (Z.B. Thema "Klasse->Schüler-Liste") eine Lösung, deren Anleitungs-Schritte du dann im einem Dokument festnimmst, woran die Schüler sich lang hangeln können. Z.B. Code zum adapteren, ganz wichtig wo dann die URL/IPs eingetragen werden und wie die aussehen, wie der Service aussieht oder wie man etwas Schritt für Schritt deployed oder was auch immer.
Roboter
-> Und nebenbei gibt es noch Sachen wie Legotechnik-Mindstorms, Arduino und fischertechnik robotics, womit man noch diverse Projekte machen kann. Aber das ist nix zum Mitnehmen (und nicht zum dann vollständig zurück erhalten ^^). je mehr Oberfläche das mit Bildern ist und weniger Code, desto früher kann man das schon einsetzen. Die Kosten zum Beginn sind aber zu beachten!
3D-Druck wäre natürlich sau cool, aber wie viel bringt einem das? Wenn das bei dir zu Hause da ist, kann man ja mal vor Ort was zeigen. Ansonst halt nur in der Theorie mal durchgehen und vom beispiel der ISS erzählen, wie ein dort benötigtes Teil auf der Erde modelliert wurde und im All per 3D-Drucker ausgedruckt wurde. Vielleicht auch drauf eingehen, wie in Zukunft hier die Welt sich entwickeln könnte, z.B. ausdruckbare günstige Prothesen, auf den Fuss perfekt abgestimmte Schuhe/Einlagen, Klimmbimm für den Weihnachtsmarkt ^^, ...
So das ist was mir spontan einfach mal einfällt
ich hab das mal versucht zu clustern ... ich hoffe durch die Änderungen liest sich das nicht zu wirr oder wiederholt sich. Es ist auch schon rech spät ^^