Programmiersprache für Mittelschüler

Guten Tag,
ich biete in der Mittelschule ab dem 2. Semester einen kleinen
Computerkurs an, indem ich gerne auch kleinere Programme mit den
Schülern erstellen möchte. Habe schon ein wenig mit Python im Unterricht
experimentiert. Bin mir aber nicht sicher ob Python die richtige Sprache
zum Lernen ist. Welche Programmiersprache würde mir die Liste
vorschlagen? Wenn möglich sollte sie frei zugänglich sein.

Grüße,
Peter

Guten Tag,
ich biete in der Mittelschule ab dem 2. Semester einen kleinen
Computerkurs an, indem ich gerne auch kleinere Programme mit den
Schülern erstellen möchte. Habe schon ein wenig mit Python im Unterricht
experimentiert. Bin mir aber nicht sicher ob Python die richtige Sprache
zum Lernen ist. Welche Programmiersprache würde mir die Liste
vorschlagen? Wenn möglich sollte sie frei zugänglich sein.

Einen einfachen BASIC-Dialekt mit 2D Graphikprimitiven?
Ich sehe auf Wikipedia es gibt auch im Jahr 2007 noch eine Unmenge davon.
Koennte aber nicht sagen welche davon sinnvoll sind... musst wohl ein
wenig testen.

Bye, Chris.

PS:
<nostalgie>
hey, wer erinnert sich noch an Simons' BASIC? :slight_smile:
</nostalgie>

Peter Moser wrote:

Guten Tag,
ich biete in der Mittelschule ab dem 2. Semester einen kleinen
Computerkurs an, indem ich gerne auch kleinere Programme mit den
Schülern erstellen möchte. Habe schon ein wenig mit Python im Unterricht
experimentiert. Bin mir aber nicht sicher ob Python die richtige Sprache
zum Lernen ist. Welche Programmiersprache würde mir die Liste
vorschlagen? Wenn möglich sollte sie frei zugänglich sein.

Python ist meiner meinung nach die beste Wahl. Eine verbreitete Sprache
ist sicher sinnvoller als eine reine "Lehrsprache".

Ich weiß zwar nicht, in welchem alter Mittelschüler üblicherweise sind,
aber schau dir das mal an:
http://kidbasic.sourceforge.net/

grüße
Matthias

Chris Mair schrieb:

Einen einfachen BASIC-Dialekt mit 2D Graphikprimitiven?
Ich sehe auf Wikipedia es gibt auch im Jahr 2007 noch eine Unmenge davon.
Koennte aber nicht sagen welche davon sinnvoll sind... musst wohl ein
wenig testen.

Ich würde den Kindern nicht ein veraltetes Basic aufschwätzen, sondern
versuchen eine Programmiersprache zu lehren, auf die sie dann auch in
ihrer Zukunft aufbauen können.

Python scheint dafür wie geschaffen zu sein. Man kann damit sehr
primitive Programme implementieren. Das gute alte HelloWorld ist ein
Einzeiler:

print "Hello Free Software Hackers ;)"

Python findet man aber auch immer mehr in den verschiedenste Anwendungen
als Script-Erweiterung.

Und mit Python kann man auch ernste 2D, 3D Anwendungen sowie
Applikationsserver und CMS (Zope/Plone) erstellen.

Als alter Java Hacker und da Sun Microsystems dabei ist Java
freizugeben, muss ich auch auf die große Verbreitung von Java aufmerksam
machen. Vor allem die Möglichkeit fürs eigene Handy etwas zu basteln.
Java hat aber eine größere Einstiegshürde als Python und daher würde ich
heute in einer Mittelschule mit Python beginnen.

Ich rate von einer Programmiersprache ab, die nur für akademische Zwecke
(noch) existiert oder gar nur für den Unterricht geschaffen wurde. Es
gibt nichts deprimierenderes als ein Programm zu schreiben, das nur vom
Lehrer verstanden wird, welches keiner benötigt und das nur auf dem
Schulrechner läuft.

Bei dieser Gelegenheit möchte ich auf ein Projekt aufmerksam machen,
welches eine Kursklasse von Netzwerktechnikern an der Landesberufsschule
Tschuggmall in Brixen als didaktische Übung erstellt haben. Diese Jungs
haben nur ca. 120 Stunden Java, auf 2 Jahre aufgesplittet und sind (fast
alle) ohne jeglicher Programmierkenntniss gestartet. Trotzdem und vor
allem dank der aufgebrachten Begeisterung haben sie im Unterricht ein
eigenes Projekt gestartet:

http://dev.cocos.bz/projects/castaway/

Der Kurs ist zu Ende, wir hoffen aber, dass am Projekt weitergebaut
wird. Als erstes benötigt es Tester und dann muss im Code ein wenig
aufgeräumt werden. Im Großen und Ganzen ist es aber schon
funktionsfähig. Das heißt es startet :wink:

