English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
All categories

Hi, my Grade 8 son who loves everything to do with computers is being home schooled for one year before starting Grade 9. He has done several games programming 'camps' which were successful, and I thought that studying a proper programming language might be fun for him. I found some books in our local bookshop - "C++ made simple" which looked like he could handle them (he's a good reader). So my question is, would this be a good program for him to learn? If so, what book would you experts recommend? BTW, our computer runs WIndows Vista. Thanks a lot!

2007-08-16 02:22:47 · 20 answers · asked by clio 4 in Computers & Internet Programming & Design

20 answers

If your son has done programming, which you say he has at camps, then I do recommend C++. If he's had success at local camps, and you have the money, I believe you can pay for him to audit a class at a local community college -- around here for about a hundred dollars -- by audit I mean sit in and not get graded, and at least the first half of the class shouldn't be above his head, though the second may be.

I've looked up C++ made simple on the internet. It looks like a perfectly good book. There is one issue to deal with . I did not see a compiler in the back of the book in the product descriptions I saw on-line. Most computer books have CDs or DVDs in the back. Some have compilers and source code, some just have source code. Without a compiler your son won't learn C++. Some compilers -- particularly Microsoft compilers which I am told currently work better on Vista than their competitors' can be very very expensive. They have released a version in other books which allows you to compile and run programs after clicking on an acknowledgment that this program is not for redistribution. You can also get cheaper versions of most compilers through your college or University, which is another reason I made that recommendation up top -- it will give you a University affiliation.

If the book has a compiler, fine. Go for it. If the compiler is GCC or DJGPP, it will be identified as such in the first pages or on the last pages near the envelope where the book is. In that case, I've posted a link to a better version of it than DJGPP in sources. There is a free compiler there, which runs on Windows. It may be a bit complicated to install, but it will run any exercise of a book which says it requires GCC or DJGPP. So you won't need them in the book.

If it requires Microsoft C++ or Borland C++, see if they are included. If not you will have to pay real money, and you may as well start thinking about a college course for him. I love all versions of GCC, but it may not be appropriate for the exercises the book will give him. And talk to a professor of course about whether it's a waste of time: they make their living by sharing knowledge and the broader the group they share it with, the better the school looks.

2007-08-16 10:31:15 · answer #1 · answered by jplatt39 7 · 0 0

Strictly speaking, C++ is both an easy and hard language to learn and master.

The basics of C++ can easily be understood by simply picking up a book and practicing with your hand using a free IDE and compiler. I recommend Microsoft Visual C++ Express Edition.

In terms of books, I recommend Sams Teach Yourself C++ in 21 Days; it is a good starting book and pretty much covers the basics and gives an introduction to some advanced topics, which can be explored in different books.

I would stay away from books like C++ Bible and C++ For Dummies because they tend to be either too advanced for a beginner or too "shallow" to teach anything, respectively.

By all means the Internet is a great resource for searching for help. There are many free tutorials and examples that you will not find in any book.

C++ is a very complex and powerful language but we all have to climb the ladder from the bottom. Get him to learn the basics and try to code the basics with his own hand and sooner or later, if he enjoys programming enough, he will have the tools to tackle the more advanced topics.

Good Luck,

2007-08-16 09:39:07 · answer #2 · answered by Alexander E 1 · 1 0

Both C++ and Java are complex languages, when you get into the nooks and crannies. Of the two, C++ is more complex.

I would suggest Java as a better place to start than C++. Your kid will spend much less time banging his head on his keyboard trying to figure out why his program doesn't work.

Once you know one of these languages, it is pretty easy to learn the other. And contrary to some of the other answers, Java is not just for people that can't handle C++. In fact, developers of all skill levels (even expert) generally are much more productive in Java than C++. Java was not invented just for the heck of it - it was specifically designed to avoid many of the problems with C++.

2007-08-16 10:50:45 · answer #3 · answered by Rob C 3 · 0 0

Your son is awfully young, but I'd be lying if I said I didn't start learning C++ when I was 14. A lot of the math involved was over my head, but I still learned most of it. It gave me a great heads up in college and high school because I had some familiarity for what I was learning, and I saw a practical use for it.

C++ can be challenging, but it's the best place to start. The best programmers know C++, the rest just get by using Java, .Net or something and don't know the fundamentals. Getting him a book and VC++ Express is a great and cheap way to begin learning C++.

2007-08-16 10:34:45 · answer #4 · answered by Pfo 7 · 0 0

C and C++ are probably the most commonly used languages today. So either is an excellent choice for learning programming. C is often the first language taught in college. Any language that your son learns will help him. The concepts are basically the same in all languages. Just a difference in syntax and grammer.

C is normally used for programming applications and games. In fact, the Windows programming itself is written in C++. While other languages are designed for Internet programming (such as HTML, Java, Perl, etc.). So it depends on what he is most interesting in programming.

But any language he learns will teach him concepts that he can transfer to other languages. Will put him ahead of the other students in classes.

Besides the C++ language book, you may want to look for one on C++ game programming. IT may hold his interest longer if he working on examples and projects in a subject he has an interest in (game).

Good luck on the Home Shcooling. We did all four of our kids for parts or all of their schooling. It is a big plus to have that time of one-on-one, designed for them education.

2007-08-16 09:39:10 · answer #5 · answered by dewcoons 7 · 1 0

I started by reading the tutorial on www.cplusplus.com, its extremely good, well phrased and informative in a concise manner. My first program wasnt a Hello World program but a add 2 numbers one, going against tradition. Its much better to practice the concepts that he learns in each of the lessons, than to aim for a specific program, in my opinion. Just tell him to use the features he learns in simple programs. Its the best way to learn. Two good ones that challenge thinking and mathematical skills, are a program that generates random numbers, and one that generates primes, and then just try to improve them. I could now generate all the primes up to 1 million in less than 25 seconds.

2007-08-16 09:34:49 · answer #6 · answered by Pandu 2 · 1 0

I have heard of people starting their studies with C++. If he finds it too much of a challenge, try him on Java. Another fun way to learn programming is LSL, the scripting language that runs the user-created objects in the Second Life virtual environment.

2007-08-16 09:28:35 · answer #7 · answered by djnightgaunt 4 · 1 0

No, that is probably one of the most difficult programming languages to learn, college age students have a difficult time with that working on it full time.

A good one for your son is Alice 3D (link below) which is for children to learn programming in a fun way. It's free.

2007-08-16 09:30:03 · answer #8 · answered by Phil 2 · 1 1

C and C++ languages are basic for everything in coding world. By learning this syntax he also learns the basic way to PHP, Java, C#, Action Script etc.

C++ is a good choice.

2007-08-16 09:28:14 · answer #9 · answered by Last Sipahi 2 · 3 0

Yes ... :) it's a good language. For Vista, you can download free Microsoft Visual C++ 2005 Express Edition from MSDN (http://msdn.microsoft.com)

2007-08-16 09:28:07 · answer #10 · answered by Anonymous · 2 0

fedest.com, questions and answers