It's been so long since I have done programming so I am really not sure what, if anything, is different these days. I have a cousin who is 14 and he wants to start learning programming languages. He asked me what language he should start out with to learn some basic programming. Now, ten years ago they started us out on Java and C++ and I actually still have my old textbooks from those courses but as with everything in computing, change is always happening. So, I am asking are these still good beginner languages or should he focus on something else to start out in programming?
Start on C or anything C-related. They're all related. Without C you would have: Javas_ript, _obol, Pas_al, Ess Em Elle, and E_MAS_ript.
I think Java would be a good choice using the Eclipse IDE for 14 year old. A lot of high schools now days teach Java in the Intro to Computer Science classes. Even the AP exam uses Java. The main thing the kid needs to focus on is problem solving aspect of programming and not get overwhelmed with a lot of OOP concepts which he can learn later on. For problem solving, I would strongly recommend that he/she does some programming exercises for each chapter.
C++ and Java are both still relevant. I'd go with either one. (although they tend to teach java more in school now and the CS curriculum in high school is now all Java along with the AP exam)
Obsolete? How so? It's not the right tool for every job but it's highly suitable for certain domains. It gives you a chance to work with many concepts in programming that transfer well to other languages. I'm not arguing that C++ is the best for an introductory course but I don't see it being obsolete.
Wow, I can't believe I'm the first to recommend Fortran! Just kidding, I hate Fortran. It's still used a lot in science, though.
C# and Java are both very good choices. Most of the companies that we are working with use one of them.
Objective C They he can make iphone apps and make millions of dollars Seriously, I am kidding. That language made be pull my hair out. Dynamic binding is hard to debug.