Sunday, August 12, 2007

India@60

So, yet another decade of Indian independence. What is so great about it, you ask? Few countries are under a foreign yoke anymore, many are doing so well economically and socially, with countries like China kicking our backsides when it comes to economic growth, poverty alleviation, and indeed any aspect of social or economic development. Our venal politicians and bureaucrats leave no stone unturned in shaming the country, while we grapple with problems of both the 18th and the 21st centuries simultaneously. Still, this is a day of celebration. Still, this is a day when we must be proud to be Indians. It is a day when we must stand up and say with a lot of justification "मेरा भारत महान"। Why? you ask. Why, suddenly, has Mr. cynicism become a patriot?



Well, one eye-opener for me was the movie "Sometimes in April" - a movie about the Rwandan civil war. There was nothing civil about it, believe me, and the Hutu attempts to wipe out the Tutsi was so blatant, that it shocked the living guts out of me. A million people were killed, nay butchered in three months - all because of racial difference. This got me thinking - what if we in India were to fight out our differences? What if we were to resort to genocide to flatten our linguistic, racial, financial ethnic, religious, casteist, pigmentist (thanks to a friend for this one), regional, tribal, sectarian, fault lines? How many civil wars would we have witnessed? How many millions would've died? What effect would it have had on the rest of the world, if a billion of its people fought like animals?



It is not that India has been strife-free! We have had riots, killings, revenge-killings, protests, and what not! Our history of 60 years has been blood-stained on many an occasion. Still, we remain as one country. Why?



Really, the only plausible answer seems Indian democracy. Even with all its warts, and all its deficiencies, democracy has given every Indian (well, truly speaking, every Indian mob) the freedom to shout, the freedom to block roads, to vent their anger, the freedom to stop trains, to mob people, and in general, do anything except secede from the Union. So, while the Indian individual is still deprived of the right of expression, the Indian mob, which really is the unit of most turmoil, is given a free reign, which allows grievances to be settled with that very typical Indian "jugaad". People therefore obtain a stake in the system, which allows it (and the people in it) to flourish, as our billion-plus population attests.



I remember, visiting Austria when I was working for a German software company. There, our counterparts (Germans and Austrians) quizzed us on what united India. I mean, the seven members in my team spoke a total of nine languages (Kannada, Hindi, Telugu, Tamil, Malayalam, Marathi, Oriya, Konkani, and English), we had representatives from two major religions, and were from five different states. So, why were we in one country? What made us Indian? I had no answer. I mumbled something about Cricket, and Bollywood, but I'm sure the Indian spirit goes deeper than that. So, while I investigate it, why don't you express your thoughts through the comments field?



Have a very happy Independence Day (in advance). Oh, and for the RNIs, just a reminder, the Indian Independence Day is on August 15th, despite Bill Pullman's exhortations to the contrary.

Sunday, July 29, 2007

Random thoughts

I haven't blogged in quite a while, and the best way to get back into blogging is by jotting down random thoughts, ain't it? Well, here comes another edition of chaos.

Why do we find it so hard to innovate?


I had lunch with a good friend of mine recently, and our conversation veered towards the lack of innovation in the company he works for(which incidentally was mine a year ago). We had some thoughts on the subject, and on my way back to work, I kept wondering why we didn't have world-class innovations from India, particularly in the software field in which we're supposed to be so strong. There are a few reasons we all know - don't we? As software engineers, we are trained to write software that implements a spec. We are trained to re-use, to borrow readily available code/design, and to think in patterns. None of which are characteristics that encourage innovation. There is also our education system, my favourite whipping boy for everything that is wrong in the software field. We are not encouraged to tinker, we are not encouraged to find our own answers - instead, we learn, by heart, answers handed down to us. What better way to kill the innovative spirit?

File your opinions through the comments link below.

The Ancestor's Tale


This is another "wow" book by Richard Dawkins. I'd read his Selfish Gene, Extended Phenotype, Unweaving the Rainbow earlier, and this is a wonderful progression of Dawkins' talent. The Ancestors Tale recounts the story of evolution, going back in time to trace the lineage of the human species. The book is full of facts, evidence, and anecdotes - not to mention the occasional funny diatribe against Bush, Creationists, and their ilk. As usual, Dawkins writes marvellously well, and while there are sections of the book that a non-biologist (me) may find tough to understand, they are well demarcated, and don't interrupt your understanding of the rest of book.

Dreaming in Code


I wouldn't have heard about this book by Scott Rosenberg if it wasn't for my favourite software blogger, Joel Spolsky. While Dreaming in Code is a biography of the Chandler project, it goes beyond just that, giving the reader wonderful insights into why Software is HARD. Why is it, that 50 years after the first high-level language was invented, we still don't have a language to convert requirements into code? Why is it that, 35 years after Dijkstra announced that the "Goto statement was harmful", we don't have a language that'll minimize logical errors? And why is it, to quote the immortal words of Fred Brooks, there is indeed no silver bullet in software engineering? The book revisits these questions, and asks a few more of its own. For instance, it questions the logic that software should be more like civil engineering, it describes the problem with leaky abstractions, and the undecidability of verifying software. While I don't want to say that it is in the same league as the Mythical Man-Month, it is a must read for every software engineer.
Here, I want to make a small point. Software development is about people. It is not all technology. It is about people deciding to do the right thing everytime they put their hands to the keyboard. It is about embracing quality - as Harsha Bhogle eloquently describes in this video. It is about perfecting the basics - remember the "wax on, wax off" lesson from "The Karate Kid"?
Tools can only help. Ultimately, software is all about people. While you are reading this, also take a look at code reads - the collection of trend-setting articles by Scott Rosenberg.

Sunday, July 22, 2007

Thank you, Dr. Kalam

Folks, it is official. The cunning descendant of Mussolini has had her way, and Dr. Kalam is out of office. This post is just a dedication to his abilities, his turning the presidency from an institution of pomp to that of the people, and his integrity, good judgement, and tireless efforts towards an India that'll make us proud.

Good luck, sir, for all your future endeavours!

Friday, June 29, 2007

What nice are you? Updated!

No, I haven't had damage to the grammatical hemisphere of my brain. It is just that there are various ways to be nice. And in this post, I'll enumerate some of them:

Ignoring nice: This is the American way. Everybody smiles at you - not just a : but a real :), but no one really cares. So, you may see a cute girl jogging on the road, smile at you and say "How you doin'?", but don't let it brighten your day, because before you can think of something nice to tell her, she is out of audio range.

Phony nice: Similar to ignoring nice. This is the nice that is put on by people putting you down, albeit softly. The lips are drawn into a smile, but the brain hasn't changed the tone of the voice - which is usually the giveaway.

Patronising nice: This is how some brilliant people respond to ideas suggested by lesser mortals. Their upbringing won't let them be harsh or rude, and at the same time they don't want to give credence to a remark made by someone who is clearly a lesser human being. So, they smile, nod, pretend to listen, and thank you for your comments, while their brains are trying to solve a completely unrelated NP-hard problem in polynomial time.

HR Nice: This is the easiest one to understand. One of the traits taught by every management school to every HR major, HR nicety is keeping a large smile on your face, saying "Hail Caesar" with a really sweet voice, while stabbing Caesar in the back. Beware of the HR smile. It usually means "I'm screwing you" or "I'm making you screw yourself". Note how the HR smile is never accompanied by a "no". You could call the HR person a jerk, a whatchagonnacallit, but he or she won't lose the smile. The one drawback of this smile is that it is universally employed, and therefore can be detected with the greatest ease, while putting up the smile facade expends enormous amounts of energy.

You know of any more? Post them in the comments section.

PS: While you are at it, try looking for an "updated" logo on the net. Some picture with the "Updated" text in it. It should expose a lot of the limitations of today's search engines :)

Sunday, June 03, 2007

More Moron talk

Prime Minister Manmoron Singh has finally done it. He's taken off his reformer's mask and is now baring his commie claws. In a recent address to the CII, he gave them a ten-point agenda for reform. It read like a pimp blaming the police for prostitution. Here it is, with rich and decadent me ostentatiously embellishing it with my comments.

One: have healthy respect for your workers and invest in their welfare.

Yeah, right - let's see...how many training programs does the government conduct that trains postmen to become something better? How many programs offer education to the gangmen of your municipal corporation. How many even train teachers, or for that matter, IAS officers? How many government buildings have ramps and toilets for the disabled - a bare minimum to give them dignity?

Two: corporate social responsibility should be defined within the framework of a corporate philosophy which factors the needs of the community and the regions in which a corporate entity functions.

Again, what about government social responsibility? Oh, as long as we keeping bellowing "aam aadmi" from the rooftops, that is taken care of.

Three: industry must be proactive in offering employment to the less privileged, at all levels of the job ladder.

No problems with this one.

Four: resist excessive remuneration to promoters and senior executives and discourage conspicuous consumption.