Die Motivation im Unterricht war überdurchschnittlich hoch, weil die
Teilnehmer an ein sinnvolles Projekt arbeiten durften. Hautzutage gibt
es die technischen und kulturellen Voraussetzungen im
Informatikunterricht etwas zu erstellen, welches nicht nur dazu dient
eine Bewertung zu geben, sondern über den Unterricht hinaus einen Nutzen
haben kann.

Happy hacking!
Patrick

p.s. Ich habe meinem Bruder vor ein paar Jahren (als er noch kleiner
war) das Buch "Python für Kids" von Gregor Lingl gekauft. Das könnte für
die Mittelschüler vielleicht interessant sein!?

> Guten Tag,
> ich biete in der Mittelschule ab dem 2. Semester einen kleinen
> Computerkurs an, indem ich gerne auch kleinere Programme mit den
> Schülern erstellen möchte. Habe schon ein wenig mit Python im Unterricht
> experimentiert. Bin mir aber nicht sicher ob Python die richtige Sprache
> zum Lernen ist. Welche Programmiersprache würde mir die Liste
> vorschlagen? Wenn möglich sollte sie frei zugänglich sein.

Python ist meiner meinung nach die beste Wahl. Eine verbreitete Sprache
ist sicher sinnvoller als eine reine "Lehrsprache".

Da bin ich nicht so sicher - gerade in diesem Alter nicht!
Es geht da wohl mehr drum den "Bastel-Instinct" zu wecken, ob
dass jetzt eine verbreitete Sprache ist oder nicht ist sekundaer.

