What programming language should I learn?

When I was first getting started programming, the biggest question I had was “What should I learn?” I had no idea where to start. The web changes every day and I was worried that I’d end up spending time learning the language of the day and it would immediately become obsolete.

As a beginner, there’s so much to learn that wasting time on anything that isn’t necessary is just a roadblock to becoming a good programmer.

I know now that it was an unnecessary fear. Anything and everything you learn whether you start with JavaScript, C, PHP, Java or something else, will become programming power in your big new coding brain. Even if the technology becomes less commonly used.

Here are a few questions you should ask yourself to help identify where you should focus your learning program.

What do you want to make?
A good place to start is to ask yourself this question. Your answers should help you hone in on where would be a good place to start. Since this blog is mostly about web programming, we’ll assume that you want to make web sites.

First, to build a website you need to learn HTML and basic CSS.
HTML presents the content of a web page: the words, headlines, lists, pictures. It’s very straightforward and fairly easy to pick up the basics in a weekend. CSS brings in a few wrinkles, so it’s best to have a good grasp on HTML first.

Head over to Code Academy and go through the Web Fundamentals program.

Do you want to make websites look really pretty?
If yes, you’ll want to spend time focusing on CSS/CSS3. A little CSS can take an ugly, black & white, boring website and turn it into something beautiful.

I highly recommend the book CSS: The Missing Manual. This is where I first learned how to make ‘real’ websites.

Do you like making websites that dance and change and interactive for users?
If yes, you should learn JavaScript and jQuery. These powerful languages make websites come alive. You can create image galleries, pop-up windows, and an unlimited number of other cool effects and animations. You can do calculations and handle data in the browser. Again, JavaScript and jQuery are extremely powerful (and fun!)

I picked up the basics from the book JavaScript: The Missing Manual. (I liked the approach of the Missing Manual series. It teaches with a series of projects that build on each other. I found them really useful for stepping me through the intro stuff pretty quickly.)

Do you like creating rich sources of data easily manageable for users?
Check out PHP, Java or Ruby. Did that help much? Probably not. This one is a lot harder because you can use multiple languages to do the same things. But by the time you get to this point, you should have a more clear idea of what you need in a programming language.

I picked up PHP first because I was using WordPress a lot. And since WordPress is built with PHP it made sense. (Plus, WordPress powers over 22% of ALL websites, so you’ll more than likely run into it.) If you’re in a similar situation, this should make your decision easier.

Ruby on Rails is hot right now and makes it easy to quickly build web apps. I hear more and more about Ruby on Rails every day. It’s worth checking into.

A final note:
at the end of the day, just pick a programming language and learn it. It WILL be useful. The most important part is that you’re learning programming: the concepts, structures and mindset. That being the case, I highly suggest you go to Udacity.com and complete the Intro to Computer Science course. You will learn the fundamentals and be well on your way to making rad things for the web.

Leave a Reply

Your email address will not be published. Required fields are marked *