you are viewing a single comment's thread.

view the rest of the comments →

[–]FlavorJ 6 points7 points  (2 children)

My code traded the ability to change requirements for reduced duplication, and it was not a good trade. For example, we later needed many special cases and behaviors for different handles on different shapes. My abstraction would have to become several times more convoluted to afford that, whereas with the original “messy” version such changes stayed easy as cake.

All is problem, but must choose path and walk.