Sunday, December 30, 2012

Tom, funny, in Puerto Vallarta

I rented an apartment for my family in Puerto Vallarta.  It is near the ocean.

(Mom walking onto balcony)

I was worried that my brother would find it too boring, but he was actually pleased that it's sunny, has a gym, and food is cheap.

"I sat on the balcony and looked at the ocean today," he said.  "If I had a Corona, it would've been a commercial.  As it was, it was a virgin corona commercial."

My brother and I walked past a street vendor who called out to Tom, enticing him to buy wares.  "Is that your sister or fiance?" they shouted at him, referring to me.  

I realized this must be carefully A/B tested to perfection.  Whether I'm his aunt, mom, cousin, or sister, I would be happy that I look like his sister.  Similarly, whether it was his girlfriend, fiance, or wife, she would be happy to be called the fiance, because that's the maximal lovebird-y status.

In every possible scenario, the listener would be flattered.  Good work, street vendor!

I asked Tom whether he would go with my dad and I to Russia (one of my bucket list items).

Tom: "I'm not sure.  I just started a new job, so I might not be able to get the time off work."

Me: "I guess we could postpone it for you, but then you'd better come!  If we postpone it for you, and you still don't come, I would throw you into a lake.  I would tell you that we're going for tea, but then I'd actually drive to a lake and throw you into it."  [throwing motion]

Tom: "Then why wouldn't you tell me we're going to tea, but then actually drive to the airport and reveal that we're getting on a flight to Russia."


Me: "There's this tour group that goes around the Golden Ring of little towns between Moscow and St. Petersburg."

Tom: "You would hate it!  They're probably going to start really early every morning.  They'll be like, 'In soviet Russia, human rises with the sun.'"

Thursday, December 27, 2012

Botanical gardens

I am in Puerto Vallarta with my parents and brother.  Today we went to Botanical Gardens.

The main attraction of the gardens was eating in the restaurant.  It looks quite magical with water ponds adorned by lily pads.

Tom with pineapple juice and chicken fajitas.  I got chicken quesadillas.

Afterwards we walked for miles along the beach.  People cutting up a big fish!

Me: [to brother] "When I visit you, let's go to the beach in Santa Monica.  I really want a beach umbrella.  I wanted one last time too."

Tom: "Okay, I'll get one.  [suddenly grinning a lot]"

Me: "What?"

Tom: "I bought that beach an umbrella.  Beaches love umbrellas."

Monday, December 24, 2012

Preparing for Coding Questions in Software Engineering Interview

In 2006, I wrote this guide "How to Prepare for a Software Engineering Interview". Since then, I've been frequently asked: "How do I prepare specifically for the coding questions?"

Today I will answer that. Below are my tips, culled from my experiences interviewing around 500 engineering candidates for Microsoft, Google, and Minted.

My goal is to elicit your best performance during the interviews. To use an analogy, if you were getting ready for a 400-meter dash, my goal is to enable you to run your fastest time and prevent you from freezing up during the race. The tips are not going to turn someone who runs a 10-minute mile into a track star overnight.

1. Practice mock-interview coding questions in these areas:

  • String operations. Implement strlen, strcat, strchr.
  • Data structures. Hash tables, arrays, binary tree.
  • Running time. Determine the big-O of algorithms.
  • If frontend: CSS, javascript, ajax calls, cross-browser compatibility.

Note: The point is to get you warmed up, not to tell you exactly what's going to be asked. Your interviewer wants to ask you a question you've never heard before, and may skip questions (and concoct new ones on the spot) until one that's new to you. So there's no point trying to scour the internet practicing all questions so that you can recite the answer.

2. Avoid extended silences during the coding question. A major reason for the coding question is to observe your thought process, not merely whether you arrive at the perfect final answer.

If you are silent, the interviewer has no idea whether you are analyzing several plausible solutions (a good sign), or whether you are completely at a loss on how to tackle the problem.

Even if you are stuck, here are some things you can do that are better than being silent:
  • Describe algorithms you're considering and then discarding ("Dynamic programming won't work in this case because...")
  • Enumerate edge cases that your algorithm needs to cover ("I'll need to make sure my solution handles an array with duplicate values...")
  • Talk about the part of the problem that you cannot solve ("I need to find a way to split the input into two halves, but all hashing functions seem too uneven...")

