One incident made me think about the abstract nature in which we think about the code we develop. We spend so much time on designing, developing and testing some code that we lose the focus on the end users who are going to use it. We know too much gory details about the code that it is going through thousands of lines for doing some function and we are thinking about the minutest details. We don’t see a non-IT, regular person in the counter of a shop using our application. Instead, we see it going in and out of IF loops and FOR loops. I wonder how will be the case with Doctors – they know too much gory details about the body, will they lose the ability to appreciate human body as something beautiful?

There is one usual comment given to freshers – “see the big picture”. It feels corny to say that think about the users of your application while developing. But it is important to see the one thing they will expect out of your application. I had read an article comparing software development with painting. I would also like to think about software development as an art form – at least it gives me a good feeling to think about it that way. There is lot of creative work involved in there.

Once upon a time, it used to give me a feeling of adventure also – to delve into uncharted and dangerous terrains (undocumented massive applications) and try to enhance it, or design something complex, which would tickle my little brain, unique feeling when something works fine. For an artist, it must be immense pleasure when people truly appreciate his painting or music. It would definitely make me happy if a user says, you have made my life easy and thanks for that. Again it is not the often repeated word (there some words which are used so much that it is starting to show the wear and tear), “Customer Delight”. The delight is all mine, to have designed and developed something good. I would like to be satisfied first on anything I deliver.

At the end of the day, it is just another job which pays well and we are nothing but workers creating factory products. But looking at the fancy side of it and giving it an air of art, makes it worthwhile.
Multi-tasking. This is one skill, which would help me a lot right now. I got into one task for last three hours and I am waiting for last 20 minutes for something to finish so that I can continue. I don’t want to start something else meanwhile. I had made a list of 6 or 7 “things-to-do” in the morning, but I don’t want to get out this one. Sometimes the intention is to finish one by one. It gives a very nice feeling to mark each item as completed. It will give a very good feeling if all items are marked at the end of the day. But it never happens.

It needs something called context switching. If all 6 items are entirely different from each other, there is reluctance from within to start doing next one. It is just like trying to drive, shift the gears gradually and get going in full speed, then apply sudden break, then start all over again.

My previous boss (a lady) once forwarded a clip, saying women are better at multi-tasking than men are:-
“This evolutionary divide can be seen all over the modern world. Almost exclusively airport traffic controllers are male, this appeals to their spatial skills after all and they are intrinsically better at it then women. On the other hand, the majority of secretaries are female, this isn’t because of male oppression but simply that women are better at the multitasking needed to do this job. “

No idea whether this true. It needs ability to leave something unfinished and not even think about it afterwards. It becomes more difficult when all these 6 items will have to continue for a week and little of each has to be done every day. I need to determine a sequence, time to spend on each task and put time slots for each.

Knowing when to stop pursuing something is vital. To increase the efficiency, one should know when to shift the gears. If you are heading for a dead end in any one of them, either change tracks immediately or leave it as it is and come back later to have a fresh look.

So let me abandon what I am doing right now and move on to next in the list.
I am trying to read “Atlas Shrugged” by Ayn Rand for last 2 months - 2 pages per day, but somehow I am keeping it going. During my furious reading days (school/college), I used to finish a book at one go sometimes without putting it down even once. If a book is taken up on a weekday, then until it finishes, there is a good feeling while returning home that there is something waiting for me. It is like the excitement of a kid waiting for the postman to bring the month’s edition of children’s books.

Reading sometimes gives a feeling of getting detached from this world for some time and wandering in the fantasy worlds built with words. Something like a drunken stupor. Slowly the characters will be given a shape, some nudging from the author by giving hints about their features, then each small piece is added up, then we match it with somebody or something we have seen and registered in the subconscious and starts taking them through the story. Sometimes at the end of the story, I had revelations that the place, which I was imagining while reading, was something I had seen in a movie. It is like a drama going on in mind - characters, place and time constructed from the hints given by the author, played out on the script provided by the book. There is creative activity going in the background. It does not stop with that. It is like taking a shot of strongest liquor. Effect lingers for couple of days. Keep replaying situations going back and forth in the story, changing the course of the story, giving new climaxes, thinking over some new ideas from the book and discussing it with any available person. A story, which can take you away from this world as far as possible or lets you forget everything around you for sufficient period, is the best. If you say at the end of a show that you didn’t notice time flying by, then it must be something good.

