puzzlehunt website restored

About four years ago my friend and I did this thing called the “UT Puzzlehunt.” We had a blast, and all the puzzles and answers were recorded on a website. I wrote the site in ColdFusion, so when we moved to the new server the site stopped working. But I just found a free clone of ColdFusion server, so the site is back. I wanted to get it back up because I think I’m going to try to do one at Berkeley in the spring. If you want an interesting walk down memory lane, take a look at them here. What a crowd! And how we’ve changed…

three weeks of class left — whaa?

I’m not sure how we got to this point in the semester, but here we are.

Let’s see… I won’t try to recap the minutiae of my life. It’s worth mentioning that I finally finished the hellish task of porting SLIDE to Mac OS X. Just for “fun” I also ported it to Linux. So hopefully that’ll stop being a draw on my time now if I can help it.

Last night I saw a really good movie from Hong Kong–no kung-fu involved. It was called Infernal Affairs. Well, actually it’s called “Wu jian do” in a roman transliteration. It was just a standard-issue action-thriller-crime drama, but it was done really well. Like Hollywood might make if they didn’t have to follow the same damned formula every time they make one of those movies.

I’ve also been playing the open beta test of World of Warcraft, an online RPG set in the Warcraft world. Now, you have to understand that I played Diablo and Diablo II a lot. These are some of the most pointless games ever made, from an absolute perspective. You literally spend hour after hour clicking repeatedly on randomly created little monsters in randomly created little dungeons, hoping to obtain the Truculent Mace of the Cursed Cow or something. Somehow, I found this entertaining. WoW is like Diablo, except instead of there being 15 or so people playing in your world at any given time, there might 15,000. They’ve also replaced the 2D sprites with chunky, lowest-common-denominator 3D stuff. Not compelling to a normal person, just to me. I don’t know if I’m going to be able to cough up the $50 + $10/mo to play it once the beta is over in a week.

I finished my NSF application for the third and last year yesterday. At this point, it’s just obstinance. But the fact that I’m now at Berkeley is sort of proof that obstinance can work. So off went the application.

I’m looking forward to the next few months. Doug shows up to take my old job at Apple in a couple of weeks, and it will be great to have him in town (not that Houston wasn’t great, I’m sure). Sometime in mid Dec we’ll be heading down to Texas for some holiday fun with the Halls–should be a blast. Then, the day after Christmas, we’re heading out to Breckenridge via Denver for some snowplay with my family. We land back in Cali on 1 Jan. There’s also talk of a potential trip to Hueco Tanks in early Jan with some old friends from Texas. I wonder how much tickets would run…

progress

It seems I’ve settled comfortably back into student-mode. What that effectively means is that there is now always something I should be doing, and frequently that thing is different from what I’d like to be doing. But it’s good–this is in contrast to when I was working, where 8 hours of the day, 5 days a week I had something I should be doing, and all the rest of the hours were mine to do with whatever I wanted. I’ve expounded before on the ups and downs of this, but I think, essentially, busy is the way that I like to be, and apparenty I have a penchant for these merit badges handed out by universities, so I’ll keep racking them up. My time these days is basically divided between three things: independent research with Carlo, indepedent research with James, and splines.

For Carlo, I’m mostly working on porting SLIDE to Mac OS X and other unixes, and although I’m more or less done with the port, I’m being held up at the end because I don’t know Tcl and also because, like everyone, I hate maintaining code I didn’t write. Honestly, if there were an easy way to let this project slide, I would, but I’m so close at this point I might as well tough it out.

My splines class is going well, and I’ve gotten a couple of weeks ahead by finishing the last programming assignment early. Now I just need to pick a final project to implement sometime between now and the beginning of November. There’s no final in the class, so I think things should be smooth sailing the rest of the way.

The most interesting thing going on right now is probably my project with James. I’ve talked about it before; like I suspected, it’s been tough. Still, there’s something about the way it’s been forcing me to learn that I’m really enjoying. I’m not sure yet whether James would have me as a student, or whether he’s the right choice as an advisor, but I’d say at this point he’s probably at the top of my list.

I’ve also been climbing more, and even getting a chance to do ashtanga once a week. I’m slowly filling in all the empty spots in my schedule with activities, just like when I was an undergrad. I do love it.

Oh… and I beat GTA:SA. Only with 50% completion, though, so I’ll be playing it through again, I think 🙂

the most useless species on earth?

The grad student. Lives off of the benificence of the National Science Foundation, the Department of Defense, and Giant Evil Corporations. Eats. Sleeps. Carouses with undergrads, pretending they still fit in with them. Carouses with professors, belittling undergrads and pretending to be adults. Produces papers that will never be read or used by anyone other than other grad students.

