Skip to content

Category Archives: me

behold: Candidate Brochu


It took me two years to find an area of research, two months to turn it into a research topic, two weeks to write a proposal, two days to write a proposal talk, two hours to defend it, and two minutes to pass it. But now, I’m a PhD student no more: I’m officially a PhD candidate. With all the rights and privileges thereof. Which is to say: none, other than calling myself a PhD candidate. Which I plan to, often and repeatedly. Oh, and I can teach a course now if I want.

The proposal defence is one of several milestones on the road to doctoriality. It consists of presenting an outline of what you intend to do for your thesis and what you’ve done to date, and then a fairly gruelling defence session where you stand in front of a committee of professors who take turns interrogating you. Possibly for hours (mine went for about 90 minutes). It’s not exactly adversarial, but it’s not what you’d call “friendly”, either. Though for me it was ultimately just exhausting.

proposal preparation


proposal_snip.jpgTomorrow, I will present and defend my PhD thesis proposal to a committee of professors, and whoever else shows up. While I’m not particularly worried about it (according to local legend, only one person in the history of the department has failed outright), I really hate giving talks. Actually, that’s untrue: the talk isn’t so bad. It’s the writing of the talk, thinking about what I will have to say, and trying to preempt the questions and criticisms that sets me on edge. Will this be the time I’m exposed for the fraud I am?

another day, another paper



also known as "NIPS", originally uploaded by Mister Wind-Up Bird.

Paper writing is pretty stressful. Code crashes, mistakes are found in equations, and you never have quite the experimental results you want. As deadlines approach, the pressure builds and sleep is abandoned. But I kind of welcome them. And not just for the rare flash of “hey, I’m actually doing Kirando science!” satisfaction. A good, hard deadline adds some much-needed structure and discipline to the grad student lifestyle. It forces you to stop tinkering with code and equations and write that shit down. And having just submitted a paper is a great excuse to drink heavily and spend a few days watching movies and playing video games before going back to work.

The paper I submitted yesterday was for the rather grand-sounding Advances in Neural Information Processing Systems. Or: “NIPS”. (For years now, I’ve been thinking about making various off-colour “I heart NIPS” T-shirts, and I swear, one day I’ll do it.) This is my fourth paper since February — the fifth if you count my PhD thesis proposal. I’m kind of looking forward to not writing another one for a while.

This screenshot is my work environment a little before the paper deadline. If you click on that there image, you can see the Flickr version, where I explain what all those windows are doing (more or less: it’s an anonymous-review conference, so I can’t say anything identifying about the research).

On a geeky note (well, even more geeky), I did all the coding, experiments and figures for this paper in Python using Pylab and SciPy, rather than MATLAB. After years of cursing MATLAB (generally by muttering “god, I fucking hate MATLAB” every time it eats up all the available memory and then crashes) and threatening to switch to something — anything — else, I decided I had to either put up or shut up. And shutting up is not my way. Python is not a perfect replacement, but I’m quite happy to report that it worked very, very well and I expect to do most of my thesis work with Python.

goin’ to SIGGRAPH


Siggraph-SnipI actually had my sketch accepted last week, but I wanted to update my CV and publications pages first. But, I have another paper and a proposal to write, so I’ll skip that and just announce it, since probably half the people who read this are going to SIGGRAPH, too. So, yeah. I’ll be attending SIGGRAPH in August. And presenting a poster.

If you don’t know what SIGGRAPH is, picture Burning Man. Now replace all the naked hippies with mercifully-clothed computer graphics nerds and the burning man with a conference center exhibition hall. Happily, I find geeks far less obnoxious than hippies, nudity makes me uncomfortable, and I have a healthy fear of fire, so this is all good as far as I’m concerned.

SIGGRAPH sketching and coding


SiggraphSo, on Friday, Abhijeet and I submitted a sketch to SIGGRAPH (the premier computer graphics conference, though sketches aren’t held to anything like the esteem that papers are). And hey, it’s not blind review, like my last paper, so I can tell you about this. Though blind review or no, I can’t post the work until it’s published somewhere, or else bad people might steal my brilliant ideas.

The nice thing about a SIGGRAPH sketch is that it’s only a single page, so it doesn’t take long. The bad thing is that it’s only a single page, which means that I have to compress all of my work, including math, into a few paragraphs.

However, I’m actually pretty happy with it. It’s a method of helping computer artists find the right parameters for surfaces by showing them examples and asking them to indicate which ones are closest to what they have in mind. The idea is that instead of the user twiddling all kind of parameters they don’t understand, the computer handles that part, trying different parameters and asking the user to say which final result they prefer. Abhi’s work is in providing the model of material properties.

Funny story: I wrote the code for some of the math during my latest bout of insomnia. I noticed it wasn’t really doing what I wanted, so I looked at the equations, which were not only wrong, but so wrong that I have no idea what I was thinking about or trying to do. Apparently in my sleepless state, I based the first part on one equation, got distracted, and then based the rest on something completely different. It was the coding equivalent of saying “it was the best of times is an illusion and lunchtime doubly so”.

I also commented some of my code “## FIXME: I can’t think straight and have no idea what I’m doing ##“. But that part works.