I started this post for saying something about the philosophy in Atlas Shrugged, but as usual went off track. I will get back to that some other time.
I was searching for “design flexibility” in google today and came across this interview with Martin Fowler. I was looking for general best practices in making the design flexible enough to make maintenance and changes easy. Something like flexible molding material which you can change without much effort. I had read about regenerative systems some time back. Some fantasy about self-healing or intelligent error handling programs. If these errors out, then it can start looking for the actual cause of error by itself, fix that and start running again without manual intervention. Sounds fantastic. It is not a sophisticated idea which sounds good on paper but not good for real life application development. Maybe not in an expansive manner, at least the idea can be implemented.

Following are some quotes from this article.
“We seem to have a notion in the software industry that doing a good job slows you down.”
Yes, I have this opinion some times. Not literally, but pulling off a perfect job takes time. I always work within pre-set time limits and one prime objective is to deliver good quality product within set time lines. If you have unlimited time at your disposal, then making something perfect is just a matter of patience. I have also advised others that don’t tinker with something until you get satisfied, but rather finish it off and proceed with next life cycle. It is not for just finishing the task for the sake of it, but to take care against next cycles getting squeezed because of this. The theory is, if making it 90% perfect took 100% of time, then the rest 10% will take much more.

In this model of working (waterfall) in a one-dimensional manner, there is little choice but to start with coding once you think design is more or less correct. Is this where iterative, agile, extreme methodologies makes a difference? Making a perfect design of a part is easier than designing a complex system at one go. When you have to compromise because of time lines, this axiom is true.

“Planned design's weakness is that creating a well-planned design is actually really tough.”
“Why?”
“Martin Fowler: I don't know. Why is composing symphonies tough? I don't know. It's just very few people in the world can do it well. And I think that's the case with upfront design. It is very hard to do well. “


It is true that making a perfect upfront design is tough. You have to visualize the complex system which you are designing completely. You have to be imaginative enough to see all its flow from start to finish. You are expected to fill in all the loopholes and all the tiny cracks.

I just had a brainwave - let me take the example of cooking. If I decide beforehand that I am going to use a certain amount of vegetables, water, salt, pepper etc and start cooking, chances of it being edible is less. I am least experienced in cooking, but from my limited experience, adding ingredients as needed into a basic mix with multiple iterations helps to test the taste regularly and improve. Final product is always tastier compared to first method. But somehow, I was not able to practice the iterative development in a full-fledged manner so far. So I don’t know the other side of the story.

“focusing on superficial problems can lead to the discovery of substantial problems”
This is true not only in design, but in other areas also. Biggest hurdle when I face new situations or new problems is courage to attempt solving it. Fear of unknown is one big deterrent which makes people believe that it is complex. But scratch the surface, series of small discoveries will add to the confidence for exploring more. The problem will get solved by itself.
Direction, Clarity, Presence of Mind, Care, Composure, Control, Articulate, Integrity, Honor, Honesty, Precision, Perfection, Pleasant, Open, Serious :- some I would like to have.

Timidity, Fear, Unnecessary elation, Patronizing, Envy, Panic, Dramatize, Overreact, Conspire, Boast, Pretend :- some others I would like to avoid.
Slept really late yesterday. Doing nothing. Nowadays there is no time to spend like that also – doing nothing. Watched highlights of cricket match couple of times, cricket news in every channel, made sure that I got my complete fill of the Indian victory. Today read every article in the sports section of the newspaper also. Now that chapter is closed. I am going to give a rest to cricket for some time. It is taking lot of my free time.

Before this cricket series started, it was football. I was following Real Madrid and once they were out of the competition, that ended. Today I was watching something where Pele was saying that every great team would have one star player. Real had Beckham, Zidane, Ronaldo, Carlos, Figo – but still they could not go all the way. If one could measure talent quantitatively, then a player having largest amount of it, could be matched by a group with average amounts of it. So a team of medium talented players fitting in just like pieces of jigsaw can also be a great one. But only difference is there is no single face to pin all that greatness to. People will forget the greatness of a team of 80’s easily, but won’t forget the great player of 80’s. I don’t have much interest in British football, don’t want to start. Not atleast this season.