Basically, just open your mouth and issue a stream of your problem-solving thoughts. Even repeatedly going over the same conundrums is superior to a long silence.

3. If you see a brute-force solution right away, say it first, and then hunt for the more optimal solution. At least you've demonstrated that you have one potential solution, even if it's not efficient.

If you don't get the refinement, you can always implement the brute-force method, and impress the interviewer with your quicky-written and correct (albeit inefficient) code.

4. Practice writing code on paper, without a syntax highlighter. I mentioned this in the 2006 guide and it is worth re-iterating.

It is going to feel foreign at first. You will suddenly forget how to write for-loop syntax when you are using a pen or whiteboard. That's why it's even more important that you practice beforehand.

Good luck and godspeed to you.

Sunday, December 23, 2012

Cake at work

Cathy, one of the graphic designers at Minted, made this cake.

It is a mocha chip and peppermint cake.  We used it to wish the interns farewell, though two of them were too cool for school and didn't even come over to look at their cake.  We still ate it on their behalf.

Thursday, December 20, 2012

Dickens Fair!

Last weekend, I went to Dickens Fair, an annual occurrence in Daly City.

I finally understand why some people get addicted to shopping.  I could not stop buying hats.  I spent an hour trying on and buying different hats.  If I had not left, I would've purchased more hats.  If those hat merchants had any sense, they should've seen that I was a giant mark and bombarded me with their wares.

Groups of women regularly walked by in petticoats. It was awesome. Occasionally the Queen came through and blessed us, and other attendees said in an English accent, "Bless you, Majesty."

Me with one of the workers at the Fair. Her dress is homemade!

Monday, December 17, 2012


Today I got LASIK. I was nervous leading up to it, because it is lasers in my eye!  But contacts started causing irritation throughout this year, so I decided to take the plunge.

The procedure of getting my eyes pried open and held in place by an apparatus was pretty uncomfortable.  I definitely had a moment of "Why on earth did I decide to do this??".  It was only a couple minutes though.

The doctor was very forceful in yanking my head around and telling me to stop moving.   It was comforting to have someone be so authoritative, even if they were scolding me.

Then a brief moment of relief, followed by the dread that now it is time to do the other eye.

The laser part was kind of cool.  The light makes neat patterns.

My eyes are still bruised (you can see in the photo) but I can see pretty far already.  It hasn't sunk in yet that I will not have to wear contacts or glasses in future.


Guess which movie I saw yesterday?  (Note the ears.)

The movie starts out slow, and plays out one of my biggest nightmares: strangers coming into my house and eating all of my food.

The scenes traveling over mountains were beautiful.  The movie did a good job of maintaining suspense on several fronts simultaneously.

The feathers graphics were nice.  I kept marveling at how they look good close-up, fluttering in the wind.

Thursday, December 13, 2012

Sha-mayn / Super emo

Sha-mayn is visiting me. It is so amazing, but then it just makes me think of how sad it will be tomorrow when she goes back to Manhattan.

Yesterday we ate at Zushi Puzzle.

Wednesday, December 12, 2012


James sent me this "Secret Diary of Aragorn" post.  It pretends to be the diary of Aragorn from Lord of the Rings.

I was very bothered by it, and wrote James this heated reply:
It is quite untrue to the characters!  Aragorn was always conflicted whether he ought to become king -- the whole fear of inheriting the corruption from his ancestor and "this weakness runs also in my veins".  The "still not king" theme really goes against his central passion as a character!

Also he showed no predilection whatsoever to being attracted to hobbits.  I feel like this writing just took a bunch of cheap shots that are not based on the actual book.

Here is what I would write instead:

Day 1: Stressed!  Too much on my plate.  Need to delegate more.  Will tell Boromir to watch the hobbits.

Day 5: Holy crap, lost the necklace that Arwen gave me.  Omg omg omg.  This really hurts my chances of getting back together.

Day 6: Amazon primed a replacement necklace. 

Day 8: Hobbits captured by orcs.  Damn it Boromir, you had ONE job.

Day 10: Went into Hall of the Undead.  Bent them to my will, and commanded them as an invincible army.  Also totally got the eyes from Eowyn.  So, you know, a pretty good day.

