As with many other skills in life, there are different levels of mastery and achievement in reviewing things such as code, architecture or development process. At the pinnacle of achievement is the master level of consultant, where the meaning of any statement is shrouded in deep mystery, opportunistic ambiguity, tenebrous circumlocution and consultancy fees.
But how can one distinguish between the different levels? Consider the following response to a questionable system implementation:
What do I think? This code sucks!
Although brief and honest, it is clearly the response of someone who has not even been initiated on the path. The following, however, shows some promise, but no more than that of an infant Padawan:
What do I think? Well... it’s not all bad! Nothing that some aggressive, merciless and inconsiderate refactoring couldn’t solve.
By contrast the following response demonstrates a superior command of the panoply of techniques involved in consultancy:
What do I think? Although there are aspects of the system's design that are sound, the solution as a whole may be better aligned with the needs of the business by leveraging the synergies of complementary solution paths. The resulting amelioration of quality will be further enhanced by the displacement of vestigial solution components extant from the status quo.
Only when the other person looks completely perplexed, appears hypnotised, has fallen asleep or has wandered off, can one know that they have ascended to an introductory level of mastery. The principal consultant, however, is one who has passed through the gate without even bothering to shut it once through. A true Jedi master of consultancy is able to present a dazzling array of possibilities with the swiftness of a light sabre, the sharpness of an Overload reviewer's feedback and the simplicity of a US President:
What do I think? It depends.
Here ends the lessen (sic).
|Following the valuable insights and success of her April 2007 article, A Practical Form of OO Layering, Teedy Deigh has found herself increasingly involved in the rarefied atmosphere of software development consultancy. She is only too happy to pass off her subjective whims as sound advice, and her opinions as grounded in objective reality. It is almost as much fun as programming Singletons!|