Tuesday, June 09, 2009

Learned optimism, because failure is a choice

The wise man in the storm prays to God, not for safety from danger, but deliverance from fear.”
Ralph Waldo Emerson


In the continuation of Layoffs, sheep, shepherds, and wolves, I wanted to write about overcoming failure and fear.

Recently I was faced with the decision to move to an easier assignment, with fewer external dependencies, no team to lead, a more forgiving range of time zones, and in a new technology field where I would have more freedom of action.

Against initial instinct, I chose to renew my commitment to a project anyone would consider far more challenging. I refused to leave it before I got all my lessons right, knowing the opportunity would most likely never materialize again.

This entry is largely reflective, but if your time is right, read on…

Optimism is a skill, not a trait

Most people are born with a fantastic gift: the gift of being able to explore and grow their potential until they decide to quit. Left unchecked, the human spirit is boundless. Yet, many people wake up one day convinced they have gone as far as they could, accepting a life of fear from losing what little they cherish.

We are born without fear, without failure, and at the same time, vulnerable to both. This fragility is ne of our greatest strengths: the ability to learn from our failures and try again another day with our new experiences. Fear is the anticipation of repeat failure, and ultimately the choice to renounce our innate abilities to adapt.

As people go through the cycle of trying, failing, learning, and trying again, they develop a sense of what I call “learned optimism”. Learned optimism is a state of mind where you don’t just intuitively believe things will be all right, it is when you consciously *know* they will be all right because you know you were born with the tools to try until you succeed.

Some people are born optimistic, some are born brave, but learned optimism always carries the day. Learned optimism is a skill rooted in reason and practice, it gives you the certainty you cannot fail until you allow yourself to fail.

Wandering through life and the two questions

Encouraging a friend through a rough patch is an act of kindness, but encouragement alone cannot make up for a life lived as a succession of moments. As a true friend, I prefer to always ask:

Do you really want to do this?”.

If the answer is “yes”, then your friend is in the more serious ground of commitment to choice, by which time you can offer the second question:

Is it important enough that you will keep trying and improving at it until you succeed?”

You would be surprised at how few of our goals can be answered with the double “yes” to these questions. Some people find their true goals early in life; some stumble for longer; most never find what they never bothered to look for, living what Thoreau described as a life of quiet desperation.

Before we get into the long road of finding our life goals, the smaller tasks and projects at hand are good practice and should always pass the test of these two questions.

Deadlines are tools, not constraints

The certainty of success is premised on abundant time for repeat attempts at trial and error. Human lifespan is generally long enough to develop learned optimism, projects in our career are generally not.

Whereas we can try and complete a project within a deadline, fail, improve our planning skills, and try again, we must keep in mind the larger point of whether meeting deadlines is merely a skill – albeit a useful one - or a goal in life.

Skill or goal, practicing delivery within a deadline is a great exercise. There are few things that can accelerate the development of learned optimism as the whirlwind of impending deadlines and the knowledge that our effort will be either used by a paying customer or abandoned by the wayside for lack of interest.

I also have to keep reminding myself to practice keeping my serenity over time, though it may take a few iterations to deliver a task on time and with poise. Although careers and companies are man-made and alien to our nature, I would never dismiss them as learning tools: causality and time are also part of the universe for a reason, one that transcends the theme of this posting.

The road to certainty

For younger generations, my first advice is to become extremely good at something and watch your reactions to the learning process.

No matter how small a goal, developing certainty has a transformational effect that can affect other aspects of our lives. Once you excel at something and develop a sense of assured success, you can excel at anything you choose to.

The second unsolicited bit of advice is that until you find your goals, stay close to people who have found theirs.

People who have found their true goals are committed to their choices, knowledgeable, and invariably passionate. At some point in their lives, they chose to make the right choices, they chose to not give in to failure, they chose to learn from it and to keep on trying.

Learning and practice need good mentors and you cannot ask for better role models.

Tuesday, March 31, 2009

Layoffs, sheep, shepherds, and wolves

“And if you take a sheep and put it up at the timberline at night when the wind is roaring, that sheep will be panicked half to death and will call and call until the shepherd comes, or comes the wolf.”

Robert Pirsig, in Zen and the Art of Motorcycle Maintenance

Choice over fear

I started writing this entry months ago, under the crushing pressure of emails from friends and colleagues telling me about their layoffs.

In the spirit of true empathy, I assessed the what-if possibilities of not having a regular paying job, and each scenario felt more overwhelming than the previous. I also felt depressed for not being able to offer any material help to my fellow colleagues, not owning a company that employs people, not holding a position where I could influence the creation of a job.

