Heres the situation so far.I'm in 9th grade and I've been programming in python. I enjoy python however, my high school doesn't offer any courses for python. In 11th and 12th grade, I can take C++. So here's my question:
Should I:
A) Learn python for the next to years then go into C++ for 11th and 12th grade
B) Start Learning C++ now, and continue with it through your high school years.
C) Learn Python for the next 4 years and not take programming courses in school
D) Other, please explain

Please consider Job opportunities.

I'm not sure of the relevance of Python in today's modern IT world.. but my advice is to spend at some time and do a local job search for software engineers. In my experience, most companies want software engineers that are good in all areas: website design, databases, C, C++, Java, Javascript.. and usually 3 or 4 other things that I don't even understand. In my searching, I have never seen any company specifically asking for python.

D) Other, please explain

It doesn't matter. Do what you enjoy. It's not like it's hard to learn a new language later. Realize that you'll have to mostly teach yourself C++ if you really want to learn it, because your school is going to suck at teaching you C++, probably. You should take the C++ classes because if you're good at programming, they'll be easy, and if they're hard, they'll make your mind grow so that you become better at programming.

Also, you can learn more than one language at a time. You can learn 2 at a time. Or 3. Or dabble in whatever you want, from day to day.

Please consider Job opportunities.

This is the most depressing thing I've read today.

I'd go with option B, but that's me. Rashakil Fol's right, do what you enjoy, learning a new language when you already know one is usually easy. I've been doing C++ for a few years and just now I have to start learning Visual Basic, the only change big change is the syntax, which takes some getting used to.

Edited 7 Years Ago by William Hemsworth: n/a

It really depends on what you want to do, software development, web development etc.. I know, that it isn't "healthy" to think about what you will do in 10-20 years time as a job. A lot of software developing jobs now are not associated with coding more on designing because the coding is often done in third world countries.

Personally, I would recommend studying C++ as it's industry standard and a useful language to know. You could possibly look at Computer science, as a more general scope.

Hope this helps

I don't see any reason why you should skip your high school's C++ classes; however realize that your high school career doesn't really impact your job opportunities as much as your college career.

Learning how to program is more about a set of skills than a particular language. There are entire books about programming without a single line of actual code, rather pseudo code. The principles of coding are the same regardless of the language. Once you learn the basics of programming, you'll be able to use any language after a quick study of its the syntax.

Taking the C++ class will help you learn some good practices for code likely, just make sure you pay attention to your teacher and read your book (don't forget to try the exercises). Just make sure that if you really want to be a programmer you apply yourself and get into college. You can go for Computer Science, Software Engineering or Computer Engineering. Any of those degrees should provide classes to give you good insight into proper code structure, data structures, algorithms and if you're really lucky discrete mathematics.

With the programming tool set that you learn in college, you'll be able to learn any language that you want. And your high school C++ curriculum will probably be covered in the first two days of any college programming course that you take. So don't just stick to what you're learning in-class. Strive to absorb as much as possible and go out on your own to expand your knowledge. Your teacher may be able to help in this effort when you get stuck, but the best resource is either an industry mentor or a college professor.

Looking at your game that you just released in the Python forum I suggest taking the class. It should help get you in the right direction. Maybe even go get a programming book and start studying. A good book for Python is "Python for Software Design: How to think like a computer scientist", this should help you learn the basics of object-oriented design and data structures.

Good luck, and remember it's going to be a long and difficult road. But you only get out as much as you put in. If you're not willing to invest the time and effort to learn more than just a single language you'll never get a programming job (which today there are extremely few of). Maybe talk to your guidance counselor and ask if they know of any resources for you to get an industry mentor. That would certainly help you realize what it takes to get where you want to be.

This article has been dead for over six months. Start a new discussion instead.