As one of Software Cornwalls Education Outreach employees, the question I hear repeatedly is ‘where do I start with learning to code?’. There are plenty of people who want to know more about programming but are daunted by the hundreds of different ways to start.
- Do you need to go to college before you can begin programming?
- Do you need to spend hundred of hours before you can get something on the screen?
- Do you need expensive hardware and software to make a start?
The answer to these questions is a resounding no. Thanks to modern technology and the power of the internet you can do some pretty cool things with just a couple of hours. This post is a collection of three resources for people who want to try programming without diving too deep into software development.
Codecademy is an entirely browser based programming environment, incorporating an editor, a result pane and terminal (where applicable). If you are looking to learn the basics of a language, this is a great place to start. In fact, as part of my industry placement as part of a computing degree, the Ruby and Ruby on Rails lessons made up the majority of my first week. At the time of writing, the languages on offer include:
- HTML / CSS / Web Development
- Ruby & Ruby on Rails
Over the past year, Codecademy has added a whole load of supporting courses. These will help you become a more productive programmer and develop a deeper understanding of software technologies (although probably best overlooked to begin with). These include:
- Command Line Basics
The lessons are supported with gamification features, offering badges once a set of lessons within each course is completed.
The use of an API encourages good coding practices and is great practice for real software development. When creating large applications, multiple libraries are pulled into a project and interfaced with through its documented API, much like this game.
Empire of Code
The strategy element of the game complements the algorithmic thinking that later levels encourage, with this being one of the game’s strengths. Where Code Combat is aimed at younger teens, this game is enjoyable regardless of age (I certainly sunk quite a few hours into it!). Keep your eyes peeled for the Android and iOS versions, allowing you to sharpen your coding skills on the move.
You’ve seen three online resources for getting to grips with programming. Hopefully, they’ll give you a taste of what it is to be a coder. When using these tools, my advice would be to pick one language and stick to it. Python is the perfect choice as it can be used in loads of different situations, from Minecraft to Web Development. Additionally, if you’re planning to come to a Tech Jam or similar event, familiarity with the language will help you to get the most from the sessions.