August 7, 2011 § 2 Comments
As I prepare for my talk at agile 2011 I am re-reading Workplace Management by Taiichi Ohno and what a pleasure it is to re-read this book.
The first chapter talks about being wrong and accepting when you are wrong. Taiichi Ohno goes on to say:
Engineers in particular tend to hold on tightly to things they have said or to their ideas. Engineers are often said to be inflexible or stubborn but i think it is important for them to quickly correct themselves, just as the wise mend their ways. If you think “What I said was mistaken” you should clearly say “I was wrong”. Without this attitude your subordinates and the people on the gemba will not do things for you.
How refreshing is that attitude. In our current work culture though we are taught not to accept when we are wrong. We say and pay lip service to the idea of accepting when one is wrong.
But time and again we notice executives, engineers etc adhere to what they have said. How many times have we noticed an executive say that they would like to see some metric and keep asking for that metric even when it was proven that metric was wrong. Engineers go thru reviews at the end of the year where they are told how many times they were right and how many times they were wrong. Got forbid if they accepted they were wrong, they can say bye bye to the bonus.
The measures employed by organizations create individuals that are rigid in there belief, even when they know they are wrong. I don’t think it is there fault, but that of a system that scoffs at them when they accept they were wrong. Once they are burned by being honest they realize there is no point and start to calcify in there thinking.
Now I am no Confucius who inspired this thinking for Taiichi Ohno. I have been guilty of adhering to my rigid ideas as well. But with every opportunity I try and mend my ways and learn to say when I was wrong. Obviously I learn when I was wrong by trying my suggestions. So heres hoping to becoming wiser.
July 20, 2011 § Leave a comment
June 2, 2011 § 2 Comments
I have had this feeling for a long time that software industry, the industry I am part of is full of highly egotistical individuals. We seem to say that software is a craft but at the same time like to believe that individuals should come out of the womb with understanding what is genetic algorithm or some similar complex algorithm. More often than not I meet software engineers who love to talk in complex patterns just to show how smart they are and god forbid if you don’t understand what they are saying, you are quickly tagged as a lightweight. It just seems so very silly.
Just like wall street creates unnecessary complex vernacular, the silicon valley and the software industry does the same as well. Just like wall street is running towards the latest and the greatest thing in the market, so is true for the software industry. There is an air of superiority amongst members of this industry. Everyone very easily forgets how it was for them when they first started using computers, that they learned the craft and that someone helped them when they were starting out. This holds true for when people are learning a new language/environment or method of programming. People learn things and then suddenly start treating every new guy coming into the field as an idiot.
The other issue is that because everyone has a computer they believe they understand what it means to write software. We have an influx of too many MBA’s, generalist who apply generalist rules to build software. They don’t have the basic understanding that this is a craft. They bring the same stupid judging rules to judge software engineers.
Software is a team sport. Sadly this is something that is not taught when this craft is taught to individuals. What is taught is that you have to know everything and be a lone warrior. These very same individuals may end up writing some great piece of application, but add them to a team and they are like nepam for the team. There ego destroys the team. I don’t care if you are a super star but if your ego gets in the working of a team, I would rather not have you on the team. For this very reason I like to hire young graduates who have not yet acquired the air of superiority and are willing to look stupid and learn and also teach. I have found the best teams are the ones where everyone acknowledges that we are all learning this craft and are willing to teach each other tricks of the trade.
If software is a craft shouldn’t we be looking for individuals who show tendencies in learning a new craft, an open mind and the ability to be diligent and willingness to learn when they don’t know what is going on. I can only wish that this industry was filled with less egotistical individuals, but sadly we have a long way to go.
May 1, 2011 § 4 Comments
Security at airports in India is a such a sham. I mean the ones in US are equally bad but atleast you are not subjected to unnecessary checks and rechecks. For example if you were flying from Bombay to Hyderabad, you will first be checked at the entrance to ensure you have a printout of some legitimate format (e-ticket etc) against a photo id. If you were even slightly technical you could create a document and print it out and no one would know. Oh yeah and by the way if you are not travelling, forget about going inside, not like the US where you can wait with someone. Once you are in the terminal and have checked in online you still have to take the printout to one guy who takes a ink stamp and stamps your ticket, defeating the purpose of online checkin. Then you go to the security line where someone checks your printout and id again before you enter the line. Once in the line there is the scan of your bag and you and then a complete pat down with groping and all. They even want to look inside your wallet, for god forbid you have a nail clipper in it. As soon as you are done with this and pick up your bag on the other side, another security guy checks you, your printout and id. I mean this guy is standing 5 feet from where you got your pat down. Once thru this you walk to your gate and scan the boarding pass to board the flight, but as soon as you are done scanning the boarding pass and start walking towards the gate, wait for it, there is another security guy, who looks at your boarding pass and id. Now depending on the airport you might have to get on a bus to get to your flight, guess what happens now, another security guy checks things and lets you on the bus. You drive for few minutes, get to the plane and another guy checks your boarding pass before letting you in.
Man, have you been keeping count. I haven’t. This is just amazing. What inefficient system do we have here in India. And this is in the name of security, where I can guarantee half of these security guys can’t even read properly, so god knows what they are checking when they are looking at your printouts. And obviously you could have just created this printout yourself and they wouldn’t know, coz guess what they have no computer to verify that you are really boarding a flight today.
Man is it frustrating or what!