Book: How Will You Measure Your Life?


“How Will You Measure Your Life?” by Clayton M. Christensen

The book club at work are reading this book. So, I figured that I should give it a read as well. Given that the author is a Harvard Business School professor, the writing certainly reminded me of cases I read in business school. Although the book started out talking about personal happiness, there are a lot of examples and advice on how to manage a business or an organization. Mr. Christensen do explain how these business examples can also apply at personal level to improve one’s own happiness. I was delighted to see a professor’s name referenced, which was Morgan McCall and I took his leadership class. :)

Here are a few highlights:

  • “Good theory can help us categorize, explain, and, most important, predict.”
  • “People often think that the best way to predict the future is by collecting as much data as possible before making a decision. But this is like driving a car looking only at the rearview mirror–because data is only available about the past.”
  • “The only way to be truly satisfied is to do what you believe is great work. And the only way to do great work is to love what you do. If you haven’t found it yet, keep looking. Don’t settle. As with all matters of heart, you’ll know when you find it.” –Steve Jobs
  • Motivation theory: “It acknowledges that you can pay people to want what you want–over and over again. But incentives are not the same as motivation. True motivation is getting people to do something because they want to do it. This type of motivation continues, in good times and in bad.”
  • “On one side of the equation, there are the elements of work that, if not done right, will cause us to be dissatisfied. These are called hygiene factors. Hygiene factors are things like status, compensation, job security, work conditions, company policies, and supervisory practices.”
  • “Motivation factors include challenging work, recognition, responsibility, and personal growth. Feelings that you are making a meaningful contribution to work arise from intrinsic conditions of the work itself.”
  • “I had thought the destination was what was important, but it turned out it was the journey.”
  • “I concluded, if you want to help other people, be a manager. If done well, management is among the most noble professions. You are in a position where you have eight or ten hours every day from every person who works for you. You have the opportunity to frame each person’s work so that, at the end of every day, your employees will go home feeling like Diana felt on her good day: living a life filled with motivators.”
  • “For many of us, one of the easiest mistakes to make is to focus on trying to over-satisfy the tangible trappings of professional success in the mistaken belief that those things will make us happy. Better salaries. A more prestigious title. A nicer office. They are, after all, what our friends and family see as signs that we have ‘made it’ professionally. But as soon as you find yourself focusing on the tangible aspects of your job, you are at risk of becoming like some of my classmates, chasing a mirage. the next pay raise, you think, will be the one that finally makes you happy. It’s a hopeless quest.”
  • “The theory of motivation suggests you need to ask yourself a different set of questions than most of us are used to asking. Is this work meaningful to me? Is this job going to give me a chance to develop? Am I going to learn new things? Will I have an opportunity for recognition and achievement? Am I going to be given responsibility? These are things that will truly motivate you. Once you get this right, the more measurable aspects of your job will fade in importance.”
  • Options for strategy: “The first source is anticipated opportunities–the opportunities that you can see and choose to pursue… When you put in place a plan focused on these anticipated opportunities, you are pursuing a deliberate strategy. The second source of option is unanticipated–usually a cocktail of problems and opportunities that emerges while you are trying to implement the deliberate plan or strategy that you have decided upon.”
  • “If you have found an outlet in your career that provides both the requisite hygiene factors and motivators, then a deliberate approach makes sense.”
  • “But if you haven’t reached the point of finding a career that does this for you, then, like a new company finding its way, you need to be emergent. This is another way of saying that if you are in these circumstances, experiment in life. As you learn from each experience, adjust. Then iterate quickly. keep going through this process until your strategy begins to click.”
  • “Strategy almost always emerges from a combination of deliberated and unanticipated opportunities. What’s important is to get out there and try stuff until you learn where your talents, interests, and priorities begin to pay off. When you find out what really works for you, then it’s time to flip from an emergent strategy to a deliberate one.”
  • “In the words of Andy Grove: ‘To understand a company’s strategy, look at what they actually do rather than what they say they will do.'”
  • “successful companies don’t succeed because they have the right strategy at the beginning; but rather, because they have money left over after the original strategy fails, so that they can pivot and try another approach.”
  • “When the winning strategy is not yet clear in the initial stage of a new business, good money from investors needs to be patient for growth but impatient for profit. It demands that a new company figures out a viable strategy as fast as and with as little investment as possible–so that the entrepreneurs don’t spend a lot of money in pursuit of the wrong strategy.”
  • “once a viable strategy has been found, investors need to change what they seek–they should become impatient for growth and patient for profit. Once a profitable and viable way forward has been discovered–success now depends on scaling out this model.”
  • “Many products fail because companies develop them from the wrong perspective. Companies focus too much on what they want to sell their customers, rather than what those customers really need. What’s missing is empathy: a deep understanding of what problems customers are trying to solve. The same is true on our relationships: we go into them thinking about what we want rather than what is important to the other person.”
  • “the path to happiness is about finding someone who you want to make happy, someone whose happiness is worth devoting yourself to.”
  • “It’s natural to want the people you love to be happy. What can often be difficult is understanding what your  role is in that. Thinking about your relationships from the perspective of the job to be done is the best way to understand what is important to the people who mean the most to you. It allows you to develop true empathy. Asking yourself ‘What job does my spouse most need me to do?’ give you the ability to think about it in the right unit of analysis.”
  • “You have to do that job. You’ll have to devote your time and energy to the effort, be willing to suppress your own priorities and desires, and focus on doing what is required to make the other person happy. Nor should we be timid in giving our children and our spouses the same opportunities to give of themselves to others. You might think this approach would actually cause resentment in relationships because one person is so clearly giving up something for the other. But I have found that it has the opposite effect. In sacrificing for something worthwhile, you deeply strengthen your commitment to it.”
  • Outsourcing: “The theory of capabilities gives companies the framework to determine when outsourcing makes sense, and when it does not. There are two important considerations. First, you must take a dynamic view of your suppliers’ capabilities. Assume that they can and will change. You should not focus on what the suppliers are doing now, but, rather, focus on what they are striving to be able to do in the future. Second, and most critical of all: figure out what capabilities you will need to succeed in the future. These must stay in-house–otherwise, you are handing over the future of your business.”
  • “children will learn when they are ready to learn, not when we’re ready to teach them.”
  • “Culture is a way of working together toward common goals that have been followed so frequently and so successfully that people don’t even think about trying to do things another way.”
  • “A culture is the unique combination of processes and priorities within an organization.”

