free html hit counter
Posted on: Sunday, January 2, 2011 by Rajiv Popat

Letting Your Products Turn Into Remarkable Stories - Part 1.

There is an attack of cheap Chinese and Indian smart phones with cool features in the Indian cell phone markets.

Every cell phone shop is littered with tongs on these. Every television channel seems to be running advertisements featuring some of these phones.

Even when Indian and Chinese cell phone companies try to woo customers with the lowest of prices and more features, any Indian who wants a smart phone eventually buys a Nokia or a BlackBerry.

Why are the Chinese or Indian cell phone companies with better pricing and more features failing this badly?

One reason is quality but the bigger reason is the lack of a story.

If you buy a simple cheaper model of Nokia that is not a smart phone, your story is that you are not interested in smart phones. You just need something that lets you talk. You are just not into smart phones and that is a perfectly acceptable story you can tell your friends and colleagues at work.

If you buy a Nokia or a BlackBerry your story is that you love smart phones and you have a good smart phone.

When you buy similar features sluggishly stitched together by a Chinese or an Indian brand your story is, you love smart phones but you cannot afford a good smart phone.

The result?

Even in the Indian market, which is hugely sensitive to the price advantage, no one seems to like this story.

You almost never win product battles by throwing in features hastily stitched together and then by competing with just price.

The Wallmart model is starting to work less and less with every passing day, even when it comes to selling your product in India where people are super sensitive to price.

If your product is not backed by a concrete story that make people feel good about buying or using your product, no one cares about your product. It is that simple.

What story does your product tell?

Just a little something to think about, if you work on a product or are planning on working on one.

posted on Sunday, January 2, 2011 5:23:20 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Saturday, January 1, 2011 by Rajiv Popat

Asking The Right Questions For Remarkable Work Cultures.

"If no one monitors their work timing and the quality of their work closely enough why will they take their work seriously?"

An acquaintance asks when I am talking about the team I work with, our no policing work culture.

If you want to build great teams ask the right questions.

Why will they take their work seriously, is a wrong question. Why won't they, is the right question.

When you ask the wrong questions you get policies. When you ask the right ones, it becomes easier to trust people and you get innovative life styles with kick ass work cultures.

Before you ask a question, ask yourself if you are asking the right question.

Pick your questions carefully, for they decide your lifestyle and the answers that you eventually find.

posted on Saturday, January 1, 2011 8:30:00 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Friday, December 31, 2010 by Rajiv Popat

Software Development And Hope Drive White Lies.

There are times where we (the collective we, involving anyone who has ever been associated with the world of software development) silently enter the unspoken agreement of leaving a few things unsaid. These are what I like to call white lies.

Hope is often the root cause of most white lies.

The developer checks-in the code, hoping that if there is a bug someone from QA will catch it and report it.

The tester rushes through the test cases and then does no ad-hoc testing, hoping that the developer would have written decent code.

The manager provides a push, hoping that if there is an issue the team will let him know.

The team provides a hushed up feedback sugar coated with a truck load of mitigated speech, hoping that the manager will read between the lines.

Hope driven white lies where everyone knows they are fu@#ked but no one says so are dangerous, because 1) you're lying 2) you are paving the path to a perfect text book example of a disaster caused by too many small things going wrong in the right sequence and order.

Irrespective of who you are, a developer, a tester, a graphic designer, a business analyst or a manager, this week, stat by calling bullshit on quite lies. Stop hoping and start doing what you do with passion, conviction and a strong spine.

I wish you good luck.

posted on Friday, December 31, 2010 8:30:00 PM UTC by Rajiv Popat  #    Comments [3]
Posted on: Sunday, December 26, 2010 by Rajiv Popat

Engaging In Creative Endeavors And The Gift Of Acceptance.

If creative endeavors involve so many unknowns and problems why doesn't everyone seek refuge in the known and the safe?

Why make your weekends miserable by working on a side project?

Why spend a huge part of your organization's revenue on research?

Why leave the comfort of a safe job and work for a startup?

Why contribute towards an open source project?

Why spend hours every weekend putting down your thoughts into concrete words and then publishing them out? 

The answer really boils down to two things. One is because of the way all creative brains are wired. You cannot help but get attached to these creative endeavors. If you are basically creative at heart, tasks seem boring and challenges are fun.

The other, which I believe is a bigger reason, is that creative people, are constantly looking to surprise you and then be, right!

You cannot write a book on how the brain works and make it interesting enough for masses to like it?

Economics cannot be interesting?

No one is going to pay fifty bucks a month for a project management tool which is nothing more than a simple task list or pay you for a system which lets them manage their contacts?

