I really enjoy the gamification aspect of learning. I think it helps keep learners engaged and enriches their experience and desire to learn.
For instance, I am a complete nerd. I literally listen to the Harry Potter audio books every night to go to sleep. So, it is helpful for me to think of learning a new coding skill as learning new magic spells. They are, after all, sort of similar. Instead of learning some magic words that make things happen out in reality, you are learning some magic words that make things happen in virtual reality.
Thinking in this way, makes me more pumped to start a new lesson, and more motivated to complete it… because I am a nerd.
Now, I bring all of this up because you all have implemented some basic gamification aspects already in your environment, but you are not really utilizing them. The points and badges are nice. They give one a minor sense of achievement when you finish a project or lesson.
However, you could use those same points and badges to gamify things even further. Leader boards, coder-ranks, etc. would encourage learners to return and add “spells” to their coding “spellbooks”. The more creative that you can be around using this gamification, the more effective it will obviously be.
Something like building your first lightsaber as a padawan (I know I’m switching nerd references), might be achieving a certain number of points, or getting a set of badges. Then graduating to a jedi knight might be reaching another threshold of points, and so on. Then there could be leader boards within each group, for who is contributing the most to their store of knowledge each week. Teams, could be set up so it’s a collaborative effort.
To sum this up, I think the basic gamification that you have in place right now could be used to greater effect to enrich the learning experience of the people who come to your website. It would improve the retention of people returning to the website, and make a nerd like myself happier about learning python.