Wednesday, July 27, 2011

Hacker News Fires Steve Yegge

I woke up this morning...ish... to discover that Hacker News had finally had enough of me being at Google, so they forced me into early retirement.

On Monday I was honored to be able to deliver a keynote talk at OSCON Data. In the talk, I announce at the end that I am quitting a project that I had very publicly signed up for, one that I am not passionate about and don't personally think is very important to the human race. Though others clearly do, and that's a legitimate viewpoint too.

But the power of suggestion can make you see and hear something entirely different. If, for instance, someone tells you that I gave the talk wearing a gorilla suit, then when you watch it, I will magically appear to be wearing a gorilla suit. It's actually a gray jacket over a black shirt, but you will perceive the jacket as the back-hair of a male silverback gorilla! And to be honest the talk could have benefited from the judicious application of a gorilla suit, so no harm there.

Similarly, if someone on Hacker News posts that "Steve Yegge quits Google in the middle of his speech" and links to the video, then you will watch the video, and when I say the word "project" at the end of my speech, a magical Power of Suggestion Voice-Over will interrupt -- in a firm manly voice totally unlike my own quacking sounds -- with "Gooooooogle". And then you will promptly sink into a 15-minute trance so that the voice-over can occur in the middle of my speech where Hacker News said it happened, instead of 96.7% of the way through the talk where it actually happened.

I am going to harness this amazing Power of Suggestion, right here, right now. Here goes.

You are going to come work at Google! You are going to study up, apply, interview, and yes, you are going to work there! And it will be the most awesome job you've ever had or ever will have!

I hope for your sake that this little experiment works, because Google is frigging awesome, and you'll love it here. And they'll be happy to have you here. It's a match made in heaven, I'm tellin' ya. It might take you a couple tries to get in the door, because Google's interview process -- what's the word I'm looking for here -- ah yes, their process sucks at letting in all the qualified people. They're trying to get better at it, but it's not really Google's fault so much as the fault of interviewers who insist that you're not qualified to work there unless you are exactly like them.

Of course, there are interviewers like that wherever you go. The real problem is the classic interview process, which everyone uses and which Google hasn't innovated on, not really. It's like deciding whether to marry someone after four one-hour dates that all happen on the same day in a little room that looks kind of like a doctor's office except that the examining table is on the wall.

The reason I haven't been blogging lately is that working at Google is so awesome that I just don't feel like doing anything else. My project is awesome, the people are awesome, the work environment is over-the-top-crazy-awesome, the benefits are awesome, even the corporate mission is awesome. "Organize the world's hardline goods in little brown boxes delivered straight to your doorstep" -- that's an awesome mission, yeah?

Wait, sorry, that was a flashback to the Navy or something. "Organize the world's information" -- that's the one. It's a mission that is changing the course of human events. It is slowly forcing governments to be more open, forcing corporations to play more fairly, and helping all of us make better decisions and better use of our time.

In that vein, the part of my brain that makes Good Decisions was apparently broken a few weeks ago, when I allowed myself to be cajoled into working on something that I wasn't passionate about. I am an eternal optimist, and I figured I could teach myself to be passionate about it. And I tried! I spent a few weeks pretending that I was passionate about it -- that's how I got through my Physics classes in college with A grades, so I know it's a mental trick that can sometimes work.

But then I wrote my OSCON Data speech, in which I basically advise everyone to start working on important problems instead of just chasing the money. Or at the very least, go ahead and chase the money in the short term, but while you are doing that, prepare yourself to help solve real problems.

And after writing the speech I realized I'd completely failed to follow my own advice. I'm getting old and I only have so many "big projects" left that I can actually participate in. So in my mind it's a complete cop-out for me to take the easy path and work on a project that my company is excited about but I am not.

Now, as it happens, I am in fact working on a very cool project at Google. It's not important in the same sense that curing cancer or getting clean water to impoverished cities are important. But it's a project that has the potential to revolutionize software development, and NOT through some new goddamn dependency-injection framework or web framework or other godawful embarrassing hacky workaround for a deficient programming language. No. It is a project that aims to turn source code -- ALL source code -- from plain text into Wikipedia. I've been on it for three and a half years, and I came up with the idea, and the team running with the idea is fantastic. The work may not be directly important, but it is an enabler for important work, much like scaling infrastructure is an enabler.