"Ok, now watch us!", The creative minds want to say.

If creative minds break rules it is because there is a naughty neuron in their brain which sees how lame the rules are. That neuron wants to bend the rules, twist them, break them, shatter them into pieces and then have you accept that it was right.

Acceptance is the gift you are giving the creative person when when you buy a book, when you pay fifty bucks for a darn good task list, when you tweet a URL to a blog post or a product on twitter, when you comment on a blog post, when you blog about a product or when you share the idea of a creative mind and help it spread.

This week, start by being an artist who gives the gift of his work to an audience and by being an audience who gives acceptance back to the artists it likes. And yes, I said an artist and an audience not an artist or an audience. Because you cannot be really good at one without being good at the other.

As always, I wish you good luck.

posted on Sunday, December 26, 2010 10:46:04 PM UTC by Rajiv Popat  #    Comments [2]
Posted on: Saturday, December 25, 2010 by Rajiv Popat

The Creative Dilemma And Shielding Yourself From Normality.

Creativity, quite literally probably means the art of  building things, or services or thoughts that have not been thought of before. When you are trying to be creative, you are in unchartered territories because, umm, well, the territory hasn't been chartered before. This means that you have no clue about what works and what does not. You are what doing what Nassim Nicholas Taleb describes in his book as, looking for the black swan.

The problem with being in this unchartered territory also means that you are going to be spending most of your time being, lost, clueless and failing. A process that can be rather psychologically taxing. If you are in the business that involves constant long term creativity, social gatherings around friends and acquaintances or discussions around what you do, or how successful you are, given the mainstream definition of success, can be rather painful.

Nassim Nicholas Taleb describes this Artist's Dilemma in his book the Black Sawn rather articulately. He explains:

Every morning you leave your cramped apartment in Manhattan's East Village to go to your laboratory at the Rockefeller University in the East Sixties. You return in the late evening, and people in your social network ask you if you had a good day, just to be polite. At the laboratory, people are more tactful. Of course you did not have a good day; you found nothing. You are not a watch repairman. Your finding nothing is very valuable, since it is part of the process of discovery—hey, you know where not to look. Other researchers, knowing your results, would avoid trying your special experiment, provided a journal is thoughtful enough to consider your "found nothing" as information and publish it.

Meanwhile your brother-in-law is a salesman for a Wall Street firm, and keeps getting large commissions—large and steady commissions. "He is doing very well," you hear, particularly from your father-in-law, with a small pensive nanosecond of silence after the utterance—which makes you realize that he just made a comparison. It was involuntary, but he made one.

Holidays can be terrible. You run into your brother-in-law at family reunions and, invariably, detect unmistakable signs of frustration on the  part of your wife, who, briefly, fears that she married a loser, before remembering the logic of your profession. But she has to fight her first impulse. Her sister will not stop talking about their renovations, their new wallpaper. Your wife will be a little more silent than usual on the drive home. This sulking will be made slightly worse because the car you are driving is rented, since you cannot afford to garage a car in Manhattan. What should you do? Move to Australia and thereby make family reunions less frequent, or switch brothers-in-laws by marrying someone with a less "successful" brother? Or should you dress like a hippie and become defiant? That may work for an artist, but not so easily for a scientist or a businessman. You are trapped.

He also goes on to explain the risks associated with creativity, the artist's dilemma and the toll constant, small failures take on you. He explains:

Many people labor in life under the impression that they are doing something right, yet they may not show solid results for a long time. They need a capacity for continuously adjourned gratification to survive a steady diet of peer cruelty without becoming demoralized. They look like idiots to their cousins, they look like idiots to their peers, they need courage to continue. No confirmation comes to them, no validation, no fawning students, no Nobel, no Shnobel. "How was your year?" brings them a small but containable spasm of pain deep inside, since almost all of their years will seem wasted to someone looking at their life from the outside.

Then bang, the lumpy event comes that brings the grand vindication. Or it may never come. Believe me, it is tough to deal with the social consequences of the appearance of continuous failure. We are social animals; hell is other people.

Nasim is attending to the same problem Elizabeth Gilbert tried to attack in her TED talk on why do artists go through a lot of torment. Nasim's take on the solution is rather interesting. He calls these creative actives where the results and outcomes are unpredictable and non-linier Back-Swan-Dependent activities or activities that depend on spotting what he calls "the black swan" and advices:

We are local animals, interested in our immediate neighborhood—even if people far away consider us total idiots. Those homo sapiens are abstract and remote and we do not care about them because we do not run into them in elevators or make eye contact with them. Our shallowness can sometimes work for us.

