What is HoDoKu?
HoDoKu is a sudoku helper written in Java and available in English and German. Generate sudokus in five different and fully configurable difficulty levels. Solve them yourself (with help from HoDoKu's hint system) or let HoDoKu do it for you.
HoDoKu supports many more human style solving techniques than most other programs available (singles, subsets, LCs, fish, wings, uniqueness, coloring, chains, ALS; for details see "solving techniques"). All steps can be highlighted on the grid which makes HoDoKu a great tool for learning as well.
If you want to practice a specific technique, simple go to "Training Mode", select a technique, and every new generated sudoku will contain that technique. And if you want it, the sudoku will be solved automatically up to the point, where the technique is applicable.
HoDoKu contains a powerful sudoku analyzer: view all available solution steps for a given state and change your solution accordingly. Manage multiple solutions for one sudoku and write the sudoku plus your solutions to disk.
The project seems to be no longer updated, but last version, 2.2.0, released in July 2012, it's fully working and can be still downloaded from the official website.