Since I added two new games to my puzzle collection recently, I've had a renewed interest in playing puzzle games. As has happened before, this has led me to notice things about the way I play them and start having deep thoughts about how I – and how people in general – think.
I notice when playing Solo (my Su Doku implementation, renamed to avoid confusion with www.sudoku.com and/or trademark law) that by far the most difficult thing for me is to scan a large grid and find the one deduction that can currently be made. Solo has configurable difficulty levels (each one requires more sophisticated forms of deductive reasoning than the last) and also a configurable grid size; it turns out that I find playing 2x3 Advanced to be significantly easier than 3x3 Trivial, because I prefer a complex problem I can find to a boringly simple one that I have to go hunting for.
This fits with previous things I've noticed about myself. I used to play a lot of Mao, and always tended to prefer games containing two or three difficult rules to games with fifteen utterly trivial ones; in the former case I tended to feel that the game was a complex mechanism which I was piloting skilfully, whereas in the latter case I tended to feel that I was frantically running back and forth trying to be everywhere at once and invariably missed something.
And it's the same when I'm programming: give me a big hard problem to sit and chew on and I'll eventually solve it (assuming it's not too hard of course), but give me lots of fiddly little things to fix and my to-do list will become disorganised, I'll miss things and get stressed about it. This is why PuTTY is so fortunate to have recruited people who can polish up all the tiny little loose ends after I've done major pieces of development.
Presumably this isn't the same for everybody. I wonder if people reading this have the same tendency as me in this area, or the opposite one (preferring tracking lots of little things to addressing a big thing). Or, even more interestingly, if there's anyone reading this who thinks that distinction is meaningless or misleading, or finds they can work in both modes with equal facility but find some other interesting distinction to be drawn between modes of thought they find easy and hard.
On the other hand, it seems to me that a puzzle entirely composed of a single linear chain of reasoning, where there was only one deduction to be made at any stage, might actually be quite easy because every time you filled in a number you'd be easily able to find the next step just by asking yourself "now what additional information have I gained right here?", and wouldn't have to go looking over the whole grid each time. It's all terribly difficult and subjective.
For a really advanced analysis, you could generate a "tech tree" for being able to discover the contents of cells. As you get more information on each cell, they move from being indeterminate through being hard-to-deduce (many scattered clues, no redundancy) to being easy (much redundancy, few clues needed, those that are are close at hand). The easiest puzzles would have a solution path with no hard deductions on, and the hardest would have critical points where you have to make one tough deduction before you proceed. In between would be puzzles where you have a choice of hard deductions - making one makes the others easy.
However, I agree this could be done better by paying attention to the number of empty cells. Basic difficulty level also introduces numeric elimination (observing that all but one of the possible numbers in a given square are ruled out, which will probably be due to a combination of row, column and block clues); but this is the obvious method of deduction used to fill in the last number in a block, a row, or a column, and that's definitely something that ought to be allowed in Trivial level. (Currently, in any puzzle labelled Trivial, there's always a blockwise-positional-elimination way to fill in any such single empty cell :-)
So perhaps I should rejig Trivial versus Basic so that all those modes of deduction are permitted in both levels, but it checks how quantitatively complex the deductions are in each case. Hmmm.