# Programmieren für Kinder



## ManicMarble (17. Februar 2005)

Hallo ihr Gurus,

mein Neffe, er ist 11, löchert mich seit Wochen, dass ich ihm Programmieren beibringen soll. Seine Eltern wären auch recht froh, wenn der Kerl mit seinem Computer auch mal "was Vernünftiges" macht.

Jetzt bin ich am überlegen, was wohl die beste Sprache wäre. Es sollte natürlich was sein, was auch ich ausreichend gut beherrsche, das wäre C/C++, VB6, PHP/JS/HTML und die Grundzüge von .NET (C# bzw. VB.NET). Ich will eigentlich keine "Lernsprache" wie Logo nehmen, ich glaube da ist er drüber raus, das ist irgendwie _zu_ kindisch.

Leichte Erlernbarkeit ist natürlich wichtig, aber auch wie "weiterführend" die Sprache ist. Und der Spaßfaktor muss von Anfang an recht hoch sein, d.h. es müssen schnell "coole" Ergebnisse zu erzielen sein - wenn er in C mit IO-Streams auf die Konsole anfängt, dann ist die Luft schnell raus, fürchte ich.

Momentan tendiere ich zu VB6. C und erst recht C++ finde ich zu schwierig wegen der nicht-gemanagten Speicherverwaltung. PHP wäre super, weil die Syntax C- bzw. Java-ähnlich ist, allerdings fürchte ich, dass die Verquickung von PHP, HTML und JavaScript zu komplex ist für den Anfang.

Was meint ihr? Kennt jemand vielleicht Quellen im Web über das Thema Programmieren für Kinder. Ich habe im Buchladen mal "Visual Basic für Kids" in der Hand gehabt - hat mich nicht überzeugt. Gibt's da noch mehr Literatur? Wer von euch hat auch so jung angefangen und mit was? Mich hat's mit dem C64 gepackt, damals im vergangenen Jahrhundert...   

Wäre über Anregungen höchst erbaut,
_Martin_


----------



## Matthias Reitinger (17. Februar 2005)

Ich hab damals auch ungefähr in dem Alter angefangen, und zwar mit QBASIC unter DOS ;-) Hab da immer meinem Bruder über die Schultern geguckt, als er irgendwelche Text-Adventures und andere Spielchen programmierte... nur damit kannst du heute keinen (auch keinen 11-jährigen) mehr vom Hocker reißen, denk ich mal.

Ich stimme dir zu, wenn du sagst, dass C/C++ zu komplex für den Anfang ist.

PHP hat wie schon von dir erwähnt nicht nur den Nachteil, dass HTML/CSS/JS dazu kommt, sondern auch, dass man IMHO mit PHP sehr schlampiges Programmieren unterstützt wird. Variablen müssen nicht deklariert werden, es gibt keine Typsicherheit etc. Für den Einsteiger macht das natürlich vieles einfacher. Aber ich fände es schon sehr sinnvoll, wenn man von Anfang an zwischen Ganzzahlen, Kommazahlen, Strings usw. unterscheiden lernt.

C# und VB.NET haben IMHO den Nachteil, dass sie gleich mit der ganzen Objektorientierung daherkommen. Das kann als jüngerer Programmieranfänger eine zusätzliche Hürde sein, die es erst mal in der Theorie zu meistern gilt.

Visual Basic an sich wäre eine Möglichkeit. Mehr kann ich dazu allerdings nicht sagen, da ich schon länger nicht mehr mit VB zu tun hatte und deshalb auch nicht weiß, wie es sich inzwischen entwickelt hat.

Meine Empfehlung wäre aber keine der hier genannten Sprachen, sondern Pascal. Meiner Meinung nach eine für Anfänger gut geeignete Sprache, anhand der man viele programmiertechnisch relevanten Begriffe, Vorgehensweisen, Formalitäten und Fähigkeiten erlernen kann.

Bezüglich schneller Erfolge... wenn's von der ersten Minute an Krachbummbäng machen soll, dann kannst du ihm ja Klick & Play oder ähnliche "Spielebaukästen" vor den Latz knallen  Ohne entsprechende Grundlagen (die gelernt sein wollen), kann man beim Programmieren eben leider nicht viel erreichen...


----------



## Jukkales (17. Februar 2005)