So I am happy to continue working on that project for now. Yes, at Google. I may even blog it up at some point. But I'm very serious about brushing up on my math and statistics, some of which I haven't applied directly in 20 years, and start focusing on machine learning problems. Particulary, if I may be so fortunate, the problem of curing cancer. I may not be able to participate directly for a few years, as I need to keep working and paying the bills just like you. But I'm studying hard -- I started up again a few days ago -- and I've demonstrated to myself quite a few times that if I do anything daily for a few years I can get pretty good at it.

Anyway, I'm late for work. Isn't that nice? I like the sound of it. It has a nice ring to it: "I'm late... for my job."

It's great that you aren't quitting google, but it seems like you misspoke rather than being misinterpreted. It's kind of random that you claim that people misheard the word "project" when it is easy to check the actual video and realize that you didn't say that word.

Your exact quote was "I am officially quitting that job on national TV and my boss is finding out about it the same time that you are."

When people say "I am quitting that job" they don't usually mean "I am switching projects at the same company".

Again, it was a great speech and it's great that you can find something great to work on within google, but I don't think your description of the reaction is fair.

just finished watching Stevey's talk. Fantastic talk. And i get the impression that Stevey changed, matured, he wasn't what i thought he was. (watched one of his talk a year or two ago about i think javascript lang at stanford)

really good talk, and encouraging.

but, then, to be me, on the negative side, i do feel a bit empty after some thought. Because, in a sense, the talk seems to be nothing other than just encouraging math. In that respect, it's mundane. But i guess that is the point, and he expressed it well. Certainly encouraged me too. (am about same age as him)

Your Jedi mind tricks won't work on me... I am *not* coming to work for Google. Nothing against 'em, but it just doesn't seem like the kind of place where I'd fit in. I don't do "open plan" work environments, or elitism / snobbery, and I've heard tales of all of the above about Google... plus Google is just plain too big for me.

Nah, I'll stick to doing the startup thing and following my own path to trying to A. change the world and B. get rich.

That said, I loved the speech, and best of luck to you, Mr. Yegge, and to Google.

I noticed that you had Concrete Mathematics on your desk on one of your slides. I've also been working through that. It's quite dense!

I do feel like too often programmers go after problems that are cookie cutter. I feel like as programmers and engineers, there's an unending vista of projects we could work on and technology that could be developed, yet almost everyone seems to plod around in the same constrained space. I think its got as much to do with a lack of imagination as anything else.

I think you might have been too optimistic. Instead of asking people to learn math, statistics, and science, perhaps you should have suggested "Remedial Listening Comprehension." The furor over you talk suggests that may be a necessary propaedeutic.

I've failed the Google interview process twice now and they seem genuinely uninterested in finding people that can solve big problems. I'm a scientist by training. I learned programming in order to solve problems, not for the sake of programming itself -- programming is a tool for the job, just like statistics and math. Big problem solvers tend to be competent across those skill sets rather than excelling in any one area. The questions I've gotten in Google interviews are downright weird if you consider my background and resume (Google interviewers never know anything about the candidate as far as I can tell). The last Google phone interview question I botched was "implement a graphical display in C using byte arrays." When in my career as a high energy physicist would I have ever had to do such a thing? How would that have helped me do cutting edge research?

What I found funny once was a Google interviewer saying "wtf, why didnt you apply to Google, how can you have no interest there??"Either he was very good at faking his surprising and decided such as statement was marketable, either he was genuinely surprised.

I wouldn't want to work at Google. It's not heaven.The company is against my ideals and the work people fighting each other without sharing there as well (yeah its not that nice in fact)

There are already dozens of pre-clinical, animal, and in vitro studies showing that cannabinoids have strong anti-cancer properties. This is congruent with both the epidemiological data showing that cannabis users have a vastly reduced chance of getting many cancers, as well as the testimony of many patients who say that the oral and topical use of hemp oil has cured their cancer. And, finally, there is no evidence that using drugs on unmethylate the CB1 receptors on colorectal cancers can cause the regression or even remission of tumors.

The pre-clinical evidence here is overwhelming, if the U.S. government would just stop blocking all actual attempts at *clinical* research then we would probably already be able to cure many if not most cancers. No fancy math needed.

Working at Google had its appeal some time back, but there have been quite a few horror stories written in the last couple of years. In my case, two interview attempts was enough to remind me how dumb I am. Even if I did manage to pass, I would not (necessarily) get to work on the project to which I wanted to contribute. That kinda sucks. I don't think of myself as an interchangeable cog. I think I would be more useful somewhere else anyway. What I would like to see you write next is more about work at Google. Tell how it is for someone who is happy there.