This is my life. I felt particularly like a grad student today, having spent 5 hours working on a project, then realizing that all my work was based on an incorrect assumption. At Apple, when that happened, it was still sort of okay, because whether or not I was right, I was still making $35/hour. Now it’s just like my time flushed down the toilet. Time that could have been spent playing Grand Theft Auto. Now, in some abstract sense, this was a character building experience. I know it. But damn. Talk about frustration.

First test of grad school: 76/100. Should be good enough. The class has about 9 people on a good day, and since I say things in class I’m not too terribly concerned. It was also my last test of the semester. The goals are certainly different now. Instead of just doing endless problem sets, taking tests, and getting grades, now I have to solve problems that haven’t been solved yet, that might not even have solutions, all while trying to meet some obscure goal of impressing a professor enough to take me in at the end of a year. I guess it’s a lot like trying to do well anywhere in the real world, but it’s the first time I’ve tried it so it still feels weird.

Tomorrow should be a stay-at-home-and-work day, but it’ll be chopped in half by an outing to SF to see my parents and their parents. I’ll try to bring stuff to read on the train so I don’t feel like the whole day is thrown off. I guess I should be more excited about seeing family, but I got to see my mom on Sunday, and my dad’s mother is not my most favorite person in the world. But it’s family, and certain things you should do for family. Sigh.

Doug’ll be coming into town again this weekend, which should be much fun–a rave has been scheduled for Saturday. Now I need to go learn what a subdivision surface is so I can teach it to my splines class next week… (wow, what a classically self-interested, content-free blog post)

clean apartment makes me happy

Let’s see… what’s new? I’m still a grad student. Still loving it. Pinch me. Et cetera.

Friday, Stefani came over for dinner and drinking. We had steak and shrimp, yum. Introduced Stef to the Daily Show, tasted wine (in quantity), and generally had a great time. I headed to bed just as a screening of The Princess Bride was starting. My loss.

On Saturday I went to Ironworks (the Berkeley climbing gym) with another graphics grad student, Ryan, and an EE grad student named Dan. We’d gone a couple of times before, and I decided this time to restart my membership. It’s $60/mo, but they now seem to be offering ashtanga as part of their free yoga classes, and that plus climbing a couple of days a week is worth it, I think. I wasn’t quite at the top of my game, but Ryan and I took the lead climbing test and passed where we’d failed the time before. That alone made the trip worth it.

Today I worked for five or six hours trying to…well. I’ll just say it. I was trying to display gradient vectors in a discrete vector field on a cow. I’m not proud of it, but there it is. It kind of looks like he has a beard.

gradient cow

The second half of today was spent in a much-needed and very satisfying cleaning of our apartment. I just don’t have the spare time for it that I did when I worked at Apple. Man, this being a grad student in a paid program thing sure is rough.

there’s been an earthquake: the train will continue in a few minutes

I was one stop from getting off BART yesterday, underground, between the Ashby and Berkeley stops when the train suddenly lurched to a halt. After a minute the conductor got on the PA and said, “the train is stopped because there was an earthquake.” Not the most reassuring thing to hear. But, since she used the past-tense, and I wasn’t dead, I figured it was probably safe to go back to reading my book. It turned out that the earthquake was actually 200 miles or so away, and they just stopped the trains as a precaution. Still an interesting experience.

On my way from Soda to a friend’s house in Berkeley, we passed by first a fire truck, then a person lying in the street on a stretcher being tended to by several paramedics, then a woman sobbing, then a car with a smashed windshield. It was surreal, because we were there before a crowd had gathered, so just right in the middle of our conversation, these things just surfaced my perception. Kind of messes with you.

I’m off school today, trying to cover more ground on my various projects and helping Leslie with a few errands she’s getting done while not teaching school. And I’ve just begun drinking beer.

slicing and hooking

Relaxing weekend – Star Wars: a New Hope on Friday night, Saturday night some great steaks, and Sunday I went golfing–yes golfing with Phil and a few of his friends. It was an interesting experience. I alternated hitting the ball with inexplicable accuracy and total incompetence. Still, it was fun–not a sport I’m going to take up any time soon, I don’t think. Too slow.

I spent most of the day on Saturday coding my first programming assignment for my splines class. It’s not very exciting, but it’s a start. I’ll probably post the code on overt once the due date is passed. The rest of Saturday I wrestled with Makefiles and dependencies trying to get SLIDE to build correctly on Mac OS X. Made quite a bit of progress, but I still have a ways to go.

I’m now reading Claude Shannon’s really old and really important paper “A Mathematical Theory of Communication” for my classic papers class. The man may have been a brilliant information theorist, but I can’t say much for his prose.

squishing bunny rabbits