ich habe mit 12 Visual Basic angefangen (hatte aus anderen gründen später keine lust mehr) weil mir c++ zu schwer war. Zu viele Dateieinbindungen etc. 

Wenn würde ich sagen VB. Nur weiß man nicht ob VB noch lange exsistiert meine ich


----------



## ManicMarble (17. Februar 2005)

Danke für die ersten Meinungen.

Jaja, es soll schon ein bischen krachen, sonst ist's schnell aus mit dem kindlichen Enthusiasmus. Aber Grundlagen lernen soll er schon auch dabei...

@Mathias: Hast meine Tendenz schon ziemlich bestätigt. Leider habe ich selbst noch nie was mit Pascal oder Delphi am Hut gehabt und könnte ihm da wenig zeigen. Recht hast Du mit der "schlampigen Programmierung" die er sich möglichst gar nicht erst angewöhnen sollte. Das kann aber mit VB auch passieren (kein "Option Explicit" und alle Variablen als Variants)...

@Jukkales: Ich denke eigentlich schon, dass VB im Rahmen von .NET noch ne Weile bei uns ist bzw. entsprechende Nachfolger bekommt.


----------



## SilentWarrior (17. Februar 2005)

Hi

Ich denke, VB ist eine gute Wahl - allerdings nur, wenn er nicht später Programmierer werden soll.  Bzw. in diesem Fall solltest du ihm spätestens nach ein paar Jahren eine vernünftige Sprache beibringen. Der Vorteil an VisualBasic ist halt (auch wenn das jetzt gemein klingt) der typische MS-Klicki-Bunti-Effekt. Da hat er dann natürlich schnell Ergebnisse vor sich und demzufolge (hoffentlich) auch Spass an der Sache. 

Also von dem her: Imo hast du ausser VB keine vernünftigen Alternativen - es sei denn, der Junge ist geduldig und würde sich auch mal mit was "richtigem" beschäftigen (OOP zum Beispiel). Was ich ja aber nicht glaube, nach diesem Satz hier:





> wenn der Kerl mit seinem Computer auch mal "was Vernünftiges" macht.


----------



## Thomas Darimont (17. Februar 2005)

Hallo!

Also ich würde auch zu VB tendieren. Mit VB ist der Weg zu anderen Techniken nämlich nicht mehr weit. So kann man mit ein paar Mausklicks Datenbanken anzapfen, Word, Excel Dokumente schreiben und kleine Chat's schreiben. Ich weis sowas ist eigentlich noch nicht's für Anfänger, aber wenn man dem kleinen bei Zeiten mal das ein oder andere Beispiel aufzeigt wird er/sie da auch recht schnell mit klar kommen.  Kinder in dem Alter lernen unglaublich schnell.

Gruß Tom


----------



## hpvw (17. Februar 2005)

