Man: Officer, I don’t know how my car ran into the ravine.
Officer: Sir, I noticed you passed five “Bridge Out” signs and completly ran through the fence that was blocking this road. I see you also manually disabled the barrier blocking vehicle access. Normally people stay one road when driving, but you took it upon yourself to make your own path through the densely packed woods and ran into a big hole in the ground.
Man: Well, that is not important now. I could see my destination over the ravine and I was trying to be efficient and plow straight through.
Officer: Now we have a bigger problem. Not only am I going to ticket you for needless accident, I’m going to ticket you for endangering others as well. I hope the judge revokes your license. This whole mess could have been avoided if you would of taken the time to follow the conventions that were laid out for you previously.
<p>Many times, I have seen a great programming framework taken down by a programmer who thought they were “smarter” than the framework implementers. Shortcuts and other quick idioms are introduced in hopes of producing a result quicker. In reality, these “shortcuts” either end up breaking the implementation when a new version comes out or end up encouraging improper programming practices that starts the long death march.</p>
<p>I encourage anyone working with a framework to learn its nuances, and instead of trying to program around the framework, either work inside the parameters given or extend and document your changes correctly. If you don’t follow this little piece of advice, the quick changes you made <b>will</b> come back to bite you in the future.</p>