Auto Ads by Adsense

Booking.com

Saturday, April 10, 2010

Preparing Employees to be Wealthy

Of all the companies I ever worked for, Google put the most effort into educating its employees about financial planning prior to its IPO. I was impressed by the folks brought on campus to talk to us. These included Burton Malkiel, Bill Sharpe, and Robert Shiller. If after this world-class education in financial planning, investing, and basic economics, you couldn't figure out what to do with your money, it wasn't Google's fault for not providing opportunities to learn!

Google also organized financial fairs, where the big name financial firms, local financial advisors, brokerages, and even Vanguard would show up and talk to you one on one to try to sell you on their services, if that's what you felt you need. I didn't go, since I pretty much have my strategy all laid out, but I know others did make use of those services. Over the months coming up to the IPO, I saw more than one high level engineer/old-timer schedule meetings with these crooks financial professionals.

One of my friends did attend, however, and told me this story:
So I was at the Morgan Stanley booth, and O. came up and started talking to the MS rep. As you know, O. is very financially sophisticated, and started asking all these complicated questions about forward-contracts, asset allocation, options, and hedging strategies. You could see the rep's eyes get bigger and bigger. He clearly decided that O. was a potential big huge customer, and put lots of effort into selling him. Then C. came in (C was a serious old-timer with a huge amount of stock), and asked a couple of naive-sounding questions. You could see the rep getting irritated that this guy who by the looks of him wasn't in the same class as O. did was wasting his time and replied very curtly and tried to get rid of C.

At that point I couldn't help myself and laughed very hard. As with everything else, appearances are deceiving, and the sales rep had no way of knowing who the big fish was. Here in the valley, judging people's net-worths by their appearance or mode of dress is a serious mistake.

Review: Freedom

I found Daemon enjoyable, so I looked forward to reading Freedom when it came out. Unfortunately, it came out during a particularly busy time of my life, so rather than buy it, I waited in a virtual queue at the library.

Freedom continues where Daemon left off. We've got a networked AI of sorts slowly infiltrating the world, while a group of plutocrats try to fight back and take advantage of its capabilities for its own ends. As with the previous book, the characters are nothing to write home about: their motivations are simple, and even the (very mild) romance thread seems mishandled.

What the book does do a good job of, however, is to imagine a world where a MMORPG designer had the tools to reshape the way the world worked according to game design principles. You would have quests, levels, and ability to gather resources based on resources, and on top of that, a reputation based economy. But what would people do with it? Could you really run a community, a country, or the world this way? How would the non-digerati react? Dan Suarez hints at some answers, but is better at demonstrating the immediate consequences that unrolling the full implications of the world he has built.

All in all, if you turn off your brain, and then treat this book as a techno-thriller, you won't be disappointed: loud explosions, death matches, and full on fights are common. You could see a Hollywood movie made from this book. Furthermore, there's actually a conclusion: it's a bit pat, and I find it difficult to imagine someone who would actually execute such a vision to have the humility to build in the kind of checks and balances Suarez has him do, but there are no hanging threads and if there's a sequel, it'll have to involve different characters.

This novel is unusual in that it has a bibliography. It's an unusually well-read bibliography as well, including The Transparent Society, a book all too often ignored in the privacy debates, but is a much better book than most privacy advocates give it credit for. Recommended, but I'm not sure I would buy it at full price.

Friday, April 09, 2010

Infrastructure

If there's anything Google loves to build, it's infrastructure. Google had entire buildings worth of machines, and lots of ways to make use of all of them. There's MapReduce, Bigtable, Blobstore, and all sorts of other distributed infrastructure. So much so that engineers frequently told me that they thought that developing without all that infrastructure would be crippling, and would slow them down too much.

The irony, of course, is that companies like FriendFeed gives the lie to that statement. Friendfeed was launched in weeks! If you're not Google, you don't have to scale to billions of users right away. Existing tools can be made to be extremely scalable. For instance, even MySQL can be made to scale. The truth is, launching products at a big company takes a much longer time than at a startup because of non-coding related reasons. In fact, many of the engineers who made that above statement would find creative ways around missing infrastructure if they were at a startup: context is everything.

