Computer Science Question: What should I learn next?

<p>So, mainly this is a question for those computer programmers on CC(woot!). I'm an aspiring computer scientist, and I've been doing some programing languages of late (note: this is NOT an "what language should I learn thread).</p>

<p>I'm currently a high school junior. I programmed in Perl a couple of years ago, and I learned: strings, loops (while, if, for, etc), and some functions. I mean, real basic stuff. A ton of print statements, and math operations, honestly. I was on and off with programming - a little PHP and HTML (I know that doesn't count). Last summer, I worked a lot with Visual Basic and access, and I know a good amount of how do use: databases, OO programming(with VB- easy stuff), using IDEs, and well, basic stuff in VB). And recently I've learned quite a bit with PHP/MySQL: arrays, function, databases, post/get, cookies, date, and file manipulation. </p>

<p>I was considering on taking up a project with PHP and MySQL, but honestly, it's a very ambitious one - involving countless hours with AJAX, testing, writing HTML code, and I honestly don't feeling like taking it up - because programatically it's not that complex, but the project itself is - so basically it's a waste project which'll teach me something, but probably nothing worthwhile.</p>

<p>So, I'm at the point in programming where I feel that if I wanted to do something in a language, I can (using tons of tutorials, etc, but nonetheless, I know how stuff works). I'm not sure exactly what to learn/pursue, however, if it makes sense.</p>

<p>So, here are my questions (sorry to make it so long!):</p>

<p>1) Am I still a n00b (to programming)?
2) Should I drop my PHP project, and learn other stuff?
3) Is it bad to be skipping from programming language to programming language?
4) What should I learn next (Java/C++)?</p>

<p>1) You're not a true n00b, but you have a lot to learn. Learn Java or C++. Then you'll never be called a n00b.
2) Keep (and finish) your PHP project. But learn either Java or C++ at the same time
3) Not really. Many languages are the same, with minute differences (and obviously syntax). But learn Java and you'll be able to switch more easily.
4) Java. Then C++. Especially because you can take AP CompSci next year (and next year is the last AP CompSci AB, so try to fit it into your schedule!)!.</p>

<p>If you're as experienced as you say, learning the basics of Java should take you a day or two. Then you can do the fun stuff - applets, applications, GUIs, etc...</p>

<p>^ I agree. Netbeans will be your best friend in no time. :)</p>

<p>I agree with icinnamon (though I'll emphasize #3--explore! There are thousands of programming languages, and it doesn't hurt to know, or at least know about, many of them).</p>

<p>I'd also encourage you to look into the theory behind programming languages--that's the real hardcore stuff.</p>

<p>Programming</a> language theory - Wikipedia, the free encyclopedia</p>

<p>You might also look at the CS curricula for different schools (esp. the top CS schools, like Berkeley, Stanford, MIT, CMU, etc.), for ideas.</p>

<p>thanks a lot for your replies!</p>