I think many of us would like to give up our day job and switch to working on something beneficial and meaningful for society - I know I would, but a new baby, a mortgage, car payments etc. keep me from doing so. As an early employee at Amazon.com and Google, I expect you did rather well these last few years - sure takes the pressure off doing something like this.

Nice talk but be warned. Doing good bioinformatics is very hard work. I've worked with top notch biostatisticians and machine learning researchers alike. The biostatisticians sleep far less. The problems are harder. The data noisier. Progress is slow.

Steve, I had the same epiphany about 2 years ago, though I didn't quit my job. Got the books, brushed up on my statistics, Natural Language Processing, Machine Learning. (Math has always been pretty easy for me). Brushed up on Linear Algebra (Khan Academy is AMAZING!)

Now I have lot of interest in many fields (bioinformatics, astronomy, NLP, ML etc) and an amazing hobby but no idea what the next step is.

Unfortunately most people that work on these problems don't appreciate self taught. If you don't have a phd, your just a grunt to them.

Hope your luck is better! At least your in a good company that can take you where you want to go!

In your video you told people you wish you could go back in time to learn these things...its never too late to start!

...NOT through some new goddamn dependency-injection framework or web framework or other godawful embarrassing hacky workaround for a deficient programming language.

More on this too, please. For those of us corporate grunts in the trenches dealing with all of the above, what is the ray of sunlight? I would love to see some concrete examples (pseudocode or whatever) of how a good programming language obviates the need for dependency injection and the overly layered boilerplate approach. Every pointy-haired PM these days thinks that agile+framework+design-patterns != perfection.

It seems we have graduated from struggling with spaghetti code to struggling with bureaucratic frameworks. I would say I end up spending at least 40-50% of my time these days just wrestling with the framework rather than solving the problem at hand.

I would come to work with you, and Google keeps putting me through the pipeline for the last six years, but can't place me AT ALL. Especially if I indicate a programming language or meta-programming slant.

One interesting way to develop new treatments for cancer would be to analyze all of the cancer-related studies in PubMed (or at least starting with Neoplasms/therapy) by using data mining or machine learning to find promising treatments that may have been overlooked.

dear Steve, now that you are a compiler expert, would there be anything exciting you might share with us related to emacs? (i know you've done js2-mode and ejacs.) I'd like to see any dev related to emacs down the road. Thanks.

Hey man just wanted to say thank you. After watching that video and realizing what you were doing you brought me back to my true beliefs and you made me realize that I to was loosing track of what is important to me. I remember back in college I used to sit for days in my room trying to figure out pattern sin pi because I thought that figureing out the golden rule that is behind the most basic geometric figure in the univers would some how unravel unachievable capabilities. I think I'm gonna start looking at it again. I hope you still a have a job and I hope you can still have the life that you want. For what it's worth, thank you and keep preaching who you are, maybe your not ment to cure cancer but you surely are helping people out.

Hilariously and intelligently written! I think I will, come work for Google that is (oh please god, I'll be good, just make it come true!) :)...was "Googling" for information about jobs @ Google, found an old 2008 article of yours - a click later, there you were doing that mind-thingy of yours! (i really hope it works too!)

You might want to reconsider putting rockstar games and "principles" in the same sentence. They have a pretty bad record for the treatment of their workers and their execs clearly are only interested in making a lot of money.

I liked your talk. Rather than feeling inspired, though, I simply feel frustrated: I have the desire and the math ability, but I can't find a company willing to hire a new grad.

What am I to do? Even with the open source community, I can't change the world without resources or a job. Heck - I even got the Google interview, but was then told that, "My experiences do not match any of Google's current openings at this time." This, of course, is without them ever describing any of the openings (or even the one they were interviewing me for).

Running low on money, I will soon have to accept a position working with 'cat picture'. Are there other options I'm not seeing?

I have been reading your blog for years, and I wanted to say thank you. Five years ago, I was like the programmer in "Being the Averagest", working on essentially "cat pictures", and you inspired me to be better than that.

I had wrongly assumed that I couldn't "really" learn a concept unless a professor or boss handed me assignments and projects. Thanks to your enthusiasm for the self-study method, I started teaching myself new programming languages and concepts in my off hours.

It was slow going, as I have two small children, but today I am a much better programmer, I can more or less pick my next opportunity, and I get to work on "real" projects that help humanity.

hi , steve i m your grt fan , i m a final year diploma student in comp. engg. and love to do programming and technology , but here in india we have to manage and study as well score grt percentage to score more percentage to get into degree colg , so i didnt get time to code but i do that when i m free , can you tell me the tips how to be a grt programmer