I remember attending a talk by YouTube engineers after the acquisition (this was at OSCON, so I know it's unclassified information). What impressed me was how closed they always seemed to be to falling over completely. Yet they never did. Then it occurred to me that a startup should always be running at the ragged edge of what their systems can handle: to do otherwise would mean that you're not using all your resources efficiently. By contrast, Google can afford a few under-utilized machines. In addition, all that generic infrastructure has overhead. Generic cluster management software, for instance, doesn't (and can't) know enough about the overall job structure of your tasks to put compute-intensive tasks on the same machine as network bound tasks. But a startup with a customized software stack can do that (and frequently must do so) because they don't have enough machines to do otherwise.

In short, I think startups have to be very careful about building generic infrastructure just because that's the way Google did things. Google built generic infrastructure because its big problem (search) had to have massive scalability right away. Even with a single user, a search engine still has to search as much of the web as possible. But what applied to Google doesn't apply to all startups. Build only the tools you need as the need arises.

GOOG digger

After about 6 months, I finally had enough time to sit down at Charlie's and have a meal, rather than eating at my desk, or more frequently, just snacking rather than eating meals. So sitting down alone in the cafeteria, I was about to get started when I heard an unfamiliar voice say, "Mind if I join you?" I looked up from my plate and saw a gorgeous Asian woman with a tray of food. Well, any geek will tell you that us dorky guys rarely get pretty women inviting themselves to sit with us when we're alone eating dinner, so I agreed.

She was in [department redacted], and we spent the next 15 minutes exchanging details of our work, what we were working on. Since we were in completely different departments, we had lots to talk about that was new to each other (or so I thought). Then she asked me this question: "So... how long have you been here?" My response, "About 6 months."

Not five minutes later, she looked at her watch and said, "Oh no! I have a meeting to run to!" It was already 7pm, and at that time we didn't have distributed offices to introduce time-zone craziness. Off she went, and I never saw her again. I thought nothing of the event and finished my dinner. When I told my girlfriend Lisa the story, she laughed hard for 10 minutes and said, "Next time a pretty girl in the cafetaria asks how long you've been working there, try saying 6 years!" I then realized what had happened and laughed along with her.

Thursday, April 08, 2010

Unicode Names in E-mail headers

If you've corresponded with folks via gmail, you might have noticed that some folks write their English names, and then put their non-English names in parenthesis after that. For instance, in my case, I write: Piaw Na(蓝俊彪).

This use started in my office in 2005. I was complaining to Pengtoh about the pain of using Chinese input methods, and how they weren't actually easy to use on my Linux workstation anyway. Pengtoh pointed me at Mandarin Tools, and I used that to construct my Chinese name in pinyin. We then wondered whether Gmail would handle unicode in the headers fine, so we tested that by sticking our Chinese names in the Gmail settings. (You can find this in the "Accounts and Import" tab of the Gmail settings)

It turns out that Gmail handled Unicode in e-mail headers just fine. We then decided we wanted to see if we could make this convention common. We did this by ourselves, and then decided that we had to recruit non-Asians to make the meme stick as well. So Pengtoh contacted a few more of our non-Asian co-workers, and offered to construct Chinese names for them.

I knew we had succeeded when I started seeing Japanese names in parenthesis, then Hindi over the years. The unfortunate part in the early days was that many other mail readers could not handle unicode characters, either blanking them out, or turning them into gibberish. To solve this problem, I also constructed a non-unicode name for use with those mailing lists and corresponding with people who used these mailers. You can do this by adding more than one entry in the "Send Mail" as part of the Gmail settings. My hope is that all mailers everywhere can handle non-Unicode names in headers eventually.

It's not inconceivable that somewhere else, someone else came up with the same convention. However, I do not recall seeing this convention pre-2005, so at this moment, my best guess is that Unicode names in parenthesis originated in my/Pengtoh/Ovidiu's office in 2005. If you know of an alternate origin, please let me know in the comments!

Wednesday, April 07, 2010

Corporate Culture

Corporate culture is a nebulous term. People use it to include everything from free food to whether or not you can bring your dog to work. I personally think that far more important is the way we interact with each other, and how things get done.