Day 11: Arwen is more innocent cute but Eowyn is more sexy cute! What do I do!

Day 12: Omg, almost called Arwen "Eowyn".  Fuck, that was close.

Day 15: Today Eowyn talked to Faramir more than to me.  What the heck!  

Day 16: Frodo succeeded with the ring!  Wow that was like a 1 in 1000 chance.  Glad that worked because I had ZERO backup plan.

Day 17: Totally saw Eowyn making out with Faramir.  Arrrrgh.

Day 20: Saved those hobbits Merry and whats-his-name, rode around on a white horse, standing ovation, yeah yeah!  Proposed to Arwen.  She is totally the One.  I always knew it from the first moment I saw her.  Have never liked anyone except her.  

Day 87: Wait, wasn't I supposed to release the Army of the Dead from their curse? I don't think i remembered to do that??  Oh well, if it were important, someone would have reminded me.

Sunday, December 09, 2012

Freedom + Fashion charity cooking event!

Michelle and I had such a lovely cooking lesson with Christine Ha, the blind chef who won the reality cooking show Master Chef.

Christine and her husband.

We learned to cook rack of lamb.  However, the ingredients were already pre-prepared and the last steps were also done for us.  So all we did was searing the lamb and then a ceremonial coating of the lamb with bread crumbs.

Michelle and me with haricot verts!

The first course was tomato basil soup.  We did not cook this either.  It was like we did "token cooking".

The lamb that we contributed toward making.

watching this music video repeatedly

Is this the best music video ever?

Saturday, December 08, 2012

advice: how to motivate your project partners

Recently, two different friends talked to me about motivating their project partners.

Friend: "I want my partners to work hard.  Does this mean I have to work longer than all the rest of them?"

Me: "No, you just have to set clear goals.  If I told you that tomorrow we might go on a run, you wouldn't be sure how much to prepare, so you'd watch me and follow my lead.  But if I told you that tomorrow at 10am, I'm coming over to get you and then we're running 5 miles, you'd drink water and go to bed early.  No matter what I'm doing, you'd be stretching and getting ready on your own."

Friend: [agreeing noises]

Me: "Being clear makes it a lot more motivating.  If I told you that we're running 5 miles at 10am, it's very likely that we'll do it.  If I just said that we're running tomorrow, we'd look up at 11pm after a day of playing Starcraft and say, 'Weren't we supposed to go running today?'"

Friend: "LOL true."

deploy jokes

Late at night, we needed to perform a small site maintenance.  US users are sleeping, but it's the middle of the day in Australia.

X: "People from Australia are on the site, and we need to do things to it!"

To our Australian engineer: "Can you tell them to stop using the site for a few minutes?"

Australian engineer: "Okay!"

X: "Email all@australia."

On skype chatroom at midnight:

On-call engineer: "Okay is everyone ready to deploy?  9+5=13"  [Our deploy script requires the engineer to do a simple math problem.]

On-call engineer: "I mean, 8+5=13.  It's scary I got that wrong at first."

Me: "Have you stopped drinking at all between beer o'clock [Minted Friday happy-hour tradition] and now?"

On-call engineer: "Don't ask me questions you don't want to know the answer to."

On skype chatroom:

On-call engineeer: "Oh web4, where art thou web4,
Deny thy code and refuse thy branch,
Or if thou wild not, be but sworn my Thursday
release XXXX branch"

Me: "You can't rhyme branch with branch!"

Friday, December 07, 2012

Minted shirts!

Our shelves of Minted shirts!

When I worked at Microsoft, because there were so few women, the shirts came only in men's sizes. It sent such a loud signal that women were not valued. Is that history now, or are there any companies nowadays that still do this?

If there are still any that do this, and you are a woman who works there:
1. that's awful


Thursday, December 06, 2012


James volunteered to moderate my blog comments for me.  This is exciting, to say the least.

James: "I set up push notifications on my phone for your blog comments.  So that I can moderate them right away."

Me: "Wow!  That's so great!  My fear is that the novelty will wear off, and you'll have a longer and longer lag to moderate them."

James: "If it isn't working out in a week or so, I can write an app."

Me: [getting really upset] "What, to do sentiment analysis and auto-moderate?  If I was going to go that way, I would've just written that myself!"

James: "An app that shows the blog comment on the lock screen, so that I can approve it from there."

