PDA

View Full Version : Little Help from Programmers?


revrew
01-02-2004, 09:16 AM
I've got a friend (who doesn't know jack about computers), who has a 9-year-old fascinated with programming.

The 9 year old is exceptionally bright, and Dad would like to give Son some materials to help him learn in this area. 2 questions for the programmers on the board:

1. What programming languages might be advisable for this youngster to explore (keeping in mind a future career in programming is a legitimate possibility)?

2. What books/websites/resources might be available to teach these languages at a simple, introductory level?

Thanks!

VPI97
01-02-2004, 09:25 AM
I started learning BASIC at nine and it worked out well for me. But then again, BASIC was really all you had in 1983 in terms of what you could mess around with on a Commodore VIC 20...today's kids have many more options that what we did when it comes to computers.

I'd buy him VB and a good 'example' book that's geared towards kids and let him have at it. If he can handle the verbage, I'd also get him a intro to object oriented programming book and a intro to linear programming book. VB's easy to learn and while there may be other languages that are a little simpler in terms of syntax, working with simple objects and being able to see the fruits of his labors would probably maintain his interest.

Radii
01-02-2004, 10:18 AM
When I was a kid my dad subscribed to a couple of Atari computing magazines(we never did the Apple/Commodore, we had the Atari 800) that had programs in BASIC that you could type in.

We would go through all of the magazines together and pick out one or two programs to type in. The programs(usually little games) were probably all pretty stupid, but I learned a ton in the process. I wonder if stuff like that is still out there?

In general my beginning languages were BASIC and then Pascal. VB might be a decent first option too.

Tasan
01-02-2004, 10:21 AM
These days I'd suggest VB, although if you can find Pascal somewhere that would be a good option as well. Finding books on Pascal might be the problem with that route.

Fidatelo
01-02-2004, 10:29 AM
I'm not sure what kind of cash you are looking to dole out, but you could look into the LEGO MindStorms stuff (Robotics Invention System). I don't know a lot about it but it seems like it would be a lot of fun to play with.

VPI97
01-02-2004, 10:30 AM
That's the thing about Pascal...I was under the assumption that you could only find it (and related reference materials) at universities these days. I say that because last year we had an issue in the office where an old Pascal app needed some work, but the contractor that had originally written and maintained it was long gone. It took a trip to Georgia Tech just to find a compiler...

Also, I was going to post the same thing as Radii since I grew up using the magazine and book route with pre-written code to help learn programming. But I thought those magazine were long gone...

Coder
01-02-2004, 10:43 AM
Or you could try to get your hands on Delphi from Borland.. it's Object Pascal with a graphical IDE similar to VB.. You create stand alone EXEs (as opposed to VBs applications which needs tons of support files).

I know Sabotai uses it :).

Killebrew
01-02-2004, 10:57 AM
Don't bother with BASIC, if you go that route I'd try Visial Basic, although that may be a bit too advanced for a 9 year old. I also think web development would be a great thing to start with since the "payback" is so immediate and it's so visual and creative. HTML if he does not know that yet, and then some related advanced direction like ASP or PHP.

Bonegavel
01-02-2004, 11:52 AM
Screw the soft crap Rev., jam C++ down his throat. If he can learn it now, he will be so FAR ahead of the curve, he will own an island by 25.

[self edited for man of the cloth]

Glengoyne
01-02-2004, 01:25 PM
I second the delphi route.

It can be learned in much smaller chunks than VB.


If you have a linux box, you can let him tinker with some non graphical stuff with Perl or Python. I learned at a command line, writing programs that did increasingly complex operations and displayed the output.

You can also sort of ignore the graphical elements of Delphi to facilitate learning the basics of algorithm development, which is really what he would be learning. I do think that a simple command line environment is less complicated to grasp than all the bells and whistles you see in any of the IDEs(Integrated Development Environments) around today.

sabotai
01-02-2004, 02:51 PM
I started out with BASIC on a C64.

I'd say for a 9 year old, going with Delphi is a great option. Basically, Delphi is to PASCAL as VB is to Basic. Plus, it's object-oriented, so he could learn OOP technique as well. I would say getting him to learn OOP as soon as possible would be the best route. I spent more than a decade with procedural languages, so when I got to OOP, it took me a bit a re-education to really get the hang of it. Leanr that boy OOP early.

The plus side with Delphi over VB is that it enforces good coding practices. The code looks much cleaner than in VB, mainly because it has to be by design. Plus, making Windows programs in Delphi is FAR easier than in VB (at least in my experience).

Troll
01-02-2004, 02:55 PM
C++, give him basic and he'll learn to code sloppy

Coffee Warlord
01-02-2004, 03:04 PM
Bah, teach him to hack in Perl. :)

I'd reccommend the following. Get him started in HTML first. Easy, simple, good to know. Then get him going on a web scripting language, to make the websites he's done...do shit. (I'll of course reccommend PHP, but if you want to indoctrinate him into the world of Microsoft Lackeys...fine.) :)

Edit: And get him a Linux box to play with!

HeavyD
01-02-2004, 03:17 PM
Originally posted by Fidatelo
I'm not sure what kind of cash you are looking to dole out, but you could look into the LEGO MindStorms stuff (Robotics Invention System). I don't know a lot about it but it seems like it would be a lot of fun to play with.

The LEGO idea is great!!! I have a BS in Computer Engineering and believe it or not, we used these things in a engineering lab. They are really cool to play with, although I believe a tad pricey. But once he gets to the point to where he is understanding things pretty well, then by all means, throw C or C++ at him. That will prepare him for any course he would take in College. There is a noticable difference in the people who didn't program early on in life. Start 'em early.

sabotai
01-02-2004, 04:30 PM
There is a noticable difference in the people who didn't program early on in life. Start 'em early

Yup. The ones who have not programmed their whole life gets the A's, and people like me who have get the C's. Why? Because you think like this:

Why do the homework? I know this stuff.
Why study for the tests? I know this stuff.
Why show up for class? I know this stuff.

:D

(Took me til my junior year to actually start trying at my classes, then I was on the dean's list every semester. But I was a straight C student until then. :) )

Glengoyne
01-02-2004, 09:31 PM
Originally posted by sabotai
... I would say getting him to learn OOP as soon as possible would be the best route. I spent more than a decade with procedural languages, so when I got to OOP, it took me a bit a re-education to really get the hang of it. Leanr that boy OOP early.

...


I have been an OOP, as opposed to OOTP, naysayer for many years now. I am starting to come around though, because a former employee has gotten me interested in Python. I am an old school C programmer, and I still cannot be convinced that in principle the "objects" I have designed and programmed for years are in any way deficient to what I can create using OOP techniques. I do now see that those OOP techniques make it MUCH easier to accomplish the same goals and functionality I have always focused on. I am starting to actually consider C++ now when I am looking at a new project. In fact I think I am going to do a small TCP/IP interface between our OLTP processes and a bank for Credit Card Transactions using C++.

Oh back on topic I would concur that HTML would be a good place to start getting acquainted with syntax. I also really think a command line interface is simpler than a GUI, but as one can conclude from above I am a dinosaur.

Oh and also get him started right teach him vi over emacs.

GoldenEagle
01-02-2004, 09:40 PM
I would not recommend PHP becuase it does not build good fundamentals.

By the way, programming is a very expensive habbit. I do not think i would invest alot of money buying him an expensive compiler and all that.

HeavyD
01-02-2004, 10:41 PM
Originally posted by Glengoyne


Oh and also get him started right teach him vi over emacs.


I agree.......I was taught emacs in school. I have never used it since. I was not taught vi, and I use it all the time in work now.