for beginning programming? iirc i would rewrite coreutils (ie echo, ls, cat, etc). ive been told that if you incredibly advanced in programming, writing an os is a great way to learn a language. writing a compiler is a great way to learn about programming principles and language design
If you want to go into game design, writing an OS or compiler or set of standard utility programs is not a good use of your time. Write programs that relate to what you want to end up doing.
Well windows cmd is a little lacking sometimes, I know plenty of people have written a Linux bash replica as a windows command prompt. That could be a good project.
You could then make future console apps plug into that instead and provide yourself more functionality, I've actually thought about it a couple of times but if you care to look at my latest thread my compiler's being an arse. :(