It may be a banality that we need others for many things, but we need  them far more than we realize, particularly for dignity and respect. Indeed, we have very few historical records of people who have achieved anything extraordinary without such peer validation—but we have the freedom to choose our peers.

If we look at the history of ideas, we see schools of thought occasionally forming, producing unusual work unpopular outside the school. You hear about the Stoics, the Academic Skeptics, the Cynics, the Pyrrhonian Skeptics, the Essenes, the Surrealists, the Dadaists,  the anarchists, the hippies, the fundamentalists. A school allows someone with unusual ideas with the remote possibility of a payoff to find company and create a microcosm insulated from others. The members of the group can be ostracized together—which is better than being ostracized alone.

If you engage in a Black Swan-dependent activity, it is better to be part of a group.

A rather innovative form of shielding yourself from moral discouragement which anyone who has tried to do anything unconventional with his life, or a part of his life, picks up rather instinctively.

Now you know, why, if you are one of my far off acquaintances who bumps into me and announces to me in all his glory, how successful you have been with your life and ask me what it is that I do, I might hold a straight face and tell you, "Who me? I'm just studying law. I never quite got to doing anything yet".  It's not personal. It's not meant to be an insult to you or my attempt at hiding specifics of my profession from you. It's a small joke. A prank. A way of shielding myself from your way of evaluating success and happiness.

This is also the primary reasons why I also ask companies to hire people not just by talent or capability, but by matching overall thoughts and beliefs. If you are an organization who believes in looking for black swans or doing any activity which is remotely black swan dependent, hiring people who form a like minded group and nudge each other to continue even when you are encountering constant short term failure and frustrations each day is hugely important.

That is your only chance at spending the ten thousand hours on something and crossing the dip without breaking down both emotionally and psychologically. Go on, build or join a community other black swan spotters and surround yourself with them. That way, you can focus on your work without being taxed for it, emotionally and psychologically.

I wish you good luck.

posted on Saturday, December 25, 2010 8:30:00 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Friday, December 24, 2010 by Rajiv Popat

Lessons From A Side Project - Part 1.

A few friends and I have been working on a little free service which will allow a few like minded people to connect on a completely different level. I'm not going to talk about the service yet. Not because it's a secret. Actually, it's not. My idea is probably out there. Besides, Ideas are a dime a dozen and you should continue building your product even if your idea is taken. I am not going to talk about the service yet because we have no plans of making it public till March. We expect to be in private Beta by end of January.

What I want to do however, is share a few life lessons that I picked up while working on this product and that is what this series of posts is all about.

General User Applications And Services: A Completely Different Form Of Workout.

The folks at 37Signals have wise advice for young startups and individuals on their way to building their first product. The advice: Build a product that is Half, Not Half Assed.

With this in mind, once you start looking at every single enterprise project that you have worked on in the past, you realize that most of them have been half assed in one way or the other. No, seriously.  I have gone so far as saying that most consulting companies use "enterprise software" as an excuse for being lame and boring. Others just bitch about Enterprise Applications.

What's your top most priority when you are working on your project?

Sticking to the specifications? Getting to a feature complete state by the deadline? Completing a successful UAT? None of these needs will push you or your business to spend countless hours so that you can reduce the number of post backs on your page and provide your end user with an enjoyable experience. None of these needs are going to nudge you or your business to build a simple sexy likable lovable user interface. Every single feature that can make a product kick-ass is going to be move to the "Nice to have" list in some meeting somewhere and eventually never ever get built.

Lets face it, unless you work with hugely passionate clients, your enterprise clients probably pay for features not for how a product "feels". Unless your business is a Google or a 37Signals, your business is probably going to evaluate you on how quickly you delivered stuff which was "good enough" for the client to pay for. If you are a consulting house, the general standard of this "good enough" is going to be even lower and is going to be measured by purely economic factors and matrices.

Once you step out of the world of enterprise and start building for the general audience, you are likely to discover that the demands and expectations from your applications are going to be very different than the kinds of demands or expectations you are used to.  All the Visio you know it utterly useless in this world. Your ability to think in terms of use-cases and actors can give your product a quick premature setback. Even some of your design patterns will dig you a big fat hole on a cheap hosting account. You might discover that the world is suddenly judging your work on the strangest of factors that you did not even think were important.

And even though this world of general user applications and services is hugely different, brutal and unforgiving,, I would encourage every developer out there to spend at least a couple of hours every weekend, to weave a small remarkable story and release it out there. Because, that is your only way to find out how messed up your priorities had been all along and how mediocre the world of enterprise development is.