Book: Becoming A Technical Leader

Becoming a Technical Leader “Becoming A Technical Leader: An Organic Problem-solving Approach” by Gerald M. Weinberg

This is another book published over 20 years ago. There are still some useful information. Here are a few highlights:

“Leadership is the process of creating an environment in which people become empowered.”

  • “Instead of leading people, as in the threat/reward model, organic leadership leads the process. Leading the process is responsive to people, giving them choices and leaving them in control.”
  • MOI model of leadership:
    • “M: motivation–the trophies or trouble, the push or pull that moves the people involved”
    • “O: organization–the existing structure that enables the ideas to be worked through into practice”
    • “I: ideas or innovation–the seeds, the image of what will become”
  • “Leaders are leaders of change — change in other people, change in working groups, and change in organization. Above all, leaders are leaders of change in themselves.”
  • Learning Curve: “There are plateaus, but you don’t really leap, you climb. In order to climb, you must leave the sure footing, letting go of what you already do well and possibly slipping downward into a ravine. If you never let go of what you already do well, you may continue to make steady progress, but you’ll never get off the plateau.”


“as leaders grow older, they often add a second type of leadership to their repertoire. Instead of simply charging out at the head of the troops, they organize the troops so that when the time comes for battle, they’ll charge off by themselves.”

  • “No-Problem Syndrome”: “a condition in which the ears are not properly connected to the brain. The sounds enter all rights, but they trigger a stereotyped response that has nothing to do with their meaning. One person describes a terribly vexing problem, but the other merely responds with a callous, ‘No problem.'”
    1. “You describe your very difficult problem.”
    2. “The respondent says, ‘No problem!'”
    3. “You say, ‘Oh, that’s terrific! could you please describe my problem that you’re going to solve?'”
    4. “If the respondent then describes your problem, even erroneously, that’s not a case of NPS but only a case of Enthusiasm.”
    5. “If the respondent describes a proposed solution to your problem rather than the problem itself, then sadly it’s NPS. The kindest thing you can do for all concerned is smile and walk briskly to the nearest exist.”
  • “According to the MOI theory, you’ll need three things to succeed at transforming yourself into a more effective problem-solving leader: motivation, organization, and ideas”
  • “copulation: putting together two ideas to form a new one that’s better than either of its parents.”
  • “The first big lesson from studying careers is this: It’s not the event that matters, but your reaction to the event”
  • “Everybody has failures, if only because their success leads them to fail.”
  • “People don’t become leaders because they never fail. They become leaders because of the way they react to failure.”
  • “The first great obstacle to motivation is a different kind of blindness: the inability to see yourself as others see you…. We simply have no reliable way of anticipating the reactions of other people.”
  • “Incongruent communication is deadly to motivation, which depends on the free and accurate flow of information about how we respond to one another.”
  • “My gift-giving technique can almost be reduced to a formula: Tell them what you perceive, how you feel about what you perceive, and if possible how you feel about that feeling.”
  • “If the job isn’t highly technical, the leader need not be competent, but can lead by fear.”
  • “People with strong technical backgrounds can convert any task into a technical task, thus avoiding work they don’t want to do.”
  • “Leaders who don’t care about people don’t have anyone to lead, unless their followers don’t have a choice.”
  • “No amount of caring for people will hold your audience if you have nothing to offer but pretend you do.”
  • “Task-oriented leaders tend to overestimate their own accomplishments”
  • “Very little work we do is really so important that it justifies sacrificing the future possibilities of the people doing the work.”
  • “When the work is complex, no leader can be absolutely sure that plans won’t ‘gang aft agley.'”
  • “In a complex environment, even the most task-oriented leader is forced to put people first, or the task won’t get done.”
  • “To be a successful problem-solving leader, you must keep everybody’s humanness at the forefront.”
  • “If you are a leader, the people are your work. There is no other work worth doing.”
  • Helping
    • “Wanting to help people may be a noble motive but that doesn’t make it any easier.”
    • “If people don’t want your help, you’ll never succeed in helping them, no matter how smart or wonderful you are.”
    • “Effective help can only start with mutual agreement on a clear definition of the problem.”
    • “Always check whether they want your help.”
    • “Even when people agree that they want your help, that agreement is not usually a lifetime contract.”
    • “People who want to help other people generally expect to get something for themselves, though they may not be aware of it.”
    • “Most people understand that helpers are selfish, but also thing they are exceptions to the rule.”
    • “Attempts to help are often interpreted as attempts to interfere.”
    • “The ability to love others–and thus to help others, and thus to lead others–starts with the ability to love yourself.”
  • “If your whole team consists of novice programmers, your expertise will give you considerable power; but if the other team members are also experts, they will attach less importance to your technical expertise. In that case, they’ll pay more attention to organizational power, like the power to acquire an extra terminal, to extend the schedule, or to capture a more interesting assignment.”
  • “If you don’t know what you want, power is as useless to you as a Ferrari to a blind driver. You might accidentally steer along the track, but you’ll probably crash somewhere.”
  • “So, when you see a chance for power, ask yourself what you want power for. If you don’t know that, you’re sure to falter and lose your way when your old power starts to crumble, as it must before your new power starts to grow.”
  • Maturity
    • “be clear when they deal with others”
    • “be aware of their own thoughts and feelings.”
    • “be able to see and hear what is outside themselves.”
    • “behave toward other people as separate from themselves and unique.”
    • “treat differentness as an opportunity to learn and explore rather than as a threat or a signal for conflict.”
    • “deal with persons and situations in their context, in terms of how it is rather than how they wish it were or expect it to be.”
    • “accept responsibility for what they feel, think, hear, and see, rather than denying it or attributing it to others.”
    • “have open techniques for giving, receiving, and checking meaning with others.”
    • “the first step in creating a problem-solving environment is to work on your own maturity, but this can’t be accomplished through gimmicks.”
  • “power conversion: You use power you have in one form to gain power in some other form you want more.”
  • “They’re all doing the best they can, under the circumstances. If I don’t think they are doing the best they can, then I don’t understand the circumstances.”
  • “With new powers comes the responsibility to learn new ways to use those powers. Paradoxically, the greater the power you have, the harder it becomes to do what you have to do to learn those new ways.”
  • “In the real world, you shouldn’t get graded on your job by adding up all the parts, but by multiplying.”
  • “The person at the top makes the rules, which is another way of saying, breaks the old rules. Cowardly conformists don’t make it to the top, but then neither do blind rebels.”
  • “By and large, technical workers tend to be stronger on the planning side than the personality side. They often complain that they know how things should be run, if they could only get someone to listen. That’s why computer programmers are so happy working with their machines: Personality doesn’t influence computers.
    At the higher levels of management, planning strengths also count heavily, so computer programmers might make terrific top executive, if only they had the personality strengths to get them through the intermediate ranks. Mostly, though, they just get shoved out the door.”
  • “By practicing many small achievements, I learn how to deal with the unfamiliar feelings that might hamper me when I try for some big achievement.”
  • “Don’t redo work you’ve assigned to others. When you do, you pay several times for the same work: first with the time to explain it to them, then with the time to take it back without hurting their feelings (which really won’t work), then the time to repair any damage they’d done, and finally the time to do it yourself… I’ve finally learned that you must let them make mistakes. It’s part of the price you pay, and it’s more efficient in the long run.”
  • “Avoid trivial technical arguments to prove your technical superiority. ‘As your career advances,’ Dirk said, ‘you have to let go of certain things.'”
  • “Choose your own priorities and don’t wait for a crisis to organize your activities.”
  • “Pay attention to what you do when there’s nothing to do.”
  • “Listen to what other people have already learned.”
  • “Let other people show you how smart they are.”
  • “Some people in my support system want me to stay the same; these I call my Conservatives. Others want me to change; these are my Radicals.”
  • “Change in your support system are seldom painless, but if you intend to grow, you cannot avoid some pain. Several times in my life, I’ve had a particularly wonderful relationship that I wanted to freeze, so it would never change. Each time I did that, I killed the relationship: The best relationships have been the ones with people who wanted both of us to grow, even if it was sometimes difficult.”
  • “The paradox of problem-solving leadership is that you have to change in order to remain the same.”

