Sponsored Link •
It's probably easier to ignore some of the mess behind us.
Web Services confuse me. I've been trying to wrap my head around the concept for a little while now and, as hard as I've tried, I still don't get it. It's not the technology mind you. I've built a couple of SOAP services that are in production. I like the idea that you and I can speak to each other without getting into long and arduous discussions about endianess, implementation languages and the like. What I'm having a hard time groking is all the stuff being piled atop what was a very simple and useful concept. Doing so seems to creating the perception that you can build whole systems like this.
It seems to me that we're in the process of crafting yet another technology that doesn't do a whole lot to advance the state of the practice of system development. As far as I can tell we're going to end up with a bunch of systems hooked together with stiff interfaces, communicating with a seriously inefficient syntax, and doing very little to make sure the systems behind these interfaces are any more reliable or cheaper to run. It's almost like we've agreed that we're going to use grounded plugs for everything (good) but we suffer from more or less routine blackouts (crashes), it costs $2000 per kilowatt (large IT staffs), and we have to take turn the generators on and off every night to clean out the kruft (nightly maintenance).
In addition to all of that I'm starting to hear rumblings of context free software again (remember Taligent?). RDF, ontology's, service discovery and semantic negotiation. Honestly, does anyone actually believe in a world where some chunk of code I write is going to look up a vendor of exotic chemicals, automatically negotiate terms of the purchase and place a $50k order? Without some human intervention? Do we really have to spend any real cycles on building what is in effect a personal shopper? Does anyone really expect the check signers to spend the very serious dollars it's going to take to craft useful abstractions which, in the end, removes the need for a phone call that everyone is going to make anyway?
Like I said, Web Services confuse me. I'm sure the proponents of all of these technologies could articulate incredibly compelling "if only" sorts of rationales. Maybe they would even make sense in some parallel universe. But if I look back and compare what I recall from then to what I see now, all I see are the same promises and world visions that have come and gone for decades. What I don't see is anyone looking back and noticing fat assed, incredibly coupled, unchohesive systems that are outrageously expensive to run and realizing we're not doing a great deal to address all of that.
Maybe we should take a break from looking forward. At least for awhile. Reduce our "technical debt" (love that term). Perhaps we'd end up having more fun in the end. Imagine how much easier it could be to get funding for a brand new, extremely cool project when the check signers didn't have to balance paying for that and paying huge sums just to keep the previous cool thing up and running.
|Rick Kitts has been making a living writing software for a little while. He's started a company or two, worked at bigger companies, but mostly at startups. Constantly on the look out for things to help him build better systems he's a bit of a tool and process slut, though he can't bring himself to try C# or get serious about UML. Go figure. He's convinced being invited to have a weblog on Artima is the result of some glitch in the matrix. He's keeping quiet about it though.|