Tuesday, December 04, 2012


My mom cooked a token turkey breast this year. She was all stressed over it, even though it was pre-marinated and just needed to be roasted.

Meanwhile she stir-fried six Chinese dishes with ease.

Tom brought his girlfriend to meet my parents. Afterwards we all squeezed in one car and went to the Cosmopolitan hotel. I love the style of the interior decor! Three-story-tall chandelier strings, leather walls, egg chairs.

I am glad I flew to spend Thanksgiving with my family, even though it was only 30 hours so that I could go into work on Friday morning. It was a great 30 hours!

Monday, December 03, 2012

Team being adorable

At work, around 7pm when most people have gone home.

Me: "Does M know that he's supposed to deploy code tonight?"

D: "Yes."

Me: "Oh, how do you know that he knows?"

D: "He made it clear.  Multiple times."

Me: [laughing] "By complaining?"

H: "Yes."

My team is so endearing.

Temp box

At work, we ordered several pizzas. H (brilliant young engineer) shared a pizza with me, and we decided to store the leftovers in the work fridge.

H: [coming back from the fridge] "The large pizza box doesn't fit. I need to transfer it to the smaller box.". [opens small pizza box, discovers there is still pizza in it] "I need to swap these."

D (intern): [getting up with his own empty pizza box in hand]: "You're going to need a temp box. Unless you can XOR pizza."

Later the interns sent me a reddit thread about top revenge stories, and I spent one hour reading it, riveted.

Ice cream

I got an ice cream maker. At first, I was super obsessed and made sorbets continually.

I made a pumpkin pie ice cream. It was too sweet but otherwise good.

I want to experiment with weird flavors like bacon ice cream, basil ice cream.

Sunday, December 02, 2012

Knights of Round Table

E and I walked along Crissy Field today.  It is one of my favorite areas of San Francisco.


She mentioned that one engineer at her work is nitpicking on irrelevant details. My theory is this behavior happens when the vision and milestones are not clear.

It is like how after the Knights of the Round Table rid the land of barbarians, they got bored and began picking duels with each other. When the quest for the Holy Grail began, the knights had a common purpose again and stopped squabbling.

Afterwards we had french toast and scrambled eggs in the Marina.  

It is pretty amazing that I get to live in this beautiful city and eat delicious french toast.  Thank you past-self from a previous life for building up enough karma!

Thursday, November 22, 2012

Pear tree!

Parents planted a $14.95 pear tree years ago, and now it is full of pears every year!

Q4 expansion

We expanded into our annex office last weekend We have the whole floor for the rest of the year, to house our seasonal graphic designers and customer service reps.

The annex looked barren at first but a lot better once we put in carpet and 30 lamps!

Tuesday, November 13, 2012


DS: We're doing XX checkins per minute.  [screenshot labeled Holy_checkins_batman.png]

SM: I loved that episode of Batman and Robin, where they both wrote code and checked it in.

JH: Looks like batman is committing code, and robin is just merging it into branch.

Monday, November 12, 2012


Talked to my mom on phone last night.

Me: "One of my coworkers has been stressed for the past few weeks."

Mom: "That's easy. Just tell them to lower their standards. Then it is much simpler to be happy!"


My mom is so cheery. She is the opposite of Tiger Mom.

Saturday, November 10, 2012

Lobby lights

Lobby of the Hyatt in San Francisco is gorgeous.

Me: [taking photos of Hyatt display]

Friend: "There are people who went into space and took fewer photos than you're taking right now."

Thursday, November 08, 2012

it's raining today in San Francisco

Today during work, on the chatroom:

J: FYI I have an umbrella anyone can borrow if you need one for lunch, an errand, etc

D: Thanks, Rihanna.

Friday, November 02, 2012

Super happy birthday party!

Steve held a surprise birthday party for his wife.

Steve gave the best speech!

"If I were to do it over again. I would do some things differently. Like not work so much. I love my wife. I love my life. I hope you find the kind of success I have."

Soooooo great!

everything you want, everything you need, everything inside of you that you wish you could be

