Airports and flights, I must admit are a great hunting ground for voyeuristic minds like mine. With at least an hour to spare in the waiting area, and another three to four on an average on the plane, we look out on all sides with the greedy eyes of a tiger, hungry for game and overwhelmed with choice. Whom should I devour – The smoking hot blonde with long fiery legs immersed in the latest issue of Cosmo or the old uptight businesswomen sitting in the bar and sipping a Cosmo while giving final touch ups to her PowerPoint. Those seventy something couples flying with their grandchildren communicating in a Mozart like symphony of smiles and stares yet totally free from the coyness and lustfulness of the flirtatious young couple sitting in the last row. Those thirty something couples desperately trying to guard the hidden tribulations of their relationships from the outside world, in the pretense of disciplining their kids and lecturing them on the do-s and donts of airport etiquettes.
And here I am, sitting at Terminal-1, gate #17 of San Diego international airport, with a book on Design Patterns in my hand – awaiting the boarding call to my flight to Seattle, preparing for an interview for a Software Designer position. Do I really need a book to review Design Patterns? It is said that Gautam Buddha had a realization of his lifetime when he moved out of his palace after twenty-nine years, only to see death, sickness, aging, suffering and childbirth and the state of life in his kingdom. Airports offer a somewhat similar realization to someone who has taken a course on Design Patterns but hasn’t really ‘seen’ them so far. The Decorator Pattern which the blonde uses to apply and reapply layers of makeup on her face… with enough scope for dynamic extension; the Bridge Pattern which the thirty something couples are using to separate the abstractions of their relationship from the implementation of their lives; the Strategy Pattern that the old businesswoman uses to think of different strategies for her presentation; forgoing the decision of which one of those to actually use, until execution (till she is able to actually gauge the mood of her audience and clients); the Abstract Factory Pattern that the old couple use by supplying a unique smile and stare as input to create an ever increasing class hierarchy of well encapsulated protected emotions or the Template Method Pattern that the teenage couple is using to keep their underlying courting method the same, while varying the internal implementation of a few steps based on the target; or the Observer Pattern that I am using to get status updates from each of these subjects as they keep changing states. I’d stop short of mentioning the Visitor Pattern since sharing the details of how I’ve commented out the key //visitor.visit(me); line in my life is something that would perhaps take a few days of serious diving into reality – something that I’ve lost all interest in long ago.
As the lady on the microphone starts to use her version of divide-and-conquer, something like a merge-sort, to sort people first by class and then by numbers, I get up from my seat – satisfied with my preparation of design patterns and seemingly satiated with this evening supper; but the sorting makes me realize how I still need to prepare Algorithms and Data Structures and for some reason the data on my ticket seems to shout at me to brush up my Database Skills as well. I wish getting into Microsoft was a tad bit simpler!