I too learned BBC BASIC and followed programming listings from old copies of The Micro User that my father had lent me. Heck, even my Mum sat in front of the ol' Model B copying listings over...ah happy days!Scrumpmonkey said:Python is indeed a great place to start, a few friends of mine who have gone on to do well in computing started using python back when we were 14. I only ever got to a level where i could make the basic calculator demos and the like but i feel like if i ever did feel like getting more into coding i have at least a slight basis.
Being British i have of course used BBC Basic (which is actually a bit shite)
--
Moving on though, if there's one thing I learned back when I was 16 (14 years ago...gah! The light in my hand will be flashing at any moment!) was if you're going to learn how to code, you're going to have to do it yourself. Schools and other places of education are always behind, both due to the time it takes to include a new curriculum/additional material and that the teachers are usually not expert enough in more than one compiled language. Indeed, if you asked them to list examples of interpreted/just-in-time/fully compiled languages? There is a good chance that they'd look at you blankly/mock as to why anyone would need to know such a thing/rush to Google/Wikipedia for salvation. Few would be mature-minded enough to put you at ease one way or the other.
When I was 26, I went into higher education to study computing, figuring there would be gaps in my knowledge (that I would be blind to) and that a course would fill. I was wrong, on both counts at both the foundation and undergraduate level. As a class, we taken six months just to do a simple Java program using strings and hard-coded places to put a person's name, whereas in 12 hours spread over a few days or a full week? You could have written an entire text adventure engine in C# for free with 3D Buzz.
If anything though, I would advise a school/college-leaver to learn as many languages as possible (check job listings as to what's expected) and qualification-wise the Microsoft Certified Solutions Developer track or other private equivalent. That and book learning, a dual-monitor setup and a touch-typing class! Why the touch-typing? Well, the number of people learning to code that I've met, who had to keep looking for a particular key/the hunt 'n' peck/two-finger typing...yeah, not ideal when you should be thinking in terms of programming syntax rather than "Dude! Where's the ampersand?!".
As for C++? Part of me wants to throw people in at the deep-end, if only for psychological scarring to occur and for students to see just how difficult high-level programming is and where they are on the road to learning all this stuff, as too many students that I've met simply have no idea as to what's truly difficult (apart from what they're trying to learn at that point in time).