When I was about 6, we had a neighbour move in across the hall. He was a dashing fellow — tall, mostly wore shorts and always tied his hair in a loose pony tail. My mother tried to keep me from interacting with him much, but when a young impressionable boy is shown an array of board games not previously seen, it soon becomes an impossible task.

One of the more remarkable things about him was that he was fluent in 7 languages. Once, I walked into his home during some reconstruction and maintenance work and was astounded at his ability to switch languages on the fly. He was simultaneously berating the guy doing the tiling work in Tamil while providing tips to another in Kannada. The Telugu chap wasn’t spared either, receiving decidedly child unfriendly invectives.

The incident stayed in my head for a while and when we were vacating the house a few years later, I asked him about his skill. He looked up from his soldering board and said, “Practice, practice”, with a wink. The key he said was to think in only one language but continuing that train of thought into others as one speaks. So, he would think in Tamil, but continue those thoughts into Kannada or Telugu or Odiya and output it via speech.

This blew my mind and I kept working at it for a number of years before being able to somewhat do this using English as the thought language and speak in Tamil, Kannada and Telugu at roughly the same time and in quick succession.

Over the past few months to keep myself sharp and distracted with what’s happening in the world I’ve taken on a few side projects: A full scale rewrite of the IRFCA website and its various database apps, an wonderful learning resource addition to The Community Library Project and a thing I can’t quite talk about yet. All three are based on different languages and frameworks. The IRFCA site’s apps are all built using Ruby (with Rails), the library’s site is in PHP (Wordpress) and the thing I can’t talk about yet is built using Python (Django).

I’ve mostly managed to keep the time working on them separate – one weekend this, one morning that and so on. But every now and then, two or more of them will require my attention at the same time. And when this happens, I really struggle to shift the context. I know what I am supposed to do, but I am just not able to speak the language, commit to the grammar and put things down on screen.

My usual system of thinking in one language and taking that to others fails here. The grammar and syntax are far less forgiving and I find myself tripping too much. I know what I am supposed to say and I say it, but it simply doesn’t make sense to the interpreter.

Human (natural?) languages have a pliability and looseness of structure that makes it easier for someone across you to understand, even if you don’t know the language well or are not able to express the nuances. Computer languages not so much.