One winter, I decided that it would be a good thing to run a bicycle repair workshop as a series of winter classes. I didn't (and really couldn't) teach every class myself, so I put up a shared spreadsheet, and listed a couple of sessions that I would teach, and then Mark Logan, Ryan Kauffman, Bob Sutterfield all pitched in and taught classes I couldn't teach. It was typical of Google culture that volunteer-ism was common. You could almost always get help from someone if you went up to them and asked about something. If they didn't know, they'd point you to someone who did.

Unfortunately, corporate culture is one of the first things to get diluted when a company gets big. And indeed, when Google got to 5,000, then 10,000 and finally 20,000 people events like this got less common. An attempt was made to formalize events like this as "Googles Teaching Googlers." Pardo's wheel-building lectures were made available that way. While it worked to a certain extent, the formal version to my eyes, were always a pale reflection of the spirit of community that prevailed the the company was much smaller.

Tuesday, April 06, 2010

Food Story 2

Growing up in Singapore meant that I really loved food, and always appreciated good food. However, I'm also cheap, and so never went to any fancy restaurants. It wasn't until Google that I actually had a formal, multi-course Western-style dinner.

By 2005, those of us who were on the Sarbanes-Compliance projects were deemed to be "done". At other companies, this might mean a bonus, but Google had something much better: in-house Chefs who could prepare a fancy meal on a budget. Many people think that the in-house Chefs at Google are an ostentatious perk that was an expensive luxury for employees, but in reality, I think the value Google got out of them in terms of extra work from employees and being able to run award-type events really cheaply meant that the culinary staff more than paid for themselves.

We sat down in a room near Charlie's (this room would eventually become the B40 gym), which had been laid out like a restaurant, complete with a special door from which food would arrive. I'd never seen table-cloths so white, nor had I ever had a place-setting with this many implements. I thought, "OMG, I'm in for a treat."

The first entrée arrived. It was a salad with dressing. I had been trained to get hungry by 6:30, and was starving, so I ate it with relish. Then came the Ceviche. That was really tasty too! Then came the sorbet. I was shocked. That's it? That was my fancy dinner? I was still hungry. "Oh well," I thought, "I can still go grab a burger at Charlie's afterwards." When the main dish arrived after the sorbet (it was Filet Mignon), I finally realized that the sorbet was a palate cleanser, not desert. The rest of the meal was fantastic.

Google ran many other "event"-type dinners. One of my favorites was the chocolate-themed dinner that Chris persuaded Charlie and the culinary team to run. That was a $20 dinner, but my goodness, you got $100 worth of food out of it. Another week, Google's culinary team ran the Cafe Crawl: visit all the Cafes in a week:
Lea and I used bicycles to visit all the Cafes in one lunch period. The reward: a special meal, and a pass that let you skip to the front of the line for a week! Needless to say, I took advantage of that pass to get a huge amount of sushi.

Google cafeteria reached their height in 2007 --- when I visited Paris in 2008 for a culinary tour, I unfavorably compared some restaurants in Paris to Google's Cafe 5IVE, for instance. I was sad to return from Germany to discover that many of my favorite Chefs had left. Olivia Wu and Scott Giambastiani are still at Google though, and they still turn out meals that could blow your mind if you were used to the typical corporate cafeteria.

There's a talent war brewing in the valley over corporate Chefs, so hopefully, having great food as part of your compensation package will be more common.

P.S. I'm fasting for an annual physical/blood-test, and writing this post while fasting was a mistake!

Monday, April 05, 2010

Motivation

An friend of mine was very upset at work. "I look at my bug list and I just want to cry," she said. Now, this was a person who was single-handedly developing and supporting a program used by millions of users. It was significant, important work, and she knew it. But in the face of this hugely negative feedback, even the most self-confident of us would falter.

I had just gotten my first fan-mail as a result of the book, and asked if she had gotten any? "No! Do you think I would be so pissed if I had fan mail?" Here's the thing: there was nowhere in that program that exposed who the developer was. No about box, no credits page nothing.

Compare this to a movie, where everyone from the Key Grip to the Best Boy gets named. Open Source software at least makes a step in the right direction: the Firefox about box gives credit to everyone involved.