What a week.

On Wednesday I finally got to talk to James O’Brien, the last of the graphics profs at Berkeley who piqued my interest. It’s always a little weird going into these situations. I try to get out of the way quickly that I have an EE background, an EE degree, and that I was admitted as an EE student specializing in networks. Then I get to tell them about how now what I really want to do is graphics. You’d be surprised how well this usually turns out. I love Berkeley!

Anyway, James seemed leery but was willing to give me a shot. He set me up with a project that he described as “straight-forward.” Basically, I’m supposed to take this paper from this year’s SIGGRAPH and merge it with this paper. Clearly a piece of cake! Just extend Poisson-based triangular mesh editing to tetrahedral meshes, then project the tetrahedral mesh back onto a polygon soup to model deformations! What could be simpler?

I’m a little terrified, but also very excited. This is really a chance to sink my teeth into a project and impress someone. I’m not sure how it’ll go, but I’m definitely going to do my best to succeed. To restate what I’m actually doing in terms that mean something: Any random thing is hard to smoosh. But nice round things are easy to smoosh. So, take a random thing, cover it in goo so it’s round, smoosh the goo, then take it away to reveal the smooshed random thing. Simple. See?

tractor smoosh

Should be fun. In other news, I’m trying to teach myself MATLAB so that I can do a little project for my splines class, and I’m also still working on SLIDE for Carlo. I’m busy. It feels like my mind is really expanding again, for the first time since I left UT. I love it.

it rained.

On Sunday. It was beautiful. If only it were possible to time my visits back to Texas such that I could be sure to catch a thunderstorm. I miss them most of all.

I dropped a class–too much time spent on problem sets. I really have grown lazy in my old age. Still, I’m hoping to pick up another independent research project before too long to fill in the gap. For now, I’ve got plenty to keep me entertained with my one real class, my one real research project, and my seminar. I found the main library stacks today. They’re amazing. The bookshelves are on tracks, and you have to slide them around to squeeze into the actual shelf you’re interested in. So many books. Still need to investigate DVDs.

berkeley: the first week

What a week. I’ll start with my first impressions of Berkeley from the point of view of a student. Big. Diverse. Liberal, and proud of it. Saddled with a huge bureaucracy, just like UT. But the bureaucracy seems porous, just like at UT. Full of good restaurants–see the previous n posts. Hilly–enough to wear you out compared to UT, even though the campus seems much smaller. Full of great professors and great classes, hidden in a giant course catalog, begging for me to find them. Nestled against hills on one side and a beautiful, funky town on the other, all over looking the bay and within spitting distance of San Francisco. It really is heaven on earth.

I didn’t actually have any classes to go to on Monday, but I did have a research group meeting to attend in the afternoon, so I hopped on the train. I spent the morning making use of my hastily-purchased climbing gym membership and climbed pretty much alone for a few hours. Then I went over to Berkeley to find a place for lunch–a tale told in detail below. My primary concern on Monday was the fact that we are all, as new grad students at Berkeley, expected to find advisors by the end of our first year. For some reason, this made me feel like I had approximately 2 days to get the matter mostly in hand, and I began to frantically research professors’ web pages, lists of current grad students, research interests, &c. I then wrote emails to several of them, asking to meet and talk or something. This sort of felt like the equivalent of cold-calling someone and trying to sell them life insurance they didn’t need. You see, I was admitted to Berkeley because of my prowess in networks, but I wasn’t emailing networks professors–I was emailing graphics professors. Still, you’ve got to start somewhere, and introducing myself seemed like a step in the right direction.

Finding an advisor under any circumstances is a strange sort of dance. You want them, because they pay for your graduate education out of their grants, and ostensibly guide you and mold you from being a student to being a peer. They want you because, ultimately, good students are what make a school (and a professor) good. But it’s (almost) always a one-to-one pairing, and in that sense it’s a lot like choosing someone to marry. You want to pick the best possible person, since you’re stuck in a monogamous relationship with them for the next four or five years. But before the monogamy is the time where you date… hopefully with a lot of different professors, to build confidence that you’ve chosen well. Professors might see it more as the building of a harem, since they can collect several students (some times as many as 10 or more), all working for them, as long as they feel like they can handle them all. Needless to say, I find the prospect of all of this kind of daunting, especially since I have no credentials, really, to be adopted by a graphics professor.

So it was this state of mind that drove my feverish reading and emailing. At the end of the day I went to a research meeting of one professor I’d spoken to at the visit day, who’d expressed some interest in working with me. The research he does is mostly related to medical applications of computer graphics. In particular, he works on mathematical models of the human eye, as well as modeling the affects of different diseases on vision, like amblyopia (which I have). I’m going to keep going to the meetings and I’m also going to try to help out to see how I like the stuff.

