Goldilocks and the Three Versions
I'm coding again for a while. A little project which looks fun. Some user interface stuff, some XML and probably a bit of database backend. Lovely. I've just about finished the user interface bit. I've just reached the "feels right" part of the code writing. The first version sort of worked. The second version was half the size. The third version is just right. (this is like some kind of Goldilocks approach to program evaluation). I think that you have got to the right form for the code when adding new bits is easy rather than difficult. Now if only I could get to the thrid version without making the first two...
I think that the underlying lesson here is that you can design up to a certain point, but then you have to write some code to find out how it should really fit together.