Meine ersten Versuche waren mit QBasic, da war ich wohl 12 oder 13.
Das ist aber sicher keine Sprache mehr, mit der man Anfangen sollte.
Dann kam Pascal, fällt also auch flach, da DOS-Programmierung.
Dann haben wir in der Schule mit Java angefangen. Das haben wir jedoch recht schnell aufgegeben, weil die Einarbeitung zu lange dauerte, um noch genügend Zeit für Theorie zu haben.
Wir sind dann auf Delphi umgestiegen und haben recht schnell Ergebnisse erziehlen können und das war noch Delphi 3, da hat sich einiges getan, die letzte Version, die ich gesehen habe war Delphi 6 und das ist noch wesentlich komfortabler geworden.
Wenn es um OOP geht halte ich Java für am geeignesten (mittlerweile kann ich's ), allerdings mit Sicherheit nicht für einen elfjährigen.
Mein Einstieg in PHP ging am schnellsten, aber da hatte ich auch schon die meiste Vorbildung und "konnte" HTML. Durch HTML, was ja nicht so schwer ist, im Gegensatz zum Programmieren, kann man es auch schnell bunt werden lassen und hat, wenn er noch ein bisschen Älter ist, den Vorteil, dass er zum Beispiel mit seiner eigenen Homepage auftrumpfen kann.

Meine Empfehlung wäre Delphi oder eine Programmiersprache, die eine ähnlich intuitive IDE hat. Aber wie gesagt, es gibt sicherlich auch andere IDEs (.NET?), die ähnlich komfortabel sind.
Alles mit .NET würde ich aus Prinzip nicht machen , aber das ist kein Argument.
Du hast ja sicher Erfahrung mit dem Programmieren, dann sollte Delphi absolut kein Problem für Dich darstellen und Du kannst mit Deinem Neffen mitlernen. Ich finds immer motivierend, wenn der "Lehrer" auch nicht alles weiß, zumindest, wenn er in der Lage ist, das auch zuzugeben.

Die Idee, mit einer C-ähnlichen Syntax anzufangen, halte ich für sinnvoll.
Vielleicht gibt es ja auch für eine der C-ähnlichen Sprachen eine vernünftige IDE, so dass man die ersten Programme per "Klick and Code" schreiben kann. Delphi und VB sind bezüglich dieses Arguments sicher nicht zu empfehlen.

Du solltest ihm aber klar machen, dass es ein langer Weg ist, bis die Programme "Crash Boom Bang" machen und 3d-Grafik präsentieren (Spieleprogrammierung).

Die große Frage ist aber auch, was Dein Neffe sich unter Programmieren vorstellt bzw. was für ein Ergebnis er gern hätte, also was er Programmieren will; Webseiten, Spiele, Anwendungen, seine Eigene Adressverwaltung. Es gibt so viele Möglichkeiten, die auch einen gewissen Einfluß auf die Wahl der Sprache haben.

Gruß hpvw


----------



## Tobias K. (21. Februar 2005)

moin


Wie wäre es mit Blitzbasic?
http://www.blitzbasic.de es gibt auch Bücher speziell für Kinder.


mfg
umbrasaxum


----------



## JJB (24. Februar 2005)

Tach !

Also ich habe spät angefangen.
Mit 17 bin ich in zum ersten mal richtig eingestiegen, alles andere davor war nur hickhack. Ich hab mich von Turbo Pascal durch C, über C++ zu C# durchgehangelt. Und ich finde, C# ist die schnellste Art der Programmierung. Auch für einen jüngeren. 
Wenn man genügend Zeit aufbringt ihm zu erklären wie es geht kann er mit VS.Net schon schnell kleine Applikationen zusammenklicken, in den er irgendetwas anzeigt, berrechnet oder auf Knopfdruck irgendwas verändert. Das geht dann von Variablenspielereien über Rechnen zum Dateizugriff, bis schließlich hin zu einer interaktiven Applikation die tatsächlich etwas mit dem System macht.
Und wenn man sich "C# für Dummies" kaufen muß, ist es ja auch nicht schlimm.
Das ist nur eine Frage des Zeitrahmens.

Wieviel Zeit und Begeisterung hat er denn ?

MFG JJB
_


----------



## Kyrius (24. Februar 2005)

Zeige ihm ein "Hallo Welt" geschrieben in Brainf*ck oder Cow und vorbei ists mit dem jugendlichen Wahn  ;-] 

Entweder Blitz3D oder Visual basic. Alles andere wäre in dem Alter imHo Überforderung.


----------



## Sicaine (25. Februar 2005)

Bring dem Kind bitte keine exotische Sprache bei. Wenn schon dann entweder php java oder c++. Vorallem aber da er erst 11 is, würd ich php sagen da dort der Einstieg wesentlich einfacher ist. Vorlallem hast du weniger Arbeit wenn er dih dann in ICQ ständig nach hilfe fragt


----------



## Kyrius (25. Februar 2005)

Sicaine hat gesagt.:
			
		

> Bring dem Kind bitte keine exotische Sprache bei.


man beachten die Ironie in meinem Satz:


			
				ICH hat gesagt.:
			
		

> Zeige ihm ein "Hallo Welt" geschrieben in Brainf*ck oder Cow und vorbei ists mit dem jugendlichen Wahn  ;-]


gekennzeichnet durch den " ;-] " -Smiley...
-----------------

Mit PHP gibt es allerdings kein Krachboom. Das dämpft die jugendliche Freude vermutlich doch sehr.


----------



## ManicMarble (25. Februar 2005)

Hallo an alle,

