Where Can I Teach Myself?

There are fundamentally endless routes to becoming qualified enough to land a job in the tech industry in the present day, whether this be through university, apprenticeships, organisations like CodeClan, or other methods. However, you often need to learn things for yourself that won’t specifically be taught to you from your regular source of learning, which can prove difficult sometimes. There are many resources out there to learn from, but some specifically explain things better than others, and are worth referring to first when you need to learn something new for yourself.

I have collated some worthwhile resources that I frequently refer to when I want to learn things outside of the classroom in the list below. Considering the majority of my first programming skills came from the resources below, they have served me well over the years!


On Codecademy, you can create an account to track your progress as you go through a course of your choice. There are various paid and free courses available to browse through in the site’s catalogue, based on a branches of programming, programming languages, and/or level of expertise. When working through a course, you are fed information and sample code that you are advised to take note on, before being given tasks to complete that will be automatically marked by the site. You have to pass the tasks you are given before you can progress, much like in other methods of learning such as programming exercise sheets in classrooms.

Codecademy also has a discussion board for a variety of different things, which is helpful for seeing FAQs about the site. The site caters to anybody from beginners to experienced programmers, therefore it is no surprise that it is one of the most popular resources available. Codecademy can be found here.


I have recently started to use Udemy for various different things that aren’t taught in my courses at university. While their courses are mostly paid, they often have massive drops in price where you can get full courses for as little as £9.99.

The site does not just cover programming, but also provides courses on topics such as business, music, health, and many others. The great thing about Codecademy is that you can almost always find courses that teach what you want to learn.

While Udemy isn’t necessarily as engaging or interactive as Codecademy, the courses that I have explored have been in the format of video lectures and demonstrations, with exercises that you can go and attempt to do yourself.

Udemy courses are taught by a variety of different tutors, and therefore some tutors may be better at teaching than others. This could be seen as a negative thing, but the site does supply a rating system in which users can rate courses that they have bought. Usually the most popular and highly rated courses are extremely good at teaching. The range of courses and the site itself can be found here.


Millions of people use GitHub for a variety of different reasons. The main functionality of GitHub is to act as an online code repository for projects. People can view and even download and locally work on most already existing repositories, which makes for fantastic learning through observing other people’s code.

A GitHub repository by the eBook Foundation hosts a range of free programming books that are very highly endorsed, and can be found here. The books that I have downloaded and used have been extremely helpful in teaching me new skills in a fantastic manner. Furthermore, you can often search through the books using Ctrl+f to quickly find specific keywords that you want to learn about. GitHub can be found here.


While this may seem like a fairly obvious resource, a lot of people underestimate the power of a good video in explaining difficult concepts. I take to YouTube a lot of the time if I haven’t got a clear understanding of concepts that have been taught in class, and want an alternative explanation that I might better understand. Usually this works really well, but it does depend on which channels you’re getting the information from. Because anybody can upload YouTube videos, you have to remember that sometimes people may get things wrong!

A few good channels that I’ve came across and used extensively are:

  1. Computerphile
  2. LearnCode.academy
  3. TheNewBoston

Khan Academy

Lots of fantastic concepts are taught in an easy and understandable manner through Khan Academy. I have extensively used the site for help with algebra, calculus, cryptography, and algorithms.

Khan Academy also has an extremely useful collection of programming resources called “Hour of Code” which are hour long segments that can introduce you to different languages such as SQL for databases or JS for drawings. These are extremely helpful and advertised for a wider audience and younger age groups, like in classrooms.

The site caters to a wide audience and since many of the videos specialise in explaining concepts to younger audiences, they are very pretty easy to understand. The computing section of the site can be found here.

Stack Overflow

Almost every programmer that I know has used Stack Overflow as a resource at least once in their programming journey. As a whole, the site serves as a resource for programmers to learn from and teach others. It is fundamentally a Q&A site. The majority of the time, if somebody else has been confused about something that you are also struggling with, you will find the answer to whatever question you may have by searching the millions of questions that have been asked. If you feel like helping somebody out, you can always answer questions that you know the answers to! After all, teaching somebody else something is meant to be one of the most effective methods of learning. The site can be found here.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s