From: www.itworld.com
April 25, 2005 —
Question: How do you stop people driving cars in built-up areas from injuring themselves and others?
Obvious answer: Put in place speeding limits, stop signs, traffic lights and generally as much stuff as you can think of, to control who/what goes where, and when they get there.
Less obvious answer: Strip out all the traffic controls. Let cars and pedestrians mingle as they like and let it all just sort of work itself out.
The latter cannot possibly work and would bring carnage to the roads, right? A couple of months ago I would have said that stripping out traffic controls in a built up area would be a recipe for carnage.
That was before I went to India.
From the moment I hit the insane traffic in Mumbai (i.e. from the moment I got out of the arrivals lounge) I had visions of wholesale impending traffic carnage. Carnage that regularly featured yours truly as one of the hapless victims.
My fear levels stayed in place on the roads all day. By the time I arrived in Pune I was something of a nervous wreck. In Pune, the fastest way to get around is by clamboring into the back of what amounts to a lawnmower[1]. No safety belts, no special lanes for different types of vehicle. Nothing.
I survived.
Not only did I survive, but so did everyone else apparently. I did not see a single accident over the ten days I spent in mortal fear of my life.
My experience in India contrasts dramatically with a trip I made last year to Barcelona in Spain. In the time it took to feed my family in a restaurant on Placa Catalunya[2], I witnessed one fender bender and three other minor incidents.
In India, there were zero controls and I experienced no accidents. In Barcelona, there were lots of controls and multiple accidents. What gives? My less-than-scientific field work notwithstanding, there would seem to be something interesting going on here.
Recently I came across the phrase 'Naked Street' and followed the link purely out of scientific curiosity. It turns out the phrase 'naked street'[3] is the term for Indian style traffic management and it is being trialled in various European countries at the moment.
Prone as I am to stretched analogies and obligated as I am to write about technology in this column, here is what interests me about all this:
Question: How do you stop people writing programs in which bits of programs crash into each other by sending wrong information into the various algorithms? i.e. sending a number when a date is expected, sending three strings when two are required, that sort of thing?
Obvious answer: Put in place rules and regulations so that attempts to do that sort of thing will be stopped before the program even runs. Put as much stuff as you can think of in place to control what data goes where, how it is structured etc. In the trade this is called "static typing".
Less obvious answer: Strip out all the controls. Let bits of programs mingle as they like and let it all just sort of work itself out on the fly. In the trade, this is called "dynamic typing".
Sounds crazy doesn't it?
As crazy as Indian traffic management in fact.
And just as effective.
[1] http://ivo.nu/albums/india-apr03/traffic_jam.sized.jpg
[2] http://www.marmotte.net/thias/200108-friends/0334.jpg
[3] http://www.worldwidewords.org/turnsofphrase/tp-nak1.htm
ITworld.com, Ebusiness in the Enterprise