Today I read this post and it resonated:
if there’s one thing I believe more than I believe anything else, it’s that you can’t fake the core. The truth that lives there will eventually win out. It’s a god we must obey, a force that brings us all inevitably to our knees. And because of it, I can only ask the four women who wrote to me with the same question: will you do it later or will you do it now?
Many of us believe that if a situation is perfect on paper, but we're unhappy with it, what needs to change is us. I've had several friends who think if they're at a job that is high-status high-paying high-growth, but they're not happy, then the problem is with them.  Even if the culture is fratty and they are not, or if the culture is extremely critical and they are not, they think that they're unhappy due to a psychological failing rather than a mismatch.

Sometimes it is truly just anxiety pulling you back. Or maybe you are letting what's on paper blind you from the reality of whether you actually want it. I remember a long time ago, driving on 101 while talking to my friend on the phone. I listed out all the ways my then-current romantic relationship should be perfect, how much I respected him and how great he is in so many ways.

My friend said, "Yeah, it turns out that whole list of reasons isn't as important as actually being happy in the relationship."

Wise words. Sometimes hard to follow.

Thursday, November 01, 2012


Today at Minted, we had to quickly fix server config, NAS drive, data tables. But costumes were great. We had 99 problems but a witch ain't one!

Tuesday, October 30, 2012


I am obsessed with the BBC show "Sherlock". An acquaintance said that the character Sherlock Holmes has Aspergers.

Sherlock demonstrates low empathy. He has a photographic memory. He can identify all the symptoms of love (dilated pupils, elevated heart rate) but he doesn't say "I love you". There is one woman he is closest to, and he's content with never speaking to her again, as long as she is still alive in the world somewhere.

 I am really intrigued by Sherlock Holmes! I wonder if it is because Silicon Valley idolizes the archetype of the brilliant arrogant immature founder, driven toward utilizing his talents. Sherlock doesn't even care about getting paid. He doesn't want to get famous via Watson's blog. He doesn't care about his personal sacrifice, or endangering his own life. He just wants to do what he's good at. He's just like the dream Silicon Valley founder for VCs!

Monday, October 29, 2012

Painting class

Did this painting on Friday night. I got so displeased after one hour that I threw away my canvas and started over. Much happier with the second version.

Tuesday, October 23, 2012

Tea fueled musings and quantum cat

I drank chinese tea at dinner, and the caffeine is giving me insomnia.

Starcraft tournament with craft party this Friday at Minted beer o'clock!

Minted has taught me a lot about human relationships (along with startup and business learnings). I get along really smoothly with Melissa. Occasionally I start to get stressed at her, but she will reply with something honest yet calming, and the moment immediately blows over.

I also learned that if someone tries to help but cannot find a way to help, they will often then switch to sabotaging. Most sabotage came from a thwarted desire to help. Find a way for them to help, and the unhealthy channeling into sabotage will often stop.

I learned that much of conflict between two people is caused by a third person gossiping to one of them about the other. Two people can usually resolve many conflicts between them. But when their mind has been biased by another, it can only be undone with conscious effort or the passing of time.

I learned more deeply that perception is lagged. Back when I thought Google was fast-paced and so fun, the outside perception was "Does it make any technology except search? One-trick pony? Does it really make money?" A few years later, it felt slower-paced and less exhilarating to me, but that was actually the height of the external buzz when Google won "best place to work" repeatedly. Minted's growth is so exciting, and public buzz is following suit, with months of lag. It is fun to observe.

I learned that I can love my engineering team more every month, increasing over such a long time. They are so funny and endearing! Either I subconsciously hired partially for humor, or I find them more hilarious because they are dear to me. I keep trying to determine which one it is, and am not sure. I need to do some kind of blind test where I get printouts of their jokes vs a control group, and determine which jokes are funnier.

I learned that it is possible for two coworkers to become frustrated with each other, way past what I previously thought was the point of no return, and then for one heartfelt conversation to turn it around and make them get along better than ever.

I learned that users can be so kind and sweet.

I learned that it is very liberating to be able to be yourself at work and be accepted. Once I interrupted Melissa while she was giving a tour to an important interview candidate. She turned to me expectantly, thinking it was some dire site issue. I said "Sorry for interrupting but I need your RSVP for our chocolate factory tour!" Melissa laughed at me but accepted this impatience. It feels really nice to be accepted for your quirks, not in spite of them.

There are more learnings but now the tea caffeine is finally wearing off. Darn you, Chef Chu jasmine tea!