Moron, how moronic can you become? If CEOs were a dime-a-dozen, and your dumb government had created more good IIMs (or let the pvt sector create them), instead of fighting over reservations, CEOs wouldn't be getting such salaries. Well, at least they are accountable. Why don't we compare all the official and unofficial perks your colleagues get, without any accountability for their performance? Why don't you talk about that? Further, what will this commandment serve? The poor? Do you really think that the farmer who committed suicide in Karnataka compared his state with that of Vijay Mallya before succumbing to the rope?

Five: invest in people and in their skills.

Like number 1. It's infact more than a coincidence that Moron was a teacher. Preach, but don't practise is his firm philosophy.

Six: desist from non-competitive behaviour.

Heh heh. Mandating roaming call rates in a competitive market is not non-competitive. Putting road-blocks to private investment in airports under the guise of stupid laws - well that is competitiveness at its best. Moron, JRD is no longer alive. And while people like Narayana Murthy and Azim Premji keep his flag flying high, it is up to your government to have a competition commission that works. Where is it?

Seven: invest in environment-friendly technologies.

No problems with this one too - but why aren't you doing anything about it, Moron? President Kalam had such wonderful ideas - why aren't you having them implemented at least in the Congress states? Why didn't you give a 100cr grant to IISc with a mandate to come up with a 50% efficient solar cell in 3 years? Why doesn't your government attempt to cut-down its energy usage and set an example?

Eight: promote enterprise and innovation, within firms and outside.

No qualms with this one.

Nine: fight corruption at all levels.

Look who is talking.

Ten: promote socially responsible media and finance socially responsible advertising.

Same as point 5 - about conspicuous consumption. Simply ridiculous.

All Moron is doing is lay the blame on someone else's doorstep. The doorstep he should lay the blame at is actually in 10, Raisina Hill, but unfortunately, that is akin to visiting a lioness whose lions are thirsting for his blood, and therefore you can expect to see more moronic speeches like this one in the times to come.

Monday, May 28, 2007

Attack of the PRTG

Or the Pseudo Random Thought Generator. I've taken a blocation (blog + vaction) for a few weeks now, and my mind is full of random thoughts, none of which seem to expand into a nice, modular post. Instead of me going through the torture of making a readable post out of them, I decided to simply put you good folks through it.

* Familial teams

Have you heard the phrase "You folks are like family to me (sic).", typically from an Indian? Somehow, we Indians assume that the family is the highest unit of social cohesion. Is that really the case? Did we choose our families? Did we choose our parents, our siblings, or our relatives? Isn't that simply a function of the gene, as opposed to relationships we cultivate - most notably friends? Why is it that a genetic relationship is deemed higher than once that we chose? Why must the "meme" which is biologically more powerful than the gene, get a higher pedestal?
Anyways, that is not the point I want to make. The next time you hear someone (most typically a supervisor) tell you that he thinks you're family, quit your job, change your home and run; run like your life depends on it. Because what the supervisor is really saying is that he thinks he is the "head" of the family (and that you're the tail), and he'll be the only one making all the decisions, and if he ever quits, he expects you (after all, don't family members move if the head moves?) to follow suit.

(PS: Before you guys get any great ideas, no, I'm not against families, and my own family and relatives are a very nice bunch. Thank you.)

* The hardest thing about being a mentor/coach

For a long time, I thought the hardest part of being a coach or a mentor, or a team/tech lead would be giving negative feedback. It is still high in my list, but I've found something harder. And that is to keep your hands tied when there is cool work to be done. To let your team-mates pickup the cool feature, or the delicious design, or the simply salivating opportunity to work on a hot new piece of technology: all this while you remain on the side-lines, wringing your hands in (mock) despair. That is really hard. For one that believes that the only worthwhile contribution to a project is in its engineering, this is especially hard on me.

Wednesday, May 16, 2007

Growing up in socialist India - 1: Television

Recently, I came across a MIT student video of the song "Mile sur mera tumhara", which took me back in time to the glory days of socialist India. Now that most of my colleagues grew up in what became "pseudo-capitalist" (or pseudo-socialist, for those appropriately inclined) India, I thought it'll be nice to recall some of the things of the "good old days".

Now, my family was a middle-class one - which meant that my folks probably had enough money to send my brother and me to school, and they probably had spare cash for buying a bicycle, but it also meant that I had to go on hunger strikes to get a TV in the house. Yes, our first TV, installed on 24th June, 1984 was a result of my weeklong hunger strike (during which I got ample servings of non-food items). And what could you watch on it? Well, there was the eternal favourites - Mahabharat and Ramayan, and kids had He-Man, Giant Robot, and an assorted set of cartoons. Adults watched "Yeh jo hai zindagi", "Hum log" and "Buniyaad" - which to my mind were totally wierdo serials.

But what was unique to the socialist experience were films created by Films Division of India on national integration. Most of them (except those created by Louis Banks - Mile sur, and Bhaje sargam to name two) were crap. The animations sucked, the voice-overs were terrible, and each of them had this preachy tone that was so representative of the governments of that time.

Of all the serials I watched on the tube then, the one that still remains in memory is "Oshin". This must have been the most heart-rending serial I've ever seen.

Anyway, more info about such shows here: http://full2faltu.wordpress.com/?s=Woh+Bhuli+dastaan. Do write in about your favourites.

Tuesday, May 08, 2007

Of love, leagues and relationships - 4: The perspective gun

The perspective gun is a marvel of human ingenuity and innovation. When fired, it causes the victim to see the wielder's point-of-view on any issue - in a sense, it puts the victim in the wielder's shoes. However, readers should not confuse the perspective gun with the "walk-in-my-shoes" gun which literally puts the victim in the wielder shoes - by disassembling the wielder's and the victim's feet and interchanging them through a molecular transportation unit. The gun was doomed when a Vogon general, trying to use it on a human, discovered that using the "WIMS" gun caused him such trauma that it was second only to the effect of his poetic rendition. Later, the Vogon Central Command ordered the confiscation and destruction of every bit of the gun, an order that was carried out to the last nut and bolt.

Anyway, I digress. Back to the perspective gun. While the gun itself is very well-known, not many 'people' know the secrets of this weapon, and still fewer know its origins.

The perspective gun operates by targetting those brain waves that are generated by emotions, amplifies them and fires them at its victims. The amplified emoaves, as they are known, interfere with the natural emotions of the victims creating in them the same emotions as are present in the wielder. Still interesting, is how the perspective gun was invented. This was the work of one brilliant Indian scientist, Mankutimma, who in the year 2150 decided that he had to put all the emotional energy of his country to good use. Dr. Mankutimma had seen for himself how for eons, his fellow-citizens spent good ATP molecules on emotional issues, and how, broken temples, loss in cricket matches, and marriages between movie stars would induce extreme emotional energies in large swathes of the population. He started work in his private lab, working late-nights to create a transducer that would automatically convert emotional energy into electricity. After years of research, he came up with the EmoVac - the vaccum that would suck up emotions to generate electricity.

Dr MK also discovered an interesting side-effect. He found that he could take the brain waves collected by the transducer, amplify it and direct it towards a target. This, he found brought about an immense change in the victim, much akin to the effect that emotional dependence has on human beings. The victim began to understand the wielder, he began to empathize with the wielder's emotions, and gradually, himself became emotionally dependant on the wielder - to such an extent that the victim could no longer live without the wielder's presence and approval. This was a brilliant move - imagine how many wars you could win by simply forcing the opponent to agree to your point-of-view! Imagine how many arguments could be solved by making the arguees see each others' points-of-view? Dr. MK was excited and he went public with his invention.

The furore that followed was unprecendented. Human rights organizations protested against what they called violation of the right to free thinking. Animal rights organizations protested against the pain that animal test subjects of such a weapon would endure. And no amount of protesting by Dr. MK could convince the world that his weapon was actually a peaceful one.

Finally, the World Security Council setup a Mental Weapons Convention - the first of it's kind since the Nuclear Weapons Convention that closed down in 2050, to draft guidelines for the usage of this weapon. The convention came to agreement that while the gun itself wasn't undesirable, it's effects should be temporary, and suggested that the strength and duration of fire of the guns be fixed accordingly.

Even as the guidelines were being drawn, Dr. MK met a old friend from the country of England, and a few friends of his, and flew out of Earth, the perspective gun in hand. A few Earth-days later, the planet was destroyed, this time in a chilling game of pool, during which, as residents of the cue ball, the last sound earthlings heard was a resounding "thok" as the planet hurtled towards a orange-yellow 9-ball situated 9 light-minutes from it.

Arthur looked longingly at the perspective gun. Does he dare do it?



I haven't been well for nearly five days now, and even as I struggled to sleep every night, this story kept coming back like a recurring dream. So, I had to write this out, even though my temperature is hovering around the 100 mark, and I'm upto my neck in antibiotics.

Friday, May 04, 2007

Don't be evil???

Earlier I wrote a couple of posts about Google's "Don't be evil" (Don't sup with evil) motto. I had written about how Google wanted world domination, and could sup with evil if the price was right. Today, my good friend Mohit pointed me to a Google NDA that is a whole new form of evil. The essence is that Google explicitly forbids interviewees from talking about anything they ask in the interview. And this includes explicit questions about the competition: which in essence means Microsoft. Apparently, Google India is terribly interested in the activities of Microsoft Research India - they don't miss any opportunity to interview interns from MSRI, and ask them explicit questions about what they are working on. Ofcourse, they are forbidden from divulging this even to their moms!

Thank you, Google. You've finally shown your true colours.

Thursday, May 03, 2007

On the topic of marriage.

All these days, I have desisted from writing about (my) marriage (or rather its prospects and experiences) on this blog. And other than a couple of posts, one where I introduced my current love interest, and the other where I mentioned her, I've generally maintained silence on the topic of love.

Have you ever been the last man batting at the crease, or one amongst the last pair in a cricket match? If you have, you'll appreciate how tension-filled the entire situation is. Here you have your 10 folks hoping and praying that you last (or praying that you don't so that they can go home), while you have the opponent trying his best to get your wicket. You're stuck in between, trying desperately to keep your averages at their current level.


