I had a perfectly miserable experience yesterday, but in the end, I learned something valuable about myself, so it wasn’t a complete wash. You might notice the same pattern in yourself, so maybe this will be helpful to you, as well.

I’m here at LISA10, and I went out to dinner tonight with some friends. We got on the topic of clever interview questions (you know, things like “why are manhole covers round”, and “how would you move Mt Fuji”), and a couple of people at the table were from the company with the big G in the name, and talked about how they didn’t use questions like that anymore, but that they probed the interviewee in ways that exposed the underlying thought processes.

One of them turns to me, and says, “Suppose that you have a directory hierarchy consisting of directories named a to z, then under each of those directories, you have another set of directories named from a-z, and then under each of those directories, you have files. How do you move that from one place to another?” I said, “rsync”.

My friend then asked, “Alright, but are the limitations of rsync?”, and we went through questions back and forth. As it turned out, in his mind, the hierarchy was “arbitrarily large”, and “from one place to another” consisted of datacenters on different continents, and the data changed frequently. Obviously a simple rsync solution wouldn’t work, and once that became clear, I said so. The questioning continued while I tried to narrow down what my friend was looking for, all the while getting more frustrated and irritated at a line of questioning that seemingly had no end.

Eventually, I gave up and we left the restaurant, but I was sullen for the rest of the night. I wasn’t mad at my friend, I was mad at myself. I had not exactly passed with flying colors, and what made it worse was that, for the life of me, I couldn’t figure out where I had went wrong.

As an aside, if you only have a single point of datum, then you can not extrapolate from that with any confidence. If you put that point on a chart, there’s no line that you can draw that is statistically more likely to be right than any other. You don’t have enough data, and it’s extremely frustrating to try to form conjecture based on that. Just ask the people trying to decide if complex life is common in the universe. We’ve got a single point of datum, so we just don’t know. It leads to a lot of internal argument and debate.

That’s exactly what was going on in my head after the discussion at dinner tonight, too. What was my fallacy? Obviously, I should have asked for more information as soon as he asked me the question, but I didn’t. Why not? What other implications did this have for me? Of course, not having the answers to these questions didn’t put me in any better of a mood.

I went to bed still aggravated, and at some point in my sleep, a wrinkle in my memory turned over and I remembered something else that happened once.

I was on a job interview many years ago, and I felt like the interview had gone well. The interviewer and I had shaken hands, and I was getting ready to head out the door of his office, when he nonchalantly asked, as if he were asking the time of the day, “Oh hey, by the way, what would you use to back up a MySQL database?” Without batting an eyelash, I said, “Oh , mysqldump”. He repeated, “mysqldump?” I said, “Yeah, it comes with the database by default. It’s easy, you just run the command and give it the database that you want to dump, and it’ll spit it out. Pipe it to a file, and you’ve got the contents of the database”. He said “Alright, thanks.”

I didn’t get the job. I do, now, however, have another point of data.

I remember thinking, on the way to the car from his office, “Hrm, I should have asked how big of a database he was using that on”. I know that mysqldump has issues with large databases, particularly if they’re in heavy use while it’s running, but I didn’t mention it, because it’s almost never a problem.

Last night while I was sleeping, I remembered this mysqldump experience, and when I woke up, it hit me. The similarities were too close to ignore. If you have a tree of files and directories and you want to have a copy somewhere else, rsync is almost always the answer. There are lots of ways to manually do it, but those were typically what we’d do before we had rsync. That’s what rsync was meant to replace. Of course, there are times when you can’t, but they’re relatively rare. Just like the times when you can’t use mysqldump.

Drawing a line between these two experiences, I can say that when someone asks me a technical question, I give a 90% answer…meaning that I default to the assumption that the person asking me the question has one of the common environments and cases that the default answer applies to.

I’m still aggravated that I did poorly (both times), but at least now I’m aware of my bias, and so I can correct for it. I think having a default response of a question, rather than a 90% solution will be a good way to cover my inclination to immediately provide an answer. Maybe something like, “Tell me about your environment”. This should provide sufficient information to determine how to continue the discussion.

Is this something that you notice in yourself? Have you noticed other similar patterns in your life? I’d be interested in hearing about them (and self-evaluating to find out if I have them, too). Comment below!