beanz 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

Virtual and augmented reality replace or add computing to our real world experience.

What would you build if you had 10 weeks and access to Microsoft HoloLens and HTC Vive equipment and developers?

With end of year holidays fast approaching, here are 35 of the more interesting ideas for holiday STEAM gifts that introduce STEAM concepts in fun ways.

If you work in a school or community library, or an after school group, STEAM events can be a way to offer technology events for kids.

A short history of virtual and augmented reality with lots of links to learn more.

One thing programmers do all day is imagine. When someone asks them to solve a problem with code, they start thinking and dreaming.

There are several key skills that I believe you need to have if you want to be a software programmer.

What makes a programmer lousy is a good way to identify what makes a programmer great.

Virtual reality has brought to the masses an old problem with flight simulators: what happens when our brain, ears, and eyes disagree?

The dots and lines used in graph theory can solve interesting problems.

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

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