@Ravenshade most professional programmers use an IDE of some sort. It is better to learn sooner than later. Most modern IDEs also give better error messages and help you write better code as you type - he'll learn very rapidly.
I happen to disagree, just because you plan to be a Formula 1 or Nascar driver someday, doesn't mean you should be using a Forumula 1 or Nascar vehicle from day 1. You should start off with Karting first. =D (you thought I was gonna say: Learn to drive a car right?) . An IDE is all well and good but there's no point to it if you don't understand it and it just layers problems one after another preventing you from actually learning about C++. Or at the very least, the basics.
Pen, Notepad, Typewriter = A Journalists bests friends.
Ansi C reference, Gedit, GCC = A C++ Programmers best friends.
@Ravenshade, I happen to disagree with you.
Just because you plan to be a formula 1 driver someday, why shouldn't you use a formula 1 car from day 1? These cars are free (codeblocks, netbeans) and the learning curve is much faster than starting with a used car and progressing to a formula 1.
I myself started directly with VS, then C::B. I find it redundant to send compiler flags and do so many things manually. It's very weird using terminal/cmd like that for the first time. Pressing F9 in C::B just compiles and runs, much quicker. In addition, you can see what C::B actually sends as arguments, I learned through that.
A formula 1 car has lots of different features and gadgets that are, somewhat essential to winning a race. I will give you that point. However if a gadget fails, free or not how do you cope without it? The point of starting with a Gokart first is that you understand what makes things tick and how to handle problems.
You could build an epic RPG with some incredibly sophisticated IDE however if for some reason the IDE software gets corrupted...perhaps a virus or an update has gone catastrophically wrong...*stares at Visual C++* how do you do anything with your software without it?
An IDE *stares at Visual C++* can also include a lot of fluff that you don't need to include with your program and a program that could be only a few KB, turns out to be a few MB instead just because of includes. Not to mention that they don't always work out of the box. (Could never get Code::Blocks nor Netbeans, nor eclipse to work).
I'm completely on your side that if you have a grasp of C++ say...just above understanding classes, or your program has become quite complex then you should use an IDE as it helps manage the software much more efficiently. Kinda like...do you really need Tiger Woods Professional Golf Set to play...crazy golf at the seaside. *glares at VIM*
The disadvantages for using an IDE are as follows
* increased learning time overall (due to all the shortcuts and management)
* increased learning time until learning c++ (due to installation and set up).
* if something goes wrong with the IDE...you have to get another IDE.
* Might not always work out of the box with your OS *ahem*.
* Allows you to gloss over important parts of C++ understanding... (perhaps Python2 would be better?)
Of course, the advantages outweigh the disadvantages 3:1 but for a beginner, you're not even going to be using the advantages anyway. I just don't think that it's suitable to learn with. You don't give a learner driver a Bugatti Veyron and expect them to come back in anything but a smaller wooden box, there are just things that need to be learned =P.