Along the way, I benefited from inspiring emails from others looking ahead with optimism and hope. Not the least, I was inspired by my brother’s recent choice to abandon a cushy management job at a large construction firm to start his own successful business.

Once the jumble of thoughts settled down a few days ago, the imagined experiences of my what-if assessment sunk in too deep.

Starting last week, I chose to see the world in a different way, a world where either we live waiting in fear or we live acting on the basis of technique and choice.

I chose to see how much control I have over finding a less vulnerable position in the world, over how much control I have over my reaction to negative events, and how much personal investment these choices will take.

Clarity displaced fear.

A world of sheep, wolves, and shepherds

I now see our world as a collective of sheep, wolves, and shepherds. Once you fully realize that separation, you can never accept facing the world as a sheep.

Behaving like a sheep is about making as few choices as possible, settling into a stable situation and hoping things will not change. Sheep intentionally put their fates at hand of shepherds and unknowingly at the mercy of wolves. Time after time, sheep seek seemingly safe settings and stay there until the inexorable dangers of political and economical instability surround them again. Sheep regard being outside a wolf’s stomach to be a good life, and being inside the wolf’s stomach the result of random and cruel chance.

A shepherd lives a life of making choices for himself and for others, a life of little rest and great responsibility. Shepherds are far fewer in number than sheep and looked upon when the smell of danger spreads in the air. A shepherd may falter under impossible odds, watching a wolf snatch the stray sheep while protecting the main group from a larger pack of wolves, but a good shepherd never looks back. A great shepherd never blames the odds.

Wolves also thrive in making choices, but about making choices about their own lives, not taking great interest on shepherd and sheep other than for the occasional feeding.

Choice…

At the root of sheepish thought is the belief that we cannot influence the events around us. That is partly true, but we do have control over our preparedness to face those events.

The correct thought is “I refuse to be eaten helpless in the middle of the night. I will take charge of my immediate surroundings to reduce the influence of negative events in my life.”

You see two clear choices in the corrected thought: the refusal to stay helpless and the choice to take charge of the surroundings. What you may miss is that they are both empty in absence of technique; it is easy to shake a fist towards the sky, it is much harder to raise the rest of the body out of shifting sand.

There is also the deep realization that it is a whole different world to keep an entire flock out of shifting sand. Each person who oversees a business, whether a line manager, an executive, or a small business owner, is a shepherd. It is easy to ignore the crushing pressure these times bring upon the shepherds, more so amidst the carefully chosen “golden-parachute” sound bytes picked by what passes for mass news nowadays. The exception is not the rule.

…and technique

Choice is at reach for all of us, but it does not happen overnight. The power of choice is multiplied by the choices at hand. If we wait until disaster hits to start making choices, we may find out that there are only bad and worse choices. When all alternatives look bad, we are likely to feel paralyzed. Depending on how despairing the situation, we may even wish for the wolf to come out of the woods and end our misery.

In my mind, these are the most important choices any person can make today:

  1. Identify the one thing most likely to affect them the most. One can always get struck by lightning while running from his car to the mall entrance, but that is the realm of wills and life insurance. The point here is “most likely”.
  2. Determine how many plausible alternatives you want to have if that event occurs. For instance, do you want to have a network of hundreds of followers on Twitter, have a standing invitation to join a consultancy company, be an expert on a hot technology and have standing job offers on your email inbox, become a big-circuit motivational speaker? These are all things that take lot of investment and happen on their own time. The point here is “plausible”.
  3. Start working on developing those alternatives ahead of time. Many of them may take years to materialize, and here is a plug from this believer in the power of web 2.0 social networks: developing any kind of meaningful network takes at least two or three years.

I have seen many a people losing important time in the period after receiving their job loss notice polishing resumes, reestablishing their network of contacts, assessing the possibility of seeking a a new job or starting a consultancy, and pondering over many other important decisions. At best, the unpreparedness force uninformed choices, at worst it translates into months without a source of income.

The silver-lining: a renewed sense of urgency

Amidst all crisis and sense of doom, the one positive aspect I see is an opening for a renewed sense of urgency. It used to be that a botched project was followed by the opportunity to try it anew with the next big project. “It is only a job” was the theme song for lax execution and the launch of shoddy products.

My favorite example is the GM of the 90s and early 2000s, where the widespread lack of care with production could be seen in the news and at the dealership lots: union workers making three times the salary of peers working for competitors, dated pushrod engines, Pontiac Aztecs, misaligned body panels, visible mold lines in the interior plastics, you name it. It was not until Bob Lutz came aboard in 2002 that serious improvement started to be seen, to the point where I even put some of their cars on my window-shopping list. The tragedy was that all those years of carelessness and inaction took their toll and made GM’s position untenable when the recession hit.

