Showing posts with label Google. Show all posts
Showing posts with label Google. Show all posts

Wednesday, June 9, 2010

The stock market thinks Microsoft has just under 4 years left

(I posted this basic analysis at http://news.ycombinator.com/item?id=1417156, which was a discussion of this Newsweek article, and then decided that it was interesting enough to call out for additional attention.)

Those of us who pay attention to finance know that the market tends to be more accurate than any individual person. So sometimes it is worth analyzing what the market is saying about different companies.

If you look at the stock market, it clearly saying that Microsoft's future doesn't look as bright as Google's or Apple's. That's why Microsoft is worth a P/E of about 13, while Google is worth one of 22 and Apple is worth one of 21.

The market projection gets substantially more stark when you subtract current book value to find how much the market values future revenue. (Book value is what all of the company assets would be worth if it was broken up and sold today. For Microsoft this is largely made up of their cash reserve.) Microsoft's market cap is 221 B, their book value is 46 B, and therefore 175 B of their market cap is projected future earnings. Their current profit is 46.28 B/year, and that works out to the market valuing them at their current earnings stream projected over a bit under 4 years.

For Google the equivalent exercise says a market cap of 154 B, and book value of 38 B so 116 B of market cap is projected future earnings. Their current profit is 14.81 B/year, which translates into the market valuing them at their current earnings stream projected over a bit over a decade. (10.4 years.)

For Apple the equivalent exercise says a market cap of 225 B, a book value of 39.4 B for 185.6 B of market cap due to projected future earnings. Their current profit is 17.22 B/year, which translates into their current earnings stream projected over a decade. (10.8 years.)

So the projection that Microsoft is walking over a cliff in a few years while both Google and Apple have a decent future. The market is perfectly aware that a lot changes in 10 years, and so they heavily discount any projections out that far. But the market is more likely to be correct for near events.

Now admittedly I've never liked Microsoft. But this isn't just claimed by some random haters on the Internet. This is the consensus of the stock market, which is based on a lot of informed people putting their money where their mouths are. This is worth thinking about.

(I took all figures for this from http://finance.yahoo.com/q/ks?s=msft, http://finance.yahoo.com/q/ks?s=goog and http://finance.yahoo.com/q/ks?s=aapl. I got book value by multiplying book value / share times shares outstanding.)

Friday, February 5, 2010

Developing on HEAD scales to Google

I have a simple rule of thumb for what I am and am not allowed to say about Google. If I can find it said in some official-looking place from Google, then I think I'm allowed to say it. Otherwise not.

I was therefore very glad to run across this talk by Guido Van Rossum describing his code review tool named Mondrian, put on youtube by Google Tech Talks, and judging from the knowledge level of the audience, delivered to a non-Google audience. Confirming that this was not, in fact, accidentally open, I found an O'Reilly article confirming that it was public.

I therefore feel comfortable talking about anything and everything said in that video. So you can view this as my spin on the material in that video, and if you want the full version without the editorializing, feel free to take an hour and watch the video for the original source.

These days everyone who is competent has agreed that source control is a Good Thing to use. However opinions on how to use it vary widely. One argument in particular that I've seen in multiple organizations is on the value of using multiple branches versus having everyone develop in one branch, which is often called something like MAIN or HEAD. The issues involved are somewhat complex, and not obvious. So let me give a quick overview.

The primary argument for branching is that people can work on different features on different schedules without getting in each other's way. The primary argument for all developing on the same branch is that you discover conflicts immediately when they are easiest to resolve, rather than months later when people have moved on to different things and have lost context for the pieces of code that conflicts. The primary argument against branching is the pain of merging later. (Granted, distributed version control systems like git have done a lot to reduce this pain. But they have not eliminated it.) The primary argument against developing on HEAD is that it requires a constant level of diligence on the part of developers. When any developer can break all developers, you need to be careful in what you check in.

I've just kept this down to the primary arguments because the secondary back and forth arguments get long, involved, and heated. Also what I've described as two ways of working is really two families of working. There are a lot of ways to organizing multiple branches. And there are quite a few useful uses for branches in a software project even if everyone is developing on the same branch. None of this is made easier by the fact that (as with many religious wars) the people involved have imprinted on one way of doing things. That makes them hyper aware of the problems in other approaches, and they don't even notice potential pain points in their own.

Until I came to Google my personal position was that everyone working on HEAD was the best approach as long as your team was small enough that you could make it work. And I vaguely accepted that the pain of branching was a necessary evil on large software projects. Even when the pain reached the point of craziness, I was mostly willing to accept unsupported claims that it is necessary.

Then I came to Google. There are a lot of groups at Google, and they are free to do their own thing. Many do. However most groups develop out of one giant code base on HEAD. And it works as a development model. Google has made it scale.

Guido's talk describes many elements of what makes it scale. The first piece is having good developers. The second piece is an enforced policy of having every single patch go through a code review process before you check anything in. The third piece is a lot of proprietary infrastructure that Google has built up to make things work. And beyond that you have people paying attention to best practices such as consistent style, good unit testing, so on and so forth. (All of which are reinforced in the code review process.)

My opinion after seeing Google has changed. I freely admit that there are real process and tool challenges to making it possible for large teams to develop everything on HEAD and have it scale smoothly. However it is possible. I've seen it work. And, speaking personally, this is my preferred way to work.

Different organizations are different, have different capabilities, different needs, and different goals. Sight unseen I'm not going to tell anyone else that their organization should try to work like Google does. I simply don't have the facts about your situation. But if, like me not that long ago, you've accepted the claim that large development teams have no choice, you now know better.

Now admittedly most people can't go and see this first hand for themselves at Google. But if you want to watch a large successful project developing code to a high standard in this way, I recommend watching clang. And if you want to know more about what kinds of tool support you need to make this work, go listen to Guido. He's smarter than I am, has been doing it longer, and actually built some of the basic tool support for it.

Sunday, January 31, 2010

Things I've learned at Google so far

Well I've been an employee at Google for about a month. So this seems like as good a place to reflect for a moment.

The first thing that I've learned is that internally Google is incredibly open, but externally there is a lot we can't say. I understand and support a lot of the reasons why it is so, but it can be frustrating. There is a lot of really cool technology at Google that people never hear about. The statistics of what Google deals with are astounding. The technology we use to deal with it is amazing. The way we scale is unbelievable. (I really wish I could go back and have a few discussions on software development methodology raising points about what has proven to scale at Google...) One random fact that I know I can say is that computations happen in our data centers with about half the power drawn for what is industry standard. I'm not allowed to say how we do it, but it is a rather amazing testimony to what smart people can accomplish when we put our minds to it.

Moving on, what about Google's culture? I would describe Google's culture as "creative chaos". There was some confusion about where I was supposed to be when I started. This resulted in the following phone call, "Hello?", "Hello Ben, this is Conner (that's my new manager), where are you?" "Mountain View." "Why are you there?" "Because this is where the recruiter said to go." "Good answer! Nice of them to tell me. Enjoy your week!" This caused me to ask an experienced Googler, "Is it always this chaotic?" The response I got was, "Yes! Isn't it wonderful?" That response sums up a lot about Google's culture. If you're unable to enjoy that kind of environment, then Google isn't the place for you.

Seriously, the corporate culture is based on hiring really smart people, giving them responsibilities, letting them know what problems the company thinks it should focus on, then letting them figure out how to tackle it. What management hierarchy there is is very flat. And people pay little attention to it unless there is a problem. You are expected to be a self-directed person, who solves problems by reaching out to whomever you need to and talking directly. Usually by email. The result is an organization which is in a constant state of flux as things are changing around you, usually for the better. With a permanent level of chaos and very large volumes of email. It is as if an entire company intuitively understood that defect rates are tied to distance on the corporate org-chart, and tried to solve it by eliminating all barriers to people communicating directly with whoever they need to communicate with. (Incidentally the point about defect rates and org charts is actually true, see Facts and Fallacies of Software Engineering for a citation.)

Speaking of email, working at Google you learn really fast how gmail is meant to be used. If you want to deal with a lot of email in gmail, here is what you need to do. Go into settings and turn keyboard shortcuts on. The ones you'll use a lot are j/k to move through email threads, n to skip to the next message, and the space bar to page through text. And m to hide any active thread that you're not interested in (direct emails to you will still show up). There are other shortcuts, but this is enough to let you skim through a lot of email fairly quickly without touching the mouse too much. Next go into labels and choose to show all labels. Your labels are basically what you'd call folders in another email client. (Unfortunately they are not hierarchical, but they do work.) Next as you get email, you need to be aggressive about deciding what you need to see, versus what is context specific. Anything that is context specific you should add a filter for, that adds a label, and skips the inbox. Nothing is lost, you can get to the emails through the list of labels on the left-hand side of your screen in gmail. But now various kinds of automated emails, lower priority mailing lists, and so on won't distract you from your main email until you go looking for them.

When you combine all of these options with gmail's auto-threading features, it is amazing how much more efficiently you can handle email. In fact this is exactly the problem that gmail was invented to handle. Because this was the problem that Paul Buchheit was trying to solve for himself when he started gmail. It is worth pointing out that Paul Buchheit was a software engineer at Google. He didn't need permission to write something like gmail. Corporate culture says that if you need something like that, you just go ahead and do it. In fact this is enshrined as an official corporate policy - engineers get 20% of their time to do with pretty much as they please, and are judged in part on how they use that time. I found a speech claiming that over half of Google's applications started as a 20% project. (I'm surprised that the figure is so low.) To get a sense of how much stuff people just do, visit Google Labs. No corporate decision. No central planning. People just do things like start putting up solar panels in the parking lot, and the next thing you know Google has one of the largest solar panel installations in the world and has decided to go carbon neutral. And the attitude that this is how you should operate is enshrined as official corporate policy!

You've got to love corporate policies like that. Speaking of nice corporate policies, Google has quite a few surprising ones. For instance they have benefits like heavily subsidized massage on site (I've still got to take my free hour massage for joining), free gym membership, and the like. Or take their attitude on dogs. Policy says that if your immediate co-workers don't object, you can bring your dog to work. Cats are different, however. Nothing against cats, but Google is a dog place and cats wouldn't be comfortable. (Yes, there are lots of dogs around the offices, and I've even seen people randomly wander over to find out if they can borrow someone else's dog for a while.) Hmmm. Sick day policy. Don't show up when you're sick and tell people why you're not showing up. Note what's missing. There is no limit to how much sick time you get if you need it. Oh, and food. Official Google policy is that at all times there shall be good, free food within 150 feet of every Googler. OK, admittedly the food quality does vary. That in Mountain View is better than anywhere else (the larger clientele base lets them have a much more varied selection). But you quickly learn why it is common for new Googlers to put on 15-20 pounds in their first year. (I'm trying to avoid that. We'll see if I succeed...)

