Kids, Code, and Computer Science Magazine

5 Ways to Learn Programming Languages

Dushan Hanuska on Flickr

If you are looking for ways to learn a new programming language or framework, here are my 5 suggestions.

1. Online video courses

Many people learn better from watching and following along with videos. There are lots of sites out there these days which offer video courses for learning technical topics such as a new programming language.

The benefits of learning by video is that you can pause the video whilst you follow along with the exercises, you can rewind if you didn’t understand it and want to hear it again. You get to hear what they are saying and also see their code on the screen.

One of the most popular video learning sites is Pluralsight. They have over 5,000 online courses for you to choose from. There is a good search tool on the site to help you find the topic/course you need.

There are many programming languages to learn on there like Javascript, C#, Python, Node.js, C++, Ruby and Java. There are also hundreds of videos about different frameworks like .NET, Ionic, jQuery, Node, React, Ember, Aurelia, Xamarin and many more.

The good thing about Pluralsight is that you get a 10 day free trial, so you get to see what it’s like to learn by video course without paying anything out. I recommend you give it a try, even if you don’t think you would learn well that way, you might be surprised.

2. Books

Books are an excellent way to learn, and with tablets, kindles and smart phones these days, they are more accessible than ever. One advantage they have over the online videos is that they can be saved to your device, so you can be learning even when you are lying on a beach somewhere, or on a plane.

The other good thing about books these days on smart devices is that you can search for key words easily. When I’m learning from reading a book, I find I’m not always too interested in the history of the topic so I skip those sections and get to the main part of the book.

Amazon has thousands of great books out there for learning programming languages or frameworks, like C# in Depth by Jon Skeet or Head First JavaScript Programming.

With Amazon, you get to preview inside the books so you get to read a few pages to help you decide if this is the book for you. Most books are available in physical and kindle version too.

3. In person courses

You can learn a programming language in a short space of time by attending in person courses, or going to boot camps. This is a great way to get a good understanding of the topic because you can ask the teacher questions there and then, which is not possible in videos or books.

Before I got my first job as a Software Engineer, I had been learning about ASP.NET and C# in my own time. I had watched video tutorials and skimmed through books, but it wasn’t until I attended some properly structured, in person, courses that I really started to learn. If you or your boss can afford this, I highly recommend it.

4. Puzzles and problem solving

A good way to learn a new language is to take part in online puzzles like Project Euler. You have small challenges you need to complete, which is ideal for trying out a new language to create the solution for solving the puzzle.

Have a read of my blog post about Project Euler to find out more.

5. Find a mentor

Go to meetups, or ask your colleagues/friends, who are competent in a the language or framework, to teach and mentor you. You will both find it a positive experience. I enjoying sharing knowledge with others and it isn’t until I try to teach a concept to someone else, that I really learn about that topic. It makes me research the topic more to find answers to questions I hadn’t thought about yet.

It is good to learn from someone else who can tell you about the pitfalls and quirks of the language/framework. Perhaps you could start a project together where you do most of the leg work and the mentor guides you through it, teaching you what you need to know along the way.

I hope you found this post useful and it has given you some food for thought. You can try all of the methods and see which works out for you. Please comment below if this post has helped you or if you can think of other good ways to learn.

Learn More


Project Euler

C# in Depth

Head First JavaScript

Also In The August 2016 Issue

A thoughtful essay to inspire the start of a new school year.

Teacher and librarian Colleen Graves describes her journey with her students learning about invention literacy.

This summer two interesting books appeared, one teaches computer science concepts within a detective story, the other explores how teachers can use design thinking.

Makey Makey projects can teach kids about user interface and design cycles and empathy while having fun.

Forks are used in software development to describe how software projects evolve.

Board and card games organized by grade level, with links to more tools.

Schools and public libraries are perfect places for people to have fun and learn as they make things

Discrete math is an important computer science skill that introduces you to logic and logic circuits.

Creativity is innate in all people. Design thinking is a way to bring out and amplify this natural creativity.

While everybody on the planet has used a web browser, many people don't know about web browser history.

Here's how to tell if you are a beginner programmer or if your programming skills are evolving.

If you are looking for ways to learn a new programming language or framework, here are my 5 suggestions.

Links from the bottom of all the August 2016 articles, collected in one place for you to print, share, or bookmark.

Interesting stories about computer science, software programming, and technology for August 2016.

Computer science unplugged teaches how computers and computer science works, without the use of computers.

Paul describes his daily life as a programmer from Derby in the United Kingdom.