Das "weit verbreitet" Argument wird ja auch immer verwendet um
proprietaere SW in den Schulen zu verteidigen ("wir unterrichten
AutoCAD und Word, weil dass in der Arbeitswelt am weitesten
verbreitet ist"). Falsch, finde ich.

In den 80er Jahren war Logo und Turtlegraphik der totale Rage
in der Didaktik: mit Recht! Was fuer ein tolles System um
Kindern Computergraphik beizubringen! Auch das war eine reine
Lehrsprache und meines Erachtens didaktisch sehr wertvoll.

Ich weiß zwar nicht, in welchem alter Mittelschüler üblicherweise sind,
aber schau dir das mal an:
http://kidbasic.sourceforge.net/

Das sieht von den Screenshots her sehr sehr gut aus. Ich finde es
ganz ganz wichtig, dass eine Sprache fuer Kinder unmittelbar
mit (2D) Graphik verknuepft ist. Einfach so:

  line (0,0), (5,0)
  line (5,0), (5,5)
  line (5,5), (0,0)

uns schon steht das Dreieck da!
Ein Erfolgserlebnis und ploetzlich lerne ich Koordinatensysteme,
Algorithmen, alles zusammen und es macht noch Spass.

Bye, Chris.

> Einen einfachen BASIC-Dialekt mit 2D Graphikprimitiven?
> Ich sehe auf Wikipedia es gibt auch im Jahr 2007 noch eine Unmenge davon.
> Koennte aber nicht sagen welche davon sinnvoll sind... musst wohl ein
> wenig testen.

Ich würde den Kindern nicht ein veraltetes Basic aufschwätzen, sondern
versuchen eine Programmiersprache zu lehren, auf die sie dann auch in
ihrer Zukunft aufbauen können.

Meine Meinung ist exakt gegensaetzlich.

Programmieren lernen, das heisst ein Gespuer zu kriegen um Probleme
zu loesen, ein Gefuehl fuer Strukturen, fuer Sprache, fuer das
"out of the box" denken.

Die Programmiersprache kann von mir aus auch aus dem 18 JH sein, wenn
sie diese Ziel erreicht.

Python scheint dafür wie geschaffen zu sein. Man kann damit sehr
primitive Programme implementieren. Das gute alte HelloWorld ist ein
Einzeiler:

print "Hello Free Software Hackers ;)"

Die Programmiersprache ist nebensaechlich, sie sollte allerdings
natuerlich dem Alter angepasst sein. Python faende ich fuer
Mittelschueler schon zu schwierig (obwohl ich nie Mittelschueler unterrichtet
habe...)

Das erste Beispiel, das mir einfaellt ist die Schleife
"for i = 1 to 10" setzt nur Zahlkardinalitaet voraus,
bei Pythons "in range()" klingen schon viel mehr Elemente aus der
Mengenlehre mit, wo ich in der Mittelschule Angst haette das
aufzuwerfen.

Jetzt muss ich etwas gutes ueber Python sagen, sonst werde ich von
euch natuerlich zerissen... :wink:

Ich faende Python fuer aeltere Schueler/Studenten *ideal*.
Python ist zum Beispiel ganz super um Algorithmen einzufuehren
oder Datenstrukturen. Ich habe Python bereits fuer einen Kurs
an der Uni vorgeschlagen (leider erfolglos :/) der im Moment
in C gehalten wird. Dort verbraten die Stundenten 75% ihrer
geistigen Leistung damit herauszufinden warum ihr Programm abstuerzt
und nur 25% damit die Algorithmen zu verstehen. Das ist natuerlich
weniger gut. Da wuerde "Python rocken", wie Raf das formulieren
wuerde :slight_smile:

Python findet man aber auch immer mehr in den verschiedenste Anwendungen
als Script-Erweiterung.

Und mit Python kann man auch ernste 2D, 3D Anwendungen sowie
Applikationsserver und CMS (Zope/Plone) erstellen.

Das finde ich vollkommen irrelevant fuer einen Mittelschueler.
Wir lassen sie in Technik auch mal zuerst ein Speckbrettl laubsaegen.
Deiner Logik nach koennten wir ihnen gleich eine CAD/CAM Anlage
vorsetzen und sagen, so jetzt jetzt kopiert mal alle diese
Groedner Madonnen....

Als alter Java Hacker und da Sun Microsystems dabei ist Java
freizugeben, muss ich auch auf die große Verbreitung von Java aufmerksam
machen. Vor allem die Möglichkeit fürs eigene Handy etwas zu basteln.
Java hat aber eine größere Einstiegshürde als Python und daher würde ich
heute in einer Mittelschule mit Python beginnen.

Zum Glueck kommst Du *nicht* auf die Idee man koennte in der Mittelschule
Java lehren. Danke :slight_smile:

Ich rate von einer Programmiersprache ab, die nur für akademische Zwecke
(noch) existiert oder gar nur für den Unterricht geschaffen wurde. Es
gibt nichts deprimierenderes als ein Programm zu schreiben, das nur vom
Lehrer verstanden wird, welches keiner benötigt und das nur auf dem
Schulrechner läuft.

In diesem Thread wurde noch keine Sprache angesprochen, die auch nur eine
dieser Eingeschaften aufweist.

Das von Matthias aufgeworfenen Kidsbasic steht unter der GPL und laeuft
laut Seite unter *nix und Windows.

Bei dieser Gelegenheit möchte ich auf ein Projekt aufmerksam machen,
welches eine Kursklasse von Netzwerktechnikern an der Landesberufsschule
Tschuggmall in Brixen als didaktische Übung erstellt haben. Diese Jungs
haben nur ca. 120 Stunden Java, auf 2 Jahre aufgesplittet und sind (fast
alle) ohne jeglicher Programmierkenntniss gestartet. Trotzdem und vor
allem dank der aufgebrachten Begeisterung haben sie im Unterricht ein
eigenes Projekt gestartet:

http://dev.cocos.bz/projects/castaway/

Der Kurs ist zu Ende, wir hoffen aber, dass am Projekt weitergebaut
wird. Als erstes benötigt es Tester und dann muss im Code ein wenig
aufgeräumt werden. Im Großen und Ganzen ist es aber schon
funktionsfähig. Das heißt es startet :wink:

Das finde ich gut. Wenn ich 120 Stunden Java fuer Netzwerktechniker
an der Berufsschule unterrichten wuerde, wuerde ich den selben
Ansatz waehlen. Erinnert sei aber auch, dass es in diesem Thread um einen
Computerkurs fuer Mittelschueler geht.

Die Motivation im Unterricht war überdurchschnittlich hoch, weil die
Teilnehmer an ein sinnvolles Projekt arbeiten durften. Hautzutage gibt
es die technischen und kulturellen Voraussetzungen im
Informatikunterricht etwas zu erstellen, welches nicht nur dazu dient
eine Bewertung zu geben, sondern über den Unterricht hinaus einen Nutzen
haben kann.

Also meine Erfahrung ist, dass der "Coolness" Faktor viel wichtiger ist
als der "Sinnvoll" Faktor.

Happy hacking!
Patrick

p.s. Ich habe meinem Bruder vor ein paar Jahren (als er noch kleiner
war) das Buch "Python für Kids" von Gregor Lingl gekauft. Das könnte für
die Mittelschüler vielleicht interessant sein!?

Klingt interessant.
Nach "Gregor Lingl" googlen liefert allerhand interessante tidbits.

Chris Mair schrieb:

Einen einfachen BASIC-Dialekt mit 2D Graphikprimitiven? Ich
sehe auf Wikipedia es gibt auch im Jahr 2007 noch eine Unmenge
davon. Koennte aber nicht sagen welche davon sinnvoll sind...
musst wohl ein wenig testen.

Ich würde den Kindern nicht ein veraltetes Basic aufschwätzen,
sondern versuchen eine Programmiersprache zu lehren, auf die sie
dann auch in ihrer Zukunft aufbauen können.

Meine Meinung ist exakt gegensaetzlich.

Programmieren lernen, das heisst ein Gespuer zu kriegen um Probleme
zu loesen, ein Gefuehl fuer Strukturen, fuer Sprache, fuer das
"out of the box" denken.

Die Programmiersprache kann von mir aus auch aus dem 18 JH sein,
wenn sie diese Ziel erreicht.

Schieße mich Chris an, die Kinder sollten nicht von einer
Monstersprache erschlagen werden, sondern das Prinzip verstehen.

Grüße martin

Hallo,
Chris Mair schrieb:

In den 80er Jahren war Logo und Turtlegraphik der totale Rage
in der Didaktik: mit Recht! Was fuer ein tolles System um
Kindern Computergraphik beizubringen! Auch das war eine reine
Lehrsprache und meines Erachtens didaktisch sehr wertvoll.

Logo wird bei uns in der Oberschule immer noch eingesetzt und ist meines
Erachtens nach eine sehr wertvolle und gut geeignete Sprache zum
erlernen von grundsätzlichem strukturiertem Denken.
http://www.softronix.com/logo.html
Wenn du sofort mit (bei uns ist es Turbo Pascal) einer "echten"
Programmiersprache anfängst, ist der Weg vom "programmieren" zum
"Ergebnis" viel viel länger und Schüler verlieren sehr schnell die Freude.

Ich weiß zwar nicht, in welchem alter Mittelschüler üblicherweise sind,
aber schau dir das mal an:
http://kidbasic.sourceforge.net/

Interessantes Programm! Und nicht sehr viel aufwändiger als Logo. Ist
sicher einen Gedanken wert.

~JuKo

Peter Moser schrieb:

ich biete in der Mittelschule ab dem 2. Semester einen kleinen
Computerkurs an, indem ich gerne auch kleinere Programme mit den
Schülern erstellen möchte. Habe schon ein wenig mit Python im
Unterricht experimentiert. Bin mir aber nicht sicher ob Python die
richtige Sprache zum Lernen ist. Welche Programmiersprache würde mir
die Liste vorschlagen? Wenn möglich sollte sie frei zugänglich sein.

Hallo Peter

Wie ich das verstehe, ist das nicht der Regelunterricht, sondern ein
Wahlangebot am Nachmittag, oder? Es kommen also nicht alle Schueler,
sondern jene, die mehr Begeisterung mitbringen und am Thema interessier
sind, oder?

Zu den vielen Argumenten der letzten Tage nur ein paar Ideen:
1. Der Praxisbezug ist sehr motivierend, nicht immer einfach zu
erreichen und nicht unbedingt Voraussetzung. Der Praxisbezug muss aber
kein Widerspruch zur Wahl der Sprache sein.
2. Alte Sprachen und auch alte oder einfache Entwicklungsumgebungen
eignen sich oft wunderbar fuer den Einstieg. Gerade weil eine grosse
Oberflaeche fehlt, kann man sich auf die Entwicklung und die Sprache
konzentrieren. Instrumente wie der Editor kate oder die gesamte
Entwicklungsumgebung TurboXXX unter dem alten DOS sind in diesem Bezug
sehr interessant. Oldies wie Logo oder Pascal sind fuer den Einstieg
wertvoll.

Zwei neue Aspekte:
1. Muss es eine Programmiersprache sein? Auch HTML ist eine Sprache,
wird in verschiedenen Schulen auch zum Einstieg in die Informatik noch
vor der eigentlichen Programmierung verwendet. Die Einstiegshuerde ist
minimal und der Erfolg unmittelbar und in Bezug zu ihrem Umfeld. Das
Ergebnis koennte eine Homepage fuer die Schule oder die Klasse werden.
2. Lego verkauft programmierbare Hardware. Das ist zwar nicht billig und
fast alles auch nicht frei, die Motivation waer aber maximal :slight_smile: Hier
ein Startpunkt:
http://mindstorms.lego.com/
http://www.lehrer-online.de/dyn/286466.htm
http://www.lehrer-online.de/dyn/9.asp?url=499339.htm
http://www.hh.schule.de/gse/material/informatik/lego/legoroboterinformatik.html
http://www.sc.shuttle.de/sc/akg/robotics/Kurs/

Viel Spass mit den kleinen Hackern!
~Karl

ich biete in der Mittelschule ab dem 2. Semester einen kleinen
Computerkurs an, indem ich gerne auch kleinere Programme mit den

Schülern erstellen möchte. Habe schon ein wenig mit Python im Unterricht

experimentiert. Bin mir aber nicht sicher ob Python die richtige Sprache
zum Lernen ist. Welche Programmiersprache würde mir die Liste
vorschlagen? Wenn möglich sollte sie frei zugänglich sein.

Hallo Peter,
man kann ja mit GIMP richtig schöne aufregende tolle und extravagante
Grafiken erstellen
(es sein denn du sprichst vom Linux-Computerraum der MS-Lana) und diese dann
mit Bluefish oder vergleichbares auf eine Webseite stellen?
Versuch doch mal jemanden zu überreden die PC-Räume im Untergeschoß mit
LINUX auszustatten, diese PC's sind noch nigel-nagelneu und pippi
super.duper-fein.
Ich hätte noch eine Fedora 4 DVD oder auch FC5..
FC gibt auch die Möglichkeit Java mit Eclipse zu lernen.?
Oder man könnte sich auch mit Reinhold Messner über Perl (
http://xoomer.alice.it/drlxpease/Dok/CGIPerl.pdf -> "noch fertig schreiben
muss") unterhalten
(jedenfolls verstea i von pyton nix, ober ein Gästebuch mit PHP is EASY, und
kann ausgebaut werden)

Die würde ich sofort installieren, aber ich befürchte dass ich dann Probleme
mit der RIS-installation bekommen könnte.
Hast du, oder jemand schon erfahrungen mit HDD-Cloning? Im Pädagogischen Gym
hatte ich ein XP über einem Ubuntu installiert..
Wie konnte es auch anders sein nach einem Schuljahr war Win wiedermal
futsch, und ich hab ein Image mit Ghost drübergeschrieben, danach war das
Ubuntu immernoch bootable.
Diese Räume wären "nice" und "smoothy" mit dualboot (wer braucht denn 160GB
Winplatten wenn man nicht mal Zugang auf das Laufwerk C: hat)

reg dich mal beim Troger Hans auf, der schreibt nur Mails wenns Probleme
mitn Drucker gibt oder das Internet nicht funktioniert.

mfG - daniel

attachment.htm (3.11 KB)

Chris Mair schrieb:

Einen einfachen BASIC-Dialekt mit 2D Graphikprimitiven?
Ich sehe auf Wikipedia es gibt auch im Jahr 2007 noch eine Unmenge davon.
Koennte aber nicht sagen welche davon sinnvoll sind... musst wohl ein
wenig testen.

Ich würde den Kindern nicht ein veraltetes Basic aufschwätzen, sondern
versuchen eine Programmiersprache zu lehren, auf die sie dann auch in
ihrer Zukunft aufbauen können.

Meine Meinung ist exakt gegensaetzlich.

Programmieren lernen, das heisst ein Gespuer zu kriegen um Probleme
zu loesen, ein Gefuehl fuer Strukturen, fuer Sprache, fuer das
"out of the box" denken.

Das eine muss das andere nicht ausschließen.

Ich würde Python jeder anderen didaktischen oder vereinfachten Sprache
vorziehen, da durch das Erlernen von Python die Kinder eine riesige
Spielwiese auf www.python.org, sf.net und Co. finden können. Sie wachsen
in die Community rein und darin sehe ich einen sehr großen Wert.

Dass das Argument der Verbreitung auch bei nicht-freier Software benutzt
wird, ist mir natürlich bekannt. Im Leben geht es immer um Trade-Offs
und ich weiß, dass Freie Software gegenüber proprietärer Software so
viele Vorteile hat, dass es sich dafür Lohnt eine Userbase zu schaffen.
Der Rest ergibt sich dann von alleine.

Als Abschluss mach ich noch ein Angebot. Mein Bruder hat das "Python für
Kids" Buch zu Hause. Ïch denke, er hätte nichts dagegen, es Peter Moser
zu leihen, sodass er sich ein Bild machen kann, wie dessen Author den
Ansatz angegangen ist.

Happy hacking!
Patrick

p.s. Chris vielleicht schaffen wir es doch noch einen Flame zu starten... :wink:

juergen kofler schrieb:

Logo wird bei uns in der Oberschule immer noch eingesetzt und ist meines
Erachtens nach eine sehr wertvolle und gut geeignete Sprache zum
erlernen von grundsätzlichem strukturiertem Denken.
MSWLogo, An Educational programming language
Wenn du sofort mit (bei uns ist es Turbo Pascal) einer "echten"
Programmiersprache anfängst, ist der Weg vom "programmieren" zum
"Ergebnis" viel viel länger und Schüler verlieren sehr schnell die Freude.

Ich muss sagen, die IA an der GOBBZ vor langer Zeit hat mit Turbo Pascal
begonnen und wir haben immer noch nicht genug vom rumhacken :wink:

Happy hacking!
Patrick

> Programmieren lernen, das heisst ein Gespuer zu kriegen um Probleme
> zu loesen, ein Gefuehl fuer Strukturen, fuer Sprache, fuer das
> "out of the box" denken.

Das eine muss das andere nicht ausschließen.

Eben, deswegen ist die Wahl der Sprache auch nicht so wichtig.

Ich würde Python jeder anderen didaktischen oder vereinfachten Sprache
vorziehen,

... und ich faende etwas einfacheres, wie ein BASIC eben besser. Peter
soll eine Wahl treffen und uns dann sagen wie's ging :slight_smile:

da durch das Erlernen von Python die Kinder eine riesige
Spielwiese auf www.python.org, sf.net und Co. finden können. Sie wachsen
in die Community rein und darin sehe ich einen sehr großen Wert.

Was kannst'de den heute machen, wofuer's keine Community im Internet
gibt?

Dass das Argument der Verbreitung auch bei nicht-freier Software benutzt
wird, ist mir natürlich bekannt. Im Leben geht es immer um Trade-Offs
und ich weiß, dass Freie Software gegenüber proprietärer Software so
viele Vorteile hat, dass es sich dafür Lohnt eine Userbase zu schaffen.
Der Rest ergibt sich dann von alleine.

Sind bei mir und Peter offene Tueren, die du da einrennst.

Als Abschluss mach ich noch ein Angebot. Mein Bruder hat das "Python für
Kids" Buch zu Hause. Ïch denke, er hätte nichts dagegen, es Peter Moser
zu leihen, sodass er sich ein Bild machen kann, wie dessen Author den
Ansatz angegangen ist.

Gute Idee!

Bye, Chris.

p.s. Chris vielleicht schaffen wir es doch noch einen Flame zu starten... :wink:

PS: Ich finde Peter hat jetzt einiges an Input, er soll jetzt einfach machen,
was er fuer das Beste haelt. Schliesslich steht er dann vor der Klasse.
(das war jetzt eine Ladung Schaum auf deinen Flameversuch :slight_smile:

War in den letzten Tagen leider ohne Internet-Anschluss. Freue mich aber
über so viele nützliche Informationen.

Kurz zu meinen Erfahrungen im ersten Semester:
Ich habe im 1. Semester am Nachmittag ein Wahlfach abgehalten, das ich
"spielerische Mathematik" genannt habe. Dort haben wir uns mit
Zahlensystemen und mathematischen Spielen beschäftigt. Beispiele waren
die Möbius-Schleife und Sudoku. Leider hatten die Schüler ziemlich
schnell das Interesse verloren, weil es ihnen zu "kindisch" vorkam, was
mich sehr gewundert hat. Aber in meinem ersten Jahr als Lehrer habe ich
schon viele solcher AHA-Erlebnisse hinter mir. Schließlich habe ich die
Schüler gefragt, wie sie den Unterricht machen würden. Fast einstimmig
schlugen sie PCs als Werkzeug vor und so startete ich einen kleinen
Computerkurs, in dem wir einen kleinen Taschenrechner in Python
programmierten. Sie haben bis jetzt (in etwa 10 Schulstunden) folgende
Befehle gelernt: if, while, print, input, int, float, eval, random und
time.
Leider musste ich feststellen, dass nur 3 von 9 Schülern, das Gelernte
auch selbstständig für eigene Programme anwenden können. Das liegt
meines Erachtens daran, dass die Ergebnisse am Bildschirm nicht
ansprechend genug waren. Eine richtige Lösung einer Addition auf
schwarzem Hintergrund ausgeben, scheint ihnen nicht der Rede wert zu
sein. Die einzige Stunde, in der *alle* Schüler gut mitgearbeitet haben,
war die erste. print wurde eingeführt und ich hab ihnen erklärt was
ASCII-Art ist.

Daher glaube ich, dass für die Motivation der Schüler folgendes wichtig ist:
1. ein Projekt, das man immer weiter im Laufe des Kurs weiterentwickeln kann
2. Farbe und Grafik in der Ausgabe (da wäre HTML gar nicht so schlecht)
3. es sollte auch auf Win laufen, da die meisten Schüler daheim dieses
System benützen und ihre Ergebnisse gern präsentieren

Habe mir überlegt, dass es vielleicht sinnvoll wäre mit Basteln
anzufangen. Also einen Computer selbst zusammen zu bauen, so lernen sie
etwas vom inneren Zusammenspiel der Hardware. Wissen (hoffentlich)
anschließend was eine Festplatte, RAM, Motherboard, etc. ist und dann
etwas Theorie zur Software. Was ist ein OS, Treiber, Programm, ... ?
Ich glaube als Sprache werde ich mit HTML anfangen, da einige Schüler
noch keine Algebra im Kernunterricht durchgemacht haben und so wird es
zu aufwendig in 15h ihnen klar zu machen, was Variablen und Funktionen
sind...
HTML ist auch nicht so "pingelig" bei kleinen Syntaxfehlern und ich
könnte einen differenzierten Unterricht (hoffentlich gelingt's mir :slight_smile: )
halten. Wenn jemand schon ein wenig Erfahrung hat oder motiviert ist
mehr zu lernen, könnte man php in die Seite einbauen.

Danke für die vielen Vorschläge, vielleicht (wenn ich mir das Auto
leihen kann) sieht man sich beim nächsten lugbz-Treffen.

Grüße,
Peter

ps. das python-Buch für kids würde ich mir aber trotzdem gern ansehen

[...]
Leider musste ich feststellen, dass nur 3 von 9 Schülern, das Gelernte
auch selbstständig für eigene Programme anwenden können.

Ich glaube wenn du 3/9 das Programmieren naeher gebracht hast, ist
das ein grosser Erfolg :slight_smile:

Das liegt
meines Erachtens daran, dass die Ergebnisse am Bildschirm nicht
ansprechend genug waren. Eine richtige Lösung einer Addition auf
schwarzem Hintergrund ausgeben, scheint ihnen nicht der Rede wert zu
sein. Die einzige Stunde, in der *alle* Schüler gut mitgearbeitet haben,
war die erste. print wurde eingeführt und ich hab ihnen erklärt was
ASCII-Art ist.

2D Graphik solltest Du unbedingt reinbringen.

Daher glaube ich, dass für die Motivation der Schüler folgendes wichtig ist:
1. ein Projekt, das man immer weiter im Laufe des Kurs weiterentwickeln kann
2. Farbe und Grafik in der Ausgabe (da wäre HTML gar nicht so schlecht)
3. es sollte auch auf Win laufen, da die meisten Schüler daheim dieses
System benützen und ihre Ergebnisse gern präsentieren

Da Du jetzt schon mit Python begonnen hast, solltest Du vielleicht einfach
dabei bleiben?

Habe mir überlegt, dass es vielleicht sinnvoll wäre mit Basteln
anzufangen. Also einen Computer selbst zusammen zu bauen, so lernen sie
etwas vom inneren Zusammenspiel der Hardware. Wissen (hoffentlich)
anschließend was eine Festplatte, RAM, Motherboard, etc. ist und dann
etwas Theorie zur Software. Was ist ein OS, Treiber, Programm, ... ?

Finde ich jetzt weniger gut. Ist Wissen das zu schnell veraltet fuer
Mittelschueler.

Ich glaube als Sprache werde ich mit HTML anfangen, da einige Schüler
noch keine Algebra im Kernunterricht durchgemacht haben und so wird es
zu aufwendig in 15h ihnen klar zu machen, was Variablen und Funktionen
sind...

Wenn du es informal einfuehrst?
Den Funktionsbegriff formal einzufuehren hast Du in der Mittelschule
eh keine Chance. Variablen gehen schon. Mach'

for x = 1 to 50
  plot x, 1
  pause 1
next x

und lass sie zusehen wie die Punkte auftauchen, dann ist ihnen schon klar
was x da macht. (Patrick uebersetzt dir obiges Beispiel sicher gerne in
Python >;)

HTML ist auch nicht so "pingelig" bei kleinen Syntaxfehlern und ich
könnte einen differenzierten Unterricht (hoffentlich gelingt's mir :slight_smile: )
halten. Wenn jemand schon ein wenig Erfahrung hat oder motiviert ist
mehr zu lernen, könnte man php in die Seite einbauen.

Das wuerde ich lieber bleiben lassen. Die sollen ruhig sehen, dass
es in einer Programmiersprache pingelig zugeht! Sonst kommen sie dann
8 Jahre spaeter zu mir, und vergessen die "}" und die ";" und ich
aergere mich ueber Dich :wink:

Danke für die vielen Vorschläge, vielleicht (wenn ich mir das Auto
leihen kann) sieht man sich beim nächsten lugbz-Treffen.

Poste auf die Liste wenn du kommen moechtest, da ergibt sich sicher
eine Mitfahrgelegenheit!

Bye, Chris.

Da Du jetzt schon mit Python begonnen hast, solltest Du vielleicht einfach
dabei bleiben?

Im 2. Semester hätte ich fast sicher alles neue Schüler... da kann ich
leider nicht auf das Gelernte im ersten Kurs zurückgreifen.

Habe mir überlegt, dass es vielleicht sinnvoll wäre mit Basteln
anzufangen. Also einen Computer selbst zusammen zu bauen, so lernen sie
etwas vom inneren Zusammenspiel der Hardware. Wissen (hoffentlich)
anschließend was eine Festplatte, RAM, Motherboard, etc. ist und dann
etwas Theorie zur Software. Was ist ein OS, Treiber, Programm, ... ?
    
Finde ich jetzt weniger gut. Ist Wissen das zu schnell veraltet fuer
Mittelschueler.
  

Computer schauen doch seit 20 Jahren fast gleich aus... was soll da
veralten? Eine HD (auch wenn der neue Datenkabel die Farbe geändert
hat... *g* )ist immer noch dasselbe und ein Motherboard ein Motherboard,
wie eh und je... oder? Ein OS hat einfach betrachtet auch immer die
selben Aufgaben. Ich glaube schon dass es was bringt.... oder vielmehr
hoff ich es :slight_smile:

for x = 1 to 50
  plot x, 1
  pause 1
next x

und lass sie zusehen wie die Punkte auftauchen, dann ist ihnen schon klar
was x da macht. (Patrick uebersetzt dir obiges Beispiel sicher gerne in
Python >;)
  

Könnt ich mal probieren... danke für das Angebot, aber ich glaube das
Codechen kann ich gerade noch selbst übersetzen :slight_smile:

HTML ist auch nicht so "pingelig" bei kleinen Syntaxfehlern und ich
könnte einen differenzierten Unterricht (hoffentlich gelingt's mir :slight_smile: )
halten. Wenn jemand schon ein wenig Erfahrung hat oder motiviert ist
mehr zu lernen, könnte man php in die Seite einbauen.
    
Das wuerde ich lieber bleiben lassen. Die sollen ruhig sehen, dass
es in einer Programmiersprache pingelig zugeht! Sonst kommen sie dann
8 Jahre spaeter zu mir, und vergessen die "}" und die ";" und ich
aergere mich ueber Dich :wink:
  

Habe das schon im 1. Semester probiert und habe mir dabei auch gedacht,
dass es für die Schüler ein Vorteil wäre, wenn sie sehen, dass Computer
genau auf die Rechtschreibung schauen. Aber nachdem ich ein wenig mit
Python probiert habe, sah ich, dass sie schnell die Motivation
verlieren, wenn jeder "kleine" Fehler gleich einen Syntax-Error
produziert. Die besseren Schüler würden aber mit PHP wieder zum
pingeligeren (schönes Wort) Programmieren kommen...

Poste auf die Liste wenn du kommen moechtest, da ergibt sich sicher
eine Mitfahrgelegenheit!
  

Das werde ich gern machen.

Computer schauen doch seit 20 Jahren fast gleich aus... was soll da
veralten? Eine HD (auch wenn der neue Datenkabel die Farbe geändert
hat... *g* )ist immer noch dasselbe und ein Motherboard ein Motherboard,
wie eh und je... oder?

Nur haben die meisten Computer der Welt nicht mal eine HD...
Dieser Art von Unterricht ist sooooo PC-zentriert :confused:

Bye, Chris.

Chris Mair schrieb:

Computer schauen doch seit 20 Jahren fast gleich aus... was soll da
veralten? Eine HD (auch wenn der neue Datenkabel die Farbe geändert
hat... *g* )ist immer noch dasselbe und ein Motherboard ein Motherboard,
wie eh und je... oder?
    
Nur haben die meisten Computer der Welt nicht mal eine HD...
Dieser Art von Unterricht ist sooooo PC-zentriert :confused:

Bye, Chris.
_______________________________________________
http://www.lugbz.org/mailman/listinfo/lugbz-list

ok jetzt habe ich verstanden auf was du hinauswillst...
man lernt doch immer gern was dazu :slight_smile:

Hallo wollte auch mal meinen Senf dazugeben.

Aus mir ist zwar kein Programmierer geworden, hab aber auch etwas mit
Programmiersprachen experimentiert (nichts großes).

Meine erste Sprache war QBasic hab damit "Bildschirmschoner"
programmiert irgendwelche Kreise und Linien mit irgendwelchen random
Funktionen erzeugt... das war irgendwann mit Windows 3.11 oder mit dem
Speaker die Frequenzen mit einer for Schleife durchgespielt.

Danach habe ich HTML gelernt und eine Homepage für mich gemacht Windows
98).Später habe ich dann eine Homepage für meine Schule gemacht
(Windows NT). Dann habe ich etwas mit Windows Access gespielt um
Adressen für meinen Betrieb zu verwalten. Irgendwann habe ich dann mit
Perl experimentiert und etwas del.icio.us artiges als CGI geschrieben
um Bookmarks auf meiner Homepage zu verwalten (Windows 2000 / Debian
Woody)

Mittlerweile habe ich Python etwas angeschaut und mit Django
(Python Framework) eine Webapplication geschrieben um die Adressen
meines Betriebes zu verwalten (Weihnachtspost usw.) (Ubuntu Dapper/Edgy)

Ich finde die Idee mit HTML anzufangen sehr interessant, da man eine
sehr schnelle Lernkurve hat. Man kann erstmal mit was einfachem
anfangen z.B. seinen Lebenslauf Online stellen...
HTML ist auch keine Tote Sprache d.h. man kann damit Später etwas
anfangen z.B. zusammen mit PHP/Python/Perl/Java-Script

PS: Ich hab die Betriebssysteme angegeben um ca. die Zeit anzugeben wann
das war.

Peter Moser schrieb:

Habe das schon im 1. Semester probiert und habe mir dabei auch gedacht,
dass es für die Schüler ein Vorteil wäre, wenn sie sehen, dass Computer
genau auf die Rechtschreibung schauen. Aber nachdem ich ein wenig mit
Python probiert habe, sah ich, dass sie schnell die Motivation
verlieren, wenn jeder "kleine" Fehler gleich einen Syntax-Error
produziert. Die besseren Schüler würden aber mit PHP wieder zum
pingeligeren (schönes Wort) Programmieren kommen...

Ich habe ähnliche Erfahrungen gemacht. Zu Beginn hatte ich das erste
Jahr auf IDE verzichtet. Die Teilnehmer sollten mit einen einfachen
Texteditor und mit Aufruf auf der shell vom Compiler und Interpreter
richtig Java lernen. Vorteil: Sie verstehen was abläuft, was ein
Compiler und ein Interpreter ist, dass der Programmierer nur einen
Aufsatz schreibe, etc.

Problem: Die Teilnehmer empfinden das Programmieren als eine sehr
schwierige und komplizierte Sache.

Wie habe ich das Problem gelöst?

Ich habe das Programmieren mit Texteditor und shell auf die ersten 3-4
Treffen reduziert und dann bin ich gleich auf eclipse umgestiegen. Durch
die Hilfe von der IDE, konnte jeder sehr schnell Programmieren, die IDE
hat die lästigen Dinge abgenommen. Motivation war wieder möglich.

Ich würde in deinen Fall versuchen eine IDE für Python einführen
(eclipse?). Oder hast du das bereits?

Ich finde eine Einführung in die Hardware sinnvoll. Würde es aber nicht
Übertreiben. Nicht dass man dann für den Test auswendig lernen muss,
dass eine Mouse drei Tasten hat, dass es aber auch welche mit einer,
vier oder mehr gibt...

In der Gruppe einen Computer öffnen und neu zusammenbauen, würde ich für
sinnvoll sehen.

my 2 cents :wink:

Happy hacking!
Patrick