Hiring for potential, Not Just Experience

interviewClaudio Fernández-Aráoz, senior adviser at Egon Zehnder, and author of the new book, It’s Not the How or the What but the Who, explains how to gauge potential when evaluating job candidates. In this video, he explains that the hallmarks of potential are motivation, curiosity, insight, engagement, and determination. Here is the link to the video:

Book: “Dynamics of Software Development”

Image “Dynamics of Software Development” by Jim McCarthy

Although this book published almost 20 years ago, it has some timeless rules that are still applicable today. Here are a few lines from the book:

  • “If the leader can then resonate with the team’s complex emotional state–identify with it, articulate it, and give the whole constellation of feeling and thought a visible, concrete reality in his or her own personal voice or gesture–the boundaries among the individual team members and between the team members and the leader will collapse.”
  • “The truth is hard to take, challenges your character, but whether the truth is offered by someone else or you discover it independently, you have to listen to it eventually… Not only must you listen to the truth, but you must broadcast it to the rest of the team. And the medium for transmitting truth among humans, like it or not, is emotion.”
  • “not to slow the pace of change, or to create more stability; but to get good at change, at managing technology in motion.”
  • “you are not going to get away with many more than two developers for every one QA person”
  • “If a balanced group of people are mutually accountable for all aspects of design, development, debugging, QA, shipping, and so on, they will devise ways to share critical observations with one another. Because they are accountable, if they perceive it, they own it. They must pass the perception to the rest of the team.”
  • “leadership in software development require a high degree of sensitivity to the human nature of the enterprise, an awareness of the underlying drives and emotions that determine the team’s behavior.”
  • “if you are having a hard time understanding something about the team, you can look to the software. If the team and the software both tell you the same thing, you can act on it with some degree of confidence. Conversely, if the software hasn’t reach the desired state, the way to fix it is to analyze the genesis of the problem in the team.”
  • “Freedom is the cornerstone of empowerment, freedom to develop and apply judgement, freedom to think and say what needs thinking and saying, freedom to take risks without extraneously punitive consequences.”
  • “Empowerment is the result of teaching and learning, not neglect and anarchy.”
  • “invest significantly in paradigm-shifting features… Once you make a breakthrough in the paradigm arena, your competitor will be forced back to the drawing board, even if he or she is momentarily ahead in the feature shoot-out.”
  • “Shipping is the hardest thing to do. If you’re better at shipping than y our competitor, you’re likely to be better than y our competitor at virtually everything. Timely, frequent shipping is the manifestation of well-being on a software development team.”
  • “Teaching becomes the primary function of leaders and managers.”
  • “in a product that had unity, each element would be essential to the value of the whole and all essential elements would be there… since everything the customer needed would be there, the customer wouldn’t be tempted to go beyond the present experience, and that since nothing would be there that wasn’t required, the customer’s absorption into the world of the product wouldn’t be disturbed.”
  • “It should be a fundamental dogma that the person who has to do the work should predict the amount of time it will take.” “The ultimate act of disempowerment is to take away the responsibility for the schedule from those who must live by it.”
  • “You need to build schedule meticulously from the bottom up. Each person who has a task to do must own the design and the execution of the task and must be held accountable for its timely achievement. Accountability is the twin of empowerment. The two together can create a reasonable software development plan.”
  • “As a development manager, you’re working with only three things: resource (people and money), features (the product and its quality), and the schedule.” “When considering the possible solution to a schedule shortfall, keep in mind there are only four possible: add time, subtract feature, add resources, or do some combination of the three.”
  • “when something is unknown, the best policy is to state that simple fact, even if the unknown is not knowing when the software will slip.”
  • “The goal on a software development project is not to have the correct plan in advance but to make the right decision every day as things that were unknown become known.”
  • Team interdependence as a motivational factor to deliver software on-time: “The goal is to create a network of self-motivated individual commitments.”
  • “If you have an ‘empowered development team’ deliverables are negotiated among developers, writers, program managers, and testers. ‘Management’ has virtually nothing to say about deliverables.”
  • “Slipping isn’t the problem. Being surprised by slipping is the problem. A slip doesn’t say that the product is too hard to develop. Being surprised by a slip says that the organization is broken. People aren’t thinking. People aren’t talking to each other. People aren’t aware of the global situation.”
  • “A good general rule is that you don’t reset the schedule until the total extent of the slip is known for each component, the cause of the slip are understood, and remedies are in place.”
  • “The biggest mistake I see managers make as they hire people for software development team is that they overvalue a particular technical skill… Much more important than a particular technical skill is a history of relevant skills accumulation.”