danke für die Anregungen.
Ich werde den Knaben demnächst mal zu mir ins Büro bestellen und mit ihm zusammen je ein kleines Progrämmchen in VB6, PHP und C# erstellen, werde versuchen, ihm zu erklären, was er mit welcher Sprache machen kann und was nicht und ihn dabei beobachten, wie er so mit allem zurechtkommt. Dabei kann ich ihm auch gleich etwaige Flausen austreiben - ich fürchte, er stellt sich das momentan noch so einfach vor: drei mal klicken und Zack, hab' ich ein "Science-Fiction-Spiel" (das hat er bereits als Wunsch-Projekt geäußert, hab' ihn aber schon mal etwas eingebremst).

Vorher geh' ich aber noch eine Woche in Urlaub um mich seelisch und moralisch auf diese Herausforderung vorzubereiten (hab' dem Kerl letztes Jahr Mathe-Nachhilfe gegeben, das war schon äußerst zäh).

@umbrasaxum: Hab mir Blitzbasic mal angeschaut, ist ja echt lustig. Bin zwar auch der Meinung, dass man nicht mit einem Exoten anfangen sollte, andererseits hätte ich da selber bestimmt auch noch Spaß dran. Das lass ich mir jetzt im Urlaub mal durch den Kopf gehen...

Grüße,
_Martin_


----------



## Sicaine (25. Februar 2005)

Kyrius hat gesagt.:
			
		

> man beachten die Ironie in meinem Satz:
> 
> gekennzeichnet durch den " ;-] " -Smiley...
> -----------------
> ...



Ich hab sie nicht nur verstanden, ich fand sie auch recht gut  ich meinte damit aber Blitzbasic, VB, CSharp(ja ich finds immer noch exotisch oO), QBasic sowas halt. Wobei man eher sagen sollte: Exotisch und alt und unpassend.


----------



## hpvw (25. Februar 2005)

Brainfuck ist auch keine exotische, sondern eine esoterische Programmiersprache.


----------



## csruler (20. September 2005)

Meine erste Programmiersprache war turbo Pascal. Damit hab ich dann als erstes gelernt wie man ausgaben auf den display lernt. Ausgaben war ja schon interessant, aber als dann was mit selber zeichnungen programmieren kam, dann wurd es richtig interessant. Bis hin zu einen kleinen film den wir programmiert haben. Bin jetzt 18, hab die sprache mit 12 oder 13 kennen gelernt.

Vielleicht hilft dir das weiter. Achso nochma im bezug zu objektorientierung. Am besten ist es sogar wenn man von grund auf objektorientierung lernt. Weil gerade kinder bekommen das am besten hin. Wird auch jedesmal von meinem Anwendungs entwicklungslehrer empfohlen, wenn wir jemanden was beibringen an programmiersprachen, wenns eben geht als erstes Objektorientiert. Weil die dann halt noch anders denken.



mfg

csruler


----------



## Christian Kusmanow (20. September 2005)

*wie ich zum Freak wurde*

Was Buddelst einen halbes jahr alten Thread wieder aus?
Ich find aber er sollt lieber was innivatives, wie anfangs vorgeschlagen, lernen.
(hätte auch VB.NET empfohlen)

Aber Gut, machen wir einen "wie ich zum Freak wurde" Thread daraus.  

