Anyone who spends any time at all working in software will quickly find themselves bewildered by the ridiculous number of technologies/standards/frameworks that clot our industry. It’s often hard to tell for sure what these things actually do — but a lot of them seem to be solving the same problem, in slightly different ways.
This is no accident. Every year, the Committee for Technological Obfuscation takes a look at the industry and rates the current state of obfuscation on its patented Confuse-O-Meter. The Confuse-O-Meter (CoM) has five levels:
- Clear as a Bell (CaaB)
- Mildly Confusing (MC)
- Quite Confusing (QC)
- Not in Any Way Understandable (NiaWU)
- I Have No Fucking Idea What the Fuck Is Going On Here (IHNFIwtFiGOH)
Ideally, the industry is in a perpetual state of I Have No Fucking Idea What the Fuck Is Going On Here (IHNFIwtFiGOH). In this state, no mortal is able to truly apprehend anything more than a tiny, specialized sliver of his world. This perfect level of confusion is impossible to maintain all the time, however, so the Committee will accept a world that is merely Not in Any Way Understandable (NiaWU). Anything below NiaWU, though, is a crisis, and the committee will take immediate and severe obfuscatory measures when things spiral wildly into control.
The primary means of industry obfuscation, and by far the most effective, is the brute force approach: ie, the technology volume approach, otherwise known as When Technology Attacks!
Here’s how you go about it:
- Find a problem that’s already been solved, and then introduce a technology that does essentially the same thing, but in a way that’s much, much more complicated than it needs to be.
- Build a massive infrastructure around your useless and redundant technology. Start referring to it as an “ecosystem”.
- Give your technology an odd and inscrutable name. If possible, the name should contain the words “service”, “transactional”, and/or “infrastructure”. Better yet, some sort of monstrous neologism that combines all three: Optimization Middleware Transservicestructure, say, or Orthogonal Infraservactionality Ecosystem.
- Shorten your odd and inscrutable name to an odd and inscrutable acronym. The acronym should have no relationship to any sounds that human beings are able to produce, should be actively unpleasant to say, and should be identical to an acronym used for another (completely unrelated) technology.
Maybe the best example of this technique in the insane cloud of buzzing technologies surrounding the Web Services “space”:
- Web Services Definition Language (WSDL)
- Web Services Semantics (WSDL-S)
- Web Services Reliable Messaging (WSDL-R)
- Web Services Distributed Management (WSDM)
- Web Services Resource Framework (WSRF)
And this is just a tiny portion of the Web Services ecosystem. Web Services are the Obfuscation Committee’s crowning achievement. They mention it in all their literature.
So that’s step one of the Obfuscation Technique. Step two is to document your new technology. But not “document” in the sense of writing things that make it clear to other people what your stuff does. No. “Document” in the sense of barfing up thick blocks of text that read like legal briefs written by insane surrealist monkey-sadists. Under no circumstances should your audience glean any useful or even intelligible information from your documents. Great care should be taken to choose words that are guaranteed to shut down all but the most intrepid users’ cognitive facilities.
Take the W3C’s description of WSDL, for example:
WSDL is an XML format for describing network services as a set of endpoints operating on messages containing either document-oriented or procedure-oriented information. The operations and messages are described abstractly, and then bound to a concrete network protocol and message format to define an endpoint. Related concrete endpoints are combined into abstract endpoints (services). WSDL is extensible to allow description of endpoints and their messages regardless of what message formats or network protocols are used to communicate, however, the only bindings described in this document describe how to use WSDL in conjunction with SOAP 1.1, HTTP GET/POST, and MIME.
If you’re not trying to claw your eyes out by the time you get to the third sentence of this passage, then you’re probably not human. You should get yourself checked.
Step 3 is Evangilizationism. This is where you go out into the community and pimp your new technology as if it’s (1) something new (2) better than whatever solution it’s replacing and (3) the defacto standard. These are contradictory statements, of course, but — if you’ve done a good job with Steps 1 and 2 — your audience will be so busy trying to figure out what he hell your thing does that they won’t notice.
So, in a well-obfuscated ecosystem, this is what usually happens: programmers get assigned some architectural task, google around to figure out the best way to do it, discover an Alexandrian Library’s worth of competing, inscrutable, and overlapping technologies that sort-of-but-not-quite do what they need, then crawl under their desks and weep like infants. After a couple of hours, the smart ones crawl out and submit their resignations and go back to school. The rest of them set up a virtual dartboard in their minds, close their virtual eyes, hurl a virtual dart, and choose whichever technology it lands on. This is a game called Pin the Arbitrary Decision on the Inscrutable Technology. It’s a very popular game in the computer industry, but no one will admit to playing it.
The Committee tries to mount at least five or six major obfuscation assaults every year, and hundreds of minor ones, force-feeding an industry already swollen to bursting, and working tirelessly to make our world as confusing as it can possibly be.
1 comment so far ↓
So THAT’s why I’m not a proficient businessman yet
Leave a Comment