But, you say, isn't this crazy? Doesn't it cost a fortune? The answer is that of course it does. But it provides value. People bond over food. Even if you're not bonding, having food close by makes short meals easier. And the temptation to continue working until dinnertime is very real. (Particularly if, as with me, you'd like to wait until rush hour is over before going home.) Obviously no normal CFO would crunch numbers and see things that way. But Google stands behind that decision, and the people who work there treasure the company for it.

Speaking of the people who work there, Google has amazing people. It is often said that engineers find working at Google a humbling experience. This is absolutely true. It took me less than a day to realize that the guy sitting next to me is clearly much smarter than I am, and he's nowhere near the top of the range of talent at Google. In fact, as best as I can tell, I'm pretty much average, though I'm trying hard to hold out a ray of hope that I'm slightly better than average.

Let me put that in context. The closest thing that I have to an estimate for my IQ is scoring 2340 on the GRE exam in 1991. Based on conversions that I've seen, that puts me at about the top 0.01% in IQ. Now I was really "on" that day, happen to believe that there are problems with the measurement of intelligence by an IQ test (a subject which I may devote a future blog post to), but without false modesty I wouldn't be surprised to find that I'm as high as being in the top 0.1% in general intelligence (however that could be measured). Which in most organizations means that I get thought of as being very smart.