Tuesday was the first day I had any classes. What was supposed to happen was this: 9:30-11, I take an upper division CS class with 150 undergrads (I signed up for the class to fill inadequacies of my undergrad education, during which I neglected to get a CS degree). 11-12: Judo. 12-1: Tae-kwon-do. 2:30-4: Splines. 4:30-6: Seminar on classic CS papers. Great. If any of you knew me as an undergrad, you’ll know that I was usually pretty on top of scheduling, prerequisite chains, professors and whatnot, and pretty much stuck with my schedule once I set it up. On Tuesday morning I discovered just how glorious being a grad student can be. I got to my 9:30 class a few minutes early (I thought). I ended up waiting around outside the giant lecture hall for about 10 minutes before we all filed in. I then waited until about 9:42 until the professor actually said something. I remember thinking to myself, “this guy’s pretty lax about time…” I looked around me. Huge quantities of bright-eyed and bushy-tailed undergrads. I asked the guy next to me if he was an undergrad, and he said, “uh, yeah, this is like the first upper-division class that most undergrads take.” Warning #1. Still, I thought the syllabus of the class looked worthwhile, so I waited to hear what the professor would do. He began describing the class, purely in administrative terms. Which TAs (of the 5!) were for which discussion sections, where homework would be turned in, when the tests would be, whether this or that was allowed. I could feel the hair on the back of my neck stand up. Warning #2. I suddenly realized that I had been in this class before about 1000 times as an undergrad and I had no desire to do it again. Quite rudely, I stood up in the middle of the auditorium while the prof’s back was turned and shuffled out.

Strike one for my schedule. I crouched in a corner with my trusty iBook formulating a plan of action. I looked through other classes on the schedule to see if any fit into my idyllic T-TH only schedule. A graduate course on quantum computing. Starts at 10:30. Alright, sure. I show up at 10:30, to an empty room, and pull out my laptop again to try to sort through what exactly the graduate class requirements are. The trouble is they are so flexible as to be almost non-existent. Please take 6 classes or so, maybe some in EE/CS, for your master’s. Oh and later could you take like 3 or 4 more for the Ph.D.? Thanks! That pretty much sums it up. Around 10:40 the prof and seven or so other students for the class showed up. At that very moment, I thought I read something in the course requirements that indicated that the class wouldn’t count toward anything, so I promptly stood up and walked out on the beginning of yet another class.

Strike 2! I went back to the hallway and noticed that the successor of the undergrad class I’d walked out of was scheduled at the same time and had only 30 students in it. Okay, I thought, and walked into it at about 10:45. At last, a class that seemed to fit. Undergrad, but advanced. Small, just one TA, no projects. Later in the morning. Beautiful. I had done something impossible as an undergrad (at UT, at least)–just decided that one class was a waste of my time and promoted myself along the chain. And no one cares! I can take whatever I like! Bwahaha! I love this game. And one other mystery was solved–at about noon, nervous that I was going to be late for my next class, I leaned over and asked the girl next to me if they didn’t give you time to get from class to class here. She said at Berkeley, instead of ending 10 minutes early, they start 10 minute late. And since you might have a lunch date scheduled after a class, what this actually means is that everything happens late. And just like everywhere else that people are chronically late, they name it after themselves as though they were the first to do it: “Berkeley Time.”

Strike 3 for my schedule was having to drop Judo because it overlapped with the new CS class. But I dutifully showed up for tae-kwon-do at noon+10. I sat through the usual lecture about not using fighting to attack, the years of practice that were required before using it for self-defense, blah, blah. I started to get a little irritated by the sixth-degree black belt instructor and wondered whether I would have the stamina to dash all the way across campus and change in 10 minutes. About 1:50 I decided the answer was no, and walked out. Ashtanga rules you all, I thought. Strike 4.

The rest of the day actually did go according to plan. I posted my schedule here. I ended up at the equivalent of the co-op at the end of the day, tucked in among all the textbooks, communing with my brother on the travails of being a first-year grad. In all, a good day.

Wednesday I stayed home. Since I don’t have anything to take me to campus on Wednesday and Friday, I think I’ll be doing a lot of this. Just stay at home, work, run errands. It’s pretty sweet.

Thursday was less eventful than Tuesday, except I got to talk with another graphics prof: Carlo Sequin. I asked to talk with him because I found his art and had to talk to him. My favorite:

Volution 5 by Carlo Sequin

I’m going to be working with him on a system to improve modeling of abstract surfaces for art–a sort of getting-to-know-you project. Should be fun.

So it seems I’m more or less a grad student now. I even made it to some classes this year, so maybe I’ll stay.