Book: “Notes to a Software Team Leader”

Image“Notes to a Software Team Leader” by Roy Osherove is a refreshing read. I like his way of explaining concepts, making them easy to understand. His perspective that “a team leader grows the people in their team” is inspirational. Here are a few lines from the book:

  • “To get out of survival mode, you have to worry about one thing: creating slack time as a standard in your work process.” This is necessary for the team to find the time they need to acquire new skills, knowledge and capabilities to better handle challenges.
  • “To get to the next stage and to become much better than you are, you have to let go of the things you already know. You have to let go of the safety of the current position you’re in, so that you climb to the next level.” The concept of letting go what you already know is a new concept to me.
  •  “What’s under their control? Usually, their time and what they choose to work on are the only things under their administrative control.” This means that an engineer can’t reliably guarantee that s/he will be able to fix a bug by tomorrow. Instead s/he can commit to spending at least 6 hours today and 6 more hours tomorrow to work on fixing the bug.
  • “What are you going to do about it?” This is a question a leader can challenge his/her direct reports to learn how to handle a challenge by him/her self and commit to do something about it.
  • Forces that can influence behavior change: personal ability, personal motivation, social ability, social motivation, environmental ability and environmental motivation. Personal ability and motivation are straight forward. Social ability and motivation covers people around the person that is attempting to make a behavior change. Environmental ability and motivation extends not only the physical environment, also the organizational environment that controls the pay, bonus, etc.
  • “Team leadership is about creating an environment in which everyone can flourish to the best of each person’s ability–including yours.”