I think that that kind of example and the lessons that go with it are about to permeate corporate America: A botched project will not be followed by another chance, but by a round of layoffs.

There is a clear opportunity for those who really care about their customers, and ultimately their jobs and businesses, to carry that flag and instill that sense of urgency in the workplace pushing for better requirement definitions, better market validation, better execution, better customer support, and that extra mile on end-user satisfaction.

Economies may stall or even shrink, but executives who manage to reshape their workforce and employees who embrace the new mindset will learn quickly that the size of the slice matters more than the size of the pie.

As sheep and shepherd have always known, collective preparedness is the ultimate safeguard.

Thursday, January 15, 2009

Barack Obama, on management

Political opinions aside, Barack Obama and his team ran one of the most efficient, most successful, large scale political campaigns in recent history. An accomplished manager himself, he offered his views on management in a recent interview on Time Magazine:

"I don't think there's some magic trick here. I think I've got a good nose for talent, so I hire really good people. And I've got a pretty healthy ego, so I'm not scared of hiring the smartest people, even when they're smarter than me. And I have a low tolerance of nonsense and turf battles and game-playing, and I send that message very clearly. And so over time, I think, people start trusting each other, and they stay focused on mission, as opposed to personal ambition or grievance. If you've got really smart people who are all focused on the same mission, then usually you can get some things done."

Sunday, December 28, 2008

Two 19th century truths about selling your ideas

From two Frenchmen who lived in the 19th century comes

"...everything has to come in its own time in order to win its way. A solution given lightly, prior to the complete elucidation of the question, would be a retarding force, rather than a means to advancement."

Allan Kardec (1804-1869)

and

"An invasion of armies can be resisted, but not an idea whose time has come."

Victor Hugo (1802-1885)

Thursday, October 23, 2008

Treating Test-Driven Development as a matter of technique

At the heart of good development is good programming and at the heart of good programming is the ability to think through how things are being done and what needs to be achieved.

Thinking through how things are done is a lower-level concern, involving the nuts and bolts of how the function integrates with the surrounding code, mostly around the area of exception handling, mapping of functional domain to the programming language, and usage of the correct system calls.

Thinking through what needs to be achieved is a higher-level concern, presumably starting from some sort of requirements specification, which governs the test inputs and result expectations from those tests.

Once the “what” and the “how” are combined with a certain skill, one should have a product that does what a user expects without exploding while at it.

Test-driven development (TDD) is an ideal solution to the “what” and a significant help to the “how”. Writing tests first inevitably forces you to understand what needs to be achieved, model it in terms of method calls, and to define the test inputs and outputs. Less churn in the definition of what methods are supposed to do is translated in less churn modifying the code implementation to match the method definitions.

Technique versus choice

Despite significant literature on the subject, TDD is often approached as a matter of personal choice. The argument invariably lands on the ditch of unproven results and how teams have succeeded in developing products using a write-first-test-later approach. For TDD supporters, here are a couple of arguments that should help tow the discussion out of the ditch and give it a second chance.

The cost argument against TDD is rooted at the difficulty to move fast while coding volatile areas of the system, invariably surrounded by statements such “this code will change next week, and it will cost us more to fix the tests”. The problem is, while this argument is perfectly valid at discrete points in time, it is prone to misinterpret the cause of volatility as intrinsic to the system rather than to the phase of development.  Absent a formal understanding of the software development phases, technique is replaced by individual judgment as to whether TDD is right for the project, rather than as to whether it is right for the phase of the project.

IRUP to the rescue

In general, we all acknowledge that a product under development matures over its course, with the nature of changes being smaller and smaller over time. A quick glance at the IRUP map of disciplines and phases moves the discussion from general acknowledgement to specifics, shining a revealing light – more like a hand-draw red rectangle - on where TDD is harmful and where it is necessary:

image

Elaboration, when coding helps design…

During the elaboration phase, while the analysis and design work is reaching its peak, it is counterproductive to try and write tests first. During this phase, the entire team is after the “unknowns”, such as whether whether a design choice can scale or whether a new technology supports certain features. There is little point in hardening the quality of the code used for these exercises while concepts are being vetted.

Think of most of the code built during this phase as the prototype that should be thrown away once the key design concepts are validated or proven.

Construction, when coding follows design…

During the construction phase, on the other hand, the bigger decisions were already made and the design will be moved from high-level to actual code. Not doing TDD has the more obvious effect of risking miscalculating the time required to automate the unit tests, often followed by the schedule-constrained decision of skipping test automation altogether.