However software development is a profession that selects for intelligence. By and large only good software developers bother applying to Google. And Google rejects the vast majority of their applicants. Granted the filtering process is far from perfect, but by the time you get through that many filters, someone like me is just average.

This leads to another point of interest. How astoundingly complex the company is. I believe that organizations naturally evolve until they are as complex as the people in them can handle. Well Google is tackling really big, complex problems, and is full of people who can handle a lot of complexity. The result? I've been told that I should expect that after 2 months I'll only be marginally useful. My initial learning curve should start to smooth out after about 6 months. And every year I should expect half of what I've learned to become obsolete. (Remember what I said about Google having a certain level of permanent chaos? If you're like me, it is exhilarating. But sometimes the line between exhilarating and terrifying can be hard to find...)

Oh, and what else did I learn? That we're hiring more people this year. :-)

Friday, January 15, 2010

Why are relations between the sexes so complicated?

Note: The subject of this blog post is likely to offend many people. If you think you're one of them the do us all a favor and don't read it.

Disclaimer. Everything in this essay is about my understanding of mainstream heterosexuality. If you disagree, remember that I'm talking about my opinions, not facts. Also, a certain proportion of people wind up homosexual, asexual, or otherwise don't fit the sexual norms. From the surveys I've seen, definitely over 90% and probably over 95% of people are, some experimentation notwithstanding, relatively normal heterosexuals. I have no idea how much or little any of this applies to the remaining minority.