AfterShot Pro

It’s great to see that Corel released latest update to support new cameras. However, the new version would not import Canon 5D mark II RAW files correctly. After an import, the images would look blank when it supposed to have image content. Here is a screen capture of what I see:






A look in Corel’s forum led me to a post that suggested to remove the files in cache folder (i.e. .AfterShotPro/cache in Linux). It worked for me! :)

Scale agile to the enterprise with distributed teams

Here is a podcast that might help managers and senior individuals managing multiple projects to better managing resources and planning projects. :)

The Project Management Podcast:Episode 231: Agile, Coffee, Tea and Trains

HowTo: Setup GWT remote logging

I find the official documentation on remote logging wasn’t complete. Here are my notes based on various web sites I visited (here, here, and here). Hope this helps!


You should add the inherits statement below. You should be able to adjust the log level to any of the following: ALL, FINEST, FINER, FINE, CONFIG, INFO, WARNING, SEVERE. I find the popup log console in the browser annoying, so I disabled it.

<inherits name=””/>
<set-property name=”gwt.logging.simpleRemoteHandler” value=”ENABLED” />
<set-property name=”gwt.logging.logLevel” value=”FINEST”/>
<set-property name=”gwt.logging.enabled” value=”TRUE”/>
<set-property name=”gwt.logging.consoleHandler” value=”ENABLED” />
<set-property name=”gwt.logging.popupHandler” value=”DISABLED” />


The following code is necessary for the server to receive log information and redirect to server log file.



Here is the example code you can use in GWT client-side.

import java.util.logging.Level;
import java.util.logging.LogRecord;

SimpleRemoteLogHandler remoteLog = new SimpleRemoteLogHandler();
remoteLog.publish(new LogRecord(Level.INFO, “log message”));

Bluetooth Keyboard

Motorola bluetooth keyboard just arrived today and I am happy to use it to type this blog post. :) The only thing I wished it can do is to support Asian language keyboard layouts with Android.  Besides that, I did notice that the keyboard would cause one of the keys to trigger multiple times when I only pressed the key once. This happens a few times while typing this blog post.