Why We Should Build Software Like We Build Houses | Wired Opinion | Wired.com
Blueprints help architects ensure that what they are planning to build will work. “Working” means more than not collapsing; it means serving the required purpose. Architects and their clients use blueprints to understand what they are going to build before they start building it.
But few programmers write even a rough sketch of what their programs will do before they start coding.
Writing specifications is hard. Nobody likes to do it, especially if the joy of coding still runs through their veins. However, it can save you a lot of time down the road, both in implementing your design and showing others what you’re up to.