3 ms·
Well, I code as fast as possible. There are various limits to this speed. Am I showing a framework to someone? Am I explaining this architecture to someone? Th
by tetha 16y ago
Well, I code as fast as possible. There are various limits to this speed.
Am I showing a framework to someone? Am I explaining this architecture to someone? Then I program slower, because I need to explain many things which are in between the lines. Why do I call it like this, look there is this naming scheme, there is that caveat.
Am I working on something alone, know exactly what I want to do and how to do it? Then I code quite fast. I would go as far as saying: I dont program in this state. I just write the code down, because I know where to go.
Am I exploring possible API designs with some tests, and some prototypes? Then I go slower, because I am tinkering and thinking about this API. Would this synonym be better here? Should I use some regular setWidth here, or rather withWidth to emphasize the immutability? Can I build a fluent interface?
Am I in a good flow during refactoring? Are things turning out really nice, and the refactorings just present themself like proud little animals? Then I usually work faster again, because it is flowing so nicely and stuff just grows a lot prettier than before with each step.
However, I am kind of strict about certain limits of speed. Skipping tests could make me faster in the near future. Sometimes copy-pasteing could make me faster in the near future. Sometimes not doing a certain mid-sized refactoring could make me faster in the near future. I am aware of this, however, I force myself to be not too sloppy. Quite often, turning the copy-paste into an extract method only takes a minute or two, so I just extract the method. Thus, I am limiting my speed in the near future, because I know that my average speed in the long run will be superior.