Well, you say to challenge your programming skills, yes?
What skills are they? as in what coding language?
If you are new(ish) to coding, go for Visual basic.
If you are slightly more advanced, use C++.
If you need help making a Console emulator in VB, I can send you my Source, and you could learn from that?