There is a small town in the South Island of New Zealand called Milton. The main road runs right through the town in one side and out the other. Its a nice enough place to stop on a road trip.
There is a unique feature to this main road in Miton, you see. When you get to the middle of the town and the road has a massive kink in it. Why is this here?
One story goes that two surveyors were building the road, one from the south and one from the north. A nice straight road. The problem is that when they go their straight road to the town they realised that it didn’t line up. So they had to use the kink to connect it up.
Another story tells of a tree that didn’t want to be removed, so when they realised it was in the way of the road it was too late. The road had to go around it.
No matter which version of the story you believe, there are two very interesting and important lessons to learn here.
When you are working together on a project, and there is a point where you meet and connect, it is important to define exactly how this connection is defined and then build from that agreed contract.
Say you are building an API service that another team will consume. Building out the contract of that API together will help avoid any kinks later. Software refactoring might be easier than re-laying an entire stretch of Highway, but it still costs you.
The other lesson is this: do some research ahead of time and understand your constraints. If you know what obsticles are in your way, you can produce a cleaner result to avoid them, rather then producing nasty work-arounds once you have already built a bunch stuff that is going to be too much effort to destroy and start over.
Thanks for reading!
CC Image courtesy of johnbullas on Flickr