Teaching Programming

Teaching Programming

For those not familiar with Codecademy, it is a truly fantastic site for learning to program. Mentioned in our post “7 Sites That Make Programming For Kids Fun“, the site offers a gamified approach to learning code and offers extensive free courses. Yesterday the site announced that it is launching a course creator tool. This is great news for both those learning programming and those teaching programming online.

Teaching Programming

What is out there?

Currently there are a lot of ways to learn programming online. Blogs, forums and apps are among many of the options out there when you are looking to learn. But what if you are looking to teach? The options are suddenly either very involved or very few.

  • Blog – A blog is an easy and cheap way to get your knowledge out there. But it is still just a blog. Students will interact with your content in the same way they interact with any blog. Yes, the articles may be useful and relevant, but there is little inspiration or drive to continue onto the next post.
  • Paid training platform – A training platform will give your course material the correct structure to engage potential students, but it does have financial drawbacks. Most decent training platforms require a fee, and not many are geared towards teaching programming

Both of these options will require time (and money) in set-up and do not provide a dedicated platform for coding courses. You may find that using a solution like this requires a lot of effort “tweaking” the platform, giving you less time for content creation.


Why Codecademy?

Using Codecademy to create a programming course has a lot of advantages:

  • The platform is dedicated and created for teaching programming.This means you can take advantage of all the research and work Codecademy has done to tailor the experience to novice coders.
  • They already retain over one million users that could be potential students for your course
  • The platform has been created by people who are obviously passionate about good code. The site is a pleasure to use. Clear, responsive and beautiful, the Codecademy site is one of the nicest LMS+ platforms now available.


Getting Started

The Codecademy course creator tool lets you begin building and teaching programming immediately. You do need to be a member of Codecademy, but this requires little more than an email address (and it’s a great network to be a part of anyway). At the moment the course creation tool supports, Javascript, Python and Ruby.

Once you have chosen the language you would like to teach, you are ready create your courseware.


  • Create Course – Course creation is broken up into three categories:
    • Lesson – Lessons introduce users to new concepts and are more instructional than applied. Typically 5 to 6 lessons in length, each with 4 to 6 exercises.
    • Project – Projects get users applying concepts they learned in lessons, showing how code can be used in various contexts and walking students through each step of the exercise. Typically 1 lesson with 6 to 8 exercises in length.
    • Challenge – Challenges give students specifications to build something, and offer less assistance than projects. They should assess how well a student has learned a topic and rarely introduce new concepts.
  • Learn Best Practises – Learning best practises is essential in running a platform of user generated content. All course material needs to follow a similar format and structure to aid learning as well as be an enjoyable system to use.
  • Get Support – Codecademy has a very active community and help is never far away. Support is offered through the course creator forum, and although in its infancy, the Q&A will fill out quickly


ICT and teaching programming in schools is becoming a big issue for many countries, but would teachers in your school feel comfortable teaching programming? And is Codecademy the platform you would choose to use? Let us know your thoughts in the comments.


Image courtesy of Flickr, Britt Selvitelle

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.