You have been warned.


When I was young I wondered why relations between the sexes are so complicated. After all both genders desire the same thing, why not pair off in some orderly fashion with much less pain and complication? I could see that things didn't work that way, but it seemed to me to be a more sensible way for the world to work than how it actually does.

As I've grown older I've learned about complication after complication. As I learn about complications and see why they happen, the overall picture becomes clearer. Yes, the simpler world I imagined would be convenient, but it can't happen. Why not?

Well let's take my first assumption, that the sexes desire the same thing. We can actually tell what they desire from the questions they ask, and Google correlates those questions and summarizes what they find in autocompletes. When you compare what women and men want their boyfriends and girlfriends to do you get an interesting picture. Men and women want different things.

If we oversimplify, men want sex and women want commitment. Oversimplifying a tad less, men want sex and are willing to provide commitment as a way of getting it, while women want commitment and are willing to provide sex as a way of getting it. If you review the bf/gf comparison and pair the first few questions up, they answer each other in amusing ways. Partially that is coincidence. And partially it is that meeting of different goals.

Evolutionarily that picture makes a lot of sense. It takes little work for men to make children and a lot of work for women to. Therefore biologically men should be selected for a willingness to make children. However raising a human child takes enough effort to need multiple adults. Therefore it is to a woman's advantage to secure that commitment. A man who helps raise his own children benefits his genes, so he should be able to be convinced to do so. The point of lining up help for a woman is to make having children possible, so once the help is lined up, a willingness to have children should follow.

It should be noted that what I've described is not particular to humans. The same evolutionary tendencies and results can be seen in a wide variety of pair bonding species. Though when you apply it to humans people are more likely to be offended than when you describe some type of birds. Though for obvious reasons I find the human case of more personal interest.

It should also be noted very clearly that these strategies are not conscious on the part of the people involved. We have been genetically selected for traits that will cause us to act in these ways. And we directly react to those traits. For instance when a man meets an attractive woman, the parts of his brain that are not associated with libido are invited to take a short vacation. Sometimes with amusing results, such as a temporary inability to speak coherently. He certainly doesn't want this sudden burst of stupidity, but the immediate refocusing of his priorities aligns him with the evolutionarily successful agenda he is literally bred to follow.


Now let's introduce a complication. Sexual partners are not created equal. We have preferences about who of the opposite sex we'd like to have relations with. Preferences vary widely, but some interesting generalizations can be made.

First of all, what do men want? Well health is a good thing. Traits such as clear skin and symmetric faces are signs of a good immune system. Humans have established secondary sexual characteristics such as breasts as signs, and men's attraction to them is obvious. Signs of being good at childbearing as well. Cross-cultural studies have supported the importance of the waist-hip ratio, and even a brief acquaintance with the difficulties of human childbirth with large heads can illustrate why. And, of course, youth.

The subject of attraction to youth is an interesting one. I won't elaborate much on that topic, instead I'll direct your attention to Neotenty and Two-Way Sexual Selection in Human Evolution by David Brin, which is one of the most fascinating pieces of speculation on human evolution that I've read. I don't think he is entirely right, but I think he is right on several things I never thought of until I read that essay. The short summary that doesn't do justice to the essay is that men are attracted to youthful women, which poses the challenge of telling apart young mature women from as yet immature women. We do this through secondary sexual characteristics such as breasts. But this mechanism is fallible, and results in high incidences of pedophilia. (The essay has several parts, I would advise reading all of it.)

Since I have it, I'll give one random instance supporting Brin's thesis from the Google data that I have that he didn't. If you type into Google How do I get my ____ to with either girlfriend or wife in the blank, high among the suggestions will be shave. (Presumably the pubic area is referred to.) Why do so many men want this? Well general lack of hair is a sign of youth. But lack of pubic hair is a direct sign that a woman is not yet sexually mature. Isn't this awfully close to pedophilia?