My situation w.r.t marriage is similar. Depending on which team I'm playing for, I'm either the "last man batting", holding out for the bachelors, or I'm the non-striker in a last-wicket partnership for the bachelors. (Yes, I sense the irony in the statement.) This makes my parents, relatives and those of similar disposition really nervous. Now, they are in the stands, cheering on, not for my continued stay at the crease, but for my instant demise and return to the pavilion, where they'll force me to join the opposing team. Leading the attack on the opposing side, is a whole host of friends, well-wishers and generally-known people, all of whom are determined to get my wicket. Just today, I was playing for my primary-school team, and the striker got out - clean bowled to a well-pitched-up googly. As the last man remaining, I had to hide my face and get out - lest he run me out with the aid of some unheard-of rule. (Remember, even the umpires support the bowling team.)

What compounds the 'tragedy' (quotes intentional) is that one of my best team-mates has now left and joined the opposing team. While I'm really happy for her, what gets my goat is that she is now spear-heading the bowling attack - even colluding with one spectator to get me out!

So, here is to batting through the year! It is still early days...

Saturday, April 21, 2007

हिंदी में ब्लोग?

मेरे दोस्त बलबीर ने कहा कि अब हम हिंदी में ब्लोग कर सकते है। यह, गूगल कि बड़ी अच्छी सुविधा है
और यह ट्रांसलेशन इंजन बहुत अच्छी तरह काम करती है!

शाभाश गूगल

Terminating Arthur for now

For the last three weeks, I've been trying to get Arthur to do something funny. That hasn't happened, and I'm also running out of story ideas - so Arthur stands terminated for the time-being. Hopefully, if I call pull-off a resurrection (oh, how he would hate to hear this word), I'll re-instate him again.

Pseudo Engineering

I was watching a programme on Animal Planet yesterday. The objective of this programme was to get four engineering students to engineer some artifact of nature. In yesterday's programme, it was the Spider web.

The Spider web is an amazing work of nature. Strands of some spider webs are known to be stronger and more elastic than a steel strand of the same thickness. In addition, the 'architecture' of the spider web, it's spiral construction, and the entire biology behind it, are all simply amazing.

But back to the programme. The four students had to build a spider web on a 60'X40' scaffolding. Yes, you got it right - a 60 foot-by-40 foot scaffolding. The team would then 'trebuchet' a 25 pound weight into it, and the web had to be strong enough to catch it. Further, beyond the obstacles posed by the task, the students also had to contend with the winds blowing in the Sydney harbour.
Needless to say, I was mesmerized. "What a cool assignment", I thought, but as the programme progressed, I just got more and more frustrated. The programme was not about engineering a web. It was about showing the 'cool' side of engineering, with cute babes (and hunks, for those inclined), and some 'action' - like having people bungee jump from a 60 foot scaffold or hurl washing machines in the air. Why am I so disappointed? Because while there are no two words about engineering being cool, there is a lot of sweat that goes into making it look cool. There is a lot of math - for instance, you are aiming at a web, that is X feet away, with a trebuchet that can throw a ball of weight M with a force of J Newtons. You have wind blowing at an angle theta with a velocity of v kmph. Now, what are the angle/distance/power metrics for your trebuchet so that the ball hits the centre of the web? Calculating this is engineering. Not random testing the final version by firing away to glory, or having your only claim to math being a spreadsheet that never gets used.
Maybe I'm being too harsh. I don't know. Why don't you tell me through the comments link?

Saturday, April 14, 2007

Awesome joke

Stallman, Linus and Knuth walk into a bar

Stallman says - "God said I made the GREATEST editor ever "

Linus says - " God told me that I made the divine OS , the GREATEST kernel ever ... "
...
.....
........
...
...
...
..
..
..
.

Knuth says - "Wait a minute, I don't remember saying that "

Unit of freedom

What is the unit of freedom in your country? Perplexed? Read on...
The unit of freedom is the smallest group of people in your country that enjoys freedom. For example, if you are in the United States, the unit of freedom is the individual. If you are in Communist China, the unit of freedom is the party. And if you are in France, the unit of freedom is a union. (I'm kidding.) And if you are in Pakistan, the unit of freedom is the local mosque.

So, what is unit of freedom in India? That is a no-brainer. The unit of freedom in India is the mob. It is the mob that is free - to avenge some weird insult to ridiculous pride by stoning glass buildings, it is the mob that is free to prevent a Hindu girl marrying a Muslim boy, and it is the mob that is free to slaughter farmers in the name of development. It is mobs that decide what insults national pride, it is the mobs that decide who is on the right side of justice, and it is the mobs that decide who has a right to live.

You disagree? Post your disagreements in the comments below.

Monday, April 09, 2007

Personality CMM

For anyone associated with Software Engineering, the three letters CMM either evoke knowing smiles or unknowing deference, depending on whether the person has gone through a CMM review or not. Well, that was the Software CMM. On similar lines, we have the People-CMM and now, CMMi - Integration CMM for system companies that do both hardware and software.

Needless to say, these CMM models have kept many consultants in business, provided opportunities to many researchers to add to their list of papers, and has in fact, created a new haves/have-nots situation w.r.t software companies.

All the models have the same five levels: Initial, Repeatable, Defined, Managed and Optimizing (wiki here). Each level has a list of processes (KPAs) that must be in place for an organization to attain that level. I won't go into the details here, except state the obvious - the latter levels are 'better', and the higher the level an organization achieves, the more mature it is supposed to be.

This got me thinking - aren't people the same? There are people who defy age - they are 3-year olds as long as they live. And there are some who keep improving even when they are in their 90s. Not very different from the CMMs. Therefore, I present to you, my contribution to the CMM stable: The Personality CMM

I'll describe the Pr-CMM in greater detail in the coming posts. For now, here is a broad definition of the five levels:

- Initial: These people think that the world revolves around them. Needless to say, they are most immature. You cannot trust them, you cannot believe what they say, and in short, they are best avoided.
- Repeatable: These are people you can trust. But they come in with fixed personalities that don't ever change, not for the better, and thankfully, not for the worse under normal circumstances. But put them under stress, and they revert to the first level faster than a snake's strike.
- Defined: These people are those you can trust, and in addition, they have some goals, some principles and values in life. They listen to others, get feedback, but may not necessarily incorporate feedback that they don't like.
- Managed: These people believe in measurement. Along with all the good qualities of level 3, these people measure their lives, keep tabs on how they are progressing, and generally are extremely likeable people.
- Optimizing: These guys follow all processes of level 4, and in addition, strive for continuous improvement.

So, which level is your personality in?


Postscript: No, I am not serious. I agree that the human personality is too diverse to fit nicely into a set of five buckets. Still, considering the pace at which the CMM craze is picking up, particularly in Indian software service companies, I just _had_ to pen this.

Tuesday, April 03, 2007

What marriage does to normally sane people

Nearly all my friends are married, and most of them went over to the dark side only in the last two-three years. So, for some time now, I've been trying to find out what marriage does to normally sane people (read guys), and how it changes them.

Results show that a tiny minority remains unmoved, while most people change substantially, and a small minority undergoes a complete metamorphosis.

However, one change common to all married friends of mine is what I call the "good-host-syndrome". Nearly all of my married (male) friends are affected by it. Suddenly, the guy who would slap you on your back, throw a few Kannada curses at you and push you down on a worn out couch, now welcomes you into his home most politely, apologizes for the plush setting, and asks his wife to cook goodies for you. Oh, and the wives aren't far behind. They enquire many times if you've had enough to eat, if the salt was right, and they are insitent in apologizing for the wonderful cuisine they've prepared for you. Seriously, this gets embarassing, particularly for someone who fills his plate with cold dinner (Thank God my mom doesn't read my blog!) at midnight. And, it does not end here. God forbid if you go out for dinner/ movie/ trek/ bowling/ museum/ lunch/play/any other activity, the friend has to pay, even for you!

