Python has a quite interesting programming challenge. Unfortunately it is not possible to do the challenge in any other programming language, because in the later levels it starts to depend on special libraries that are only available in Python.

The idea is to create a similar challenge that does not depend on a programming language. Ruby probably should be a very practical choice to get through all levels, but It should also be possible with Perl, Python, Java, or whatever. This would also be a very entertaining way to teach programming. It could work like a game with different episodes: string episode with 10 levels, an OOP episode, etc.