First answer I don't know. Sorry
Second one depends on how good you are. But I think you're intermediate'ish.
So Algorithms, Networking apps, or graphical apps.
Algorithms like a never losing Tic-Tac-Toe game.
Networking apps is self explainatory.
And graphical apps is like photoshop'ish apps, or maybe even something like after effects (so movie'ish).
Or another idea I've been wanting to do for a long time but never had time to do is, write a program that let's you design D3D forms.