Jet Sudoku!
by John Musgrave

I wrote Jet Sudoku with several priorities in mind.  They are (not necessarily in the order of importance).
  1. A nice user friendly interface for working sudoku puzzles without help.
  2. A way to verify that puzzles are valid puzzles, solvable, and with only one unique solution.
  3. An easy way to obtain the initial pencil marks for solving a puzzle (just press <P>)
  4. The ability to print puzzles in various sizes, with and without pencil marks (for you die hard pencil and paper users).
  5. A user friendly interface.  This includes the ability to perform all functions exclusively using the mouse, keeping keyboard strokes to a minimum.
  6. The ability to import sudoku puzzles in many popular formats.  Plus the ability to copy and paste directly into the program.
  7. A simple way to manually enter puzzles.  Users need to be able to hold a book with one hand and enter the puzzle using just the mouse.
  8. The ability to get help when you need it but not be forced to receive help when you don't want it.
  9. The ability to get vague hints initially followed by more specific help when requested.
  10. The ability to receive a periodic status check.  That is, the ability to determine whether or not any critical mistakes have been made.
  11. The ability to easily export puzzles to share with others, also exportable in four different formats.
  12. A nice tool to demonstrate advanced solving techniques.  Users can search for puzzles based on solving criteria (ie. look for a puzzle that requires an XYZ-Wing or Empty Rectangle to solve it).  Then it can display and explain such techniques.
and  new to version 1.7:  randomly create new puzzles!

As of the latest version, there are 33 solving techniques used in Jet Sudoku.  Click here to view the list of solving techniques

If  you want to read my thoughts about programming sudoku,  click here