I am really afraid whether staying up until 2 or 3 am is becoming a habit. It is really having its toll on my wife. I am afraid I am turning her clock also to sleep late. Slept till 2 pm today. Seeing me waking up at 2 o’clock on a Saturday with a stiff neck, a friend had adviced me to get up early and enjoy the weekend. But weekends are taken for catching up on all the lost sleep. It is like a long journey through the mazes of bizarre dreams. Especially when you oversleep. What the mind conjures up as dreams is amazing - places, people, situations all mixed up.

Striking a perfect balance between work and life is getting difficult. Now even I am guarding myself against making unhealthy habits and give each its own required place and importance. Not doing really anything about it, but I don’t know as yet what can be done.

I was catching up with some of my frequent blogs. One was saying that everybody presents their best face to strangers, so don’t just go by what is written down. There could be more behind these written words. Another was saying that surely he won’t write anything about how he fell in love, because he doesn’t want to share that with strangers. Yet another was saying that he won’t write politics, so as not to muddy the water. Another was saying that send the link of your blog to your mother, sister and girlfriend. That way you won’t write anything unnecessary. I guess there will always be something which you want to keep only to yourself. Most guarded secrets of a person which he won’t acknowledge even to himself. There are shared feelings with our near and dear which one need not flaunt in public and disrespect those feelings. These are common property on which both parties have some right. You don’t have any right to make decision whether to tell others about it. I sometimes feel, we have different faces to show to every one. Adjusting the shapes according to what others want to see. Admit it or not, people always adjust to others expectations. Sometimes even language gets modified when talking to different people. Show one face, have same set of feelings, speak same language to all, guard against transformation – is that the sign of maturity? As for me, there will be a line drawn as to where I should stop. It is not the fear of others seeing my ugly faces, but out of something called self-respect. But I need not have restriction that I won’t say anything about politics, sports, technology or any of the wordly things. Whatever it is which interests me.

I don’t know what I am saying. I think waking up late is having its toll on me. I have a heavy head. I came to office to finish off some work. Now I will get back to that. Two more hectic weeks. As always, I hope, after this, I will get back some control on my life and some “quality time”.
Fridays are the best days of the week. It is pure peace to think about couple of days ahead. There is a bubbly, jumpy, springy feeling in legs from the morning (probably because of the Adidas shoes worn only on Fridays, which is a respite from unforgiving formals worn on the other days). Feel casual, work casual, have something to look forward to, work is also enjoyable, feels like talking to friends and finish off the day, feels like getting out of office early. I do not have the luxury of enjoying the whole weekend since some work is left to be done, but still it doesn’t feel bad.
-------------------------
So much about Friday. I was catching up with some of my frequent blogs yesterday. It is interesting to see what they are thinking/doing, how their mood flickers and interests change. It would be a great feeling if these blogs exists for 20-30 years, then I would have known these people and their thoughts for so long. It would be some feeling to grow old and look back at my oldest posts.
-------------------------
Cricket bonanza is over. I was waiting for the fifth day of last Test, which would have been played out on Saturday. But Pakistan meekly surrendered. I didn’t like the way Inzy gave up. He should have fought atleast by himself. It was like giving the victory to India by force. After dropping six catches, Indian team managed to bowl them out in a day. This is stupendous when you think that Pakistan dropped Dravid twice also. They have failed in every aspect of the game. They came back from the trenches and won the second test, but what hit them in third? Are they bent on winning so much that they stop performing? I am starting to sound like Sidhu. When Sidhu speaks, they should focus the camera on his companions. I would like see them trying to keep a straight face.
I always thought Pakistan is a formidable opponent with good sporting skills, better physique and good pool of talent. But they lacked the resolve. Dravid was superb. He is demanding a place in the greatest list. Watch his interviews, the way he answers the questions tactfully and positively is a lesson to even diplomats. I wonder what he is in real life. B-School graduate? I was also thinking what will be his next role after cricket (that is still a long way, but). Will he take up after Gavaskar, Ravi Shastri and others? He can take up politics, if he wants.
It was great cricket, though. At the end, somebody has to win. Happy that it is India.
I had a great achievement also. I could get my wife interested in the game. Now I got company to watch the game and discuss the details passionately.
Calendar on my desk for this month reads - “Optimism: The hopeful sees success where others see failure; sunshine where others see shadow & storm”. If only I could see success, happiness and sunshine through the thick fog of confusion and uncertainty, always. I do not want capsules, doctrines, pep talk and other remedies prescribed by modern hippies for mental peace. Find your own way to reach there. But when do I finish my black book of ideals, principles and perspective and live by it? Why do I think I need it? Everyday, I think I am older and more mature than yesterday and I repent some of my yesterday’s actions as childish. When does one finish the process of growing up, see the world through the wise eyes, and be able to explain ones actions completely? Body reaches maturity one day and it stops to grow and only shrivels with age. But when do I see my mental maturity to reach its maximum growth? Sometimes I think I am becoming a cynic in life.

