June 10th, 2005


for programmers and others who are interested in it

In programming there are many many different styles out there. Some people do heavy design before putting anything down on paper. Some try to design things that solve *all* problems of a general type instead of just the one specific problem they care about. Some are paranoid about unexpected results, or about unexpected input.

Personally, I'm very very paranoid. I'll lock down my functions exceedingly well, forcing it to crash if anything I'm not expecting shows up. I always go for the simplest solution first, and try to keep all my code as close to where it's used as possible. I don't do any design beforehand, but I do look for sane "interface barriers" that I can split the program up among. (For example, in my game, I have the "collision detection and calculation" module which is split apart from the rest of the game - but actually deciding what happens when things collide, that's right in the middle of the game logic.)

Keep it simple and reliable, don't write more than you need, make it work and worry about making it solve world hunger later.

What style do you have?

(If you do any problem-solving other than coding in your job, feel free to answer. You just don't get a convenient example to base your answer off.)