In the fitness world they have a theory. As you continue working out, your body starts getting used to the exercises you do regularly and their impact on your mussels start diminishing over time. Fitness experts around the world will tell you that doing the same exercise every day is stupid. No one ever gets smarter by solving the same math problem every day and no one gets leaner or stronger by doing the same exercise every day. Every now and then your mussels need a sudden shock of a new exercise. That's how they grow stronger. That's how you get out of your fitness plateau.

A few years into enterprise development and if you are a smart developer you are going to realize that you are doing the same exercise every day when it comes to your professional life. You are just building CRUD screens and completing tasks.

You cannot expect clients and businesses to change overnight. But what you can do is shock your mind with a completely brutal and unforgiving world of end user applications and services where people will love you if you get your priorities and work right or give you a cold shoulder of ignorance if you don't.  Either way, you would have shocked your mind and made it stronger, even if you just do it a few hours every week.

What are you doing this weekend? How about starting a small application or service for us and letting us try it out for free when you are done for a few months? Huh? Huh? Huh? Try it! It will not make you an accidental millionaire but it will make you a way better programmer than you already are.

I wish you good luck.

posted on Friday, December 24, 2010 8:30:00 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Sunday, December 19, 2010 by Rajiv Popat

Understanding Software Development Disasters - Part3

With software disasters, what you say when you are talking is HUGELY important towards deciding if your team will survive the disaster. Remember that phone call from your manager that I advised you to pick up in part 2 of this series of posts? Chances are that as soon as you pickup the phone he would want to know the root cause of the disaster. Put simply, the what happened part of the story.

Things You Should Not Be Talking About.

Before you pick up the phone there is one hugely important thing that I want you to do. I want you to tell yourself that no matter how ugly it gets (and things are going to get a ugly from here) you are not going to act like a Jerk.

Remember the famous "These Fish have manners. These Fish... have manners." speech from Jerry Maguire? What you need to do, is think of yourself as the fish. No seriously! Think of yourself as the fish in the tank. With the disaster in place the resources in the tank are going to be limited. But you cannot be bumping into other fishes or stamping on them. If you hurt them and they bleed its just going to make the water stink for everyone else in the tank. You have manners and bitching and whining in times like these are off limits.

That part is common sense, but it seems most young and budding engineers and MBA's fresh out of college do not seem to understand the part well enough, so I thought I'd put it down as a gentle reminder. Now, having said that the No Whining rule is pretty much common sense in disaster scenarios there is another kind of discussion that you need to be specially careful about avoiding.

"Oh I told the Business Analyst we shouldn't allow Cascade Delete! That right there could have prevented the delete from happening because every single user in the system had profile data associated with themselves."

Yeah! You were right all along. So why not blame the dolt who was not. There is nothing more your lizard brain wants to do right now, but again, that is not manners.

The moment you say the lines above, you are as good as crashed. Done. Finish. Game Over. You might as well shout at the client and tell him to FU@#CK  OFF. That way when this client is gone you can go looking for another client and hopefully work together using the same team to build a better project, but once you start the blame game it's over. Not just for this project, but for every single project that you are going to work on together as a team. You have lost the essential trust that forms the magic sauce of functional teams.

You have announced that either you team is not cover fire worthy or you are not going to provide any cover fire. In-fact you are going to turn around and fire at them when your ass is on the line.

So while it is perfectly fine, be a part of a few meetings and discussions which resolve around the disaster, but make sure that every single discussion revolves around what caused issue and how to fix things. The Who caused the issue discussions are completely off-limits, specially in difficult situations. They are a perfect recipe for unrecoverable and hugely political spiral nose dives.

And if you are a manager, who genuinely, truly and honestly wants the project to recover from a disaster there are things that you can do to help people steer clear from these discussion, which brings us to the topic for the next post.

Read On.

posted on Sunday, December 19, 2010 10:48:37 PM UTC by Rajiv Popat  #    Comments [0]
Posted on: Saturday, December 18, 2010 by Rajiv Popat

Understanding Software Development Disasters - Part2

If you have not read the first part of the post, you might want to go through it here to understand the context of this post. Just in case you are too lazy to read it we are going to give you a little bit of a background right in this very post.

You know the disaster I talked about in the first part of this series of posts. Lets assume it has happened. You are staring at the blank database tables which were probably deleted using a SQL injection attack or a developer who was working on production but thought he was working on a development box. You are staring at the blank tables and a one month old backup which you are not even sure will restore. Your manager is calling you. Your phone is ringing. You know you have to pick it up right now. People will start freaking out if you don't.