-----------------------------------------

I need to get some life outside office. I have worked the hardest for last two weeks. Everyday including Saturday and Sunday until 3 am. There was tension, chaos, uncertainty, but everything turned out fine in the end. I didn’t think about it much, but I enjoyed it a lot. I like working myself upto my limits. I used to play table tennis for hours continuously. Partners come and go, but I used to be there at one end of the table. At the end, sweat coming out of every pore, I would like to rest and then take a lazy walk. But I never used to get a partner. I lured many of my friends, taught them the game, made them play, but they eventually lost interest. Some good old times. Back to my work. I have completed one part of it. Second part is building up. I have gruelling weeks to come; if I don’t manage correctly, it could also blow up. About 3 weeks to go. From tomorrow, no moment to waste, with the fullest of energy, with the sharpest of mind.

------------------------------------------

I am thrilled with the way cricket is going. Nowadays I read every article in the sports section of the newspaper (within ten minutes snatched away in the morning). There is big fight going on in office bulletin board about cricket. I guess corporates will have a huge loss in productivity due to this series. But cricket is bringing beautiful pieces of writing too. I liked some written by my colleagues. I am a fan of Harsha Bhogle. I loved one of his articles, Sign of the times. I pitched in couple of times to offer my piece of mind too. It is celebration times, but as always, I am skeptic of their continued success.

I don’t feel very strongly. I like to enjoy the game and leave it at that and don’t get too much into history, statistics and such and start arguing. At all times, keep in mind that it is just a game. Just for the fun of it, I replied to one of the posts in bulletin board:

This is a new phenomenon about Sachin bashing. These same elements would not have even wagged there collective tails when Sachin was bashing others with his bat. When he gets single digit scores in two matches, you scream at him to score. When he scores 140, you scream at him to score even more and ensure that the team wins. Then you demand personal commitment towards team’s victory, not teamwork where everybody contributes towards victory. When he scores 140 and still India won’t win, it is Sachin who failed, not this new fantasy “Team India”. Australia is a team where everybody has enough potential to contribute. Here we are afraid when this paper tower is going to collapse. We depended upon personal achievements to forward the team. Now when there are four youngsters who are worth something, it is team India.

There is nothing wrong in aiming something personally and get going to achieve it. If a person doesn’t know what he wants and how to get it, how can he get it done for others? Even the declaration wouldn’t have become a controversy if India declared at 650 instead of 675. If you can wait that far, there is nothing wrong in waiting for two more overs. If this happened due to a miscommunication between captain and player, it is fine, but if you say person does not matter only the team matters, what does it do to a person’s self-respect. Nobody likes to hear that you are dispensible at any point of time and that you as a person is insignificant.

Strong willed individuals who knows what they want can form a good team.

Don’t attach greatness and tell him that he is not great.
Don’t attach divinity then accuse him that he is not god.
Don't hail them as "Sultan of Multan" today and treat them like a pauper tomorrow.
Let them play for what they are worth.

process oriented vs just-get-it-done

There are a lot of cases where balanced and middle view is better, but adopting middle path on everything might lead to average or medioc...