Thesis : let's write the first thing that comes into our heads
- Problem : Ouch! That hurt. When we needed to scale it or change it we couldn't understand a damned thing and it took months.
Anti-thesis : let's sit down and design it properly making allowances for all the changes we might need to make. And discipline ourselves not to cut any corners.
- Problem : Huh? The project took 3 times as long as we initially estimated, and we still didn't expect X as a requirement. What went wrong?
See also SituatedSoftware