This post originated from an RSS feed registered with Agile Buzz
by Jared Richardson.
Original Post: It's just too complicated here!
Feed Title: Jared's Weblog
Feed URL: http://www.jaredrichardson.net/blog/index.rss
Feed Description: Jared's weblog.
The web site was created after the launch of the book "Ship It!" and discusses issues from Continuous Integration to web hosting providers.
Time and again I hear people say that their problem is too complicated to solve cleanly. The reason their solution is so messy? It's because the problem requires it!
This is, of course, just silliness. Your problem may be difficult. Your timeline may be too short. But you've got to realize that a messy solution is going to cost you needless evenings, weekends, and more stress than your body should have to endure. It's going to cost your company money to patch, fix and refix over and over.
I once met a team of developers who thought their build system was so complicated it needed to be built five to seven times before it could build cleanly. So when a build was required, everyone went to one box that could build and they hit the "build" key in the IDE until the build succeeded.
It took about half a day with Ant to create a robust, repeatable build script that did everything needed. The build wasn't that complicated, but once they had a working solution, everyone accepted the "solution".
Imagine the types of errors that crept into that code base. Remember, none of the developers could build the code! Everyone did the best they could, then checked in the code. Talk about Integration Hell! How many hours and days do you think were wasted in this shop? This system was used by the team for at least six months! Talk about coding up bugs and then wasting days fixing them...
Take the time to solve your problems cleanly and you'll only have to solve them once. Don't tolerate Broken Windows!