For the last couple of days I've been working on my solitaire thing, lying in bed and trying not to think about going back to work.
The solitaire thing: looks awful, the code is gnarly in too many places, there isn't much (any) error handling, the test-harness is patchy, the documentation is scant and the TODO list is huge. But the major components [bar one] are all now in place.
There are issues, but these are issues that shouldn't cascade—I can work on them without worrying that I will break-the-build. The main plumbing has been done, all I need to think about now is what the sinks, taps, bidets etc. will look like/do.
Well not quite.
The main reason that I started building the thing in the first place was that I was interested in the game itself. In studying it mathematically and studying AI. I'm still a while off doing that yet.
That's the big [bar one] that I don't have in place—the analysis module. [Although I'm not sure that it is going to be a module!] It's all very well being to open/save games, write the code for a new board/move/player and just have this happen, what I really need to do is...
There's a wee bit of me that just wants to forge ahead. I've built-in a few things into the model to help, and the model is set up so that it should be easy to build-in many more of such things. This would be a wrong thing to do.
So what I'm going to do is to fix the things that are flaky, every day when I'm tired of doing that I'll get out a pencil and paper and see if me not thinking about the main problems has been a help.
What's been done so far isn't too bad, but then after studying computing for three years now, it shouldn't be.
I'm in new territory [computer-wise], time to make ensure that I've built the foundations right, even if I'm thinking about the roof while I doing that.
Comments
New comment
How odd. I must have written to you in my sleep. For I wrote a lengthy response, and yet none of it appears here.