Moving on, what do women want? Well, obviously, commitment from someone who will be a good care giver. Therefore it is no surprise that cross-cultural surveys (see Brin's essay for a reference) have found that top characteristics women say they desire are kindness, intelligence, and self-confidence. And other desired characteristics include accomplishment, reputation, health, vigor, reliability, and sense of humor. (Random note, the desire to prove accomplishment and reputation pushes men to create many social groups with their own hierarchies that men can try to get on top of.) All of these traits are associated with men who will have the ability and inclination to make good care givers. Note that physical handsomeness is not on the list. Women appreciate it but rate it more lowly, except when looking for extra-marital affairs. (A complication we haven't yet reached.)

Of course the above list isn't complete. For instance there is evidence that women react to pheromones, particularly ones that suggest that a man has a very different immune system. (When people with different immune systems mate, their children are likely to get protection from a broad spectrum of diseases.) Also what women react to and what they say they react to aren't always perfectly aligned, but that detail will have to wait.


OK, time for another complication that causes the pattern to fold in on itself into a pattern of fractal complexity. We have preferences in mates. We each would like to wind up with the best mate(s). But we can't all wind up with the best. Therefore each person tries to wind up with the best person they can, and the extent which we're willing to compromise to get a person depends on the person in question.

What do I mean by this? Well recall that men are aiming for sex, and are willing to provide commitment to get it. Women are aiming for commitment, and are willing to provide sex to get it. The million dollar question as a couple engages is who budges first. In general the higher status the other, the more willing we are to compromise. So the same man who may be willing to claim undying devotion for a chance at a gorgeous woman may be willing to sleep with an unattractive one, but won't commit to her. And a woman who may be willing to have sex with a high status man in hope of commitment may be only willing to have sex with a lower status man after commitment is established.

Tiger Woods provides a good illustration of the latter dynamic. Many women were interested enough in his wealth and talent to give him sexual access. However part of the dynamic was that he tried to make each believe that she was the other woman in his life, so there was a hope that at some point commitment could happen. When the news of his affairs broke and they reach realized how badly they'd been had, they got upset and one by one went public.

Now if you go back and look at the list of traits women want, you have a problem. The characteristics they are looking for are not immediately visible. Therefore women need to read between the lines to establish them. This pushes them towards judging based on secondary traits. For instance a man who is attractive to women who know him well is likely to have several positive characteristics, and therefore is judged as potentially more interesting. And anything that suggests such attractiveness will be seen as positive.

If you read a guide for pickup artists (I highly recommend that every woman should, just so you know what to watch out for), you'll find some odd consequences of this. For instance a man who demonstrates initial disinterest in a woman is demonstrating that he has access to more attractive women. This is evidence that he has what women wants, and therefore must be of more interest. The fastest way to demonstrate disinterest is to make an apparently thoughtless and somewhat insulting comment. If he follows up with nice comments then he has portrayed himself as being of interest but within reach. If the woman believes this message then she is more likely to offer sex without having required commitment first. Which is exactly what the pickup artist wants.

What woman would say that she wants a guy who subtly puts her down? None, obviously. Yet the technique is apparently effective on a lot of women! (Or at least on enough to make pickup artists happy.)


Moving on, what about the way that women tend to be insecure in relationships and the various games they play? I see at least two purposes of these. The first is to test the strength of a man's commitment. It is easy for men to say that they are committed, but if a guy stays through an emotional coaster ride and some demands then he's much more likely to actually be committed. But it isn't simple, because if she pushes it too far, then she has no relationship. How far she can push it will depend on the relationship, which varies widely.

The second purpose is to set clear expectations about how she wants him to behave. This pushes him towards accepting higher levels of commitment, and also makes it clear to him what she will and will not accept.

For an example of a book that helps women use these strategies, see The Rules. I would recommend that all single guys read it so that you can see what you need to defend yourself against. As you'll note from the reviews, it is very controversial, there is roughly an even divide between people who are offended and women who are happy with the men they landed using the strategy.


This brings us to an important point. I am trying to describe the natural dynamics as I see them. Those dynamics tend to be more clear when you look at people who consciously try to manipulate them. The two examples that I've used are pickup artists and The Rules. Most people's natural reaction to those strategies is to dislike how manipulative they are. A second reaction that follows closely is to point out that they result in significant power imbalances. Both reactions are perfectly accurate. They are manipulative and do cause power imbalances. However the manipulation mimics what happens naturally. Power imbalances are common within relationships. The point of the manipulation is to create a power imbalance that gets the manipulator's agenda to the fore. As much as we decry the means, most of us would be interested in the result.


Continuing, let's move on to a tricky complication. Cheating.

