"I am endeavoring, ma'am, to construct a mnemonic circuit using stone knives and bearskins." - Mr. Spock, City on the Edge of Forever
Based on the often self-fulfilling premise that the available development tools are stone knives and bearskins every project still seems to start out the same way -- with a plan to build the development tools required to develop what's really being developed. I am not talking about fundamentally new tools or technologies, rather components that mirror or come close to existing ones.
My personal belief is that this pattern is motivated by a sociological phenomenon and not a technological one. Many software professionals I have met over the years just don’t seem to like other people's code, and they'll often go to any lengths to avoid looking at it, using it, and maintaining it. After all, I suppose it's a lot more fun to create something new than use someone else's solution, right? Like many in this business, I have plowed through, fixed and refactored my share of digital gob, all the while cursing my predecessor for being so undisciplined, so maybe it's a well-founded trust thing. Whatever the reason, does it make sense to spend man-years in development to define a new language, develop a compiler for it, roll your own IDE, graphical user-interface designer or object-relational mapping tool when your business's core competencies are providing travel reservations? Maybe, but I doubt it. In my experience, 99.99% of the time, it is a fundamental diversion. Even if you can quickly build that technology to help out your development effort, the fact remains that 90% of the costs of building the tools will be spent maintaining them, which is unlikely to be within the core competency of the firm, and certainly not within its business objectives. The costs are never truly estimated from the beginning, and rarely accounted for over time. The irony of all this? As people come and go from projects that span years, everybody gets to spend a lot more time looking at, using and maintaining other people's stuff.
Perhaps this MasterCard moment sums it best:
- That DVD box set of '60s Star Trek re-runs you've been dying to get? 120 dollars.
- A mnemonic memory circuit? 150 million dollars.
- The cost of building your own software development tools? Priceless.


0 Comments:
Links to this post:
Create a Link
<< Home