Hab meinen ersten PC (der erste 286'er) mit neun Jahren (1990) bekommen.
Mit 10 Jahren hab ich mir die Startkonf. (alá Autoexec.bat & Config.sys) angepasst 
und StartMenus in form von BatchDateien geschrieben.
Mit 11-12 hab ich QBasic im Gymmi bei sog. Projekttagen kennen gelernt.
War mir aber anfangs zu heftig.  :-(
Hatte da aber eher die Ruhe für richtige Hobbys wie Miniaturmoddellbau.
Hab dann mit 19 erst mit VB 6.0 angefangen, Danach kam VB.NET (mit 20) und letzendlich C# (ab 21).


			
				hpvw hat gesagt.:
			
		

> Brainfuck ist auch keine exotische, sondern eine esoterische Programmiersprache.


LOL  

MfG, cosmo


----------



## ManicMarble (20. September 2005)

Da nun csruler "meinen" alten Thread wieder aufgewärmt hat, sollte ich vielleicht mal berichten, was inzwischen aus dem Jungcoder geworden ist:

Ich hab' ihm letztendlich VB6 installiert und wir hatten zusammen ein paar sehr zähe erste Stunden. Lehrer sein ist echt hart. Ich hab' dann die ganze Programmier-Theorie erst mal weggelassen und ihn allein sein eigens UI designen lassen. Ohne Code, nur Bilder, Buttons und Textfelder.

War echt erstaunlich was da schon rausgekommen ist. Während der Designerei ist ihm nämlich schon so mancher Zusammenhang klar geworden und er hatte vor allem eine Vorstellung von dem was er gerne machen würde. Das hat er mir dann erklärt, ich hab' mir jeden Kommentar bzgl. eigener Ideen und wie ich das lösen würde etc. verkniffen und nur dabei geholfen, seine Vorstellungen in Code umzusetzen.

Was rauskam war schon recht beachtlich für die erste Woche: Ein "Spiel" bei dem man unter 7 Buttons denjenigen rausfinden muss, der dann ein Bild anzeigt. Wenn man den richtigen Button geklickt hat, dann wird ein Kommentar ausgegeben, der, je nachdem wie viele Versuche man gebraucht hat, unterschiedlich rüde ausfällt. Nach Klicken des Buttons "Neues Spiel" geht das Ganze von vorne los. Ok, das wird schnell langweilig - vor allem weil es anfangs immer der selbe Button war, der "gewinnt" .

Er hat dann noch ein bischen rumgebohrt, dann kam der Sommer, die Ferien und es war erst mal wieder aus. Bin gespannt ob er den Faden wieder aufnimmt. Fürchte allerdings, dass ihm jetzt dann bald die Pubertät in die Quere kommt, er is jetzt 12 und es geht schon los, die Mädels sind schon nicht mehr _nur noch _ doof... 

_Martin_


----------



## JJB (23. September 2005)

Wenn er die Phase mit den "nicht mehr nur doofen Mädels" abgeschlossen hat begrüßen wir ihn hier vielleicht als Mitglied


----------



## Azi (23. September 2005)

Also, ich hab auch recht früh mit dem Programmieren angefangen, zuerst mit C, als ich ungefähr 12 Jehre alt war. Ich habe ein wenig gelernt, aber nun waren die Grundlagen da. Dann machte ich mit Batch-Dateien weiter, das machte mir wirklich Spaß, da man schneller zu dem gewünschtem Erfolg kommt. Aber es fehlten mir die richtigen programmier-typischen Dinge wie z.b. das addieren. Weiter gings mit JavaScript (vorher aber HTML, das ist jedoch keine Programmiersprache). Das war mir dann doch etwas zu kompliziert, also machte ich weiter mit VisualBasic. Das fand ich zu langweilig. Also machte ich mich auf die Suche nach was neuem. Wie PHP oder Assembler. Assembler kann ich noch nicht, ich versuche mir nun, den Aufbau des Prozessors in den Kopf zu hauen. PHP beherrsche nur ein wenig. Momentan lerne ich folgende Sprachen, bzw. versuche es oder erweitere die Kenntnisse in ihnen:
C, C++, PHP, Assembler, Javascript und Delphi.
Ziemlich viel, aber ich mag es, gefordert zu werden. Vorallem möchte ich auch noch ein Betriebssystem schreiben (ich weiß nun in etwa, welchen Aufwand es haben wird, aufgeben tue ich aber nicht).

Ich hätte dir empfohlen, mit Batchdateien  anzufangen, dann auf C überzusteigen, dann HTML um danach PHP zu lernen. Aber nur dann, wenn er genauso ist wie ich. Ich denke, PHP würde ihm Spaß machen.

Mein kleiner Brunder (auch 11) wollte auch programmieren, aber nun hat er es sich anders überlegt und er möchte nicht so werden wie ich, da ich den ganzen Tag am PC sitze. Vielleicht überlegt er es sich ja mal anders ...


----------



## Thomas Darimont (24. September 2005)

Hallo!



> paß, da man schneller zu dem gewünschtem Erfolg kommt. Aber es fehlten mir die richtigen programmier-typischen Dinge wie z.b. das addieren.


   Das geht doch:

```
C:\>set /a 3+4
   7
```
 
 Auch wenn ich eigentlich kein Fan von MuT Büchern bin, kann ich für Anfänger das Buch "Jetzt lerne ich Programmieren" empfehlen:
http://shop.tutorials.de/buch/38272...nieren_QBasic_Java_Visual_Basic_C_und_C_.html
   Das Buch vermittelt die Konzepte der Programmierung recht anschaulich und ist einfach zu verstehen.

   Gruß Tom


----------



## Azi (24. September 2005)

Thomas Darimont hat gesagt.:
			
		

> Das geht doch:
> 
> ```
> C:\>set /a 3+4
> ...



Cool, wusste ich garnicht...


----------



## tantebootsy (3. Oktober 2005)

Hi,

interessant finde ich auch den Ansatz des "Hamster-Modells" (das Buch (erster Band) dazu heißt "Programmieren spielend gelernt" von Dietrich Boles). 
Da lernt man erst mal die Grundzüge der (imperativen) Programmiersprachen, ohne direkt auf eine bestimmte Sprache einzugehen.
Internetseite gibt's auch dazu: http://www-is.informatik.uni-oldenburg.de/~dibo/hamster/

Gruß,
MIcha


----------



## Padierfind (10. Mai 2010)

Hallo,ich bin  gerade 12 geworden und hab ers mal mit Visual basic C# angefangen. Das ist ziemlich leicht zu verstehen(denke ich).Deshalb würde ich eindeutig VB C# Empfehlen.Mir hat ist es leicht gefallen es zu lernen und spass hat es auch viel gemacht.


----------



## Vereth (10. Mai 2010)

Was denn nun, VB (Visual Basic) oder C#?

Ich persönlich hätte auch C# empfohlen. Viele wichtige Programmiersprachen haben eine C-ähnliche Syntax, deswegen sollte es auch eine solche sein. Außerdem wird deren Komplexität oft überschätzt (glaube ich jedenfalls).
Zudem sollte man auch früh mit OOPS (objektorientierten Programmiersprachen) anfangen, unter anderem auch deswegen, weil das auch anschaulicher ist als eine Anhäufung von Funktionen und Kommandos.


----------



## chmee (10. Mai 2010)

In meinen Kinderzeiten war Logo die Einsteigersprache für Kinder, neben Basic selbstredend. Ich fand das sequentielle Durchdenken (inkl. Zeilenzahlen) von Aufgaben schon sehr hilfreich (imperative Sprachen). Inzwischen ist alles Anders  Die event- und objektbasierte Denke muss man auch erstmal verstehen, hat aber grundsätzliche Vorteile (zumindest für später). Natürlich ist eine IDE mit Fehlererkennung (syntaktisch) eine sehr nützliche Sache, erlaubt aber dem Lernenden (ob Kind oder Erwachsener) zu schludern und die Verbesserung der IDE zu überlassen.

Mit c# ist man ganz gut bedient, auch in Hinsicht auf Zukünftiges, ansonsten gibt es einige Basicderivate, die meines Erachtens schneller zum Ziel führen, besonders wenn es um grafische Ausgabe geht, sich später aber als Sackgasse entpuppen würden (zB Blitzbasic)

(Ja, ich weiß, alter alter Thread)
mfg chmee


----------



## Vereth (10. Mai 2010)

chmee hat gesagt.:


> In meinen Kinderzeiten war Logo die Einsteigersprache für Kinder, neben Basic selbstredend.


Meine erste Programmiersprache war das Commodore BASIC. Als nächstes habe ich mir aus Zeitschriften das 6502/6510-Assembler angelesen, aber wegen fehlender IDE nichts daraus gemacht. (DATA-Anweisungen sind doof). Logo habe ich später auch kennengelernt, war mir aber, wie oben auch schon von anderen gesagt wurde, zu kindisch. Als ich dann später C kennengelernt habe, war das eine Offenbarung für mich.


chmee hat gesagt.:


> Natürlich ist eine IDE mit Fehlererkennung (syntaktisch) eine sehr nützliche Sache, erlaubt aber dem Lernenden (ob Kind oder Erwachsener) zu schludern und die Verbesserung der IDE zu überlassen.


Schludern kann man auch ohne IDE 


chmee hat gesagt.:


> (Ja, ich weiß, alter alter Thread)


Die Wiederauferstehung hat im christlichen Abendland eine jahrtausendelange Tradition. ;-)


----------

