After the failure that was my Disgaea Geosolver project I decided to try writing a Sudoku solver. I realize there are loads of them already available, probably with nicer interfaces and more efficient solving algorithms, that are available without a download, but I wanted to develop some sort of puzzle solver, and I learned a good bit about interface programming and computer logic in the process.
Check out the page I created for it for more information and links.