This made me think about all the hype I've heard over the last few years about how few engineers there were in general, and how few women engineers there were in particular. One problem is that we hide away all the people behind the amazing products we use every day. Who was the chip-designer behind the iPod's touch technology? Do you know? I know, because I went to college with her. The main excuse most corporations give is that "if we exposed the engineers behind the products, we would be giving competitors a list of people they should poach from us."

I personally think that's a piss poor excuse. Chrome was promoted by a comic book. The comic listed names of many engineers who worked on that product. As far as I know RIM, who is in dire need of a useful browser on their phone, hasn't called any of those engineers asking if they could build one for them. For the engineers who were named, however, the delight of having their names, and faces enshrined in a comic book drawn by Scott McCloud, however, has got to be at least as good as the Founder's Award they got!

Personally, I think until engineers start demanding that they be credited for important software they contributed to, and corporations start recognizing and treating them as people who are deserving the credit rather than being hidden behind a corporate brand, I think we shouldn't be surprised that kids who grow up with iPods, iPads, Android Phones, and other products chose not to go into engineering. After all, those products weren't made by people (whom they could aspire to be), they were made by faceless corporations. And court orders aside, no kid aspires to grow up to be a corporation.

Hiring Committee Stories

Google's engineering hiring is unique as far as I know. Patterned after faculty hiring by top universities, Google engineering had no hiring managers. None. This meant that all the usual job search advice by any number of books and web-sites didn't apply to Google. Bypassing HR and trying to get to a hiring manager didn't do any good. About the only thing that could have been useful would have been to get a strong employee referral (i.e., get an employee who thought the world of you to say so when he submitted your resume). The interview process went like this: you would interview with a panel of engineers, who would then write feedback to an internal database, which would then go to a hiring committee (also composed of engineers) to evaluate the feedback and provide a go/no-go decision. Since engineers might have to live with the code (and personality) of a bad hire, the hiring committee tended to be conservative on hires. Phone interviews and in person interviews were conducted almost exclusively by engineers, with directors brought in only if the candidate requested a meeting with a manager explicitly, or if the candidate himself was interviewing for a manager/director position.

For reasons explained in my book, I ended up on the Site Reliability hiring committee. At that time, the hiring committee was composed out of relatively senior engineers: Lucas, Ben, Bogdan, and various engineering big-wigs like Bill and Urs. Frequently, when the committee found feedback on hiring to be ambiguous, it would assign another interview to an engineer well-known to be decisive (i.e., someone who would be willing to stick his neck out and say "hire" or "no-hire"). This happened surprisingly frequently because many people dislike rejecting people, and occasionally, someone would write feedback that wasn't really informative enough.

We didn't always have the luxury of a second-interview, however, since some folks had to be flown in from far-away places. Google was truly a global company, and in its pursuit of talent would consider resumes from literally anywhere in the world. Now, I didn't think that Google's interviews were particularly hard, compared to startups and other well-known firms in the industry. In general, quality companies reject a large number of engineers because most people who call themselves programmers can't code.

A few incidents came to mind as being particularly funny:

One day, I came to the hiring committee and started reading feedback from interviewers. One of them turned out to be a candidate I had interviewed earlier in the week. I was doing as much as 5 interviews a week at this time, so I didn't always remember the candidate by the time I got to the committee. Lucas's feedback for the candidate started with, "I spent the first five minutes of my interview calming the candidate down after his interview with Piaw..." When the others got to this part of the feedback there was a lot of laughter. I think that was the moment I realized that Bogdan and I would get along, because he high-fived me across the table. The candidate was a no-hire, but I don't think it was because I was particularly harsh.

At one point, we came across a candidate who had to be flown over from the other side of the world. Since we knew there was to be no chance of re-evaluating this candidate if the feedback was insufficient, we asked the recruiters to make sure that we had decisive, experienced interviewers for this candidate, who seemed pretty senior. She replied, "How about Piaw, Ben, Bogdan, and Lucas?" When he heard this, Bill put his head in his hands and said, "Why don't we just save ourselves and the candidate some time and just send him a rejection letter now?" The room burst into laughter.

