The question of meta programming and modeling in health-care is a hot issue with HL7 v3 and the Reference Information Model (RIM). When ever it comes up I think about my Dad’s TV remote.
My dad Mervyn was the personification of think different long before Apple ever trademarked the term.
He worked his entire career for the New Zealand (NZ) DSIR as a geo-physicist. Topical given the recent events in Christchurch and Japan. Science does not pay well. So my father had a certain thrifty resourcefulness when it came to problem solving.
His resourcefulness was often uninhibited by aesthetic considerations. Growing up as a slightly insecure adolescent it was hard to appreciate at the time. I was mortified at the time he turned up in Auckland for my graduation using black plastic rubbish bags for his luggage.
My father had knack for finding solutions to problems that other people wouldn’t think of.
Back in 1980’s NZ had very high tariffs on imported goods. My father, always on the lookout for a good bargain, picked up a coffee maker in the US on an overseas trip he made.
Now in NZ the electricity supply is 240V which is different from the 110V supply that is the standard in the US. An integration issue.
I’ll never forget the solution that my father and brother came up over Christmas to run this thing.
They placed an electric heater in serial with the coffee maker. The heater dropped the voltage in half so that the coffee maker could be safely powered. Et voila – a hot jug of coffee. Maybe not the best solution in the context of NZ in December. NZ is in the southern hemisphere which meant that the weather was hot at time.
I think eventually my father progressed with the times and made a capital investment in purchasing a domestically supplied coffee maker that meant he didn’t have to switch on the heater each time he wanted coffee. I am sure he got his ROI on that with the diminished electricity bills.
Another area that my father showed his innovation was in figuring out a remote control for his TV. At the time TVs were expensive in NZ and my father didn’t have the budget to purchase a model that had a remote control.
As a man who appreciated his comforts my father figured out a solution to the issue of turning down the volume during the ad breaks without needing to leave his chair. His solution was to have a long piece of wood in his sitting room which he would use to poke at the volume control.
It was a reasonable solution given the cost of the piece of wood vs. getting a more expensive TV.
It did have it’s drawbacks though.
Getting that fine grained control volume control was rather tricky. Often times the wood would slip and Fruitcake, my father’s cat would be rudely awakened when the volume accidentally went to maximum.
Whenever I think about meta programming like schemas, UML, RIM and CASE tools I always think of Dad and his remote control. Meta programming tools can be used to solve problems. But to me they always feel like Dad’s TV remote. It’s hard to get close to the problem and get the fine grained control you really need to make things work well. I’ll have a lot more to say about that.
That’s about it from me at this point. My sister in law is getting married and so I’m off to the Dominican for a week. I will resume this dialog when I get back.