September 1st, 2007

classic cylon

(no subject)

While looking around for more interview stuff, I discovered Philosophical Geek. He posted a lengthy description of his Google interview, including some interesting advice. By the time you read this, my comments may have been approved. I'll just briefly remark that I have never really understood the point or purpose of memorizing algorithms.

Anyway, there was something else he wrote that I've been thinking about over the past few months. I think that your typical Googler is a much different person than I am in terms of what we value and aspire to do. I say this in a noncondescending manner – Googlers whose blogs I've read seem to be "in love with their creations" in ways that I generally am not. Some of the friends I've had in the past were like that, but I wasn't – I tended to gravitate more towards analytical projects. So this statement from PG's post really struck me:

"That (Google) is a very nice place to be if you love coding."

For the last few months, some people, probably unintentionally, have been making me feel guilty because I am not really enthusiastic about Google. If Google continues to contact me for job interviews, I'll follow up, because I am unemployed, but in reality ... I don't think it is wrong to realize that you are not the right fit for a company; it is not a poor reflection on your character, or that you're not trying, or anything like that. It's just that there are other things you aspire to. I know lots of people who use Google's services, but are happy doing the things they like at the companies they work for.

Perhaps I'll write more about this later; it's time for bed now.
classic cylon

(no subject)

So, continuing in the vein of the last entry, I just can't grasp the practicality of memorizing algorithms. There's TOO MANY of them. I think it is useful to understand what each can be used for, and when it is appropriate to use them. But I don't see why anyone should go to the trouble of memorizing algorithms when there are zillions of references, both off- and online, that are available if someone needs the pseudocode or an implementation.

For example, Cormen's algorithms text has over 1000 pages. Knuth's texts consist of three volumes (plus some new sections). There are other algorithms books that get decent reviews, such as Aho's and Baase's. Beyond that, there are books that deal in specialized algorithms, such as Lynch's or Bertsekas' for distributed and parallel computation. I haven't even touched all of the books with algorithms written in specific languages, such as Sedgewick's.

And let's get real here. We're talking about Google, which can (and should) be used to reference information that is available on the web. I just don't buy that because of "chaos", people need to be able to quote some algorithm by heart. As I understand it, all the offices are enabled with fast wireless LANs, and people can get computers when they need them, so if there is a need for a quick lookup of an algorithm, it's only a few keystrokes away for any Googler.
  • Current Mood
    confused confused