I'm not saying that my friends weren't hospitable before marriage - I mean, come on, what else can you expect from Bangaloreans, but their change has been nothing but radical. Earlier, the hospitality was a heart-to-heart connection. Now, it is a heart-to-heart connection, but with overflow!

A futher subvertive effect of marriage has also been noticed on single people. Single men who have come in close contact with married couples have taken on some of the hosptiable attributes, and they behave in the same way!

I was in the US recently, on work, and I had a great time outside of work as well. The reason is simple - married friends and infected single friends!

Thanks to them all! :)

Sunday, April 01, 2007

The cricket debacle

I didn't want to write about this. Really, believe me, I'm totally tired of watching, listening to and reading the same analysis over and over again. Come on, it is not like we had a national disaster! OK, the team lost. Get over it. And it is not even the Indian cricket team! Would you be as disappointed if a Wipro coding team lost in an international software competition? [Substitute an appropriate company if you work for Wipro ;)]

Anyways, in the discussions and articles that analyzed reasons for India's defeat, I didn't see two reasons I think are central to the debate: the lack of a sporting culture in India and the lack of respect for hard-nosed, nose-grinding-on-the-mill-stone work.

I think the first is more basic. As a country and as a culture, we lack sporting instinct, and love for sport. Blame it on the hot weather, blame it on excessive academics, or on over-indulgent parents, but the truth is that we don't really care about sport. We have weird notions of national pride and state pride, which we want to see satiated everywhere, but we don't love the game for what it is. We don't understand the discipline it takes to succeed at sports. We don't go to our children's school games with a video camera, we don't cheer for a school/ college/ city/ state team when it is playing, we don't broadcast school games live on local TV. We don't fight for schools to have good grounds, we don't ask for good coaching at the school/college level, but we all want the national team to dive like Michael Phelps at the start gun. Remember though, when I say we, I don't mean just us - I'm including the establishment, the government, everyone. Let's face it - as long as we don't care about sport, barring the occasional world cup win or test series victory, we'll only draw blanks. As the saying goes, if we have one finger pointing at Dravid and co., we'll have four pointing at the rest of us.

Next, I must highlight the lack of respect for hard-nosed work. As the saying goes, "Success is 99% perspiration and 1% inspiration". Bhimsen Joshi apparently stood in waist-deep water, practising his singing for over four hours everyday to become one of the doyens of music. Sachin is said to have stood in front of the mirror for hours - not checking his hairstyle as some would accuse him of doing - but perfecting his swing. In Microsoft's TechVista, Prof. C.N.R. Rao had a lot to say about hard work and deferred gratification. But these are not the stories we tell our youngsters. These are not the heroes we celebrate. We love the Dhoni six, as technically flawed as it may be, we love Sehwag's flaying shots outside the off-stump, and have the standard excuse when they get out to rash shots: "Arre yaar, voh dil se khelta hai", as though that is the Ganga jal that purifies all sin. As ever, form over function. (Note: Even as you read this, please please remember that I am NOT saying that Sehwag or Dhoni didn't work hard. I'm only saying that as a public we don't care about the work ethic that goes into anyone's success. )

I've seen parents who came to a cricket camp I attended as a child, shouting at the coach, asking him to give more turns to their son to bat/bowl. I still recall the howls of protest that went up as the coach asked us to run around the field, to stretch, and to run up and down the pitch. All we wanted to do then was swing the bat, and throw the ball. Everything else was secondary. And there was a not-so-implicit hierarchy: batsmen belonged to the Brahmin class, bowlers were the Kshatriyas, the wicket-keeper was the shudra, and the fielders were the untouchables. Imagine the sort of cricketing ethic we would have learnt here. And no, I'm not blaming the coach - it was the parents, the friends, and the onlookers, who were always more happy when the player hit three or four sixes, as opposed to taking a crucial, match-winning catch.

Appreciation for hard work, appreciation for the people doing the grunt work that keeps the machinery running, appreciation for people who put the team before self - these are not attributes we teach our youngsters. Until these change, we may see occasional successes, never repeatable ones.

