The JavaScript Sudoku Story
Goal
Our goal was to learn CSS, Javascript and AJAX type technologies.
To accomplish this goal we developed a Sudoku game capable of solving itself AND
allowing the user to complete the game interactively using keyboard and mouse.
As an additional challenge, this web page must NOT contain a single table element, thus enforcing the learing of CSS.
Resources
Ideas:
- Use JS meta programming techniques to access the elements and analyze rules
- Some PHP allowed, but always remember that is it NOT dynamic in the browser, only to be used to create the original page.
- Use OnChange to check for rule violations.
- animate the solving algorithm, allowing the puzzle to be solved while thinking visually on the screen...
Log:
- Nov 25, 2007 - The CSS form is done and reasonable in both Firefox and IE
- Nov 25, 2007 - Input validation is complete
- Nov 25, 2007 - Sudoku Rules Checking now has error color highlighting
- Nov 25, 2007 - Found 95 dotted notation puzzles.
- Nov 25, 2007 - dotted notation spans row (left - right), wraps to the next column down, repeat
- Nov 26, 2007 - dotted notation board setting
- Nov 26, 2007 - now picks a random puzzle out of the file
- Nov 29, 2007 - Hints!!!
- Jan 29, 2008 - Improved deterministic hints.
- Jan 29, 2008 - First cut at a brute force solver. Runs slow, and long. Needs work.
- Jan 30, 2008 - A better brute force solver. Still runs slow, and long. (neat visuals in Firefox)
- Feb 04, 2008 - A better brute force solver. Runs less slow, and less long.
- Feb 04, 2008 - We're done with this experiment, satisfied with the results.
- Feb 16, 2008 - Apparently, we're not done... Added arrow key navigation!!! (damn that was hard. HINT who has the current focus?)