It is clear from the basic male agenda why men would cheat. Men cheat because more sexual encounters means more chances to have babies. But women don't want their men to cheat for fear that he'll wind up attached to someone else and leave. And men who are properly bonded will resist cheating, because that is part of what it means to be bonded. So men will not universally cheat, but will at least feel the temptation.

From the basic female agenda, cheating is not immediately obvious. After all it is not a good way to get commitment. But a woman who has a guy doesn't need commitment from anyone else. She has her caregiver, now she wants good genetic material for babies. Cheating offers her two advantages. The first is diversity of genetic material - you never know what combination of genes will work out best and experimentation has value. The second is that she can get superior genetic material than the guy she can get to commit. Of course the downside is that if she gets discovered, she may find herself out of a caregiver.

I've seen widely varying estimates on the levels of cheating in people. I know that some pair-bonded bird species have been found with up to 40% of the population born due to cheating. Humans are hopefully quite a bit lower than that. However one estimate I saw several years ago from England found that about 10% of children are not the children of the person who thought he was the father. That's pretty significant. And in any case it is high enough to contribute to high school biology teachers' reluctance to demonstrate the laws of genetics using the families of their pupils as examples. And is also high enough that a common first reaction among men to seeing his child is to look for a feature that verifies it is truly his. (I've experienced this reaction first hand, and felt silly but did it anyways. I also know someone who noticed that the child wasn't his, with appropriately bad results...)

At this point you get an interesting divergence between men and women. The reasons why men would want relationships and want to cheat are basically the same, so they are attracted to the same women for both purposes. (Though his standards are usually higher for commitment than cheating.) However women are different. A woman is looking for a relationship and affairs for different reasons. Therefore they are attracted to different men for those purposes. In particular for a relationship women want men who they think will make good caregivers. But for affairs women care much more about physical attractiveness. So attractiveness does matter to women, but not in as straightforward a way as it does for men. (Remember that when discussing Brin's essay I said I would come back to the survey result that women care more about appearance for extra-marital affairs than for relationships? Well I just did...)


I could go on but I've rambled quite enough and probably offended a good number of people in the process. Hopefully people found it interesting food for thought, whether or not you agree with all of it. I know that as recently as a few years ago I would have strongly disagreed with several items I stated, and wouldn't be surprised if I disagreed with several others in a few more years.

Thursday, December 10, 2009

Learn to negotiate

I can't believe it has been a month since I've added a post. A lot has been going on. The most important being, of course, that I've accepted a job at Google starting in the new year. I am convinced that this is a good move that will make me much happier in the long run. I'll be doing a more interesting job with a new set of tools at a company filled with great people, what's not to like?

However the process has reminded me that we can all benefit from learning to negotiate. Now I'll be the first to say that I don't enjoy negotiating. I prefer to find ways to grow the pot rather than trying to take a bigger share of it. But a little reading and practice with negotiation can pay off very well.

A few years ago I asked a friend who was a very good negotiator what book on negotiation he would recommend. I do this kind of thing every so often with different areas, and I usually learn something from the books I'm directed to. He recommended Start With No. Reading this book has easily been worth tens of thousands of dollars to me already. Reduced to a nutshell, the idea is that progress in negotiation comes when you ask questions that the other person can reasonably say no to. And your results in negotiations will be better when you don't need to hear a yes.

A second book that I recently read on negotiation was Bargaining for Advantage. From a theoretical perspective this book is clearly the stronger of the two. If you wish to understand the process of negotiation, learn to recognize different negotiation situations, and negotiate regularly, this is clearly the book for you. It is clearly best in class, and will work for a wide variety of negotiation styles. However it seems to me that if you don't already come with a wealth of knowledge and experience on negotiation, you can easily read this book and find yourself saying, "That's interesting, but what do I do now?"

For me personally, a lifetime of avoiding negotiation (and therefore doing it badly when I had to) left me without any negotiation skills to speak of. So Start With No was the better starting book.

With that said, how did my last negotiation go? From my point of view, very well. My compensation is structured differently from my last job, but overall is similar. From what I've heard, people moving to Google usually wind up accepting a pay cut. Due to personal circumstances I honestly couldn't do that. Without having learned some basics of negotiation I am sure that I couldn't have done that. Heck, without what I've learned about negotiation I doubt that I would have been able to structure my resume to make it clear to potential employers how valuable I could be. And without that, I wouldn't have even had the job negotiation in the first place!