[Postscript: I know this may upset some of you - if you are going to flame me, please keep in mind that I'm not claiming that these are the only reasons or even the most important reasons for India's defeat. I'm only saying these are reasons that I did not see mentioned.]

Friday, March 30, 2007

Of love, leagues, and relationships - III

Arthur couldn't sleep that night. Twisting and turning in his bed, his only thoughts were of Tricia - a phenomenon that started with Tricia's account of her date with Ford Prefect. Somehow, he couldn't get her out of his mind. This rarely happened to Arthur - there were few girls that he cared about, and even fewer that affected his sleep. Confused, Arthur kept wondering about that dangerous four-letter word that turned minds into mush. Was he infected?

"Nah. How could I be? I have survived the attention of many girls...", thought Arthur, even as a twirl of Tricia's locks floated in front of his eyes.

"Well, who am I kidding? It wasn't many...it was a few. And those were different days", he thought again, reflecting on his current social situation. "I'm too busy to be infected.", he concluded. "After all, I still need to complete the implementation of BabelFish by yesterday."

[ Editor's Note: These days, people have no use for tense in grammar. Time travel has made tenses irrelevant, and even though authors (like yours truly) have stuck with basic rules of tense, it is perfectly acceptable to use tense in a haphazard manner, at the least, in your own thoughts.]

Arthur's reverie ended when the alarm went off, alarming Arthur that he had to run for a meeting with Tricia. A few weeks ago, Tricia had joined the same company that Arthur worked for, and as Tricia's team-mate, Arthur spent more than his fair share of time with her, a situation he loved as much as Ford hated. Somehow, Arthur and Ford were never able to warm up beyond the occasional icy stare or a cold-fish handshake, which was a new headache Tricia had to deal with.

As Arthur swung his silvery convertible into the parking lot, he noticed that Tricia's red sedan was already parked. "What a ridiculous car", he thought, looking at the garish red paint and poor styling that was a hallmark of most Kakrafoon cars. He could never understand how women could buy cars without giving a thought to their performance. Cursing under his breath, he walked up the two floors to his office, swiped his access card at the door, and walked in. As he neared his cubicle, he saw Tricia coming towards him. Her peppy walk, the big smile on her face, and the confidence in her gait, all told Arthur that she was still hung over from her previous night's date. Was it the date? Arthur wondered.

Too polite to question, Arthur smiled and waved at Tricia. As they both settled down in the meeting room, Tricia opened the conversation: "How was your night?", she asked.


Arthur knew this was a trap. He realized there was no way he could answer this question without asking how her night was, and he knew how much he dreaded the answer to that question. Smiling, he said "Oh, it was the usual.", and before Tricia could respond, he said "Hey, you know, I've found the problem with the natural language processor! We should have simply used an algorithm instead of artificial intelligence. A neo-Turing algorithm would have fixed the auto-translate-and-induce-poetic-tenor module..."

"Won't you ask me how my night was?", interrupted Tricia. This was important. Who in the heavens cared if the poetic-tenor contraption worked? And if anyone wanted to read Shakespeare, he could learn English! Further, this sinful contraption is what caused the disappearance of God and the subsequent chaos in the Universe.


Sensing that there was no way out, Arthur nibbled the bait Tricia threw at him. His silence was the green light Tricia wanted, and she described her date in what seemed like excruciating detail to Arthur. During her extempore, he recalled his first relativity lesson: "If a beautiful girl is telling you how much she loves you, it seems like a minute, and if she's describing her date with a bloke you detest, it seems like eternity. That is relativity."


At the end of her monologue, which Arthur had kept parsing for the words "propose", "engage", "diamond" and "ring", Arthur was relieved that his parser had failed on all counts. Arthur wondered why. Out aloud, he said: "I don't understand what you see in that Ford. His fashion sense comes from the times of the Model-T, he has the perfect face to frighten kids in the dark, and the guy can't even code!". Ignoring the look of weariness on Tricia's face, Arthur continued: "How can you, one of our best brains, fall for that no-brainer!?"


Stung, Tricia asked: "Why didn't you fall for that brilliant girl in your neo-Turing Architecture class? She was perfect for you." The sarcasm in her voice was unmistakable.


Arthur was forced on the defensive. "She wasn't my type.", he said, almost apologetically.


"You see!? That is precisely my point. And this is something I've been telling you since time immemorial. Attraction is not a deterministic function. Why don't you get it!?"


"But Ford doesn't meet any of the standards you've set for a date!", Arthur cribbed. "He is boorish, doesn't treat people well, isn't smart, can't keep up with a conversation to save his life, and isn't even in your league as far as work is concerned!", blurting out all his frustrations at once.



Tricia returned to her enigmatic self. She knew what was going on in Arthur's mind. Still, she didn't want to point it out, at least not yet. With a very kind voice, she said, "Well, that is something you need to understand by yourself, Arthur. I cannot teach you everything."


The rest of the meeting went off well. Arthur decided to mull over what Tricia said. Somewhere inside his mind was a little worm of doubt - "Does Tricia know? Is there anything for her to know!!!?"

Saturday, February 17, 2007

(Hopefully) Quotable quotes

Me: "Your program suffers from race conditions. Does that mean you are a racist?"

A good friend: "Are you a deadly programmer if you have a deadlocked program?"

Of love, leagues and relationships - II

It had been a week since Arthur and Tricia met at Milliways, the restaurant at the end of the universe. Always the inquisitive one, Arthur had been pestering Tricia with more questions about leagues and social ladders. Tricia kept avoiding them, hoping Arthur would get the message to buzz off. Unfortunately, sensitivity wasn't one of Arthur's traits, and he kept bothering her. Tricia, deciding to end the matter for once and for all, told Arthur to meet her again at Milliways, telling him that he should come prepared with any questions he may have, and this would be the last time they talk about this topic.

Arthur had agreed. Today, he arrived an hour early, full of anticipation. If there was one thing that would excite Arthur more than a date with a beautiful girl, it would be coffee with a girl who had answers to his questions.

"Hi", a lively voice hummed in Arthur's ear. It seemed Tricia had already gotten over Zaphod.

"Hi!", exclaimed Arthur, inviting Tricia to sit down. "Don't we look happy?", he asked.

"Oh, I have a date today", said Tricia. Then, looking at the expression on Arthur's face, she said, "Hey, a week is more than enough to get over someone, OK!?". Arthur could only hold his hands up in a "I give up" gesture. "Besides, Ford is a really nice guy!", Tricia completed.

"Ford!?", Arthur exclaimed. "Ford Prefect!!!? He isn't even human!!!"

"Oh, you're just jealous because you aren't seeing anyone", said Tricia. She knew that every guy who opposed her choice of a date, had to be jealous of her. After all, how could she - someone who had been with one other person who left her for someone else - how could she be wrong!?

Arthur was in no mood to discuss Tricia's dates. Changing the subject, he said: "Hey, so you are going to answer any question I ask today, aren't you?". "Anything except the one you asked the last time", Tricia said, the smile on her face brightening the sun-lit cafe even more.

"Ok", said Arthur. "You see, I told my friends about the leagues concept - they laughed at it, saying it was as real as the leagues travelled by the Nautilus. [Editor's note: or Noah's arc, for the more biblically inclined.] And they had good examples. John Nash, for example, who was schizophrenic and a geek, married his lovely student. What do you have to say to that?"

"You know, you are an idiot", she replied, barely concealing her frustration. "Celebrities are different. What a Michael Jordan is to the general public, John Nash is to math geeks! How is this different!?". Noticing the inquisitiveness written all over Arthur's face, she calmed down, saying: "There are many phenomena involved here. You have to be popular if Hollywood movies are made about you. That itself would catapult you to the top of any league. Further, leagues are like fractals. You have mini-leagues in different professions, places, and what have you. So, in the math-geek social ladder, he would've been top rung!"

Arthur's ignorance of social matters always exasperated Tricia, but this degree of ignorance was too much to bear.

"Ah", replied Arthur, deliberately ignoring Tricia's tantrum. He wasn't going to let anything come in the way of his questioning. It wasn't everyday that Arthur got to learn about the intricacies of the human social ladder.

"What about the jerks that go around with beautiful girls?", Arthur continued. "They are bounding over leagues to attract dates in higher leagues?"

"Nah", replied Tricia. She understood that Arthur was taking this opportunity to pine about his own social situation. With the tenderness of a gardener caring for his roses, she spoke: "The rules still hold. Particularly the one about social jet-pax. Why do so many blondes hang out with that Playboy jerk? These guys either have money or fame, or something that makes them attractive to the other sex. Don't you know about that Elizabeth-something who married 30 or 40 times, even when she was over fifty?". Clearly, Hollywood and Playboy trivia didn't figure amongst Tricia's strengths.

Arthur was nodding vigorously. He felt vindicated. After all, nothing was wrong with him. It wasn't his fault that he wasn't the 21st century's greatest mathematician; it wasn't his fault that he wasn't rich. And of course, he was now convinced that getting to either of these milestones would solve his social problem!

But, as ever, Tricia had authored a little twist in her tale. "While all of this holds, what matters is how you are as a person. Confidence, patience, kindness, and politeness are all qualities that appeal to people. Irrespective of how much money or how many Nobel prizes you have, what matters in the long run is how you treat people, how you get along with them. I firmly believe that you can learn a lot about a person by the way he treats those whom he doesn't have to treat nicely. You know how well a guy is going to treat you 20 years hence by seeing him treat the waiters, bar-tenders, bus-drivers, sales-clerks, and in general, anyone who he doesn't have to be nice to."

Arthur was silent. His order for coffee hadn't arrived in half an hour. But the latest salvo from Tricia prevented him from blowing a fuse in the waiter's face. Gritting his teeth, he began looking around for the waiter.

"OK, is that all you had to ask?" Tricia enquired. Then, seeing the blank expression on Arthur's face, she got up to leave. "So, see you later. I don't want to be late for my date with Ford."

As she rose, Arthur remembered an incident when Ford had thrown a full cup of hot cappuccino in a waiter's face, right in front of Tricia's eyes. His brain performed a simple logical deduction, and decided that enough was enough. His hypothalamus flooded his bloodstream with adrenaline, turning his face red. With what manifested as anger, Arthur walked up to the counter, picked up a chair and smashed it through a glass display that held pastries of various kinds.

As he walked out, Tricia looked at him with admiration in her eyes.


I wrote this and Part-I of this post simply to get an idea of how difficult it is to write a narrative, as opposed to writing up an argument. Guys, it _is_ tough. Kudos to all those friends of mine who manage to write so many amazing stories so well.

Saturday, February 10, 2007

Of love, leagues and relationships

It was a lovely day in Betelguese. Arthur, with his head inside a newspaper, was sitting in a corner of the restaurant at the end of the universe. His retina caught the reflection of a female figure in his spectacles. Turning, he saw that the female figure had a familiar face - it was Tricia, his good friend; and she looked upset.

"Tricia", bellowed Arthur, drawing the attention of all the patrons of the restaurant.

Tricia acknowledged, walking towards him with a sad, burdened walk, not unlike that of a daily- wage earner who just lost his day's pay. She took the chair opposite Arthur's and sat down, taking a tissue to wipe a single tear that rolled down her cheek. Arthur asked: "Hey, what's the matter?"

Arthur had met Tricia through a professor of History at the Vogon University. Tricia, a student of art, was writing a thesis on the significance of art in Arthur's religion - Whotheheckisgod. Arthur, a self-confessed fan of anyone interested in his religion, was more than happy to answer her questions. They got along so well that they continued to meet even after Tricia completed her thesis, sharing a bond that Arthur shared with very few women. Arthur was Tricia's vault - a storehouse of her feelings, secrets, anecdotes and darkest thoughts.

Still sobbing, Tricia said: "Zaphod broke up with me this morning. He said he was no longer in love with me, and that I should go and find someone else. How could he do this to me!? After all the years we spent together!? I think he is with that b*ch, Trillian!"

Tricia and Zaphod had been going steady since their high school days. Zaphod was the only guy Tricia had dated, and her vault was full of plans for their marriage, children and the like. Trillian was the captain of the college cheer-leading squad, and made no secrets about her 'love' for Zaphod.

Arthur exclaimed: "My god! I'm so sorry!". The ridiculousness of invoking something that doesn't exist got to him, and then, handing a tissue to Tricia, said, "Why? What happened? You guys were so good together!"

Tricia replied: "Don't you understand? We weren't in the same league!"

"What league!?", asked a confused Arthur.

"Leagues", replied Tricia, rather impatiently. "I wasn't in his league...or to say it in geek-speak, I wasn't in the same level as Zaphod!"

"Oh. How do you know what league anyone is in?" asked Arthur, his curiousity overcoming his concern for his friend's distress.

"That is easy", replied Tricia. "In geek-speak, it is a function that takes a person's looks, age, bank balance, intelligence, figure, face, colour, smartness, popularity, confidence, and many such factors, and returns an integral value which indicates the person's position in the social ladder."

"Neat.", commented Arthur. "So, why weren't you in his league?"

Tricia replied: "You see, he is a football player. That gives him immense popularity. And he is smart. Me? I'm just a geek who gets straight A's. " [with a sad tone] "Guys like him don't fall for me... "

Confused, Arthur asked: "So, football players and cheerleaders are at the top of the social ladder?"

"Yeah. Add movie-stars, rock stars and basketball players to the list and you have the pharoahs of modern society. And remember, no one wants to date someone below their league. The least that is expected of a prospective partner is that he/she is at least in one's own league."

"No wonder." thought Arthur. Then, he asked: "How do you move up in the social ladder?"

Tricia replied: "That isn't easy. Plastic surgery is an option. Another option is to dumb down. A third is to become a guitar player, or a sportsperson. Ofcourse, money helps, but you only attract gold-diggers. Oh, and then, there are the social jet-pax."

"Social jet-pax?", Arthur asked increduously.

"Yes. jet-pax. Like winning a million dollars in a lottery. Or, in high school, having your parents buy you a cool car."

"Ah." Arthur was now seeing ladders and rungs everywhere. Then, as quietly as he could, he asked: "What about software engineers? Which rung are they in?"

Tricia smiled, knowing the consequences of her answer. With a flourish that only she could muster, she said, "Why don't you tell me when you find out?", and walked out of the restaurant.

--------------------------------------------------------------------------------
PS: With sincerest apologies to Douglas Adams. But hey, 'inspiration' is the sincerest form of flattery, isn't it!?

PS-2: Geez! What have I done! I've imitated the 'inspired one'!!!

PS-3: Now a mythical friend of mine is salivating (PS-3)...

X-box: To be fair to the competition. I just noticed that my orkut profile says I'm 100% sexy. Considering the number of girls I know, and considering that you need at least three votes to get such an entry, this is a scary figure, to say the least!

X-box 360: Zimply. To complete the quintet.

Monday, January 22, 2007

More random thoughts

Ever since 2007 began, I've found that I'm unable to focus on anything properly. I don't know why. I thought that a probable reason is multiple responsibilities at work, and the pressure of having to deliver on all of them simultaneously;but that has been the case for the past three years at least, and isn't new. Well, it may be some untoward pressure at home, but that too isn't new. :) And that is reflecting on my writing. My posts are turning into collections of random thoughts, as opposed to being a (hopefully) clear argument on a topic.
Anyways, my first random thought is GUI design again. Now, Blogger, Gmail, and other services prompt you to save your work if you try exit the page. But how does that prompt read? "Are you sure you want to navigate away from this page?" And the options are "OK" and "Cancel". Now, consider a real life situation - A shop-keeper asks: "Would you like to pay by credit card?" Do you say: "Cancel"? Your mom asks: "Would you like some coffee?" Think what her reaction will be if you say "Cancel"! Why can't they simply use: "Yes" or "No"? "Are you sure you want to navigate away from this page?". "Yes". Are you sure you want to kick those UI designers where it hurts? Yes. And do you want to change the topic? A definite YES.

Next, is the Nanny State. Funny how both software and government tend to babysit everyone, treating their customers and citizens as three-year-olds. Consider, for example, the entire Shilpa Shetty incident. A second-rate person in a third-rate show called her something. And by God, India is insulted! The government even goes to the extent of issuing tongue-in-cheek ads in British newspapers, inviting Jade-whatever to come to India!? Why? Is Shilpa Shetty a three-year-old who didn't know the 'anything goes' rule of reality shows? Is she a defenceless rape victim who cannot afford a lawyer? Wait - there were rape victims in Noida - what did this government do about them? How did they help relieve the pain and suffering those parents endured due to State incompetence?

Banning TV shows. Issuing tirades against foreign citizens. Reneging on contracts. All contributions of the Manmoron government. Go, moron, go!

Sunday, January 14, 2007

Random thoughts on a lame Sunday

After a rather hectic early-weekend, I decided to cool off, and take it easy on Sunday. I did nothing but sleep and watch the tube. And of course, now I'm putting down my random jottings on (e-)paper.


BSNL has finally increased my bandwidth to 2 Mbps. Free of charge. By God, does the connection rock!? My favourite videos (one of them here) on YouTube download like I'm downloading them on the corpnet! And how does BSNL inform you about it? In true PSU style. No, they don't take out TV commercials. They don't even bother sending you an e-mail. The director mentions it in passing, at a press conference, and your service records show your new bandwidth!

On an aside, this is the kind of mixed economy that Nehru envisaged. A healthy private sector that competes. Free PSUs that drive the private sector to better its services without only competing on price or on monopolies. Remember, it is BSNL's initiatives that have made broadband so cheap and accessible, not to mention reliable.

While on the topic of freedom, there is another debate going on about the incendiary video of an actor depicting Gandhiji in poor light. The nation's leaders are furious. They want to censure two channels for telecasting the video, and may have already asked YouTube to delete the video. All this begs the question - is the nation insulted by a ridiculous video, or is it insulted by these 'leaders' - who in the immortal words of Nissar Ahmed, fatten up on the flesh of the poor? What would Gandhiji have been more ashamed of? The fact that there are still people in this country that go without a square meal everyday, or some idiot depicting him doing a pole dance?

A free nation that can't tolerate humour, however tasteless it may be, is not a free nation. You cannot have freedom of speech and expression without getting people agitated when you exercise your right to it. And by bowing to the agitated, we only destroy the idea of India. We destroy the idea that a 5000 year old nation, however steeped in inequalities it may be, can aspire to a democratic life. We destroy the tolerance, nay, acceptance that is the hallmark of Indian life. We destroy the hope of sustaining a argumentative society of 1 billion.

Anyhoo...in the recent days, there has been a great deal of focus on the education sector in India. On how to improve primary education, how to make university education more research-oriented, and to sum it all up, on how to make India an educated country. Here is my suggestion to improve primary education - particularly in government schools.

Force every bureaucrat and politician to send his/her child to a different government school such that all government schools have a significant number of politician/bureaucrat kids.

Do this, and every government school will rival DPS. And the quality of education will automatically improve.


(Post script: If you ever see this idea get implemented, remember you heard it first here. :) )

Sunday, January 07, 2007

Technology notes Vol 1, Issue 3 Jan 07

Welcome to the third issue of Technology Notes. This time we'll talk about silver bullets in software development and GUI design. I'll also write about a related topic: that of managing technologists.

* Graphical User Interface design

Most people incorrectly think that GUI design is simply a matter of dragging and dropping cute (or not-so-cute) buttons from a toolbar onto a flat surface. Furthermore, many UI designers go by the adage "Cute is user-friendly" - i.e. the fancier the interface (metallic buttons, colourful pictures and the like), the better. Form over function. Just like the times.

Ofcourse, it is ridiculous. And the best example comes from nature. Look at any predator on Discovery, Animal Planet or NGC. A cheetah in full flight is one of the most amazing sights in nature. Why is it so sucessful? Simple. every bone, every muscle, every organ in the cheetah is designed for one thing - catching prey. Nature gives no room for excess baggage. Unfortunately, with software you have a lot of leeway. While every bit of software we write must be designed towards meeting the user's need, often we see more focus on frivilous form...often at the cost of functionality.

Such features are common place. Heavy e-mail interfaces that take ages to load, instead of plain HTML. Tiny, non-standard, fancy buttons that are hard to access and understand, instead of neatly placed standard buttons and icons. Gimmicky features that force users to upgrade their machines. Don't get me wrong. I'm not saying that all fancy UIs are bad, or that they don't have their place. For instance, a program that teaches kindergarten arithmetic cannot and should not use a standard Windows interface. However, user interfaces should never sacrifice the principles of orthogonality, affordances, learnability, closure and consistency over ephemeral feelings that won't last beyond the first use. See (an old) UI hall of shame here. See Microsoft guidelines here and in the interests of balance, the Mac guidelines here.

* Silver bullets in software engineering
(This is based on a discussion I had with a friend in the corridors at work.)

Fredrick Brooks wrote a seminal paper on software engineering where he mentioned that there were no silver bullets in software engineering or that there was no one technique which provided a solution for the various problems of complexity and cognition that software engineers face. However, with every new technology that is introduced today, we hear choruses of cheer - that the complexity of software development is conquered. Recall the hype over Java, Graphical User Interfaces, Rapid Application Development, and the dozens of technologies that we don't even remember today, and you'll appreciate what I'm talking about. However, we still haven't gotten over our search for silver bullets. Consider the problem of performance. The answer? multi-threading. Consider user-land complexity: how do you solve it? Simple, make it a Graphical User Interface! Never mind that multi-threading works only when the threads perform more-or-less independent tasks. Never mind that command-line UIs work really well for most applications, provided they offer a little bit of user-guidance to flatten the learning curve. BTW, try using Intervideo's DVD creator to make a data DVD and let me know if you wouldn't rather have an app that does this:

cd /home/fordvd
dvdwrite -f data /home/fordvd/* /dev/dvd

Anyway, lets move on to the final topic of this edition:

* Managing Technologists.

Before I write anything on the topic, let me acknowledge that I haven't managed people formally. I've led small teams, mentored people, worked with super-cool teams and am having an amazing run of luck as far as managers are concerned. Anything I write here is based on those experiences. Here are some things I think are a must if you're managing technical people:

- Good quality of work. Ok, you may not be able to ask your people to work on a static analysis project that defies the decidability of the halting problem. But the work you ask people to do must challenge their intellect. Suppose all you do is maintenance, see if you can get an additional project that furthers your product. If you do product development, try and find cool problems that your engineers can solve.

- Respect your engineers. Never ask them to do something you wouldn't do yourself. Don't shift the grunt work onto the shoulders of your reportees. Don't ask them to build a system twice. Don't ask them to solve a solved problem. Trust them - but question their assumptions. Praise honestly and publicly when they do well - rebuke gently when they don't.

- Be the "Facade" pattern. Shield your reportees from the politics of your organization. Make their achievements public. Remember that their failures are yours but their successes their own.

I'll add more when I get them.

Friday, December 29, 2006

Post 150, New year and so on.

Folks, this is my 150th post. Neat, eh? And to commemorate it, I've decided to make it the last post of this year - 2006.

The year started with me being coming back refreshed from a trip to Kansas City. And it is ending with me being not-so-fresh in a new company in Bangalore itself. In case you wondered, its been a good year for me overall - I got to keep all but one of my new year resolutions for the year! I finished a (half) marathon, wrote more than 52 posts on this blog, bought my car, fell in love, fell out of it, changed jobs, made new friends, renewed old contacts, read 23 new books, got a couple of awards, and was never bored for most of the year.

At the same time, I left a place that was really dear to me, lost a great manager, lost one good friend to an argument, lost face once, *never* practised the violin - something I swore I'd do, and...well, let's leave it at that.

So, what are my resolutions for next year? Here goes:
- Better my half-marathon time,
- Get some serious violin practice
- Get some piece of authorship out in public
and some more...maybe I'll add them in later. :D

Anyways, have a great new year ahead. Thanks for reading my blog, and may 2007 bring you here more often, even as it brings you far more happiness and joy than you can ever handle.

Bangalore Autos

Having travelled regularly for over two years in Bangalore autos, I've had my share of auto-rejections. The drivers may have been different, the destinations I wanted to reach may have been different, and so were the times-of-the-day when I hailed the autos, but there has been a general pattern of how I've been asked to GTH. Here goes:

The "Devdas" driver: This person is actually sad to let go of your fare. He puts on a sorry face, and with a voice that reminds you of that loser, Devdas, asks you to find an other auto. Of course, it maybe that he's simply sorry about something else, but at least you get to hear a kind word. Needless to say, his species is rather rare in the ecosystem of Bangalore autos.

The "Amitabh" driver: He is ANGRY. You've just brought him down to near stopping speed from his usual "take-you-closer-to-god" speed, and not just that, have dared asked him to go to a place where he doesn't want to! And beyond that, you have the audacity to quote the rulebook, and tell HIM that he has to take you where YOU want to go!? Persist, and you get a quick lesson in the "Art of Kannada scolding". Ofcourse, his species dominates the ecosystem - much like rats in a sewer.

The "Nero" driver: He is the indifferent one. He couldn't care if you existed, or if you wanted to go somewhere. All he knows is that you are too insignificant to be registered in his intellectual and visual radar. A quick glance, and you are consigned to the fumes of the exhaust, as he haughtily turns forward and speeds away.

Any more that you guys know of? Post it in the comments!

Saturday, December 02, 2006

The true face of a communist revealed

For eons, we've been brought up on a steady diet of homilies about Communism. On how the communists treat everyone equally. How there is no "Maelu keeLu" in commie-land. And how even the biggest CEO gets the same treatment as the 'lowly' peon, whose cause the commies never refuse to champion.

Apparently. But we all know how different the truth really is. And giving us a little glimpse into it was the Lord of the Lok Sabha, Somnath Chatterjee, also known as "The Impartial Master".
When recently, the opposition BJP created a hullabaloo about JMM leader Soren having to resign, he said: "This is pathetic. We take pride in being the largest democracy. Is this the way we function? Is this the example we are setting? That is why even a cricket coach is abusing us." (emphasis mine)

Even a cricket coach? Even a cricket coach? How high should you be on arrogance to say such a thing!? According to this worthy, everyone is equal, except cricket coaches. Oh, and to them, let's add the middle class, the rich, the software engineers, the professionals, the non-communists and the others. After all, they are just after a good, decent, legal life and don't have the "Great Communist Cause" to dedicate their lives to. And then, we can add the businessmen - how dare they make money! And so on, except ofcourse the loyal, sincere, pro-poor, pro-undertrodden, business-class-flying, five-star-hotel-staying, million-dollar-illegally-earning commies, and their junkies.
Equality. Yeah, right!

Monday, November 27, 2006

The Rajinder Sachar report, Part I

Ok, so you've heard of the Rajinder Sachar committee report. At the least, you've heard of a report doing the rounds - the one which first tried to split the army across communal lines, and later lamented the poor state of Muslims in the country.

The conclusion of the report is something we all expected. Muslims are worse off in many areas of health, education, employment than even the Dalit community. Most Muslims live in ghettos, in slums, and have lower-than-average access to credit, to education, and to jobs. The only area where the community has adequate representation, the report says, is in our jails. Sordid.

No one can argue with the conclusions of the report, in terms of the facts presented. However, once the report came out, we had the usual cacophony of voices, criticising all and sundry for the community's backwardness, arguing how the discriminatory Indian state was jailing more Muslims considering them to be terrorists, and of course, asking for reservations for Muslims, further reservations for Dalit Muslims, and so on. Fortunately, it didn't reach a high enough crescendo to actually ask for reservations in Parliament!

We should examine these arguments in some detail. Let's take the easiest one first - the question of a far higher Muslim "representation" in our jails than in the population. Why is this so? But before that, we should ask, is it really a sign that the state discriminates against Muslims? To answer that question, we should impose another question on ourselves. Is the number of criminals 'produced' by a community only a factor of its population? So, should we have precisely 80% Hindu criminals, of which 52% are OBCs, some 2% are Brahmins, and precisely 13% Muslim criminals? This kind of pseudo-logic is one propagated by our 'intellectuals' (read commies). The argument goes - since everyone is equal, everyone is equally likely to commit a crime (as the women's rights advocates argue - every man is a 'potential rapist'). Since everyone is equally likely to commit a crime, the number of criminals who belong to a community should be proportional to its population (actually, these worthies would say "male population", but that would be blatantly sexist). Ergo, if a community has a higher 'representation' in the jails, it is being targeted. Conventional wisdom, don't you agree?

Unfortunately, this is just convenient wisdom. Anyone familiar with the criminal justice system will tell you that factors like a high level of education, fruitful employment, family support and a standing in the community all go a long way in keeping people away from crime. Therefore, communities that are less likely to foster these characteristics are more likely to have criminals amongst their midst, not to mention the fact that in this country, it is the rich that get away with murder while the poor pay for even the slightest crime.

So, yes, there is discrimination, but it is economic, not social. The State is targeting the poor, not the Muslims.

Saturday, November 25, 2006

Cricket crazy? No, power drunk.

What can you say about the hours of debate the honourable members of parliament spent in discussing the Indian team's performance in SA? One way to look at it is that the honourable members are as crazy about Cricket as the rest of us. Another way to look at it is to think that the honourable members have conveyed the dismay(!) of the rest of us to the team. But in reality, it is nothing more than the honourable members being so drunk on power that they can't distinguish between national issues and notional ones. It is about them being so high on the power drug that they think they own all of Indian Cricket, simply because one very honourable member is the chief of the BCCI.


But why am I so angry? Well, it pisses me that my weekend-working-eye-drying-rsi-causing work is going to pay for these a*holes' power trips. It pisses me that when there are 260 million people starving, the rulers of the country have nothing better to discuss. Most of all, it pisses me that this is another intervention into the private space of the individual (or in this case, the team). What we'll have next is Ramdas Athavale criticising Rahul Dravid's fashion sense. And then criticising Aishwarya Rai's performance in a Bond movie (if and when she gets to it). And then, parliament will pass a resolution criticising Shah Rukh Khan for singing badly. And then...you get the idea.

But like everything else in this house of honour, this debate wasn't devoid of humour. Sharad Pawar with his cancer-eaten jaw talking about performance and Ambika Soni talking about sportsmanship(!) were both so much like Brutus talking about Roman democracy that I could only marvel at the similarities. But the icing on the cake was provided by the anti-Dalit, anti-performance Ramdas Athavale, who suggested that the only way out was to provide Dalit reservation in sport! Yeah, and then we can also amend cricketing rules so that Dalit batsmen don't have to walk until they are bowled thrice, we can amend the rules so that any bouncer bowled to a Dalit batsman will automatically add 5 runs to his score, and we can amend the rules so that every 5 balls a Dalit bowls, an opposition batsman must walk. See more of the consequences here.

Sunday, November 19, 2006

No one is irreplaceable

Among the many urban legends governing the software industry, the one which has gained currency in recent times is the one about no engineer being irreplaceable. We've all seen it in action - many times, a lead developer quits in the midst of a project, and yet the project reaches fruitition. A manager may leave, but the project gets completed on time, on budget. In fact, a rather gory saying for this phenomenon, where you can simply replace an engineer by an other, is: "If your lead engineer gets hit by a truck, your project should still run on schedule."

However, is it true? Are engineers replaceable/dispensable?

I don't know. Years ago, the team lead, my mentor and guru for my first project suddenly quit. He was followed by two other senior members in the team. Now, all we had was a team of freshers, and the average experience of the team in that domain was around 6 months (down from around 2 years). Still, we pulled the project through. A couple of years later, two of my close friends left the team. The project went on as usual. Then, I quit, and there was still no material difference to the project - yes, people worked harder to make up for the loss of a teammate, but otherwise, to the external world, everything was hunky-dory. Since then, I've left two companies, and many people have left my place of work, and life went on as usual.

What this ignores though is the sociological aspect. In a well-jelled team, every team member has a place of his own - not just technologically or organizationally, but also sociologically. Invisible threads of trust, of emotional support, of friendship that take months to build are usually torn off when a person leaves. Those are harder to replace. When the seniors in my first project quit, the rest of us were able to take over the technical and organizational aspects quite well. The ten things that my mentor was responsible for, we split amongst the four (or five) of us. What we couldn't split (immediately) is the sense of confidence of having someone to turn to when we were in trouble. What we couldn't take over was the friendly smile that greeted us when we approached him with a problem. Ofcourse, with time, we built support structures of our own - which were again dismantled when people left.

I think this is the aspect of turnover that is largely ignored by companies. What thinks you? Use the comments link freely to express your opinions.

Saturday, November 18, 2006

Technology notes Vol 1, Ed 2, Nov 06

Welcome to the second edition of Technology notes. This time we have:

* Peopleware

At the recently held Bangalore Book Fair, I got the opportunity to finally buy a book I'd been hunting for a long time. This book, called "Peopleware", written by Tom DeMarco and Timothy Lister is a classic - something that can be compared with "The Mythical Man-month".

Now we've all heard about hardware, software, shareware, and even vapourware. So, what is peopleware? Well, it is about the only raw material that matters in the software world - people. It is all about how people must be managed, the kind of work environments that software companies must provide, and the kind of managers/senior leaders that you must have in the profession for a company to succeed.

A must read book for anyone, including those not in the profession. Nothing in the book is new - just uncommon, like common sense. Let me know (if you're in Bangalore), if you want to borrow the book.

* Pair programming

The first time I heard about pair programming, I laughed my heart out. My good friend Sathya who introduced the concept tried very hard, in his own inimitable way, to convince me about the worth of the concept. Nothing would make me budge...two programmers working on the same piece of code at the same time!? What crap! What about productivity? What about cost!? What about conflicts!? These were all questions I asked.

It is a different matter though, that later in my life, I actually wrote a paper on the benefits of pair programming! Even then, despite having officially pair-programmed more than a few times, I hadn't experienced the "Aha" moment - when I was convinced that pair programming helped me do a better job of something.

Around a month back, a manager at my workplace had a cool idea on some updates to a web-site that we host. Essentially, we were changing the rendering algorithm, and he asked if I would work with him on it. I agreed, and man, was it fun! The three hours we spent deciphering the existing code and tailoring his algorithm were probably the most productive hours I've spent in some time! And it was fun! We each complemented the other's skills, learnt from the others' approach to code, and finally came off with renewed respect for each other.

Now that is the "Aha" moment I was looking for. That is one of the biggest benefits of pair programming - building better teams.

Anyways, this is all for this edition. Keep visiting this space for more technical updates. Next time, I plan to write about user-interfaces and the general stagnation in the area.

See the previous edition of technology notes here:

Sunday, November 12, 2006

Linguistic Abuse

The eternal bard once said "What's in a name? that which we call a rose by any other name would smell as sweet". Maybe true. But every word has a meaning. And to use a word in a manner as to distort its meaning is unfortunately, today's journalistic trend.

For example, take the word (phrase?) "high-tech". It stands for high-technology - which means technology of a certain calibre, a certain novelty, and a certain degree of precision, one that stretches the state-of-the-art in a field. How do our papers use the word? Well, simply, everything in the 'high-tech' (sic) city of Bangalore is high-tech. The bus-stand is hi-tech, even though it doesn't have proper water-proofing. The buses are hi-tech, even though they run on 80s technology. The government is hi-tech, even if it doesn't understand technology. Everything is hi-tech. Most vulnerable to this phenomenon is the New Indian Express - which is otherwise an excellent read.

Here is an other one. "Militant". Websters' defines "Militant" as someone who takes to arms for a selfless cause. A "terrorist", on the other hand, is one who "systematically uses terror as a means of coercion". So, are the terrorists in Kashmir working for a selfless cause? Or are they using terror to coerce the Indian government into accepting the two-nation theory? Well, if you go by the anchors, they are those fighting for a selfless, no doubt, secular, cause.

I'll add more as I remember them.

The biggest threat to India

Here is a pop quiz. In one word, what is the biggest threat to the security, development, and integrity of this country? Terrorism? No. Poverty? Not at all. So, is it fundamentalism? Nope. So, what is it?

Well, it is Communism. And communist control over premier educational institutions in the country. This in turn has led to their control over all of primary/secondary education, over most of the print and visual media, and over many influential institutions like the ICHR. As Ayn Rand, in her book, The Fountainhead, eloquently stated, this bunch of commies are not interested in 'physical' power. What they want is power over thought. Power over the minds of the people. They want to hold the levers to power, not power itself.

So, how do they accomplish this mind-control? By obfuscating facts. By telling lies. And by having acolytes back their lies. Here is an example: In today's "We the people", the debate was about "Health-care outsourcing". Barkha Dutt introduced a Bill-something from California who had come in to Fortis for treatment. He was obviously impressed with the world-class facilities and the low cost. Obviously. And two other truths are self-evident. Health-care outsourcing helps hospitals improve, it gets India more foriegn exchange, and it clearly benefits the patient. Now that the worthies cannot dispute these facts, the JNU-types on the show ask, "Who will do anything about the Indian Bills?". Point. But what does this have to do with the whole concept? Indian Bills cannot afford treatment because the government spends 1% of the GDP on healthcare, instead of 5-7% like the other countries, and even that 1% is not used effectively. It is not because the private hospitals treat foriegn patients. But the force with which these guys put it, the private hospitals are put in the dock, for no fault of theirs. And in this debate, you can be sure, there will be no mention of all the Pakistani kids who got treatments done here! BTW, if you treat a Pakistani, if you treat a Kashmiri terrorist, you are a national hero. If you treat an American, you are a blood-sucking vulture.

And this is typical. Praise a NarayanaMurthy for creating Infosys, and these worthies will say "Oh, it provides jobs to only 50,000 people." Praise the software industry for letting these worthies fly to other countries witout being treated as terrorists, and these will say "Oh, it is *just* a few million jobs." Praise the export sector for doing well, and these worthies will point to all those below the poverty line. But praise a Mao, praise a Stalin, praise a Caucescu - all butchers, and these a*holes will clap with you.

Disgusting. And if you haven't read these three books - Animal Farm, 1984 and The Fountainhead, I'll urge you to read them now. It is the duty of every citizen to see through the propaganda of these a*holes.

Saturday, November 11, 2006

Much more typecasting

If you are one of those who is going to heave a huge sigh of anguish, you are not the only one. Yes, I know, I've ranted on and on and on about typecasting people. And I've admitted that I've been guilty of the same. So why am I blogging about it again!? Is there anything new I want to say about the topic? Well, not really, but it is surprising that even after I made my transition from C++ to C#, the typecast haunting continues, albeit in different forms, which is what I want to mention.
The underlying theme is the same. Being ever so slightly(!) on the plumper side of things, people are surprised that I ran the marathon. But what is most funny is when other people who throw run-time exceptions when typecasted, typecast you. Oh, you make jokes, so you can't handle serious! Oh, you don't believe in God, so you cannot enjoy classical music. Oh, you like the US, so you cannot enjoy Mohd Rafi. Oh, you speak ever so softly, so you cannot drive your Swift at over 100 kmph. What is worse is that when conversations steer to the above mentioned topics, I'm automatically classified as a liar, a futile boast, and what not.
Oh, well. The good thing is that I'm getting used to it. The bad thing is that I'm still guilty of typecasting. :)

Cell phone conversation

Those of you that know me in the real world know that I don't have a cellphone. Now, being without a cellphone in 21st century India puts one in funny situations at times. Here is one incident that happened when I had just joined my present job.

Receptionist (Opening a register of employee contact information): Sir, can I have your cellphone number...in case someone wants to contact you

Moi: No, sorry, I don't have a mobile phone

R (Incredulous look on his face): Sir, but we'll keep it confidential...won't give it to anyone

M: No, really, I don't have a mobile phone!

R: Sir, but we need it for our records...
(At this time a 'worker' walks in carrying a heavy case. He keeps it on a table nearby, fishes out a mobile from his pocket and dials...)

R: Sir, even *he* has a cell phone...

M (big smile on my face): Well, OK...what you mean by that!?

R: Sir, you *really* don't have a mobile?

M: No, *really*, I don't have a mobile...do you want to check my bags now to confirm it?

R: No...sir, sorry...

(Moi walks out of the door...the 'worker' suspiciously follows me out, staring at me most of the time...)