Now, If you have been a developer for a good part of your life and you still write code, I am assuming that you are going to cringe when you see your manager's name on your phone display on a time like this. "This is NOT the time to be talking"  - the programmer deep down inside who wants to fix things as quickly as possible is going to tell you. There are customers out there not being able to login. You need a plan that will get you out of this mess, Not Another Meeting about what happened and why, Not Right Now! And you are going to think of disconnecting the phone.  Here is an advice: Don't. Want to know why? Read On.

You Need To Say... Something (And Say It With Confidence).

The basic management deal with disasters is that there are going to be Meetings. Lots of them. Like it or not, you are just going to have to deal with the fact that you are going to have some explaining to do. You are going to be doing a lot of talking and that is going to make things worse for you while you are trying to stay focused on fixing things and putting mechanisms in place that will not let the disaster happen again. But this is something you are going to have to get used to. Really Fast. Because all of a sudden, the amount and the quality of talking that you do, is going to mean the difference between survival and a fetal crash.

It's like you were on a dark stage thinking you were just doing the maintenance work... like cleaning up the stage. Then the next second, before you knew it, the spotlight was turned on and there you were in front of a thousand faces, staring at you, expecting you to say something. Expecting you to... perform! Give them a show! As a typical programmer who doesn't see the point of meetings and talking this is going to be a difficult time. But you still need to talk.

As far as talking is concerned here is one time when you need to do one thing and do it really well:

Things To Do #1: Attend all the meetings (at least the important ones): It's like this, your manager, unless he is downright sinister, which I am assuming he is not, is calling you for a reason. You see, as you sit there staring at the blank database and seeing a month old backup, the parallel thread in your brain calculating the damage, your manager who was working at a five thousand feet level, has no clue about what is wrong. With all the support calls and the client calls going to his cell phone, he is probably freaked out. He wants to do his version of damage calculations, using word documents and excel files, map them up with your SLA, see how bad things are. He wants to then work on a PowerPoint which he will need to present to some of your most important clients in a meeting next week. He just needs to know what you already know merely by looking at the database and the logs. It's not personal, but right now, you are his only source of information and that right there is why he wants to talk even in a time like this.

The second reason why a lot of managers go into the Hyperactive-Talk-Mode and sometimes even Micro-Management mode in disasters is because they are paranoid and they lack tools to measure how bad things really are.  It's almost like - "Look, you said things are fine! I trusted you! Now look what happened!" - Again, it's not personal. He means no harm. Its just a normal, natural, lizard brain reaction that you need to understand, respect and address. And the only way you are going to address it, is by being in these meetings, by being honest, by being completely open and by answering ALL his questions with a level of confidence.

If you want to learn how to do that, learn it from the best of the doctors out there. One of them also happens to be a friend. Working on a very minor operation involving my teeth, my doctor suddenly looks at his partner, who is also a doctor and goes "Oops!". I freak out. He smiles. "Don't worry, I slipped a little. We do it all the time. We just don't say it. It's not serious". He laughs. His partner laughs back. And then they gets back to work. That's the kind of insight you get when you are working with kickass doctors. Even when they are being brutally honest. They are able to 1, tell you the truth and 2, tell you with confidence that they know what they are doing and that it's going to be fine (or at-least they are going to try their level best to make it fine).

Another important thing here is because you are going to have too many of these meetings it is HUGELY important that you keep them as short as you possibly and politely can. Convey your message, explain things, give people the confidence that they need and are expecting from you and then get out of the meetings, as quickly as you can. Think of the meetings as the announcements the crew is making as your plane is losing altitude or when your flight is experiencing bad weather.  No announcements mean panic, but announcements are not the only thing the crew needs to be doing. There is a whole lot of additional work that goes on behind the scene. While you need to make sure that while you attend all important meetings and keep people informed about things it is also important that you leave enough time for these other things.

The phone call is where most engineers and software developers go wrong. This is no time to talk! - their brain tells them and they focus on fixing the problem by not picking up the phone, or even worse, doing something stupid like lying about how bad things are. This is where most developers go downright wrong and make the disaster worse.

Where most managers go wrong, is plain old insecurity because of lack of information. Imagine, you are on a plane which is going through turbulent weather and you are buzzing the attendant every five minutes to ask for a personal update on how things are. It sounds stupid, doesn't it? Yet that's what most managers tend to do when they find themselves in the middle of a disaster.

The key in any given disaster, is understanding that you are going to have to do a little bit of talking and explaining. Just how much of it you do is going to decide if you survive the disaster or blow it up completely. Also, it's not just how much talking you do that is important, it's also what you talk about, that is equally important, which creates a seamless transition to the next post.

Read On.

posted on Saturday, December 18, 2010 8:30:00 PM UTC by Rajiv Popat  #    Comments [1]