The courses are divided into units, which create a step by step learning experience. The units build successively; unit 2 will be built on top of unit 1. Each unit contains a small lesson, where the user is given some information about a certain topic, and then instructed to do a small task relating to the topic. Hints are available to users if they are stuck at any point. Upon reaching certain milestones, the user receives badges depending on what they have accomplished.
I like the way Codecademy structured the courses. I think that people may find coding slightly overwhelming because of the all words and numbers written in such a different manner. However, this program breaks big chunks of information into small steps, which creates a great learning experience. Furthermore, I like the idea of badges that are awarded to users as they complete certain courses and projects. I think this is a key motivating factor for users to continue to learn. The streak counter is another motivating factor. It counters the number of days the user has logged onto Codecademy. This will certainly encourage users to practice code daily and make it a habit.
Above is a screenshot of some of the badges I have earned while practicing code. It is highly motivating to receive these from time to time.
These two screenshots are from the project I completed. I was instructed to create a button using HTML and CSS. I used a lot of what I learned from the course to complete this project.