Our committee took hiring seriously. We agonized over many hiring (and no-hiring) decisions for many years, learned the idiosyncrasies of many interviewers, and tried to match them up to candidates as well as possible. It was very high intensity work, and on one or two occasions I had to go head-to-head and argue my case in front of VPs because I felt strongly about one candidate or another. I didn't always win, but at every point everyone's opinions were considered. I'm sure we made mistakes, but looking back, I'm not sure I would have found a better process. I for one think that the decisions the committee made were far better than the decisions each of us individually would have made.

Sunday, April 04, 2010

Turns out I lied...

I didn't retire from Google, I was handed a pink slip! Thanks, Stephan, Larry, Lea, Pardo, Roberto, Catherine, Mike, and Parisa. With such appreciative colleagues, I must have been a fool to even consider retiring. Thank goodness they set me straight.


(I swear it looked more pink in person)
Posted by Picasa

Orkut Story

As many people know, Google ran an annual ski trip for employees, and by the time I joined, it was getting pretty big, with Google taking up most of Squaw Valley's lodging. I remember checking in, and then heading over to my room to shower.

When I got to the room, I noticed that not only it was a suite with separate party area from the bedrooms, but the suite had a table that was piled with Vodka and alcohol floor to ceiling! I thought to myself, "Wow. Google's incredibly generous. Not only did they book an entire suite just for 2 people, they must have also negotiated some amazing deal to give everyone enough Vodka to keep them drunk for weeks!"

I took my shower and then finally noticed that my roommate had already checked in before me and left his luggage in the room. I took a look at the name tag, and that explained everything. It was Orkut Büyükkökten. The alcohol didn't come with the room, it came with Orkut! I was momentarily horrified, since I actually entertained thoughts of sleeping at night so I could go cross-country skiing the next day, but Orkut had clearly intended an all night party. I then realized that I could easily swap with someone who wanted to party all night!

Mike Samuel came to my rescue and bravely agreed to swap places with me, so I got a good night's sleep, and he had to put up with all that alcohol. Over the years, I learned to bring ear plugs with me to the ski trip, since even if I wasn't sharing a room with Orkut, the guy next door could be a hard partier.

One note about Google parties: the music is universally set too loud. I always felt as though the parties were for people about 25 years younger than I was. I thought I was alone in thinking that, and that I was being a fuddy duddy, but then the 30-year old and 25-year old Googlers told me that too! Until the company split up the departments so each department could have its own party, I never did attend what I considered a good party: one in which you could hear your colleagues talk in a social setting.

Saturday, April 03, 2010

Getting confused with Meng

One of the perpetual sources of amusement to others (and occasionally myself) at Google is that for whatever reason, I get frequently confused with Meng by other people. This is very confusing to me, because Meng looks like this:

Yes, that's right. He's always shaking hands with a president.

I look like this:
From Pigeon Point 2010

