Saturday, November 1, 2014
Camping 2014
Tuesday, January 31, 2012
On the way to school...
Every morning I rush my kids to school in order to get them in before the bell rings and the doors close. On the way to school I remember my old school days.
I remember the days when mommy would shake me awake and daddy would bring tooth brush and paste direct to my bed. I would wait impatiently outside my sister's bathroom because there was a spider inside mine. My grandpa would shooo away the spider for me. I remember the days when grandma untangled and braided my hair while I did last minute homework. And the days when mom braided on one side and grandma braided on the other side making my face uneven.
On rainy days grandpa would lay stones/bricks in the puddle of water in front of our house so that we can cross over without wetting our shoes. I remember the days that daddy searched my unorganized closet for a matching pair of blue ribbon to go on my hair and polished my shoes until it shine. Just before leaving the house grandma would remind me to never talk to strangers.
Mommy would cool steamed milk under the fan so I could gulp it in faster. I remember the days when I woke up to the aroma of potato poriyal and lemon rice that mommy packs for lunch. Just thinking about it makes me hungry anytime. Mommy would hand me a glass of water before I leave home every morning and ask me to wipe off my milk mustache.
Daddy would read out my physics formulas and check my pencil box on exam day mornings. He would also fill up ink in my pens. On days that our rickshaw didn't show up which was a common scenario, daddy would drop us in the scooter.
I remember the days when mommy watched us from the balcony and grandpa watched us from the street corner until we disappeared from their sight. And then suddenly I felt lonely for a minute as I stood in front of the school doors watching my son disappear into his classroom hoping he will turn back to wave a goodbye. Soon I realized I was late for work so ran back to catch the train.
Monday, January 30, 2012
What makes a good consultant?
I was implementing a certain business rule using a tool called Blaze Advisor. Nothing too complex just needed basic string handling functions to implement my rule. The tool's function library did not include a length function although it did have other string handling functions like substring, findstring, concatenate etc. I was mad that some advance functions were built-in but something as basic as the length function was missing.
I thought the tool was so useless. Why rules are implemented using Blaze? If this was a plain java implementation, we would have had so much flexibility. Hated and cursed the tool. No progress made, task was still open. Then did some research and found a simple trick to accomplish length function using substring and findstring functions. Here it is:
Let's say we want to find the length of String str1. Find a string str2 that will not occur within your original string str1. Append str2 to the end of str1 and assign the result to str3. At this point we have;
str1 = "..." // original string that you want to find the length
str2 = "..." // string that you know for sure will not occur in str1
str3 = str1 + str2
Now use findString() to locate str2 in str3. This should return the position of one character after str1 hence a minus one should give the length of str1.
str2pos = str3.findString(str2)
length = str2pos - 1 //length of str1
Pretty neat huh? This didn't need research, just some simple logical thinking. I told myself again: there is no such thing as a bug free product. Every product has bugs - known and unknown. Know your product; know the bugs, loop holes and most importantly your work arounds. That's what makes you a good product consultant.
Tuesday, November 29, 2011
Common Sense Problem Solving
I felt so embarrassed. It was very different to feel this side of the fence. Occasionally our users think that there is a problem with the system, business confirms the bug and prioritizes it, and IT even estimates it. A stereo typed developer by now will be putting a nice big band aid thinking that there is a boo-boo in the system. A common sense developer will be scratching his head wondering what to fix when there is no real boo-boo. I have to admit that I have done this mistake once before. I worked on a fix for weeks before we realized it was never broken in the first place. It is often hilarious to see IT going back to business to explain their own business process to them.
I am training myself to apply common sense to problem solving before digging into thousands of lines of code for answers.
Another issue I frequently encounter during problem solving is when the solution is presented to me before the actual problem. Let’s say the original problem is at point A, the solution as perceived by business is at point B. Based on the solution at point B, the problem as perceived by me is at point C. Plotting all these points on a graph will reveal a nice love triangle. Trust me, problem solving in this case becomes as adventurous and many times as unsolvable as a love-triangle. As a lazy developer, I hate to read design documents. On most of the rare occassions that I did read such a document, I have noticed solutions being stated as requirements.
I am training myself to never listen to solutions before I understand the actual problem.
Monday, September 12, 2011
Job Satisfaction
At the corner of the street there was big crowd gathered around a vendor. As we got closer, we saw a man carving statues and figurines out of soft stones using some very basic tools. My son was very impressed with his work. He wanted us to buy one of the statues. I looked at the price on it and decided to walk away. My son insisted that I at least let him watch the man work. I agreed to it on one condition - I will not buy him anything from there. As my son was too engrossed in the art work, I thought it was time for me to do a quick round of shopping.
I came back after an hour thinking my kids will be cranky and my husband was going to yell at me for making him wait. But no - to my surprise! They were still at the same place where I left them; my son still keenly watching the man carve his stone. Many people stopped by to watch his work, some took pictures and walked away, some donated a few bucks and yet few others bought his sculptures. But no one stood there and admired his work for a longtime like my son.
It was a hot and sultry day. The man seemed exhausted but he didn't stop his work. His work progressed very slowly as he carefully rubbed out edges of the stone until it got the shape. Then he worked on the details using a small chisel. With no modern equipments just a basic tool set, it seemed like very tough work. The man took short breaks occasionally to provide some relief to his hands and fingers. He worked meticulously on sculpting a large piece of stone.
After a while, he put aside the large stone and picked up a smaller one. I was curious on why he changed his object. He worked on it for a long time. When he finished it, he gave it to my son. We insisted on paying for it but he refused it completely. He mentioned that he did not do it for money and quietly returned to his work on the larger piece.
The simplistic lifestyle of the man on the street corner taught me a valuable lesson - take break every day. Take a break every day from the normal routine tasks and do something that gives a sense of fulfillment in your job. Take a break every day and step out of the performance appraisal rat race to do something that makes you feel the powerfulness of your role – a feeling that no promotion can ever give. Take a break every day from the daily politics at work and do something that makes sense to you. Take a break every day from trying to get under the spotlight and do something that makes you feel proud of. It may not get you a promotion, it may not get you a raise but it will give you a great deal of Job Satisfaction.
Friday, May 13, 2011
Happy Mother's day 2011
Life is so hectic and mechanical, running between school to day care to work. Then weekends it is running between errands to kids classes to social activities. Sometimes I feel like if only I had a remote control that can fast-forward my life to the point when kids can take care of themselves and be independent...
Other times I feel like life is so stagnant and boring. I just want to take the remote control and rewind back to the time when I was a kid. School life, college life, first years of love, first job, traveling life - always exciting. Just feel like doing all over again.
But today, I feel like pausing at this very moment. I wish life can be stand still because I will miss my kids consuming all my time when they grow older. I don't remember what I did with all my time before they were born and I don't know what I would do with all my time after they grow up.
My son gifted me with his hand prints and this beautiful poem:
" Sometimes you get discouraged
Because I am so small,
And always leave my fingerprints
On furniture and the walls.
But everyday I'm growing,
I'll be all grown up someday,
And all those fingerprints
Will surely fade away.
So here is my handprint,
Just so you can recall,
Exactly how my fingers
Looked when I was very small.
Happy Mother's Day 2011"
Monday, April 18, 2011
Lessons from a Kid
I was busy clothing-shopping at my favorite store with my son. He saw some random toy and asked me to buy it. This has become a routine for him. Everywhere we go he throws out a tantrum for toys. After buying it, the kids fight over it for the first five minutes and then its charm is gone. It is then lying around in the most irrelevant places, occupying most precious space in the tiny house that we dwell in. Finally when I am on a rare cleaning spree, it is thrown into the basement.
Toys have been mere waste of money, so this time I was very stubborn that I wasn't buying it. He began pleading - "just this one time mommy, please. This and the basket ball and that's it. I won't ask for anything else, he said. I know it is not going to be the last time he is doing this. He was quickly losing temper as I refused to buy it for him.
Firstly I wanted him to realize that he can't get everything by just throwing tantrums. Secondly I wanted him to know the value of money and that we can't afford to buy all the toys in the world. Lastly, I wanted him to know that sometimes we are not going what we want and we need the courage to face it boldly. I was doing this for his own good.
But the argument continued. He begged, screamed, cried, rolled on the floor. Seeing that nothing worked, he started attacking sentimentally. He said "if you don't buy it for me then I will never go out shopping with you again". At this point, I was also frustrated so I said "I don't enjoy going out with you either". Then he said, "I am not your friend". I said, "I don't need your friendship, I have better friends than you". He was silent for a minute and then he said, "but I want to be your friend. I don't want the toy. Can I be your friend again?"
This time I didn't know what to say. I felt choking upon words in my throat, couldn't swallow it or speak it out. Here I am trying to teach the kid "value of money" but the kid just taught me "value of friendship". Somewhere along the big argument I had forgotten my priorities (did I even have one to begin with?) But even after the cries, screams and endless tears the kid had priorities set on his mind. I felt so cheap in front of the kid.
The next day I bought the toy on my way back home. I paid 15$ - felt even cheaper now. I was eager to show it to him, I wanted to see the joy on his face. But it turned out that he forgot the whole incident and gotten past it by then. While he was excited to see the toy, he wasn't overly thrilled by it. As usual, the first five minutes the kids fought for it. Then no one cared - the pieces in the set were all over the place. And it was my turn to clean up!