PDA

View Full Version : Another Book Suggestion for My Budding Programmer Son?


Garrette
19th September 2006, 12:59 PM
His birthday is coming up and he says he now needs Visual C++.net.

Fine; I'll take his word for it. But the ones I find at Amazon are expensive and get mixed reviews. I don't mind forking out some decent cash if I know it's a good book, but I'd hate to do it for something that's of questionable value.

Thoughts, please?

Orangutan
19th September 2006, 02:52 PM
Get him a gift card for B+N or Borders, Then let him decide how he spends it, You might want to suggest he spends some time browsing the contents of the books before he buys. Only he will be able to tell what style he prefers and if he makes a mistake he will have learned a lesson too. Plus he might see something else in the store which interests him more.

I know this sound light harted but I'm serious. I was soooo carful when I had to decide how to spend my money.

Garrette
19th September 2006, 03:11 PM
Thanks, Orangutan, but I'm not sure that will help. Aside from the fact that he will get money anyway and have to decide how to spend it (getting him to buy books is not a problem; he is truly a voracious reader), I don't trust that he has enough know how to pick the appropriate book, either, and I think a "lesson" would be less valuable at this point than the appropriate book.

He will be 15. He's very book smart and has been teaching himself programming for just over a year. For someone who gets very little outside instruction, I think he's doing great, but I could be wrong, because he passed me up about three days into his self-teaching.

He taught himself C++ and Java and is learning Visual Basic now. He is currently using Bloodshed (I think) as his compiler but says it is insufficient and/or too buggy for what he wants to do.

So the short of it is that I trust him to tell me correctly in general that he needs VisualC++.net, but I trust neither one of us to have the expertise to pick the right book on our own.

Does that help clarify?

GodMark2
19th September 2006, 06:08 PM
He taught himself C++ and Java and is learning Visual Basic now. He is currently using Bloodshed (I think) as his compiler but says it is insufficient and/or too buggy for what he wants to do.

Are you sure he's asking for a book? From the above statement, it sounds more like he's looking for a better compiler. If that's the case, the ones you'll find at amazon would be at full price, but your local community college will likely have a student priced version. In my area, all of the college bookstores honor high school identification for qualifying for the student prices.

Pidge
19th September 2006, 11:33 PM
You/he can download the "Express Editions" of Visual Studio .NET (Visual Basic .NET, Visual C++ .NET, and Visual C# .Net and Visual J# .NET) from Microsoft.

See http://msdn.microsoft.com/vstudio/express

At least he can see if that meets his needs or if he should move up to the Academic or full Editions of Visual Studio Standard.

Above that comes the Developer, Tester and Enterprise Editions, and Visual Studio Source safe for versioning control.

Jekyll
20th September 2006, 05:18 AM
For c++, he might want to try one of the code::blocks nightly builds instead of bloodshed.
http://forums.codeblocks.org/index.php?board=20.0

It will mean that all his old code will still work, but it is a much better IDE.

Instead of c++.net he might want to think about learning c# instead. C++.net is designed to talk to old c++ code and new .net stuff at the same time and if he tries to write normal code in c++ and use .net for the interface he'll waste a lot of time having to explicitly transform the data. Which is something I really hate having to do.

The c++.net /c# documentation that is available from Microsoft as part of the free version of visual studio is very comprehensive and the majority of books on the subject just repackage it and aren't worth buying. Rather than getting something like that you might want to buy him a good introduction to object oriented programming using c++. Unfortunately I can't think of one to recommend.

Garrette
20th September 2006, 06:09 AM
Thanks, all. I'll share your comments with him and we'll decide how to proceed.

ceptimus
20th September 2006, 02:51 PM
If he's after the compilers, you can buy (genuine) student editions of Microsoft Visual Studio from eBay at very competitive prices. The student edition is legal for anyone who is in full time education.

The student edition is functionally the same as the normal one, and you don't have to enter any special information to prove you are a student.

Garrette
21st September 2006, 08:27 AM
He just got Visual Studio from his high school class for free.

Now he says what he needs is something to tell him how to use C++ in Windows.

russell_morris
21st September 2006, 12:35 PM
He just got Visual Studio from his high school class for free.

Now he says what he needs is something to tell him how to use C++ in Windows.

From this comment, it appears to me that your son is mostly new to programming in general. Along with books about how to do C++ for Windows GUI apps, he should be learning the guts of computers - the "how" and "why" they're built like they are. Understanding the guts is what makes a great software developer.

I myself was in his position a decade or so ago. I started tweaking around in QBasic to keep track of my batting average, then moved on to Turbo Pascal and then C++ for Windows. I read tons of books and participated in lots of message boards on Compuserve about programming.

My all-time favorite book about computers is "The Secret Guide to Computers". I believe it's currently in its 28th or 29th edition. It is simply the best beginner's guide out there - your son should have this book.

It may also be a good idea to look around at local colleges' bookstores to see what books they're using in their 'intro to programming' courses. It would be very good for him to learn the "why"s of programming languages in general very early on, instead of just learning how to do certain things with C++ on Windows.

rockoon
21st September 2006, 06:44 PM
In a few years time, after hes mastered a few languages and is competent enough to no longer need a language reference in one or a few of them, then you might want to get him 'The Art of Computer Programming' by Donald Knuth.

Currently its a 3 volume set of books (can be purchased individualy or together as a set) and the author is working on a 4th and 5th volume. While this reference is getting rather old, its still considered the definitive work on algorithms and algorithm complexity. The books do not prefer any specific language (well, Knuth uses a fake assembly language to give examples) so its not something a begining programmer will find helpfull but experienced programmers simply love this reference.

jayrev
22nd September 2006, 12:10 PM
I've never been disappointed with anything in the O'Reilly series. They are about the only ones I'll by on reputation of the publisher alone.

http://www.oreilly.com/