what to teach a youngster
-
I want to introduce my 13 year old friend to the art of programming, but ain't really sure what language he should learn first. i have often been frustrated that i didn't learn c++ before pascal, although i heard that pascal is better to teach firstup because it is more structered (in terms of variable declarations, etc). don't think i should show him delhpi or VC or VB, otherwise he'll just be making interfaces the whole day and never program. any comments?
id go for C#, thats where i started :)
1001111111011101111100111100101011110011110100101110010011010010
Sonork | 100.21142 | TheEclypse -
Brian Delahunty wrote: onto your son. not my son:confused:, i'm too young for that, just a young friend!:) but still, in which language should i show him examples?
I agree with David's suggestion of HTML. He'll get the feeling of it somewhat, plus I'm sure he has surfed around the net, and if he's interested he'll want to try implementing things he's sees elsewhere. Leading him naturally into JScript, CGI, perl, maybe even SQL, or whatever.... BW {insert witty/thought-provoking saying here}
-
I want to introduce my 13 year old friend to the art of programming, but ain't really sure what language he should learn first. i have often been frustrated that i didn't learn c++ before pascal, although i heard that pascal is better to teach firstup because it is more structered (in terms of variable declarations, etc). don't think i should show him delhpi or VC or VB, otherwise he'll just be making interfaces the whole day and never program. any comments?
In your case I would begin with something easy like BASIC, then continue with PASCAL to teach what pointers and memory managment is, continue with C to show the power of the language once known the philosophy. Next, knowing C the jump to C++ is smaller even if the philosophy of OO languages seems to me easier to understand than sometimes procedural ones. The one who isn't misanthropist when 40 years old never loved human kind Qui n'est pas misanthrope à 40 ans n'a jamais aimé les hommes Nicolas De Chamfort (1740-1793)
-
There was a good thread on this subject last week.[^]. Javascript seems like a good choice to me - it's free, and it has a syntax similar to C++ - followed by Java, which is also free but adds much more capability. From there, the step up to C++ would be much less a shock than jumping into it from a Pascal background. Word of the day: Rotundacrat
Extra Credit will be awarded for: Quasimobo...I'll second that. Javascript has an uncomplicated C-like syntax (useful if your youngster later decides to learn a real language), simple objects, it's interpreted, so no compile-link cycle, it can be used anywhere notepad and IE are installed, and - best of all - it's not BASIC. :) Shog9 ------ Crazy lady with the shiny shoes, where are you? Kick your feet and calm the space that makes you hollow
Live, Insomnia And The Hole In The Universe
-
In your case I would begin with something easy like BASIC, then continue with PASCAL to teach what pointers and memory managment is, continue with C to show the power of the language once known the philosophy. Next, knowing C the jump to C++ is smaller even if the philosophy of OO languages seems to me easier to understand than sometimes procedural ones. The one who isn't misanthropist when 40 years old never loved human kind Qui n'est pas misanthrope à 40 ans n'a jamais aimé les hommes Nicolas De Chamfort (1740-1793)
I agree with the Basic idea - especially for the way file systems work, etc. However, to spice it up, teach him some HTML - I have found that kids respond amazingly to making their first web page, and suddenly can't get enough of computers once introduced to this fun. :cool: The following statement about your geekness is true.
The previous statement about your geekness is false. -
I want to introduce my 13 year old friend to the art of programming, but ain't really sure what language he should learn first. i have often been frustrated that i didn't learn c++ before pascal, although i heard that pascal is better to teach firstup because it is more structered (in terms of variable declarations, etc). don't think i should show him delhpi or VC or VB, otherwise he'll just be making interfaces the whole day and never program. any comments?
C++, without question. You don't have to get to OOP right away. C++ allows you to run the whole spectrum from simple to expert. IF he starts getting the hang of it, he WILL start asking questions that will lead to C++ concepts. I wouldn't even bother with cout--stick to straight procedural programming. Every programmer should understand puts and printf. (This method is also great to help him learn debugging, something far too many students aren't taught and never learn.) One of my greatest frustrations in learning Basic on an Apple ][ (in High School), was how quickly I ran into limitations. Within a year, I turned to 6502 assembly so I could make the computer 'dance.' (Years later this came in handy when I was hired to write Apple ][ games in 6502 assembly for my first professional programming job.) To prevent him getting bogged down with all the fluff (dialog box editors, etc.), start with console apps, though I wouldn't bother with the intricate console control stuff. On the other hand, some fluff is needed to keep him engaged--to let him see the possiblities and aim for them.
-
Brian Delahunty wrote: onto your son. not my son:confused:, i'm too young for that, just a young friend!:) but still, in which language should i show him examples?
-
I want to introduce my 13 year old friend to the art of programming, but ain't really sure what language he should learn first. i have often been frustrated that i didn't learn c++ before pascal, although i heard that pascal is better to teach firstup because it is more structered (in terms of variable declarations, etc). don't think i should show him delhpi or VC or VB, otherwise he'll just be making interfaces the whole day and never program. any comments?
I made my first programming steps with Visual Basic. But after about two weeks I got the opinion that VB is totally crappy, I didn't like its syntax and so on. That's why I don't like Delphi as well, although it is a very powerful language. So after two weeks of VB I settled to (MSV)C++ and that's the best descision I made in my whole progamming career :rolleyes: :-D regards Greg
-
tx guys, i like the html idea, and logo. assembler won't work, 'cause i have to understand the language myself...! X| is logo shareware? can't remember...
here's a free logo interpreter: http://www.softronix.com/logo.html -c
All you have to do is tell the people they are being attacked, and denounce the opposition for lack of patriotism and exposing the country to danger. -- Herman Goering, on how to control the public
-
I want to introduce my 13 year old friend to the art of programming, but ain't really sure what language he should learn first. i have often been frustrated that i didn't learn c++ before pascal, although i heard that pascal is better to teach firstup because it is more structered (in terms of variable declarations, etc). don't think i should show him delhpi or VC or VB, otherwise he'll just be making interfaces the whole day and never program. any comments?
2 words: Lego Mindstorms. Ofcourse this means spending money, but it will engage him on a number of levels and he can really see what his programming does. The Mindstorms "language" is easy, and you just as easily use something like NQC which for all it's "not-quiteness" is a decent approximation of C. When he gets frustrated that there are no floats you can nuke the firmware and add LeJos and program in real Java. Physical feedback is a wonderful thing.
-
id go for C#, thats where i started :)
1001111111011101111100111100101011110011110100101110010011010010
Sonork | 100.21142 | TheEclypseYeah, and we all know how well you've done...;-P Just kidding Nnamdi;) Norm Almond: I seen some GUI's in my life but WTF is this mess ;-) Leppie: I made an app for my sister and she wouldnt use it till it was colorful enough:) Norm:good point leppie, from that statement I can only deduce that this GUI must be aimed at children:laugh: Leppie:My sister is 25:eek: -Norm on the MailMagic GUI
-
here's a free logo interpreter: http://www.softronix.com/logo.html -c
All you have to do is tell the people they are being attacked, and denounce the opposition for lack of patriotism and exposing the country to danger. -- Herman Goering, on how to control the public
-
I want to introduce my 13 year old friend to the art of programming, but ain't really sure what language he should learn first. i have often been frustrated that i didn't learn c++ before pascal, although i heard that pascal is better to teach firstup because it is more structered (in terms of variable declarations, etc). don't think i should show him delhpi or VC or VB, otherwise he'll just be making interfaces the whole day and never program. any comments?
I would suggest learning programming by learning some fundamentals about programming, such as simple variables and control loops. The best way to do that is with visual feedback, and one of the best languages for that is Logo. I've seen some Logo programs for the PC searching Google. Marc
-
I want to introduce my 13 year old friend to the art of programming, but ain't really sure what language he should learn first. i have often been frustrated that i didn't learn c++ before pascal, although i heard that pascal is better to teach firstup because it is more structered (in terms of variable declarations, etc). don't think i should show him delhpi or VC or VB, otherwise he'll just be making interfaces the whole day and never program. any comments?
mIRC scripting. This is by far the best language for a young beginner. There is so much you can have fun doing with it and there is an endless supply of examples out there. There are also #scripting type channels on every network so you can get help right there while you are coding. This was my first language and it kept me very interested until I eventually wanted to write my own IRC client (which I've done many times by now). I disagree with the whole HTML idea above. HTML is not programming, as it has no flow. My wife is an HTML wiz and she has tried several times to program and just can't get it. Could be a lack of motivation but I think you want to teach him a language where after he knows it well he can go on to other languages fairly easily. www.mirc.co.uk[^] [Edit] The problem with all these other languages is coming up with a project or projects that are not too intimidating but also keep the student's interest. It usually ends up being boring or too hard for a beginner. With mIRC scripting you can do a lot of small things that are still gratifying. [/Edit] -Jack
If things are as bad as they can be, you can be sure there'll be a brighter tomorrow.
-
I want to introduce my 13 year old friend to the art of programming, but ain't really sure what language he should learn first. i have often been frustrated that i didn't learn c++ before pascal, although i heard that pascal is better to teach firstup because it is more structered (in terms of variable declarations, etc). don't think i should show him delhpi or VC or VB, otherwise he'll just be making interfaces the whole day and never program. any comments?
Best language to learn a child would be Pascal in my opinion. Forget all the "my first word at age 3 was 'polymorphism'" people, let her get used to the idea of programming concepts before introducing the c syntax and then OO concepts.
qwote undur construktshun!?!!
-
C++, without question. You don't have to get to OOP right away. C++ allows you to run the whole spectrum from simple to expert. IF he starts getting the hang of it, he WILL start asking questions that will lead to C++ concepts. I wouldn't even bother with cout--stick to straight procedural programming. Every programmer should understand puts and printf. (This method is also great to help him learn debugging, something far too many students aren't taught and never learn.) One of my greatest frustrations in learning Basic on an Apple ][ (in High School), was how quickly I ran into limitations. Within a year, I turned to 6502 assembly so I could make the computer 'dance.' (Years later this came in handy when I was hired to write Apple ][ games in 6502 assembly for my first professional programming job.) To prevent him getting bogged down with all the fluff (dialog box editors, etc.), start with console apps, though I wouldn't bother with the intricate console control stuff. On the other hand, some fluff is needed to keep him engaged--to let him see the possiblities and aim for them.
I'm sorry, but C++ just has too much weirdness, even at a beginner level, to give anyone the impression that there's gotta be an easier way. I'm specifically referring to things such as: - literal strings -- which are really arrays of characters, - pointers (used when passing arrays (such as strings)), - C-runtime functions such as scanf, strcat, and strncpy. - compiling and then linking before running, - passing arguments by value, reference, pointer, pointer to pointer, reference to pointer... just understanding argv and argc can be a nightmare. - the stack and the heap -- what they are and how to make proper use of them. - global variables -- how to define and use them across modules. Thus, I would not encourage a newbie to go the C++ route until later. They should first learn simpler languages, such as Basic or Java, and then they can tackle the complexities (as well as the cool features) of C++ if desired. Regards, Alvaro Insanity: doing the same thing over and over again and expecting different results. - Albert Einstein
-
I'm sorry, but C++ just has too much weirdness, even at a beginner level, to give anyone the impression that there's gotta be an easier way. I'm specifically referring to things such as: - literal strings -- which are really arrays of characters, - pointers (used when passing arrays (such as strings)), - C-runtime functions such as scanf, strcat, and strncpy. - compiling and then linking before running, - passing arguments by value, reference, pointer, pointer to pointer, reference to pointer... just understanding argv and argc can be a nightmare. - the stack and the heap -- what they are and how to make proper use of them. - global variables -- how to define and use them across modules. Thus, I would not encourage a newbie to go the C++ route until later. They should first learn simpler languages, such as Basic or Java, and then they can tackle the complexities (as well as the cool features) of C++ if desired. Regards, Alvaro Insanity: doing the same thing over and over again and expecting different results. - Albert Einstein
I disagree. All computer languages have oddities, just like all spoken languages have oddities. These oddities, like non-standard conjugations in Spanish, can be dealt with quite easily and in a progressive matter. Ironically, many of the things you mentioned are also problems in other languages. For example, Basic has functions and I find the way it deals with arguments to be more confusing than C/C++. The problem ultimately is that everyone thinks you have to dive in headfirst, so they offer up toys instead.