2017-02-11

One concept that has become popular in the last ten years is the idea that everyone should be able to code. Despite this, the need for programmers is growing much faster than the number of people learning to code. The majority of people either have tried and failed to learn or have just avoided learning code. There is this idea that coding is too complicated, that it is only for a person who thinks a certain way. The way that coding has been taught in the past does not help either; it is tough to learn when you can barely understand the jargon the teacher uses during class.

The truth is that coding is relatively easy once you learn the basics. However, finding the time and tools that will help you may make progress can be incredibly difficult. As the need for programmers continues to outpace the number of available programmers, now is a great time to start learning the basics. The following are five free apps that will teach you to code without making it feel like a complete bore.

Codecademy

Codecademy is more than just a tool. With over 25 million people signed up from around the world, this site knows how to draw in students and keep them engaged in what they are learning. With over 20 different sessions, there is something for every level of coding experience. If you have never coded before, the site makes it interesting to learn the basics of things like website creation and working with CSS. If you are a more seasoned programmer, the site covers some of the most complex languages, such as Ruby and Python.

The site goes beyond just coding as well. They have lessons for learning how to work with GitHub, an open source code repository that is popular with businesses. They even teach users how to work in command line after explaining what it is and when you would use it. None of the other sites give you this hands-on look at the tools that programmers use the way Codecademy does.

They work very hard to ensure that the lessons are more than just a bunch of code. They give you lessons, then offer a scenario where you put together a website or program using what you have learned. This reinforces what you learned using something that is interesting to you. There is no better way to learn than with something that you enjoy.

Codecademy even has a Twitter account (@codecademy) where you can read about different success stories, frustrations, and ideas. You can even use it to help stay motivated or find inspiration if you aren’t sure why you should bother to code.

Free Code Camp

Free Code Camp has a lot in common with Codecademy. Their lessons are a little tighter too. With lessons that have all of the items already pre-set, all you have to do is read the lesson and work out how to apply it to what they want as the end coding session to each lesson. However, it does not offer the same real-time session, so you will have to create and code on your outside of the site to reinforce what you have learned after finishing each course.

The map of the program is not a requirement. If you are more interested in learning about JavaScript, you can skip the other courses and begin working on JS. The one caveat is that you cannot get the certification without finishing the other courses. Even if you already know some of the languages, you need to complete all of the courses.

There is a wealth of help for those who use the site too, all of which is explained as soon as you sign up on the site. From chat rooms to forums, there is always someone who can help you solve problems when you encounter them.

In the end, it is worth it because those who earn the certifications can then be paired with a nonprofit and get some real experience with what you learn.

You can follow them on Twitter (@freeCodeCamp) if you want to see what is going on without logging into your account. This is preferable as the site will automatically take you to the lesson you are working on and it can be difficult to exit that lesson to read the news and other information. It does ensure that you do not lose your place, though, and with coding, this is always better than accidentally exiting and ending up having to start all over again.

Khan Academy

Khan Academy isn’t just about learning computer coding; it is designed to help students in many different science and math areas. It even has a Test Prep section for practicing for the SAT, MCAT, GMAT, and a couple of other tests.

However, the coding lessons are far more detailed than most of the other available apps. You can pick your lesson, see how it is divided up, and see where you go after completing the lesson. This can help you plan for once you are done. They have many of the traditional types of lessons, but they also have focused on areas where you may have an interest, such as game programming or animation.

They even have a designated hour of code that makes it easy for you to schedule your coding time on a daily basis. After all, if you know exactly how long it is going to take, it is much easier to establish a time and get moving instead of starting strong and losing interest.

You can follow them on Twitter (@khanacademy) for the latest news on all of the lessons they offer. If you love the coding lessons, you can look into some of the other areas they offer to see how they make other topics just as enjoyable.

Inform 7

Inform 7 makes coding fun by focusing on helping you create text-adventure games. This is one of the oldest types of games available and the first that had a real story to follow (unlike Pong and Pac-Man which were largely about beating your opponent). The focus is entirely on the text, which means that the code is much easier to understand.

Like coding any other game, it does take a lot of time and dedication to complete your first game. However, once you are done, you have something that you can share with all of your family and friends demonstrating how far you have come. It gives you all of the basics you need to understand the basics of coding without feeling like an entirely dry lesson.

If you are interested in getting some random inspiration, follow their Twitter account (@inform7WIP). In 140 characters or less, they publish possible options for your adventures, and not always ones that will progress the story. It is a fascinating look at what makes the text-adventure genre so entertaining.

General Assembly Dash

Like Inform 7, General Assembly Dash focuses on the coding languages that are relatively easy to learn (HTML5, CSS, and JavaScript). These are all used to create websites, something that all programmers should be able to do. The projects you create for them are challenging enough without pushing you to the point of quitting. They do not have online tutorials, and the community is relatively inactive (unlike the other apps).

If you do not need a community for encouragement, this is the perfect site to help you get started coding quickly and easily. The site is probably the easiest to follow of all of the apps as well because it walks you through each phase and explains what you are doing in the context of a project. That means you know what you are doing before you do it, and you have already seen an example of what it should look like.

If you want to start with a simple language that you can use on your first day, this is the app where you should begin. It was designed for people who have had no exposure to coding. Once you are comfortable with the five lessons here, you can graduate to one of the most complex languages on one of the other sites. You will be able to more quickly delve into them once you understand the basics of these three languages.

One of the best things about General Assembly Dahs is their Twitter account (@GA). The lessons may not take you long to finish, but this gives you a reason to keep coding long after you finish. Their Twitter feed is full of positive information and news to inspire you to keep coding.

Conclusion

Coding is not as scary or difficult as people often believe. It is just a matter of finding the right method to learn it. These five apps excel at making coding not only easily accessible but fun. Some of the apps tend to lean toward requiring a basic understanding of coding even as they teach it from scratch; others are very much built for the novice who has next to no knowledge of coding. All of them can make you a successful programmer, no matter what your current level. Best of all, they are all free, so you can try out each of the apps before deciding which one is right for you.

Show more