The less obvious, and far more nefarious, consequence of writing the code before tests is that it inverts the flow of design from the “business modeling”, “requirements”, “analysis & design” chain. Up to that point, the system design is being driven from end-user needs to final product, but when developers skip TDD during the construction phase, the flow goes from code to end-user, premised on the assumption that the developer can short-circuit his own design decisions to match the original design direction.

For a skilled developer, the result is just additional work in the form of “sculpting” the results, iterating over what should be done (the original design) and the output of what is being coded. For a less skilled developer, the results is often a mismatch between the code and the original design.

There are are individuals who can do this in a single iteration, but usually this happens when the developer is both designer and programmer for the system.

As with any framework, IRUP is not a golden rule, but its matrix of phases and disciplines offers a temporal and conceptual separation that supports better decisions as to when and where TDD should be followed. In the end, it should still be a matter of choice, but not a philosophical one.

Monday, September 29, 2008

Unionized product development

imageThis is not what you are thinking, I don’t want to form a union. In fact I wouldn’t want to join an union even if someone bothered to form one.

However, in a large organization, whatever power is not lost to organized labor is often lost to disorganized operations, diluted through excessive, and often unnecessary, divisions of power through the ranks.

Separating function by excellence and capacity

I think specialization is a wonderful thing. Focusing on a particular skill can transform a merely competent engineer into a good engineer, if not a great one. If someone is excellent at, let’s say, database development, and I mean walking-over-the-water excellent, it is counter-productive to try and make that person spend part of his time dragging himself through product planning meetings. Assigning database development to him just makes sense. That is the “excellence” criteria.

I also have no problem with delegation of responsibility spawning from an overworked function, where a single person clearly cannot execute both tasks. While separating the function, I tend to prefer *delegating* the function from the overworked person, rather than *separating” the function, unless the receiver of the new function is clearly excellent at it and can operate virtually independently. That is my “capacity” criteria.

Favoring delegation over separation tends to favor a democratic decision process over a distributed one. In a democratic process, one or few people make decisions after consulting subject matter specialists. In a distributed process, there are endless meetings because no one has the skills to know what should be done, but plenty of other ‘deciders’ to scatter the blame when the inevitable failure ensues. There should be no confusion between a centralized decision process that is transparent to many with a distributed process carried out by many.

Arbitrary separation, or “the unionization”

A distributed (or diluted) decision power is often the result of arbitrary division of responsibilities, where the functions are separated without meeting either the “excellence” or the “capacity” criteria. It is interesting to observe how otherwise wilful colleagues suddenly fall in “union” mode when placed in a team setting like this, avoiding making a decision they are clearly capable of because the responsibility owner is the one who is assigned to make it. Let it fester, and a team can be thrown back to the hellish days of GM assembly lines being shut down for a day because the guy who screwed the lugs of the left-front wheel called in sick.

When you need a better player, not a new one

If you ever watched a rally race (highly entertaining,) you observed an optimal separation of function: one person drives, the other navigates. Navigation says “hard left”, driver turns left…hard.

Now imagine that sometimes the driver misses a shift or two. Is it better to assign extra practice to the driver or move the navigator to the backseat, install a clutch pedal on the passenger side, and introduce a secondary driver that can focus only on shifting gears? It shouldn’t take more than a rollover or two before someone can answer that question.

What if I have many players, but not excellent ones?

In my experience, a team leader should make a point of making each of them excellent at something. If you have someone inexperienced, choose something small and make him excellent at it. And by “make him” excellent, I don’t mean assigning the responsibility for something and hoping experience will make up for it. What I really mean is “train, orient, and demand results”, which implies you mastered the skill yourself or have someone onboard who has. Don’t think “coaching” here, coaching is but a technique and a wrong one depending on the occasion. As a colleague and great team leader once wrote: “don’t be a team hugger, be a team leader”.

Think drill sergeant minus the cursing. Once your team members start to fall in one area of excellence or another, you should need less team members, be able to cut down on your communication matrix, and focus on delivering results versus keeping the illusion of collaboration through communication chatter. The team members you must lose will have marketable skills to bank on, not to mention that while learning to be excellent at something they will also have learned how to become excellent at anything they choose.

I used to be upset about training someone just to see him taken away to work on another project, but come to think of it, after shipping a successful product, the next best, and more frequent, accomplishment in my career has been the drilling training of green new hires that were later disputed by multiple teams.