(And that's my good side)

Clearly, Meng is much better looking than I am, yet people confuse me for him! I got annoyed at this at first, but then decided that since it was mostly white people making this mistake, I could understand. When I first moved to this country, all the white people looked alike to me too. It took me a while to realize that color of hair and eyes could be used as distinguishing features.

Then one day, an Asian woman mistook me for Meng. What's worse, I was even riding a bicycle. Meng doesn't ride a bicycle. About the only thing we share in common is that we both grew up in Singapore, and are friends with Pengtoh.

Then one day, Meng came up to me and said that this guy walked up to him and started talking about cycling. I felt mortified that at least once in a while the mistaken identities went the othe way.

Anyway, now that I'm no longer a googler, there's no excuse for mistaking Meng and I. Just look for the Google badge. If there's one, then it's Meng. If there's none, then it's me. Until Meng retires from Google, that is... I don't know what to do if that happens.

Friday, April 02, 2010

Google food story

When I first joined Google, the menus seemed so exotic to me that I resorted to having to search the web to figure out what was being served. The internal mailing list, food-discuss, also had fairly active discussions of certain menu items.

One particularly memorable exchange came up when the dinner menu included the entrée John Dory. The conversation went like this:

"What's John Dory?"
"It's a fish from New Zealand."
"Oh thank god! I was afraid that some hapless Googler pissed off Charlie and got turned into the dinner entrée!"

Last Day at Google

Today was my last day at Google. It's been 6.5 years since I first started at Google, and let me tell you when I first joined I did not expect to stick around for that long. My previous longest tenure was at Mpath Interactive for 3.5 years. I remember joining the company, and thinking, "Boy, this company is so huge. I'm going to get lost here." I became very pleasantly surprised that after my very first TGIF, I ran into Eric Schmidt on the way back to my cube and he knew my name, had obviously read my resume, and knew that I had "been around the block a few times as far as startups were concerned." Looking back at it and reflecting on what my starter project at Google was, I shouldn't have been so surprised.

Financially, it stopped making sense for me to stay at Google about 2 years ago. The risk-reward ratio had mostly tipped down to much less risk and correspondingly less reward, and while regular refreshers were handed out, they weren't really enough to really make a big difference to my net-worth. However, I still had interesting things to do, including my Munich assignment. Munich was such a small office that I felt like I was at a startup again, which was awesome. I felt like I did a lot there, and it was enough to keep me excited and motivated.

After my Australia trip last year, I became a part-time employee, going to a 4-day work week. Amongst other things, I scanned 10 years worth of slides, bought a house, toured Japan, and wrote a book, but somehow still never quite got caught up to everything I wanted to do. And having found a taste for long-term travel (as I got more time, I discovered that I didn't want to do more trips, but wanted to do longer trips), I wanted to do still more! I still never did find time to visit my friends, or even do any of the other nerdier things I thought I could make time for.

The final straw that made me decide to retire from Google was the realization that as an engineer and a professional, I'm highly optimized for startups. As Google got bigger, the pressure to specialize and stick to a formal role grew to the point where everything I did (and that included the assignment in Munich) came at the cost of professional advancement. I supposed I could have sat back and coasted, or as a friend of mine used to say, "rest and vest", but that's not in my personality. John T. Reed's book, Succeeding, made a very good point, which is that it's very difficult to change your personality, and trying to do so would make you very unhappy. However, it's possible and quite easy to change your context and your environment, and your life should be about finding a context and environment where your personality makes succeeding easy, rather than trying to fit your personality into an increasingly ill-fitting context.

In any case, I don't have any plans to jump right away into another work-place, startup or not. For one thing, I have at least one more book I want to write (it has nothing to do with computers or startups), and Lisa and I have booked a 5 week trip to Europe this summer, along with some Googler friends. I have hopes of doing a photography trip in the fall, and yes, I would like to do another sailing trip. Then there's friends to visit, and maybe for once I should try to attend WorldCon or GenCon, events that I have always thought of attending, but never did it because when you have a limited amount of vacation time, you would never waste it on indoor activities when there's so much left of the world you want to see.

For the immediate future, however, I plan to spend the next few weeks writing up some of my experiences at Google (no, I won't divulge any trade secrets), so if you enjoy that sort of thing, stay tuned.

Sunday, March 28, 2010

Geyserville Ride

Geyserville Ride

The Western Wheeler Geyserville weekend ride started out close to Chad's weekend retreat, so he invited Lisa and I to join him and Drea at their country house not more than 5 miles away from the ride start. I had been years since I saw Chad, but he didn't look a day older than the last time I saw him --- the years had been good to him.

Chad had been a fearsome rider in his day, so I expected the pace to be fast, but it was also Drea's first ride of the year. Nevertheless, their S&S coupled Supremo with DuraAce parts and a carbon fork looked intimidatingly fast. Phil and his friend Elliot also joined us from the South Bay. With memories from the past of how this ride kept kicking my ass, we opted for the easier C ride.

The ride was gorgeous, with the first blooms of spring showing up along the road. The Geysers road is a lonely lovely county road with a very few gravel sections, and the initial rolling hills would lull you into a sense of complacency with how beautiful the whole thing was. That is, until you get to the stop sign and turn right. The 3-part climb starts out with a consistent 14% grade for 1.5 miles. On a tandem, this just means getting into your lowest gear and suffering. Add to it hot afternoon sun and no breeze, and we were in a world of hurt. Fortunately, even at 2 miles per hour we eventually made it to the initial, false summit. We drank pretty much all our water, ate a bit of food, and waited for the folks who had to walk to catch up before starting the rest of the climb.

The rest of the ride was uneventful, with glorious, sweeping panoramas of the valley as we swept back down to lunch, after which Chad, Drea, Lisa and I opted for the short cut home, since we were running late, and even with the short cut would still get 58 miles and quite a bit of climbing. Unfortunately, Lisa's camera conked out at this point so we had no more pictures the rest of the weekend. I'm hoping Phil posts his.

Day 2's ride started at Healdsburg, and we rode along the vineyards before tackling Sweetwater Springs road, a gorgeous 3 stage climb that mixed sun, hills, lovely redwoods and a beautiful stream all in good measure --- and a painful 16% grade at the end that nevertheless felt easier than the Geysers because it was shorter and shaded. Chad had a trip elsewhere planned, so he and his family had to drive to San Francisco early in the morning.

Bob & Betty pulled us for the remainder of the ride, at speeds well in excess of 20mph most of the way, which made the ride quite a bit of a workout, but we had slept well the night before and so felt quite good despite desperately just hanging on to their rear wheel. What a fun weekend!
[Update: Phil's Pictures]

Wednesday, March 24, 2010

Clipless pedals

A lot of people buy clipless pedals and then on their first try, fall over at a stop light because they can't clip out. This is very silly, and it has never happened to me because I did something very few other people did when I bought mine: I practiced. Here's how:
  1. Find an empty parking lot that's level, and clear of cars.
  2. Straddle your bike and clip in on the right.
  3. Clip out.
  4. Repeat 2-3 until you can do it repeatably without looking down.
  5. Raise the right foot to the 2 o'clock position, and push down
  6. The bike will move, so now that your leg is straight, lift your butt up and over the seat and sit down.
  7. Pedal and push down on the left foot until your left foot clips in. Do not look down. If you're using Looks you may have to use your toe to flip the pedals up to the correct side, but with SPDs, you can just push straight down.
  8. Slow down a bit with your brakes, and unclip your left foot.
  9. As you slow down to a stop and brake, turn the handlebars slightly to the right. This will cause the bike to fall to the left and onto your outstretched left foot.
  10. Repeat 5-9 until step 7 and step 8-9 become natural and easy.
  11. Practice emergency stops. From about 10mph, brake hard and unclip and land.
  12. As you gain more confidence, start from higher speeds and try it with both left and right feet. Once you can do this from about 15mph or so you're safe for the streets, though more aggressive types will want to try it from 20mph.
I did all this about 14 years ago when I bought my first clipless pedals. The entire learning process will take about 1-2 hours in a parking lot, though body geniuses can do it in half an hour or less. It sounds involved, but as a result I've never had the experience others may have had, which is that of rolling up to a stop light or stop sign and then falling over because I forgot to get my feet out of the clips. One note about buying pedals: don't buy pedals without wrench flats. In other words, the cheap SPD M520Ls are good, but the expensive XTs are not. The lack of wrench flats make putting on and taking off pedals a major pain in the ass. Needless to say, if you're anything but a racer, buying pedals/shoes/cleats that you can't walk in is stupid.

Saturday, March 20, 2010

Review: Primitive

Primitive is billed as a thriller by Mark Nykanen. When I saw that it listed global warming as a theme, I read it (it was one of the Amazon giveaways on the kindle) just to see whether a novelist could actually get climate change right.

The plot revolves around a model who gets kidnapped by an environmental commune for her participation in various consumerist ads. The model tries to escape, and her daughter tries to find her. Most thrillers are simple-minded black-and-white, good-and-evil affairs. This one surprised me. There are no heroes.

The environmental commune commits basic mistakes (including settling on poisoned land), the authorities that's try to chase them down also commits predictable mistakes (unfortunately, no twist there). About the only sympathetic character is Sonya, the kidnapped model, who unfortunately also got a predictable consciousness raising epiphany.

On the other hand, the science isn't all made up, which surprised me. The idea of methane under the arctic ice being a driver of climate swings is well-known. The characters are believable (and believably stupid).

I hesitate to recommend this, but if you do read it, at least the science isn't terribly far off, and the characters aren't as black and white as you would expect from a thriller.

Review: Dear Undercover Economist

Dear Undercover Economist is a collection of columns of that name from the Financial Times newspaper. As you might expect, Tim Harford answers questions like an advice columnist, only from the perspective of an economist.

For instance, when a woman writes in to ask if she should propose rather than waiting for her boyfriend to do so, Harford points to a 1962 paper indicating that a world where men propose and women accept or reject is the very worst for women and the best for men. When another person writes in to ask how many different people she should date before settling down, he points to optimal experimentation theory. He similarly explains why grandparents tend to spoil grandkids (as well as providing a way to keep them from doing so).

The answers are mostly written in a flippant advice-columnist style, so reading more than 2-3 at a stretch taxed my patience. That's the main reason this book took me 5 weeks to work through. All in all, while I enjoyed the book, it's definitely not something you would read a second time. Recommended only for economics geeks.

Friday, March 19, 2010

Review: The No 1 Ladies Detective Agency

The No. 1 Ladies Detective Agency is the inverse of all the traditional English mystery novels. Instead of being set in England or America, it's set in Botswana, in Southern Africa. Instead of having skinny spinsters or fat Frenchmen detectives, we have a fat African woman, Precious Ramotswe, who started a Detective Agency after her father died and left her a herd of cattle.

The mysteries start off being very whimsical, and we get a good feel for Ramotswe's character: her mysteries aren't resolved so much as with brilliant deductions, but rather with a direct approach and smart questioning of subjects. It's quite obvious that this is not a set of mysteries intended to challenge your deductive skills, but a series of character and situation sketches.

We do learn quite a bit about Ramotswe's background before the novel proceeds onto more serious topics. The plot unrolls like a TV series: each episode has a main mystery, while another sub-mystery unfolds in the background, as well as a very unsubtle romance. By the end of the novel, everything's been unraveled, with the ending tied up very neatly, but we don't get the feeling that Ramotswe's done any introspection whatsoever --- none of the feeling of change or bleakness of characters found in Sue Grafton or Raymond Chandler is in evidence here.

At $2.00 for the Kindle edition of the book it was quite a bargain, but I don't think I'd pay full price for this. It will, however, make a fine airplane novel.

Tuesday, March 16, 2010

Hacker News Dinner

Xianhang Zhang, founder of Bumblebee Labs placed a notice on Hacker News a few weeks ago asking if there was anyone interested in having him visit their house and cooking dinner for them. I was intrigued, and signed up. Another couple of Yahoo employees were interested as well, and since we all lived in Sunnyvale, agreed to batch up our meetings. Of course, a Googler's home is unlikely to have to be better equipped for cooking than almost anybody else's home (it makes sense if you think about it!), so we ended up choosing Jaisen's home for the event.

Lisa and I walked into a kitchen that was already in full swing. What amazed me was that XianHang had already done everything since he got off the train at 5:30pm, including shopping, prep, etc. He drafted us into service to shell pistachos, form the lamb sticks (which I did very badly), and various other duties, but it was quite clear that XianHang was in charge and knew what he was doing. You can look at Jaisen's pictures to see what was involved. Lisa and I clearly didn't have what it would have taken to host this dinner.

After dinner, XianHang gave us his pitch about social interaction design. He had a very important insight, which is that most companies and social software is built as a tool, whereas in reality, what social software should do is to be built as a space (as in a building, meeting room). This is a very important distinction. For instance, he pointed out that mailing list software seems almost designed to facilitate flame wars and endless discussions over minutiae, rather than useful discussion, and you don't have to be a social software expert to realize that. In any case, it's a great presentation and I think anyone involved in social software should consider hiring XianHang for his insights. The unfortunate thing about the internet is that most software platforms are designed by engineers for engineers as a demonstration of technology and tools (my own TinyMuck 2.0 was just one such example amongst many), rather than as a space for useful interaction.

Any way, the dinner was very much time well spent. Afterwards, I gave Xianhang a copy of my book for his long train ride home. I'm glad he seemed to have liked it!