New Year's Eve.
Here is the list of books that I read this year, including author, title, year published, ISBN, and my subjective rating between 1 and 10.
James Herriot, “Every Living Thing”, 1992, 0-312-95058-6, 8.
Vernor Vinge, “Marooned in Realtime”, 1986, 0-671-65647-3, 8.
James A. Michener, “Tales of the South Pacific”, 1946, 0-449-20652-1, 7.
A. E. Van Vogt, “Slan”, 1940, 6.
Gordon R. Dickson, “Mission to Universe”, 1965, 0-345-25703-0-150, 6.
Agatha Christie and others, “The Floating Admiral”, 1931, 6.
Lilian Jackson Braun, “The Cat Who Played Post Office”, 1987, 0-515-09320-3, 6.
Poul Anderson, “Tau Zero”, 1970, 8.
John Scalzi, “The Last Colony”, 2007, 978-0-7653-5618-5, 7.
Dick Francis, “The Danger”, 1984, 0-449-20263-1, 7.
Lilian Jackson Braun, “The Cat Who Sniffed Glue”, 1988, 0-515-09954-6, 5.
John D. MacDonald, “The Lonely Silver Rain”, 1985, 0-449-12509-2, 6.
Francisco X. Stork, “Marcelo in the Real World”, 2009, 978-0-545-05690-8, 7.
Charlotte Armstrong, “Seven Seats to the Moon”, 1969, 6.
Alistair MacLean, “Partisans”, 1982, 0-449-20342-5, 4.
Lawrence Block, “The Burglar Who Traded Ted Williams”, 1994, 0-451-18426-2, 7.
Elmore Leonard, “Mr. Paradise”, 2004, 0-06-008396-4, 6.
Lewis Carroll, “Alice au pays des merveilles”, 1865, 2-87714-315-5.
Bernard Werber, “Le rire du Cyclope”, 2010, 9-782226-215291.
Iain M. Banks, “Excession”, 1996, 0-553-57537-6, 7.
Bernard Werber, “L'Ultime Secret”, 2001, 9-782253-153986.
Bernard Werber, “Le Père de nos pères”, 1998, 9-782253-148470.
Judy Blume, “Wifey”, 1978, 0-671-83531-9, 6.
Henri Beyle (Stendhal), “Le Rouge et le Noir”, 1831.
John Scalzi, “Zoe's Tale”, 2008, 0-7653-5619-8, 8.
Ayize Jama-Everett, “The Liminal People”, 2011, 978-193152033-1, 7.
Tracy Kidder, “The Soul of a New Machine”, 1981, 0-380-59931-7, 8.
Mary Renault, “The King Must Die”, 1958, 0-553-20706-7, 7.
Lilian Jackson Braun, “The Cat Who Went Underground”, 1989, 0-515-10123-0, 6.
Julia Serano, “Whipping Girl”, 2007, 1-58005-154-5.
Compared to last year, this is a short list, only 30 books instead of 60. I slowed down a lot because 5 of those books are written in French. My medium-term goal is to read 10,000 pages of French. I'm about 2,000 pages into that goal. After that, I intend to try listening to audiobooks in French, but I have less confidence that I will actually do that because I've never been a fan of audiobooks.
The average rating this year is 6.65, higher than last year's average of 6.20. Last year I rated every book, but this year I didn't rate the books I read in French, because I still feel somewhat tone-deaf and insensitive to quality in that language. I don't know whether I'm reading better books or just rating them higher.
For dinner yesterday I made the first use of my new clay cooking pot. I made the Clay Pot Ginger Pork With Figs, Fennel & Gojiberries recipe from the SF Chronicle a few weeks ago. It was delicious and unique. I look forward to the next clay pot recipe.
I am not really pleased with Home Depot at the moment. I ordered three items from their website last week with free “2–4 day” shipping. One item was shipped Dec. 24, the others were shipped Dec. 26. UPS predicts that all of them will be delivered Jan. 4. That is not 2–4 day shipping. That is 9–11 day shipping.
We are sorry …
… but we have temporarily restricted your access to the Digital Library. Your activity appears to be coming from some type of automated process. To ensure the availability of the Digital Library we can not allow these types of requests to continue. The restriction will be removed automatically once this activity stops.
We apologize for this inconvenience.
Please contact us with any questions or concerns regarding this matter: portal-feedback@hq.acm.org
Thank you for contacting ACM. My name is Hugh and I will be happy to assist you today.
Please clear your browser's cache and try again.
If you have further questions and/or comments, please do not hesitate to contact me. Have a wonderful day!
This is their idea of a response for a serious bug in their code, for a service that I am *paying* for? “Please clear your browser's cache and try again”? Really? Why am I paying for this again?
One of Cassie's grandmothers has a tendency to start talking “out of the blue” about things without any introduction.
She's a context-free grandma.
I had a bug to fix so I went into work.
I made “Pork with Rich Vegetable Gravy” from the Betty Crocker cookbook for dinner. This is an easy, quick (half an hour) recipe that produces results that nevertheless look and taste very fancy. Recommended.
Christmas!
Most of my presents were items for the kitchen (which is what I wanted). My sister and her husband gave me a beautiful donabe, which I am really excited about (maybe I'll use it tonight). My in-laws gave me a pizza stone for the oven (now I need to get a pizza peel). My parents gave us a set of wine glasses. And there was more, too.
One of Cassie's presents, from her grandparents, was a digital camera for children. We took a walk around the neighborhood, with Annie, and she took photos of everything. I think she really likes it.
Christmas Eve.
We went to a party at a Brazilian friend's house. The tradition in Brazil is to have dinner at midnight on Christmas Eve. We did not make it that late, leaving about 10:30, although we were the first to leave.
Annie has started eating the cat's food. She prefers it to her own. Her bowl hardly needs topping up.
We discovered last night that one of the headlights on the car was out. This happened before due to a loose wire, which our car shop fixed, so I assumed that the same thing happened again and I was mad at the car shop for not doing it properly. But Kate pointed out that it could really be burnt out this time, so I popped the hood and got the owner's manual out of the glove compartment, and tried the bulb from the nonworking side of the car on the working side. It worked. So I quickly ran to the auto parts store before they closed and fixed the problem. I am happy, because I know very little about cars but managed to fix the problem myself.
The dog, Annie, that we're keeping for the holidays was dropped off in the morning. I've never seen a dog cower so much (it's a rescue). Poor thing.
It rained and poured all day. When I took the dog for a walk around lunchtime, there was a river running down the street in the gutter.
In the morning some of our friends unexpectedly turned up at the house. We spent the rest of the morning with them, and then went downtown to lunch.
We made and decorated gingerbread cookies in the afternoon, and then took them to some other friends in Sunnyvale, where we ate dinner and watched Christmas movies.
It's the end of the world as we know it…
It seems that I've lost a few pounds, probably due to my 22-mile bike commute. This is not necessarily a good thing, since I'm already at a good weight for my height and frame.
What a long day! Dentist appointment first thing. Then to Cassie's Christmas show at preschool, which involved lots of time waiting outside in the cold. Then I had to rush off to the office, having not enough time for lunch, to prepare some work to present to a very quick-thinking person from a partner company, while still having to get in an interview.
I only did OK because the interview got canceled.
I have a cold, too.
I keep seeing articles about the evilness of “Reply to All” in the news. Here are two that I specifically remember running into before:
I don't understand it. “Reply to All” is essential. Without it, it becomes very difficult to have email conversations on more than a one-on-one basis. That would make collaborating with people online in a reasonable way impossible. The articles I've read somehow never mention this. Do other people just use email for forwarding chain letters and following up with “me too”?
Kate and I went to the San Francisco Bulls game at the HP Pavilion in San Jose, leaving Cassie with a babysitter, to celebrate our 8th wedding anniversary.
We are helping out a family in Kate's mothers club by taking care of their dog for a week over the holidays while they are away. This morning we met the dog, a ten-year-old golden retriever named Annie, for the first time. I think it's going to work out well.
So far the most exciting application I've found for my phone is a French dictionary. I think that it actually downloaded the entire dictionary into the phone's memory. At any rate, it is faster to type a word into the phone than it is to look up the word in a paper dictionary, and much faster to look up additional words from the first entry by following links.
The dictionary includes pronunciations, too, which are occasionally useful.
It appears that the name of this application is just “French.”
A fatal crash on the 280 freeway shut it down for several hours, which caused all northbound traffic from Palo Alto to San Francisco to melt down for hours. This didn't affect my bike commute home, except to make me marvel at the solid stream of brake lights all the way from Page Mill Rd to Brittan Ave along Junipero Serra and Alameda de Las Pulgas, except for a little respite between Jefferson and Woodside.
This was also the night that Cassidy's preschool was holding a “pajama party” for the children. We dropped Cassie off and tried to go to dinner, heading south from preschool obviously. But northbound drivers were obstructing many of the intersections, trying to edge their way though left turns and even just plain not honoring red lights, just due to pure selfishness. In the two and a half hours that we had away from Cassie, we spent an hour and a half of it just trying to get to Palo Alto and back.
My phone arrived.
I read an interesting article today in alt.folklore.computers
, about how in the 1950s jobs were listed in newspaper ads sections classified as for men or for women:
From: hancock4@bbs.cpcn.com
My local paper did this years ago. It also had a section “MEN & WOMEN” meaning the employer didn't care. But not many jobs were listed under that.
Programming jobs were listed under Men, though I think even in the 1960s some companies would have considered a woman for such jobs, especially if she had a math degree. In the later 1960s it was hard to find programmers, so companies had to be more open-minded. (Not sure about the 1950s, many larger or upscale companies were very rigid back then, especially for professional positions*). Women were part of programming right from the start. Indeed, it was thought women would make better programmers because they could focus on the minute detail required in machine language or crude assembly language work.
*For higher-end professional positions, while the company was interviewing the man, an executive's wife would take out the candidate's wife to lunch and check her out. Even in the 1960s companies expected an employee's wife to fit their expectations. A TV show spoofed that, “Ocassional Wife”. I'm not sure a mere staff programmer would be subjected to this treatment, but a manager of programming would be. Back then companies expected employees' wives to support and also pressure their husbands to work hard to get bonuses and promotions.
I made a new batch of Thai red chili paste for tomorrow's dinner.
For dinner, I made steak with bacon gravy, served with green beans and red potatoes. Delicious.
A New Zealand Herald article has a mistake or misquote from “Telecommunications Users Association chief executive Paul Brislen” that really spells out where the RIAA and MPAA are coming from:
It will lead to things like deep pocket inspections [filtering] of everybody's content…
In other words, the guys with the deep pockets get to inspect everyone's traffic.
This isn't the first time someone has made this mistake, as a web search for “deep pocket inspection”
will quickly show, but it's indicative of how government and corporate officials think.
Quiet day at home. Went to a Christmas party in the evening.
Part of Junipero Serra was repaved today. On my way home in the dark, the weather was chilly, and the still-warm sections of pavement threw a fog drifting over the road. It was an eerie effect to see fog rising up from the road instead of sinking down from the sky.
I accidentally had a book shipped to my old address. No problem—I went to the USPS website and told them to hold it at the Redwood City post office for pickup. The website even gave me a special confirmation number to give the postal employees at the counter.
Except that the postal employees had no idea whatsoever what the number was. They had never seen such a thing, ever. I explained that it came right from the “redelivery” page on the USPS website. Blank stare. They made a perfunctory attempt to find my package, but after a minute of looking said they needed the tracking number. I hadn't brought it, because I had a magical confirmation number that was all I needed.
That afternoon, I called 1-800-ASK-USPS to find out about my package. Sure, said the woman on the phone, my package was at the Redwood City post office. Yes, the one I'd been at. Yes, she looked up the confirmation number, it was correct, and it said that my package would be held for pickup. I asked what did I need to pick it up? Only photo ID. Did I need the tracking number? No, she said. Did I need the confirmation number? No, she said.
I printed all the information I could from the USPS website about my package. This morning, I went back to the post office and presented it to the same employee as before. He went in the back. Two minutes later, he came back with a printout saying that my package had been sent to the San Carlos post office.
This evening, I got home and my package had been delivered.
Had another family dinner at Cuisinett tonight. Cassidy fell asleep during dinner, so Kate and I had a very pleasant evening.
You have a problem. You think “I know, I'll use bits.” Now you have 10 problems.
while(1){;} jokes never end.
They go on for(;;) ever.
numeric_limits<double>::infinity() jokes always get overwhelmingly positive results.
My opaque addressing jokes always end up flat.
I try to tell quota jokes, but they never go over well.
My small integer jokes always seem to come up short.
My #ifdef jokes are such a hack.
I would tell (void*)null jokes, but nobody gets the point.
Entropy jokes are so random.
I'm always afraid to tell locking jokes. They're too contentious.
If I tell too many increment jokes, things can get negative.
I have my limits, for me a[-1] jokes are out of bounds. (That reminds me of the last time I told an a[sizeof(a)] joke and was practically overrun with criticism.)
My BOOST_STRONG_TYPEDEF jokes are truly without comparison.
As opposed to race condition jokes, socket jokes are always acceptable.
(Most of these due to Martin Casado and Murphy McCauley.)
Had a bunch of friends over for dinner and to see the new house.
Rain continues to come down in rivers and buckets. It's been raining all week, and it's going to continue raining into next week. I hope that my biking stuff is dry enough on Monday to take it.
Went to see Skyfall. It's a little different from a classical Bond movie. 007 is aging and vulnerable, and one of the longtime characters in the series doesn't make it. I enjoyed it thoroughly.
PG&E is working really hard to display its incompetence. The work along Junipero Serra was originally supposed to take 3 months. Then they extended it to 4 months. Today, they've extended it to 7 months. Really, guys, how hard is it to test and replace a pipe?
Google recruiters sure are persistent. I think I've had at least two “pings” a year from one recruiter or another at Google since at least 2005.
I could tell you a joke about UDP, but I'm not sure you'd get it.
The best thing about RMTP jokes is that everybody gets them.
My NTP jokes are always timely.
My NNTP jokes are rarely newsworthy.
The best thing about TCP jokes is that everyone gets them.
Finger jokes are NSFW.
The problem with IPsec jokes is that only one person understands them.
The thing about DHT jokes is that people eventually get them.
rot13 jokes are always good for a ynhtu.
I managed to order a Nexus 4 after hours of trying sporadically. I am frustrated.
First real use of my new bike light for the commute home tonight. It lights up the road better than the headlights of the cars next to me. Totally awesome.
We put up the Christmas lights today. My main contribution was to figure out how to turn on the three outlets just below the eaves. They are controlled by an industrial-looking automatic timer in a metal box up in the attic.
The new bike light is very impressive. It can clearly light up pretty much the entire back yard at once, and it's not a small back yard.
I had foolishly and accidentally ordered two books to be sent to my old address. One was delivered yesterday according to the tracking information. This morning, I stopped by the old house to check for it. I apologized to the man who answered the door, who gave me the book. He also agreed to save the other book for me when it arrives.
I tried to by one of our old neighbors to say hi, but they were out.
I fixed 8 bugs in GNU PSPP today.
I urgently needed a new bike light, so I went out to Chain Reaction this afternoon to get a new one. I got a NiteRider Lumina 650 for $100.79 after discounts, which seems to be a great price for a good light.
Happy Thanksgiving.
I noticed that a new edition of Hacker's Delight is out. This is one of my favorite programming books, so I ordered a copy right away.
The vocabulary of cloud can be confounding at times. Here's a helpful “Cloud Glossary.” Print it out and refer to it often.
“Service as a Service.” This is what you get when you nest one cloud inside another.
Formal methodology for inserting easter eggs into a cloud.
“Innovation as a Service.” This is a myth. If you actually invent an IaaS cloud, you will make a fortune—from incumbents paying you not to launch it.
I especially enjoyed this bit of When the Nerds Go Marching In:
The team had elite and, for tech, senior talent—by which I mean that most of them were in their 30s—from Twitter, Google, Facebook, …
Some other quotes resonate with me. For example:
I always look like a fucking idiot. And if you look like an asshole, you have to be really good.
And they didn't look like me and I didn't look like them. And if I'm going to do this, and look like an idiot, I have to step up. Like if we're all at zero, I have to be at 10 because I have this stupid mustache.
It reminds me of this, from Ender's Game:
There's only one thing that will make them stop hating you. And that's being so good at what you do that they can't ignore you. I told them you were the best. Now you damn well better be.
(I used to use that in a file of random signature quotes. I got rid of that file a long time ago, and so I couldn't find the exact quote on my computer, but it was easy to pull up by typing ben pfaff orson scott card
into Google. Isn't it nice how the Internet can remember everything for you?)
Went to Chabot Space & Science Center with my family and some friends today. It has some interesting exhibits, like a Soyuz capsule and a real Russian space toilet, but it is also out of date in some ways. For example, Kate mentioned that she spotted Pluto being counted as a planet in a few places, and I did not see any mention of any of NASA's recent Mars missions.
We went to a show in the planetarium. I expected an astronomy show, but it was really just an IMAX movie, a rather dated one since it focused on the Space Shuttle.
Cassidy was too young to get the most out of some of the exhibits, which really required reading and some math to understand. She enjoyed them anyway, because most of them had knobs or levers or buttons to push, but she didn't understand what was going on.
I found myself wishing that we had gone on a clear Friday or Saturday night, because of the two large telescopes that are open to the public.
Bought a couple of fillets of red snapper and intended to bake them for dinner. Instead, a bunch of our friends came over and we had potatoes and eggs and sausage, because there wasn't enough fish for everyone. Oh well, we'll eat it tomorrow instead.
Yesterday I and about 40 of my coworkers spent the afternoon at an interview training session. I expected that it would be about how to better judge technical competence from an interview, since that seemed to me to be the hardest part of interviewing, but in fact it was all about “behavioral interviewing,” that is, trying to learn how well someone will fit in culturally.
I did get some useful information out of it. The trainer convinced me that it is important to cover nontechnical skills and behaviors as part of interviewing. He explained an approach to behavioral interviewing that makes sense and that I think we can implement. He gave any number of useful tips that I'm going to use in the future.
Going in, I was convinced that it was going to be a boring three and a half hours. When the trainer asked for a volunteer to be interviewed as part of the class, I raised my hand immediately, since there's nothing to make a class more interesting than participating. I did find the mock interview a little embarrassing because, in an interview, you're expected to sell yourself, and that's the way I played it, rather than soft-pedaling my accomplishments as I usually do.
After the class, a couple of my coworkers told me that they'd wanted to know what I'd done before Nicira and so they enjoyed hearing about it in the mock interview. I hadn't expected that.
I'm a little irritated with Google this week. I had signed up for notification when the Nexus 4 became available, but Google never notified me, either before or after the Nexus became available and sold out almost immediately. After it sold out, I signed up for notification when it came back in stock, but now that option has now disappeared from the website, so who knows whether I'll actually get notified at that point.
Worse yet, Google is taunting me with ads on slashdot and other websites. “Introducing Nexus 4, 7, and 10. Shop Now.”
Reading an article in the San Francisco Chronicle tonight, about the new health care exchanges in California, I came across this paragraph:
The state's exchange, recently named Covered California, has already received almost $240 million in federal funds to create an online portal where people can shop for insurance. On Thursday, the exchange board expects to submit an application for additional funds.
Do you realize how much health coverage you can get for $240 million? And this state board spent all of that on a website? And they're going to ask for more money on top of it? I am outraged. I hope that this is somehow a typo.
I cooked up a batch of stock using the remains of the duck that we roasted last week.
Over the weekend, I started reading a professional cooking textbook that a friend lent to me a while back. It's really informative, since unlike cookbooks it actually gives the theory and the rationale behind how ingredients are combined and cooked.
We had an unplanned party all afternoon at the house with friends. We poured homemade chili over grilled bacon-wrapped hot dogs, baked and ate pumpkin pie with ice cream, and drank Mangria (which we didn't really end up liking very much) and beer. We found other stuff to do too but I really just remember the food and drink.
Ordered some more furniture, including an entertainment center so that we don't have to keep the TV on a wheeled cart that seems likely to tip eventually.
Goldman Sachs recently joined the ONF board and invested in bigswitch. These could be totally disconnected events, one by an internal development arm and the other by an investment arm. Or they could be part of an “SDN” strategy. I'm curious, even though the answer has no real significance for me personally.
Ken Duda looks a lot like Niles Crane.
Almost all of the candidates and positions that I supported did well in the election. The most notable exception is the proposition to drop the death penalty in California, which failed. I've been opposed to the death penalty, myself, since 10th grade, when I prepared a position against it for a class debate and ended up convincing myself. At the time I had a list of ten good reasons, with some backing research, but the one that I remember best is the great expense of capital punishment. Also, there is always the possibility of making a mistake, and such mistakes have actually happened. Also, one of Nicira's founders is a major supporter of anti-death penalty efforts so perhaps I owe something on that score.
Election Day.
I have two friends who are naturalized citizens, both from Brazil, each of whom will be voting in her first presidential election. Congratulations to both of them.
Helpful hint: You can save time waiting for a voting machine by asking for a paper ballot. (It's not the only reason that I always vote on paper, but it's good enough.)
I contacted Schlage about the keypad lock. They said that I have to return it to the store because of the missing keys. Argh.
Roasted a duck tonight.
The front door deadbolt lock hasn't been working right since I rekeyed it. Tonight Kate got her key stuck in it. After I removed the key and disassembled the lock, I wasn't able to get it working well again, so I went to Home Depot and got a new Schlage keypad lock. It's really nice, except that the regular keys were missing and the keypad isn't really backlit as the package and the documentation claims in many places. Between Home Depot and Schlage, I'm inclined to blame Home Depot for the first problem (the box was open when I bought it) but I don't know how they could screw up the second. I'm going to call Schlage about it tomorrow.
Finished reading The Soul of a New Machine. I see why this is such a classic. It reminds me very much of Steven Levy's Hackers.
Earlier this week, on my way home, I came across a cyclist with a flat tire. I lent him my tire levers and, after he pinch-flatted his own spare tube, a spare tube, and my pump. That was enough for him to get a tube back into the tire.
Then the weird part started. His chain had fallen off, but putting it back on wasn't working. It was as if he had broken the chain, fed it through the wrong way, and closed it back up. He kept trying to lift it back onto the chainring and gears, but it wasn't right. I was trying to show him how the chain was fed correctly through on my own bike, as a point of comparison, but he didn't get the point. After watching him struggle with that for at least five minutes, I went on my way.
Some people are very difficult to help.
Q: What's black and white and wet all over?
A: All the zebras in New York.
Mike Spencer related the following story in alt.folklore.computers
:
In the late 60s, a friend of mine, then very hippie-looking in a hippie-looking VW Microbus, was flagged down by a Boston traffic cop in the middle of a nasty, jammed-up Jamaica Plain intersection. The cop blew his whistle, waved cars away from one street, jumped into my friend's VW and yelled, “Police emergency, go there!” (pointing). Terrified, my friend popped the clutch and went. The cop leaned out of the door, shouting “Emergency, police, emergency!” for a block, closed the door and sat for another two blocks and then said, “Stop here. Let me out. I couldn't stand it for another minute. I'm gonna get fired. This is the second time I've done this. Thanks.” Got out and walked off.
Went to the ONF workday in Santa Clara and attended the “extensibility” working group. I had hoped that we could have a real meeting of the minds regarding a number of issues that have been brought up on the mailing list and the conference calls, but in fact most of the people who would have been needed for that were attending other working group meetings.
I managed to rekey all six of the exterior door locks in the house to a single new key. It should be much more convenient than four separate keys for the four doors. I had to sacrifice an extra lock I had around learning how to not lose the springs, but once I got past that learning experience I found that it took a lot longer to disassemble and reassemble the locks than it did to actually do the rekeying step.
Giants won the World Series again tonight. I can tell just from the explosions and cheering outside.
My mom arrived to stay for a week.
VMware family Halloween party today, from 3 to 6.
Ordered a kit online for rekeying the exterior doors. Some reviews say it's easy, some say it's impossibly difficult. We'll see…
The bar stools that we ordered were delivered today. Unfortunately, they are not high enough for comfortably sitting at our counter, which seems to be unusually tall, so the delivery guy took them back to the store. We will have to pick out new ones.
Installed new door lever, with a push-button lock, on the guest bedroom door. It only took about 5 minutes.
On the other hand, Home Depot does not have the correct light bulbs for the overhead fixtures used in our bathrooms. It seems that I can order them online. Perhaps a specialty lighting store will have them.
My new range was installed today. I am so happy. This one is powerful and versatile. It even has a special low-temperature mode for rising bread dough.
Lots of rain today, for the first time this season.
Went to the Monterey Bay Aquarium with Kate and Cassie, then came home.
Drove to Monterey for a weekend family vacation. We walked along Fisherman's Wharf for a while, then we rented a bicycle surrey and bicycled along Cannery Row. Dinner at Epsilon, which Kate says is the most authentic Greek restaurant she has eaten at in the United States.
I finished reading Zoe's Tale by John Scalzi. It's a retelling of the events in The Lost Colony from Zoë's point of view. Until about 20 pages from the end, I thought that it was a pretty ordinary rehashing of the story. Then there was an unexpected twist that I'm still thinking about, which made it worth reading.
We had a “going-away” party for Cassandra this afternoon at the office, since we managed to drop Cassandra entirely from our software.
Kate was busy tonight so Cassie and I walked to downtown San Carlos for dinner, then to the Halloween store near the freeway.
I'm tired of the term “deep dive,” referring to software. The term conjures up oscilloscopes and logic probes, or at least GDB, strace
, hex dumps, and esoterica. What you actually get: slides with block diagrams. Always disappointing.
One of our cats, Peanut, has been declining for some time now. She has been blind for a year or more and now seems quite deaf. She blunders around the house walking in tight circles, runs into walls, and even falls off tables. Kate took her to the vet yesterday, and the results came in today that her problems aren't treatable and will continue to get worse. We decided to have her put down, and this afternoon we all went to the vet's office to have it done. RIP Peanut. You were a good cat. I will miss you.
Finally resolved, for now, the customer issue that took up all last week. This particular customer is tricky. On the one hand, this customer does not do a good job of testing software in advance of deploying it. The result is that every problem that comes up is a crisis that must be addressed immediately, preempting everything else that we need to do. On the other hand, if this customer did not have such a nature, then a 30-developer, 3-year-old company would not have had a chance at deploying its software there in production. So it's a mixed bag.
Finally finished reading Le Rouge et le Noir. It's taken about 3 months. That's the longest I've taken to read a single book, in any language, in years. I've got to go read something earlier to follow now.
Cassie told us an original joke tonight:
Q: What do you call a giraffe that tells jokes?
A: A gi-laugh!
Ate dinner at Cuisinett, a very casual and family-friendly French restaurant in downtown San Carlos near our house. All the items on the menu are listed with the region of France from which they originate.
Finally managed to make some traction on a customer issue that has been hijacking my entire week. I hope to resolve it early next week.
We went to a Dark Star Orchestra concert tonight. I liked the designs of some of the T-shirts they were selling, but I just couldn't dissociate the abbreviation “DSO” on most of them from “dynamic shared object,” which ruined them for me.
I found myself reminded tonight how useful it is to have a second person to brainstorm difficult problems. I'm naturally a loner when it comes to building software, because when I'm in the groove I can write and test thousands of lines of C code per week. But debugging, troubleshooting, and performance analysis are fundamentally different from programming. Ten minutes of discussion were more productive, in this case, than hours of screwing around. I should have gotten Ethan involved in the morning, or even yesterday, rather than just before quitting time.
Took a day off. The four of us went out to Half Moon Bay to wade through the surf, and then back home to grill kebabs and make strawberry shortcake for dessert.
Dropped my friend off at the airport in the evening.
Went hiking at Hidden Villa with Kate and Cassie and a friend who's in town for the weekend. Made enchiladas with mole sauce for dinner.
Went out to Rooster T. Feathers comedy club in the evening with a couple of friends.
From an email on debian-devel-announce:
The committee expresses its disappointment in the communication problems which have lead to this issue, and strongly suggests that all involved parties be as awesome to each other as possible.
Picked a friend up from the airport for a weekend visit.
It seems that there is a clause in my employment agreement making it conditional on “competition” [sic] of a background check, so a few weeks ago VMware asked me to sign an authorization for one. Reading it over, it had a lot of objectionable stuff in it, far overreaching what one would expect an employment background check to do. I gave a list of my complaints to human resources, expecting that they'd tell me to take it or leave it.
Yesterday, I was very surprised to get a revised version of the agreement back that eliminates my biggest objections. Furthermore, they say that this improved version will be used not just in my case but for all future employee hiring. There is still much in it that I do not like, but it is greatly improved. I am taken aback that a little constructive criticism was able to have a positive effect at such a large company.
Went to the first San Francisco Bulls hockey game at the Cow Palace tonight. It was an exhibition game against Stockton. The Bulls were doing pretty well through the middle of the second period, winning 2-0. Then Kate and Cassie went to fill up their water bottle and while they were gone Stockton scored three goals. Cassie was falling asleep at the end of the second period, when the score was 4-3 Stockton, so I don't know how the game ended.
I ran into a guy who felt like talking on the way home. We had a conversation that lasted from Woodside Road almost to my house. I like it when this happens, but it doesn't happen very often. Usually, when I run into someone, one of us is faster than the other. It takes a pretty good match for a comfortable conversation.
Happy birthday to me.
I found myself biking behind a fast woman cyclist today. After a minute or two, though, I realized that even a very fit cyclist cannot go uphill at 20 mph without pedaling. I looked closer and found that she was riding an electric bike.
A minute later, the bag of stuff on the back of her bike fell off. I stopped to corral some of it, to keep it from rolling into the traffic lane, including two bottles of wine which had not broken. They felt heavy so I asked whether they were champagne and she said yes. I guess that probably explains why they didn't break, since champagne bottles need to be sturdy to withstand the pressure.
First smoke alarm low battery alarm in the new house. Here's the process I went through to get it changed. First, since this smoke alarm is about 12 feet off the ground, get a bench and a footstool and stack them. Then, standing on the shaky heap, rotate the smoke alarm with one hand while steadying myself with the other against a high ledge. The smoke alarm dropped a few inches but then stopped because it was hard-wired. I managed to flip out the compartment that holds the 9V battery and remove the battery. The annoying low battery alarm continued, of course.
I fetched a fresh 9V battery and installed it one-handed above my head, guessing at polarity since there was no indication. The alarm continued. Polarity must be wrong. I removed the battery again, turned it around, reinstalled it. The alarm continued. Now the compartment cover was jammed so I couldn't remove it anymore. I went to take a coffee break.
Coming back, fussing with the compartment cover had no effect but did hurt my fingers. Risking a fall, I used both hands to remove the power connector and take the whole smoke detector down. (The chirp didn't stop. Capacitor?) Once I did that, I was able to unjam the battery compartment, figure out the correct orientation, and replace the battery.
That was a mistake. The alarm began shrilling like the house was burning down. I quickly opened the compartment door again to remove the battery.
Standing up on the teetering pile again, I reinstalled the smoke detector and closed the battery compartment door. Finally, silence.
I am convinced that the people who design smoke alarms are sadists.
We've been carrying chairs from room to room with us because we don't have enough for the house. Finally we went out today and bought a few more.
Met a bunch of our friends in downtown San Carlos for dinner.
I am exhausted again at this day of the week, after a second week of my longer commute. If this follows the pattern from other times my commute has become longer, next week will be easier.
I'm thinking about getting a new phone since the AT&T microcell that we bought works only with 3G and 4G phones, which mine is not. Perhaps a Nexus. Or maybe some other carrier has a stronger signal here (but I'd still need a new phone).
Managed to get cable service working.
I am amused by this quote from Stuart Lawley, CEO of the company that runs the .xxx registry, regarding the company's upcoming “search.xxx” site:
It's porn, only porn, all porn. There's as much porn there as anyone would need, I'd imagine.
We picked up the Comcast cable modem today, but apparently the service isn't really activated, because we can't get it to work anywhere.
The AT&T DSL got turned off but Comcast isn't turned on yet.
AT&T installed DSL on Thursday, technically in a successful way, but with caveats. The worst of these was that the DSL modem could only be installed at one end of the house, downstairs. This meant that the wireless access point had poor signal strength in the rest of the house.
I spent a bunch of time Sunday figuring out what was going on. First, I wanted to know where a number of Ethernet and telephone cables in the same room as the DSL modem came out on the other end. If they went upstairs, then I could move the modem up there. So I crawled around underneath the house with pieces of cardboard duct-taped to my jeans to save my knees. After some hassle, I determined that in fact those cables just went across to the other side of the room, behind a desk where I hadn't noticed them before. So much for that.
Then I walked around the house with the DSL modem to see whether it could be convinced to work on any of the other phone jacks in the house (probably a dozen of them). No dice, not even a hint of it working. So I dove back under the house to learn more. After a while tracing cables, I figured out that previously three wire pairs had led away from the telephone interface box: one Cat-5e cable to the room with the DSL modem and two unlabeled wire pairs to other parts of the house. The AT&T installer, however, had only connected the Cat-5e cable and left the others unattached. He had been unimpressed by the signal quality over those wires, so perhaps it's for the best.
We decided to switch to Comcast. I haven't heard of similar pervasive problems with cable wiring, and there are cable sockets all over the house.
We went out and ordered a new mattress and bed for the bedroom today. The old one will go into the guest room.
I actually started writing some real code on a new project at VMware today.
I'm feeling exhausted today, after biking over 105 miles to and from work this week.
A sentence in Le Rouge et le Noir, chapter 20, really speaks to me: “Elle est folle, il est vrai, en est-elle moins adorable?”
Kate was busy for dinner tonight, so she dropped Cassie and me off in downtown San Carlos. We walked around for a while and ate dinner at the Chinese restaurant near Laurel and Arroyo, and then we walked back home. Downtown is about a mile from our house, but some of it is uphill. I think the walk took about 15 minutes.
We have unpacked a lot of our things, but there's still a lot to go. I despair of finding a place for everything in the kitchen.
First day commuting from the new house. It's longer than before (10 miles instead of 8) and hillier, yet it takes me the same amount of time (about 45 minutes). Obviously I must be riding faster, but I'm not sure why. I am riding my lighter bike instead of my usual commuter, which might be the difference.
Moving day. Some friends of ours very graciously offered to take Cassie to San Francisco for the day with their kids, so Kate and I were left to do the move. This time we hired not just movers but packers too, which meant that most of the time I was able to just sit out of the way and read the newspaper or my book.
In the evening our friends brought Cassie back along with some dinner. We sat together in the dining room at what now seemed like a tiny table, with paper plates and plastic silverware because we hadn't found our regular plates or silverware in the boxes.
Cassie went to a science class for preschoolers this morning. I walked around Redwood City looking at various things we might want for the new house. I think I figured out that I want a Wolf range.
Kate unplugged the wireless access point in the afternoon. Internet access won't be installed at the new house until next Thursday, so this will actually get posted later.
Kate and Cassie spent all day at the new house with a contractor, figuring out various little things that we are going to tweak. In the evening we invited a few friends over to eat dinner sitting on the floor, since there's no furniture yet.
Meetings all day today.
I took the mandatory VMware online ethics course, too. Among other things I learned that one must not bribe foreign government officials. Darn.
This morning we signed the final paperwork with the title company and wired the money to them.
Cassie and I walked around to all the neighbors tonight and let them know that we are moving soon. We'll miss them.
Our money from the Nicira acquisition came in, so we called our realtor and arranged to speed up closing on the new house. We'll get the keys on Friday.
Cassie went to her first t-ball game today.
We went to the art festival in Mountain View, looking for art for the new house. We bought a couple of small pieces from z. e pangborn. We weren't looking for toys, but we were so impressed by The Village Blocksmith that we also ended up buying a beautiful set of handmade blocks in a wooden case.
GNOME 3 has a huge title bar at the top of the screen that can't be hidden.
GNOME 3 has a huge application menu that covers and hides the whole screen.
GNOME 3 didn't keep any of my keyboard shortcuts, and when I tried to re-add them, the ones involving the Window key wouldn't work at all.
Fortunately, switching to XFCE was just a matter of “apt-get install xfce4”. So far, XFCE seems adequate.
There's an article at slashdot asking whether tech entrepreneurs need to know how to code, which sparked a memory of mine from high school. For a while, I worked for a local computer store owned by a guy who had run several businesses of different types over the years. (In fact, the other half of the storefront occupied by the computer store was a hair salon run by the owner's wife.) The owner, Randy, wasn't a computer expert by any means, but he was pretty successful at running small businesses.
Anyway, out at lunch one day, I remember remarking to Randy that I was impressed with how he'd done with the business and that I didn't think I could do anything like that. But Randy disagreed. “Ben, I know business and I hire techies. You know the tech and you could hire the businessmen.”
There are plenty of developers interested in joining a startup and plenty of developers interested in joining an established company. The former are willing to take what the latter perceive as a risk, the latter are not. I don't understand what risk that is. Startup salaries are in the same ballpark as corporate ones; in 2007, VMware and several startups all offered me the same starting salary. There's also a very high potential upside, though with low probability. Obviously, that puts me in the startup camp.
(One of my coworkers pointed out to me today that non-US citizens do take on significant risks joining startups, because the rules for H-1B visas require workers to leave the country within 15 days after losing their jobs. For a worker with a family, that could be a disaster. Working for an established company makes this less likely.)
The reason that this is relevant is this. Before the announcement of the VMware acquisition, Nicira had a lot of candidates in its recruiting pipeline. Now that the VMware acquisition has gone through, Nicira also has a lot of candidates in its recruiting pipeline. But there's not much of an intersection between the two groups, because most candidates interested in startups are not interested in large companies, and vice versa.
It makes sense, but I hadn't ever thought about it before.
The house is ours!
Labor Day. We signed all the documents to put an offer on the house in San Carlos. We should know more tomorrow night.
A pleasant day. We went to the San Jose Giants game this afternoon with friends. When we got home, we found that some neighbors had set up a neighborhood get-together and barbecue outside in the street, so we hung out and ate dinner when them for a few hours.
This morning we toured a few houses in San Carlos. We found one that we like enough to plan to put in an offer on it on Tuesday. Wish us luck.
One of my favorite parts of working at VMware, so far, is the cafeteria. It has good food, at very good prices. Today I had a generously sized sturgeon filet, well cooked, served with beans in a tasty sauce, topped with a fresh salsa. The sturgeon was even advertised as locally caught (farmed?). It was delicious, and it was about $7. I would expect to pay about $20 for the same thing in a local restaurant.
For the first few books I read in French, I felt as if my pronunciation was improving, even though I did not often read aloud, because I was hearing the words in my head in ways that seemed more fluent and accurate. Lately, as I continue to read more, this effect is subsiding, because I'm not hearing the words that I read in my head nearly so much. Instead, I'm starting to read them at a glance in units of more than one word, which is a step toward how I read English. I guess that's good, but I was actually happy that my pronunciation seemed to be improving, however strangely, and so I'm a bit disappointed also.
Le Rouge et le Noir is really hard to follow.
Stu Bailey agreed with the corrections to his interview that I made yesterday. The interview has been updated.
Two corrections to Stu Bailey's interview at sdncentral.com.
My first day at VMware. Didn't get any work done. Doesn't look good for tomorrow, either.
The three of us flew home and my mom and sister picked us up at the airport.
Kate's dad took Cassidy and I to the Evergreen “Wings and Waves” water park near Portland. This is an indoor water park with a wave pool, play areas, and four long, tall water slides that start off the wings of a 747 parked on the roof of the building. Lots of fun.
In the evening we went to the Oregon Zoo for concerts by Robert Randolph and Trombone Shorty.
Back home, VMware's acquisition of Nicira had closed at midnight and the movers were there at 6 am to take everything from the Nicira office on West Bayshore Rd. to the VMware campus on Hillview, in Palo Alto.
In the morning we took the Timberline ski lift (without skis) most of the way up the mountain for a look at the view. Then we drove to the “Ski-Bowl” adventure park. Recommended: it has plenty of fun activities for kids and adults. In the evening we arrived at Kate's parents' house in Cornelius, near Portland.
Flew to Oregon in the morning. Kate and Cassidy picked me up at the airport and we drove down the Columbia River Gorge viewing waterfalls. We stopped for lunch at Multnomah Falls. I had a delicious rainbow trout with butter sauce. We stayed overnight at Timberline Lodge just above the treeline on Mt. Hood.
I picked up my mom and sister at the airport. I'm going to Oregon tomorrow to meet Kate and Cassidy in Portland.
My time by myself at home, without Kate and Cassidy, is passing by quickly.
In the afternoon I took Caltrain to San Francisco to hang out with Mike Dalton in his neighborhood. His neighborhood has lots of bars.
I have the weekend to myself after I took Kate and Cassidy to the airport in the morning. I used most of Saturday for reading and working on PSPP.
Over the five years that I have been at Nicira, I have commuted by bike, along the same route, at about the same time every day. When the VMware acquisition closes, we will be moving across town to a VMware building. My commute route will entirely change. I will miss some of the people I have encountered and grown to know, a little bit, over the years. There is one woman cyclist in particular who I run into every few weeks, in either direction. I haven't run into her since the VMware deal was announced, though, so unless I do in the next few weeks I may never get to tell her why I'm going to disappear. Bummer.
It's really funny to see executives at networking companies try to claim that STT is a proprietary protocol and that Open vSwitch is proprietary software.
We went to the Ringling Bros circus in San Jose. There were protestors outside with signs that said, “Would you like to be tied up, beaten, and forced to perform?” I thought to myself, plenty of people pay money for that.
VMware's acquisition of Nicira led me to reflect on the various other job choices I considered five years ago, in July 2007, as I was graduating. They were:
- VMware
I worked for VMware for four years, initially as an intern and then part time for the remainder. I did not leave because I didn't like it. On the contrary, it was a good place to work and it was an attractive place to start working full-time when I left, because I would have had an opportunity for some pre-IPO stock. I chose not to go to work for VMware because I wanted to do something bigger than one can do as a single, not especially notable, employee at a large company.
I'm happy to be going back.
- vBrix (later, Altor Networks)
In July 2007, vBrix, like Nicira, was just a CEO and a CTO assembling a team, to build up a virtual networking firewall product. They were very excited to recruit me, and threw everything they had at me to do it.
The Altor folks emphasized how I could make a lot of money, how they would offer performance bonuses, and so on. I'd prefer to believe that money is not my primary motivator in life, but I really hadn't been tested on that score before this job search.
In December 2010, Juniper bought Altor for a reported $95 million. This is not a lot of money as tech startups go, and if the founders took on a lot of dilution-heavy VC money, they probably did not make out grandly. I wonder whether the founders quickly moved on to found new startups.
At the time, the Altor founders seemed to think that I was a little bit crazy for going to Nicira. They pointed out how poorly independent network access control companies had done against Cisco in the past. For my part, I didn't think that NAC was necessarily what Nicira would end up doing, even though an advanced form of NAC was one of its motivating ideas. It seemed to me that what vBrix was planning to do was really a subset of what Nicira would be able to do in the end, if its general-purpose centralized networking control came to be. I think I've been more or less shown to be correct on that.
Another way to look at the distinction between Nicira and vBrix, in July 2007, is that vBrix wanted to build a fairly specific product, but Nicira wanted to change the networking industry. The former is more of a sure sell, but the latter was more exciting.
- Palantir
In July 2007, Palantir was much larger than vBrix or Nicira, with over 30 developers if I recall correctly. They were definitely the “cool” company among the group, with daily catered lunches and a college-dorm kind of vibe in the office.
In retrospect, Palantir kind of creeped me out. Their work and even their name (look it up, if you don't know the origin) is at least borderline sinister. Their CEO, even, who was the last hurdle to an offer, seemed a little borderline creepy, with his Ph.D. in psychology from a German university.
Palantir is still around. I believe that they have over 400 employees now.
- academia
I liked the idea of teaching (I still do), but I wasn't ready for academia. I kept talking to all of the companies I was interested in about going to academia in a year or two. In retrospect, that was unrealistic, and probably everyone realized that except me. I still think about it from time to time. Perhaps someday.
In 2007, VMware, vBrix, Palantir, and Nicira all offered me exactly the same salary. The stock options varied (Nicira offered the most, Palantir the least, vBrix somewhere in the middle, as a fraction of total shares) but it's impossible to accurately value stock options. Some might say that it is fair to estimate the value of stock options at zero (to floccinaucinihilipilificate them).
vBrix definitely offered the best food during recruiting: they took me out to John Bentley's, a nice restaurant in Redwood City. I think Martin (from Nicira) might have bought me a burrito, but I'm not even sure about that.
It's really easy to say now that I made the right choice, but I've felt that way for years. Nicira (and soon VMware) is a great place to be.
I've been careful for some time to wear gloves when handling hot peppers, but I'd thought that pasilla peppers were mild enough not to need gloves. Tonight, I found out that I was wrong about that.
Kate and I went to see An American in Paris at the Stanford Theatre tonight. It's just like An American Werewolf in Paris, without the werewolf.
This month's Communications of the ACM, which arrived at my house on Thursday, features an article titled “OpenFlow: A Radical New Idea in Networking.” I don't understand how a technology that I've been working on for five years, and a few of my coworkers have been working on for longer, can warrant being called “radical” or “new” anymore.
It's a multihypervisor world.
Some FreeBSD developers have submitted preliminary patches for a threaded userspace datapath. It's a very attractive idea.
The Nicira picnic got canceled in favor of a fancy event in San Francisco. I'm going to be out of town. I'm so disappointed.
My response to Michael Orr's comment on Nicira's control of Open vSwitch.
I always expected I would meet the love of my life while walking down some mountain trail, then I figured out that most of the people you meet on a trail are going the other way.
After encountering a few puzzling sentences in Le Rouge et le Noir, a few searches online taught me a point of French grammar I hadn't run into before, the “ne littéraire.” In formal writing, “pas” is omitted in negations that involve one of a small number of verbs, such as “pouvoir.” One example from Le Rouge et le Noir: “Il soupçonnait une raison secrète, mais ne pouvait le deviner.”
Kate and I spent a pleasant afternoon at the San Jose Renaissance Faire. For me it stood out as different from a typical RenFest in many ways. To start, it's small: you can walk around the whole grounds in under 10 minutes. It's also in an urban area, a grassy spot in a downtown park where the most convenient parking is also the parking lot for the San Jose Sharks. The grass by itself makes a difference, since at most RenFests you find yourself covered in dust by the end of a day. And, finally, most of the goods for sale were priced more reasonably than you usually see.
I was chatting with a Google employee friend of mine when I mentioned that I hadn't heard much about Google Glasses even though it sounded intriguing. I expected the answer to be “I don't know anything about them either,” but in fact it was “That's intentional. I'm not allowed to tell you how awesome they are.” Hmm.
slashdot is showing me advertisements for “Walden University.” I'm surprised that anyone would seriously name their school the same as the slacker college in Doonesbury.
I was just reading a RISKS Digest edition that, as many editions do, contained entries on the risks of computers in voting. This reminded me of my own recent trouble with voting. I can't be sure that it actually has anything to do with computers, so it may not be suitable for the RISKS forum.
Anyhow, Kate and I were out of state for the last election, so we signed up to vote by mail for that election. We waited patiently for the ballot to arrive, but it did not before we left for our trip, even though a status webpage said that it had been mailed over a week before. When we got back following our trip, my ballot had arrived, postmarked one day before the election. Kate's ballot never did arrive.
So the risks of vote by mail seem to include the possibility that the election office will simply never mail your ballot, or that they will lie (based on the postmark, anyhow) about when they mailed it.
Rumor has it that Windows 8 computers will be required to have a double-width “8” key on their keyboards.
Last night I flossed my teeth, as I do every night, but this time it backfired: I've been walking around all day with floss stuck between my teeth.
Kate spent the afternoon going to open houses. It will be nice to have the money to buy a house.
We went to the Saturday free concert in the park in Palo Alto with two other families.
Palo Alto drivers are acting worse than usual today. In one mile along Bryant Street, five drivers separately did three-point U-turns in front of me. Every one of them, instead of waiting after the first part of the turn for me to pass, proceeded to block my path by reversing across it, even though they were looking straight at me.
Another mile down, a sixth driver did the same thing.
I committed a patch to add support for FreeBSD to Open vSwitch today.
I started reading Le Rouge et le Noir a few days ago. I've mentioned it to three French people so far, and each one of them has said, roughly, “Ugh, I had to read that in high school.” So, apparently, this book is the French equivalent of Huckleberry Finn. It's a good thing I like Huckleberry Finn.
I finally finished up reviewing Simon's and Isaku's long patch series for Open vSwitch, and Simon finished reviewing mine, so we'll probably see some real movement on support for OpenFlow 1.1 and later soon.
VMware bought Nicira today.
Biked with Cassidy over to Fleischman Park this afternoon, where she ran through the water fountain for an hour with other kids.
Afternoon was very hot today. We spent it mostly inside huddled under the ceiling fans just waiting for evening to come. When evening did come, we went to Palo Alto to listen to this week's concert in Rinconada Park. We ate dinner from a Vietnamese food truck at the concert.
Since last week, I've done a lot of thinking about the spectrum from faith from doubt. I often feel that I am a man of doubt. I doubt my abilities and my sincerity and my ability to follow through, I doubt many other people, I have a lot of doubt for the future of the country and the world. And I've learned over time that, although I'm not alone in any of those, others have faith in me, have faith in themselves, have faith in the future. Since last week, I've been trying to have faith in those people. And tonight, it feels justified.
Last month I wrote about how no stranded cyclist has ever accepted my roadside help. Tuesday night, a cyclist actually flagged me down for help. I had everything I needed to fix his flat—except that he did not have quick-release wheels, and since I do, I don't carry a wrench.
When you bicycle regularly for transportation, after a couple of long walks, you learn to carry basic tools. I think he probably learned something about that Tuesday night.
Reading the newspaper tonight, I notice that Dear Abby is pitching one of her “booklets” again. You send her a check (!) through the mail (!) for $7 (!) and she mails back a booklet (!) that tells you how to talk to your teenager about sex.
How 1950.
A Google News search for “Nicira” turns up, at the bottom of the page, a suggested search for “Nicira stock symbol.”
I think there's a lot of confusion on the difference between precedence and order of operations because we aren't taught about the latter in our math classes. That's because side effects don't exist in math, so order of evaluation doesn't matter. Precedence does, but that's a different issue.
Consider 2 * 3 + 4 * 5. Precedence says that this must be treated the same as (2 * 3) + (4 * 5). But once you figure that out, you have a choice: you can evaluate 2 * 3 first or you can evaluate 4 * 5 first, because the order doesn't matter. No one bothers to say that you have to evaluate left-to-right or even that you have to evaluate right-to-left, because that would not change the eventual result in any way.
When side effects come in, the situation changes. a() + b() might do something completely different depending on which of a() or b() you call first. Extending it to a() + b() * c(), then precedence comes in. C doesn't say in what order a(), b(), and c() are evaluated, but it does say that once they are evaluated, you have to multiply b() by c(), not by a().
We threw a “bake-off, grill-off” party today. Everyone either brought something baked or something to grill. It worked out great. We grilled hamburgers, steak, and chicken tikka masala, and from the oven we had lemon apricot scones, cherry pie, and cupcakes. We voted for the best in each category and gave the winners small prizes. Everyone went home full and happy and wanting to do it again.
I really like the first two questions-and-answers on what-if.xkcd.com.
Hyper-V uses 0xB16B00B5 as a “guest ID” for Linux.
As of this writing, we are aware of only one viable open-source vSwitch**: Open vSwitch (OVS). OVS is embedded in Xen, KVM, and Virtual Box. OVS can also run in Microsoft HyperV and Nicira has hacked it to work within an ESX environment. Additionally OVS is bundled in Linux distributions from Ubuntu, Debian, and Fedora and is the vSwitch of choice for OpenStack via Quantum plugins. OVS has also been ported to Broadcom and Fulcrum reference switching platforms to eventually become the switching software used on high performance hardware switches.
It really makes me think of what Open vSwitch has accomplished in only a few years.
The rest of the article is less complimentary and somewhat misinformed.
A couple of neighbor girls came by to borrow a tent for a sleepover in their back yard. Cassie went to join them, but she came back 10 minutes later saying she was bored.
For Andreesen, the funding adds a hot enterprise startup to a portfolio that already includes Box Inc., Asana Inc., and Nicira Networks.
I finished reading Judy Blume's Wifey today. The main attraction of this book is that it is an adult novel by Judy Blume.
Everyone in the neighborhood seems to be losing things. There are flyers up all around Oakwood advertising a runaway (walkaway?) tortoise. A couple of people walked by tonight looking for a stray dog.
Another couple of people walked by, too, asking if we'd seen their table. “No,” I said. “Do you mean the one you use for selling lemonade?” I asked, recognizing them from a lemonade stand a block over and a few weeks ago.
“No, we still have that one,” they said, and walked on.
They walked back the other way a minute later, and I asked them, “How did you lose a table?”
They told me, “We didn't lose a table. What a silly idea. How could we lose a table?” and were gone before I thought of a followup question.
I pulled out my Peruvian cookbook tonight and made lomo saltado. I didn't have any aji limo, so I substituted Thai bird's-eye chiles instead. They must be a fair substitute because it was delicious and did taste like the lomo saltado in the neighborhood Peruvian restaurant.
I also had to substitute frozen imported yellow potatoes for fresh. I fried them for a while to soften them enough for cutting, then I chopped them and fried them a while longer. The result was crispy on the outside and soft in the middle, which while not the desired effect was still very good; Kate said she preferred them that way.
I finished reading Le Père de nos pères today. I've read about 1,400 pages in French this year.
This afternoon I made a thick tamarind paste, for Thai curries, from a couple of pounds of tamarind pods, and an ajì amarillo paste, for Peruvian cooking, from a pound of yellow peppers. I look forward to future meals.
Finally getting back to some PSPP work. Fixed a few bugs in the new sheet implementation.
I bought a French dictionary on Wednesday for $.50 at a used book store. Not a French-English dictionary, just a French one. After using it for a few days, it seems more complete than my French-English dictionaries, with definitions that I like better. My theory is that an ordinary dictionary is expected to explain a word, whereas a translation dictionary usually just gives an equivalent word and often thereby gives less of a feel for the connotation of a word. Also, an ordinary dictionary can effectively use twice as much space for an entry, since it does not need to be divided into two parts, one for each direction of translation.
One notable difference between English dictionaries and at least this French dictionary is that most entries in this dictionary do not include pronunciation. Presumably that's because French pronunciation is so uniform.
I just read an article in MAKE Magazine, by Phillip Torrone, titled “Zen and the Art of Making,” that resonated with me. I want to share a few excerpts:
At some point, we all become experts at one thing or another. I really want to avoid becoming an expert in some things, only so I can continually look forward to learning more without the burden of being an expert. Being an expert means your journey is somewhat over.
…
Experts like to defeat each other, often publicly; beginners conquer themselves and their own challenges, and the experience cannot be taken away by anyone. Beginners don't have strong opinions—they can't effectively bother each other yet.
…
Experts worry that if they're experts in one thing, they'll need to be experts in other things, otherwise their expertise could be questioned.
We went to the Redwood City July 4 pancake breakfast and parade downtown this morning, and to watch the fireworks this evening.
I think that Bernard Werber must have been trying for the “most uses of vous in one sentence” prize in this sentence from Le Père de nos pères:
—Vous voyez, vous aussi vous vous prenez au jeu, remarqua Solange Van Lisbeth.
I pushed some OF1.1 commits!
We are in the midst of two seasons: lemonade stands and broken glass. I've encountered a couple of roadside lemonade stands a week on my way home for the past month or so. And there are about four patches of broken glass along my commute. I don't think it's more than a coincidence, since the broken glass isn't anywhere near the lemonade stands, and the lemonade isn't served in glass.
Went to a birthday party for my daughter's friend “Ro-Ro” (short for Roberto). It lasted from 2 o'clock all the way into the evening. The parents hired caterers to grill tacos and quesadillas, and there was tons of other food and drink. We had a blast.
Got woken up tonight by the smoke detector. False alarm, of course, and for no reason—we walked around the house sniffing for smoke and looking for anything that could trigger it, but nothing.
I'm so tired of smoke detectors and false alarms. The common ionization type of smoke detector triggers when we're cooking, sometimes even if it's not very smoky. We heard that you could avoid those by buying photoelectric detectors instead of the more common ionization type, so we bought a couple of them. However, no one warned us about the second type of false alarm that the ionization type has: they just alarm randomly without any kind of noticeable trigger. Always in the middle of the night.
Are there smoke detectors that aren't complete junk?
Hi Ben,
I wanted to thank you for your help when I was asking you a couple questions earlier on the #OVS channel on IRC earlier about ova and an OF controller (probably dumb questions). … It was really nice of you to take a second to confirm what we were thinking. … It's pretty awesome that you guys are making yourself available to the community like you all do.
Just wanted to thank you again and if there is anything I can ever do like working up how-tos/cookbooks etc never hesitate I would be honored to contribute. Hopefully what I put together for this project will do OVS justice!
Thanks!
I think I'm going to print out the whole thing and hang it up in my cube to read when I need some encouragement.
From Stuart Little:
“It's an impossible situation, I guess,” he replied. “You see, I'm the Superintendent of Schools in this town.”
“That's not an impossible situation,” said Stuart. “It's bad, but it's not impossible.”
On my way in to work I paused for a moment to offer help to a cyclist who was standing next to her bike, fiddling with something loose. She said she didn't need any help, of course. I've offered help to dozens of cyclists over the years, and every one has refused, even those who are walking an obviously disabled bike miles from any bike shop.
Very large, active development team
Over the past twelve months, 47 developers contributed new code to Open vSwitch.
This is one of the largest open-source teams in the world, and is in the top 2% of all project teams on Ohloh.
Listening to Loveline last night, I swear I heard the announcer say “Powered by Perl” in an ad a couple of times.
A writer in the San Francisco Chronicle today, comparing early computers to Turing machines:
The main thing missing from early hardware computers was the infinite tape, which would have to wait for the advent of the Internet.
Cassie trying to tell us that we need to get donuts: “Everything is no but the donuts, and the donuts is yes.”
Martin Casado, 19th most powerful person in enterprise technology.
Today I retired a five-year-old computer that was the first machine we bought for use at Nicira. RIP, hardrock.
Long ago in some French class I learned that enceinte means “pregnant.” In the last few months I learned that enceinte also refers to an enclosed area. I was musing about this on the way home, wondering how a single word could come to mean such different things, when I realized that in English the word “confinement” refers to labor (childbirth). In my mind this connects the two French meanings of enceinte.
Just now, however, I've looked up the history of both “confinement” and enceinte in a couple of online sources and found no clear connection. Oh well, it seemed like a winner.
Went out for teppanyaki at Sakura Teppanyaki and Sushi in downtown Redwood City, my request for Father's Day dinner. We went tonight instead of last night because I figured it wouldn't be crowded. I was right, but it kind of backfired because this kind of meal is more fun when there are lots of people sitting around the grill. The food was a little disappointing, mostly because it's been very good in the past but tonight it was only adequate.
We've lived in Redwood City for 5 years now but tonight was the first time that we ever saw a train moving down the tracks along Chestnut Street.
Kate tells me that she's heard two weird, paranoid, unprompted stories from different moms since Friday. One woman told her that she should take photographs of all of Cassie's shoes because kidnappers often change a child's clothes but don't have shoes in the right size. Another woman told her that she needs to be careful because kidnappers can take a blonde child right into the bathroom and dye her hair a dark color in just a few minutes. Why are so many moms in this area crazy paranoid?
In nicer news, Kate asked a friend of ours who works at Google for advice on which Android phone to buy. Instead of advice, the friend gave her the phone that she got as a Google corporate Christmas present, since she already had a phone that she liked. So now Kate has a like-new Galaxy Nexus.
We went to see Madagascar 3 this afternoon to beat the heat. It was really cool seeing a friend's name in foot-high type in the closing credits.
alt.folklore.computers
reminded me of my experience in a 6th grade BASIC programming class. We were assigned to write a program that would print the sum of the integers from 1 up to a value input by the user. I turned in the following 2-line program10 INPUT N
20 PRINT N*(N+1)/2
and received a failing grade.
The section we read that day in class was about FOR loops, but the assignment did not state that we had to use a FOR loop.
Ate dinner at Google with family and friends. The cafeteria reminds me of a college dorm cafeteria. It was far too busy for my taste, but the food was good, and I think at a less-busy time I'd enjoy eating there.
I made a new recipe for dinner, Sourdough Waffle BLTs. It was a big hit with the family.
After dinner I made a new batch of Thai red curry paste for later this week.
My wife was running at the library today, playing a game with my daughter, when she fell down and got nasty rugburn on both knees. I've never known anyone to get hurt at the library before.
Went grocery shopping. I think we bought the whole store.
Impressive email on bug-gnulib mailing list. The original poster asks whether there are any proper usages of “all these” in English, claiming that “all of these” is correct. The followup quotes Shakespeare, the King James Bible, E. B. White, and J. D. Salinger all using “all these” and finishes off with “All these examples are perfectly good English…”
We went to a birthday party at a horse ranch. All the kids got to ride horses, of course, but the interesting part was when they got to paint all over the sides of a horse. They had a lot of fun doing that, and then they got to watch the horse take a bath to get it off.
We really need to go grocery shopping.
We flew home. Our flight from Detroit to San Francisco was delayed an hour and a half because the captain walked off the flight and the airline had to find a new crew. His stated reason was that the first-class lavatory was out of service. What an ass.
I finished reading another French book, L'Ultime Secret.
We went to Crossroads Village today, near Flint, and walked through the old-time village and rode on the Huckleberry Railroad and on the Genessee Belle paddlewheeler.
We went to the zoo with Kate's family, my family, and family friends.
We watched the transit of Venus, visible at sunset in Michigan, by projecting it through a pair of binoculars onto a white card. The transit was not visible with the simpler trick with a pinhole, because Venus was too small to be visible on the tiny image.
We took Cassidy fishing in the morning. We dug some worms in the woods, my dad got out a bamboo pole, and we drove down the road a mile or two to a park on the Looking Glass River. There was a platform overlooking the river where Cassidy cast her hook into the river for 20 minutes or so. We didn't see any fish in the river, so she didn't catch any fish.
I noticed today that my parents have a print that, at first glance, resembles a French street scene. But, if you look closer, one of the shop signs says “Renee's Cadeaux D'Amour.”
We took in the annual Lansing Be A Tourist in Your Own Town event. For $1, you get free admission to 50 or so different tourist attractions around Lansing, and for $.50 more you can ride all day on four special bus routes that circulate among them.
Kate, Cassidy, my mom, and I started out at the R.E. Olds Museum, where my dad is a volunteer. We toured the museum, then we walked to the CATA bus station, where Cassidy had fun climbing through a trolley and an articulated bus. She also got to pick up some giant bus tools, like a 2-1/2 inch wrench. Then we caught one of the event buses to the nearby fire station, where Cassidy climbed through some fire engines.
We ate lunch at a sandwich shop on our way to the Capitol, where we took a brief tour. Then we hopped the bus again to the Michigan Historical Museum. We spent a long time there at the exhibit on 100 years of Girl Scouts, and then we caught a bus to MSU campus.
At MSU, we stopped at the MSU Museum, then the Bug House in the Natural Sciences building, and then had ice cream at the Dairy Store. I was disappointed to miss the planetarium show, but by then it was getting late and starting to rain. We went home and made chili for dinner.
First day with the grandparents. Rainy. My sister and her husband came to dinner, raclette.
The three of us flew to Michigan to visit my parents for a week.
I graduated from Michigan State University in 2001. Now, 11 years later, they've emailed me to say that they're canceling my email account to save money. Dammit.
Kate says our cat Peanut has “kitty Alzheimers.” She says it's a real disease, even if that's not its real name.
We tore down camp and left Big Basin in the morning. Before we left, Cassidy got to go to a final “Big Basin Nature Club” with her new friends.
We went on two hikes today. All three of us went on the first one in the morning, about 1 1/2 miles long that passed by a waterfall. It was Cassie's first waterfall. Cassie and I went on a second hike in the afternoon, by ourselves, from our campsite to park headquarters. Then we ate some ice cream and went back. Cassie was so tired that I had to carry her all the way back, about half a mile.
Kate took Cassidy to “Big Basin Nature Club” again in the afternoon. This time it was about animal disguises. There was another bonfire in the evening, which was all about banana slugs. (Did you know that banana slugs will eat pretty much anything they run into, including other banana slugs, with the only exception being redwood seedlings?)
We drove to Big Basin and set up camp. We went on a short hike near park headquarters where our guide told us the history of the park and facts about redwood trees. Cassidy went to “Big Basin Nature Club” for 3- to 6-year-olds, where she learned about animals' warning colors. And we went to a bonfire put on by the park in the evening, where we roasted marshmallows, sang songs, and listened to a presentation about how to identify animals by the traces that they leave behind. (Did you know that herbivores are “ploppers” and carnivores are “pinchers”?)
The SF Chronicle reviewed naan last weekend. I was pretty surprised to see that Trader Joe's naan did so badly (26 out of a possible 100 points), because the Indian coworkers I've asked about naan before say they buy it at Trader Joe's. I mentioned this at lunch a few days ago. Then a moment later another one of my Indian coworkers walked in. I asked him, “Where do you buy naan?” and right on cue he replied, “Trader Joe's.”
The MPLS patches that Ravi Kerur at Deutsch Telekom has been working on are getting much closer to being ready to commit.
I've sent out a bunch of patches lately that bring OVS a little closer to OpenFlow 1.1 and 1.2 support.
A discussion on alt.folklore.computers
about party lines and how AT&T used to charge extra for each phone in a house brought reminded me of all the phones we had at home when I was a teenager, from about 1993 to 1997, I guess. We had two phone lines coming into the house. One was for voice, the other was connected to the computer, for the modem. And then we got a third phone number for my sister, so that the rest of us wouldn't have to bother answering all the calls that were for her. The house was only wired for two phone lines, so instead of adding a third phone line we got a special ring (two or three short rings, I think) that came in on the voice line.
We had an absurd number of phones around the house, maybe as many as six or seven, pretty much one per room. One or two of them were two-line phones, the rest only for the voice line. There was also an extension out in the barn.
On the other hand, we had one television, without cable, which was also pretty eccentric by contemporary community standards.
My mom has mentioned to me having a party line when she was a kid. I don't think she ever explained to me what that meant, so when I was young I assumed that it was some kind of extra-fun phone line.
Yesterday, a rare annular eclipse. Today, a meeting with a Cisco executive. Coincidence?
We watched today's annular solar eclipse at a friend's house, by projecting the image of the sun through a pinhole in an index card. When the eclipse was closest to total, we stood outside making shadow puppets against their garage. The shadows were formed of the thin crescents of sunlight that shone around the moon, a cool effect especially around the edges of our fingers.
We took Cassie to the Maker Faire today, her first time. She had a great time running around the place. She and Kate built things out of tech junk at the “Make Play Day” booth. Cassie climbed up and down in Gon Kirin until the rest of us were bored. She made friends with other little girls playing in grassy areas. She played on the homemade playground and slide. We ate waffles and falafel and yucca fries.
On the minus side, getting there was a problem. The nearby parking lots were all full (and they were $20 instead of the $17 that our tickets clearly said). The farther-away lot, which the website promised had a shuttle bus, had a sign up saying “No Shuttle,” so we had to take long walks both ways.
A conversation on alt.folklore.computers
brought my attention to the fact that in the 1950s 1960s AT&T produced materials used in elementary schools to teach children how to use telephones, including filmstrips. For some reason I find this hilarious.
All of Nicira went to the movies this afternoon to see The Avengers. I kept expecting Emma Peel to show up to save the day, but she never did.
My boss's comment today: “If you're doing anything with Satan, or with anyone higher on the `evil' scale, like Bob, I should probably know about it.”
Our old 19-inch standard TV finally got bad enough that we bought a new 32-inch HDTV. Funny thing, though, is that the previous TV fit three rows of perhaps six or seven shows in the Netflix display on Roku. The new one, though much larger, only fits two rows of five. I guess this is an effect of the 16:9 aspect ratio but it's not nice.
I'm working on breaking Open vSwitch userspace into multiple processes, to avoid blocking flow setup on unavoidably long-running system calls such as those for disk I/O.
Went to see a children's theater version of Joseph and the Amazing Technicolor Dreamcoat in Mountain View for Mother's Day, by Kate's choice.
I finally got the keyboard interface for the new PSPP data sheet into a reasonably usable state. I've been working on this code for about a year now. Finally, I think it's about ready to go in.
As I continue to read French, it's becoming easier to understand, so I've been able to start paying attention to other details. Tonight, I spent a few minutes reviewing the rules for liaison in my old college French pronunciation textbook. I'm going to try to start “hearing” liaison in the correct places as I read along.
Vidal Sassoon died. I hadn't even realized that was a person's name.
Maurice Sendak died. We read Chicken Soup with Rice (A Book of Months) in remembrance tonight at bedtime.
One of the rails broke on my bike saddle on my way home from work. The saddle might have had as much as 40,000 miles on it. Time for a new one.
I noticed today that the hot water heater in the garage is labeled “WARNING: TEMPERERATURES OVER 125 degF CAN CAUSE SEVERE SCALDING.” This is silly hyperbole. Certainly some temperatures over 125 degrees Fahrenheit can cause severe scalding: boiling water, for example, will scald. But 125 degrees is not particularly hot. Anyone who occasionally bakes bread will recognize 125 degrees as within the 120 to 130 degree range that is ideal for encouraging yeast to grow. The Betty Crocker cookbook describes this range as “very warm.” It is not scalding, not nearly.
In French, the same word means both “failures” and “chess.”
Cassidy put a LEGO biplane together almost by herself, with just a few hints from me. She can read the assembly diagrams herself. I am very impressed.
Mango margaritas and chicken fajitas for dinner, for Cinco de Mayo.
I discovered the GDB finish
command today. I don't know why I never noticed it before. It is very useful.
Kate tells me that a local grocery store is selling full jugs of root beer for $5 and refills for $7. Do you think they will sell any refills?
Happy birthday Betsy!
Kate's boss is in town from Chicago, so they went out to dinner and left Cassie and me home alone. Cassie and I walked over to the local pizza place and had a medium ham and pineapple. And then we went home and Cassie went to bed. The whole thing was really calm. It's so easy having a 4-year-old, compared to any younger age.
An afternoon discussion led to me searching for a source of hexadecimal dice: 16 sides, labeled 0 through F. Soon after, I ordered a pair of them to be delivered to me at the office. No reason, just a fun geek toy.
I spent a lot of today trying to catch up on bug reports and other email from mailing lists that Google and Postini had conspired to send directly to the spam folder without showing to me first. Ugh.
Cassie successfully rode her bike without training wheels today!
I spent all day with a sense of foreboding. I kept expecting something awful to happen. I even found myself peering around corners before I walked around them. I don't know why I felt this way. Nothing bad happened. I hope it goes away soon.
The bad grammar on the the corporate posters around the office is starting to bug me. One poster says “VIRTUAL NETWORKS SAME FEATURES AS PHYSICAL NETWORKS.” Another says something like “TRANSFORMS PHYSICAL NETWORK INTO A GENERALIZED POOL OF SWITCHING CAPACITY.” (The all-caps also bothers me.)
The SF Chronicle had an article on Insiemi today on the front page of its business section. I'm irritated that the newspaper that I actually get at home covers this but has never had an article on Nicira.
I uploaded Autoconf 2.69 to Debian. There will be a delay before it is installed because it must go through NEW processing.
I ordered copies of the first two books in the same series as Le rire du Cyclope.
The new-to-me vegetable of the week is mustard greens, a light colored leafy green that resembles green leaf lettuce. We found that on their own they are slightly pungent, but in a salad or sandwich the flavor is hard to tell from lettuce.
This morning I made my homemade raisin cinnamon bread, so tomorrow morning we get to make French toast with it. There's hardly anything better than that.
Nicira is growing, so over the weekend the engineering team is moving from the ground floor to the second floor. We actually hired movers. Each of us has to unplug everything and box it up today, then unbox it on Monday and plug it back in and arrange it. The movers will just carry stuff up one flight of stairs. There have been multiple emails urging us to box stuff up properly for the movers. I'm having a hard time feeling worried. I mean, what's the worst that could happen? On Monday, I'd have to pick something that got left on my desk on my way to the stairs.
I wonder whether the movers will bring a big van.
On my way into work today I spotted a guy whose t-shirt had a drawing of a frosted donut covered in sprinkles. Above, it said, “Don't Glaze Me Bro!”
Last night, I finished reading Bernard Werber's Le rire du Cyclope. I read a lot of books (61, in 2011), but this one is a milestone for me because it is the longest book I have ever read in French.
It is close to the only book I have read in French, outside of a class, in fact. The only exception is a French translation of Alice in Wonderland that I read just before Cyclope, but I don't really think that counts because I've read it in English before.
It took me a long time to get through it, about a month I think. In English, I guess it would only have taken me a week or so to get through a similar 608-page book.
It definitely got easier as I went on. At the beginning I was looking up words in my dictionary all the time. By the end I was only looking up occasional words, not necessarily because I knew the meaning of every word (definitely not) but because I was getting much better at inferring meaning from context.
One habit I tried to get away from as I read is that, when I run into “ne” in a sentence, I tend to scan forward, skipping words, until I find something to pair it with (“pas” or “que” or “jamais,” for example). This worked OK in my French classes over ten years ago, but it really interferes with pleasure reading.
Many thanks to Pierre Ettori for lending me the book.
Apparently I have 6 1/2 years left with programming as a profession.
There's a package of cookies in the Nicira kitchen labeled “100% British Wheat. Great British Taste!” Hmm.
Today and yesterday, in addition to the SF Chronicle that we subscribe to, the “China Daily” newspaper has been delivered to our door. I wonder if they have the wrong address.
RIP Richard Harter, in memory of insightful discussions over the years in comp.lang.c.
Autoconf 2.69 is out! After many years of absence, I get to put the Autoconf manual back into Debian “main.” Yay!
Reflecting on what I heard last week, I think that Open vSwitch has arrived at a milestone: I think that even if all the upstream developers suddenly disappeared, it's important enough that someone else would have to take over development.
During a lunch conversation last week I mentioned a DOS-based, nethack-like game I wrote back in the 1990s. At the time I only posted it on a few BBSes around Lansing (Michigan). Well, here's HACKER 1.0, straight out of 1992. It runs well in DOSBox and comes with full source code licensed under GPLv3.
I sent a very large set of patches to pspp-dev. It implements a modified GtkTreeView, called PsppSheetView, that reduces the time and space for N rows from O(N) to O(1). It also speeds up large numbers of columns by a large constant factor, although the cost is still O(N).
Dinner was an impromptu invention, “Citrus Medley Chicken.” Finely crush 1 Tbsp whole white pepper and 1 Tbsp whole coriander seed in a mortar and pestle. Rub onto one side of 1 pound chicken breasts sliced in half to make thinner. On other side, rub in 1 Tbsp garlic salt, 1 Tbsp dried oregano, and 1 tsp lemon grass. Heat 1 Tbsp olive oil in 10" pan on medium heat. Cook chicken on both sides, 4 minutes each. Add 1/2 cup chicken broth and zest and juice of one orange to pan. Cook chicken in broth on both sides, 4 minutes each. Remove chicken to serving dish. Add 1 Tbsp lemon juice and 1 Tbsp dried parsley to pan. Stir in flour by teaspoons, stirring, until juices thicken into gravy. Serve chicken and gravy with mashed sweet potatoes and steamed beets.
The PhD Movie. 'Nuff said.
Went on an Earth Day hike with Kate and Cassidy and a few families from Tiny Treks.
The buzz today is that ONF is going to dub OVS as the official “reference implementation” of OpenFlow. I hope that this leads to more outside contributions toward OpenFlow 1.1 and 1.2 support in OVS.
Went to the ONF member meeting today, biking from home in Redwood City to the conference center in Santa Clara. I felt like a celebrity a couple of times. “You're Ben? I see your patches all the time. Don't you ever sleep?”
Went to ONS 2012 today, borrowing Martin Casado's badge (which got lots of double-takes). The scale of interest in OpenFlow is amazing. And everyone who mentions an OpenFlow implementation is using Open vSwitch, even Google.
I pushed a series of commits to the Open vSwitch master branch today that improve new-flow processing performance from just below 40,000 flows/s to just above 120,000 flows/s. I think this will make a lot of people happy.