For managers, I think this means approaching task assignment with a tighter grip on the deep technical skills available on the team and the skills required to complete the project, focusing on keeping the team as small as possible. Someone with excellent social skills may not always be the better choice over that zOS-expert-perennial-jerk in “B” isle; a jerk can always be told to be less like himself for three months, the smiley face cannot be urged to absorb years of experience before the project begins. The alternative? Forming a little “team-union” of two.

Thursday, September 18, 2008

Passion for the business or for the craft?

imageI used to be an avid soccer fan many years ago, an affection punctuated by the rivalry between two local teams in my home state. That rivalry extended in a good natured way to the relationship between my father and I, each siding with one of the opposing teams.

His team, the Corinthians Sports Club - for some obscure reason I must cheerfully point out to be in terrible shape nowadays - used to have this goalkeeper, Ronaldo, which only his team fans could stand. They adored the guy, a young kid who progressed through the junior divisions all the way to the professional team.

He was not only good, but very passionate about the club, as we call the privately owned companies that control the soccer teams in Brazil; in the field, he would angrily chastise anyone who did not carry their weight during practice or, even worse, during official games, when he often verbally assaulted whoever he perceived as a slacker.

At one time, with the bonuses payments lagging a couple of months and the team owners starting to talk about renegotiating some of the salaries, many players started to publicly complain and threaten a strike. The news organizations, ever eager to capitalize on controversy and knowing that Ronaldo would not mince words, asked him about the situation during an interview, to which the answer came in a mixture of reason and his characteristic zealotry:

People are complaining about late bonuses and giving interviews on how they also have to make a living like anyone else. Now you walk to the parking lot and see what they are driving [mentions of expensive brands]…the executives will sort this out, but the players need to understand that there are days when only wearing the Corinthians’s shirt should suffice.

Much later in his career, a couple of years past his best shape , Ronaldo, who vowed to retire playing for the team of his youth, was replaced by a younger goal keeper. With a few more years in him - and with the bills still coming – Ronaldo took on less glamorous stints on smaller teams, ending his career on a melancholic note: wherever he went people knew he was playing for the money and not for his team of choice.

Passion for the business

Ronaldo has proven with his history and rhetoric that performance, passion and compensation are tightly interwoven, if not as cause-and-effect variables, at least as expressions of each other. A high-performer is bound to draw better compensation and develop the kind of passion expressed by Ronaldo, an almost divorced view of work and compensation, not because they are actually divorced, but because after a certain limit compensation alone cannot motivate a high-performer.

I can appreciate Ronaldo, professional player, demanding performance from colleagues in the field, but I didn’t like Ronaldo, loyal shill, exhorting people to wear the team’s shirt as a form of compensation.

I use the above story as a counterpoint to situations where executives demand a passion for the business. My first objection is rather logical, actually all of them are, in that boundless enthusiasm cannot be demanded; maybe fostered, but not demanded. It follows that people who demand a passion for anything often do not understand what it means to be passionate about it.

Too much to love

When the business is just too big to be understood, it is difficult to love it. It doesn’t help matters when the bottom layers are broken down into other layers, further increasing the distance.

And when it is not the distance, it is the confidentiality, and when it is not the confidentiality, it is the business being used to justify practices that even the business’s own mother couldn’t love. But enough of my argument, the business is what is; and that is how I started to define the business: as the part of it I can actually influence.

I tend to focus more on the mission of the two or three layers above me, which narrows it down to people I actually work with and see it in the flesh every other day. To me they are like temporary family: I do as much as I can for them and give them a hard time now and then when I don’t think they are at the top of their game.

With the right alignment of the planets, a mixture of clear speak from line management and working very close to the people who will actually use my work to help their business, I am very enthusiastic about it.

Passion for the craft

Compensation? I like to see it as a form of sponsorship, where I am freed to do what I really like on a regular basis without being distracted by checks bouncing at the end of the month. My colleagues tend to appreciate how I do things and the things I can still do for them, not caring much for the teams I have joined in the past. The difference is subtle: I follow a tangent on Ronaldo’s model, letting the work be my own compensation with the caveat that *actual* compensation must stay above a level where I do not have to worry excessively about it.

This would be my unsolicited bit of advice to any executive team: promote a passion for the craft rather than demanding a passion for the business. That is empowerment over chastisement. People who understand their craft are more likely to be enthusiastic about it, when people discover they can learn something new and become good at it, they are inspired; with any luck, even passionate.

When people are enthusiastic about what they do, and that boundless enthusiasm is backed by technique rather than unchecked madness, customers tend to love it too. And when that feeling of elation comes out of succeeding at a task or beating a competitor, chalk one up to a job well planed and well done, not for passion for the business.

Ronaldo, for all his good intentions, mistook sponsorship for loyalty and betrayed what should have been love for the sport, not for his employer.