ftw!
Home Blog Archives RSS
November 18, 2003
¶ The Switch
I gave in. Sonic's blog was just too damn good looking. Every time I looked at my xanga after seeing www.plluke.tk, my heart cringed. shame! shame! it cried, you're being upstaged by a musician! (j/k)

It really was painful, though, the xanga thing. My lab server happened to be running php, which was good, so I just set up a mysql db on another machine and threw on bblog which seemed like a reasonable blogger.

Am still in the process of creating a template that I like. Page should change dramatically soon.
mp3 download download mp3
November 24, 2003
¶ singapore posters
I've told almost everyone, but haven't written about it yet, so might as well write about it.

So there's this program called the Singapore-MIT Alliance (SMA). It's basically like this: Singapore pays big bucks to MIT (~$USD 7 million per year). A number of MIT classes are then recorded and simulcasted to a few singaporean unversities. Every year, Singpore hosts an SMA symposium, which is basically a networking event for SMA faculty. Larry, my advisor, teaches an SMA class, so he gets to go to Singapore in January. He's allowed to bring one graduate student, so he asked me to go and I'm like 'hellz yeah, m0f0' (paraphrased) Then he's like you should present something while you're there, how about your undergraduate honors project and i'm like 'umm.. okay (fuck fuck shit fuck)'

Anyway, so I got my abstract out to singapore a couple weeks ago, but now I gotta make this giant poster (H: 48" W: 36") and e-mail it to them so they can print it up over there. Making a poster is hard. Took me all day and I don't have jack shit. What the hell do you fill 12 square feet of poster with? I kept scribbling obscenities on my poster, but I don't think they'd print it up for me if I did that. *sigh*

I started another sourceforge project =P

sonic and bryant will be the only ones to remember this, but back when we had the sun machines in the sun lab, there was this nifty little mailbox utility that such sat on your desktop displaying the first 4 or 5 message headers (from, subject) in your inbox. I really like that utility and was disappointed when the lab switched to linux, cause there was no mailbox utility. So I started writing my own and just finished adding in support for IMAP4, POP3, and Unix local mail last week.

I wanted the old look and feel, so I used the Athena Widget set (libXaw). Much to my chagrin, a day after I finish, I read this State-of-the-open-source-community type article linked off of slashdot that basically says "The athena widget toolkit is obsolete and should no longer be used". doh. Anyway, I made a sourceforge project for it at http://xmailbox.sourceforge.net. Page is blank right now, will fill it in when I get a chance.
mp3 download download mp3
god, I'm never gonna get any research done.
November 30, 2003
¶ are we there yet?
Occasionally I get asked how long it'll take for me to graduate, and I usually just say what the admissions people here told me: the average is 5-7 years, sometimes more, sometimes less. That's typically a good enough answer.

I asked a professor once how they decide when a student is ready to graduate, and he said that the student decides. I was like, "huh?" and then he said, "when the student feels ready, he usually is."

So now I'm like, gee. One of these days, I'm just gonna wake up and be like - man, I'm ready to graduate, I can feel it, I'm ready for my PhD.
mp3 download download mp3
Then I'm like, wtf?!?
December 1, 2003
¶ on user interfaces
What makes a good interface? It has to be intuitive, but also powerful1. For computers and other technical devices, many people would argue that it's a tradeoff. You can have a remote control that has five buttons, power, channel up/down, volume up/down, and it would be the easiest thing to use, but not very powerful. Conversely, you could have a remote control with 40 buttons and could do things like remember the last three channels you looked at, but would be really hard to use.

The holy grail of user interface seems to be both of these combined. For a first-time user, you want something that's easy to figure out (intuitive). But for the veteran user, you want something that's powerful enough to do all that's desired. And you want the transition from novice to veteran to be as easy as possible.
mp3 download download mp3
Consider your closest friends. The very first time you met may have been an instant bonding experience, or it may have been quite awkward. But regardless, your interaction during your first meeting was almost certainly quite different from your interaction now. Maybe the first time you got lunch together was a tentative arrangement through e-mail detailing where to go and when to meet and how to get there; and now you just call, say "lunch! now!", and hang up, knowing exactly where to meet. The interface has changed, but you didn't really notice because the progression was so natural. And yet it's more powerful because you can accomplish the same in less time.

That's how we want computers to be. The very first time people do something, it's okay if it takes a while. But the expectation is that repetitive tasks will become easier to complete in a shorter amount of time. And everyone develops their own interface. The key thing to notice about the interface between you and your friend is that not only did you change your interaction with your friend, but your friend also changed to adapt to you. A computer interface that may be powerful and intuitive for one person may be the most confusing mess of symbols and buttons to another. We want a computer interface that can adapt to the user, so that it's easy to use at first (and maybe not so powerful) but gradually and unnoticeably changes so that it becomes just as easy and more powerful as well.



1 powerful is a little vague. I'd say that a powerful interface is one that allows you to perform a multitude of tasks as quickly as possible. Thus, a speech interface that requires you to pronounce every letter of every word is not as powerful as an interface that allows you to pronounce entire words, even though you can eventually produce the same results.
December 5, 2003
¶ curse you, boston
[rant]

Boston defeated me again this morning. There was no contest, it was a sound beating. Y'know, it's okay for a city to have weird twisty and windy streets. I don't have any problems with that. It's okay if the street signs aren't always where they should be. It's okay for other drivers to be total assholes. But, for the love of all that's sacred, can't the streets at least stay the same!?!? Every week something changes and a road that I used to be able to take just disappears... the Big Dig just eats it up! I'm driving back on I-93N this morning, and the exit that I normally take to Cambridge is just gone. Well, it's sort of there, but instead of letting me on to storrow drive, it shits me out in the North End somewhere, and then before I know it, the North End shits me out at Logan Airport and Boston is like, "haha! fuck you!!!" So there I am, flailing around Logan Airport because Boston refused to let me go to Cambridge, and I'm like *whimper*
mp3 download download mp3
[/rant]
December 7, 2003
¶ robot DJ
an idea:

Write a simple Kazaa client that does no searching, but instead participates in the network as a SuperNode. Make a number of them and distribute them on the Kazaa network. These clients do nothing but harvest data. They compile a database on the most popular searches. This data is fed into a database.

Write a simple Shoutcast client. This client polls the database as it's updated and automatically generates a playlist based on, for example, the 50 most searched for songs. Instant Top50 internet radio station, absolutely no maintenance required.

Finally, sell the data to record companies and make a million bucks.

References:

Ibanez Jesus, Gomez-Skarmeta Antonio F., Josep Blat. DJ-Boids: Emergent Collective Behavior as Multichannel Radio Station Programming, "http://citeseer.nj.nec.com/581122.html"
¶ snowy weekend
Ever see someone skiing in Boston?


On the one hand, you feel bad for them. On the other hand, it's like "haha! sucks to be you!"
December 10, 2003
¶ ebay *sigh*
[rant]

So I sold something on eBay on Stacy's behalf. It was a beautiful transaction, went off without a hitch. Posted it for sale on Wednesday afternoon, the day before Thanksgiving. Later that night, someone purchased it and ended the auction with Buy It Now. He paid me via PayPal and I sent him an e-mail saying I'd ship it on Monday since I was home for Thanksgiving. Monday rolls around and I send it out via UPS, and it's delivered the next day cause he's only in New York. Friday, he leaves me positive feedback on eBay and I do the same for him. Beautiful, end of story, right? Wrong.

Today, he decides to raise a complaint with PayPal, claiming that I never sent the package. "Never received merchandise!!" he says! PayPal, having significantly improved its buyer protection policies quite recently, automatically takes his side and freezes my account (with the $257 still in it), saying I have seven days to provide a full refund or proof of delivery. I'm like, "wtf!?!?" and send him a nasty e-mail. After he doesn't respond within the next 12 seconds (I didn't really expect him to, but I was pissed), I trek over to the UPS store and get my tracking# and proof of delivery, come back and send it to him and paypal. So now it's his turn to either cancel the complaint or provide counterevidence. Then I curse him for wasting 45 minutes of my time and entertain myself with visions of showing up to this complete stranger's house in a black sedan with my nonexistant posse and assorted tools (baseball bats, crowbars, etc.) and being like, "you want a refund? I'll give you a refund."

[/rant]
December 12, 2003
¶ neeed mootivaaatiooon
Lethargy sets in.

My office is pretty dismal in the middle of the day when no one's around. Somehow, it seems lonelier than when it's dark. I can't stand being the only person when there's daylight peeking through the windows... I get so restless and gloomy. But at night, when the only light comes from the dull haze of streetlamps and my monitor glow, I don't notice it as much. I get so much more productive when I'm surrounded in darkness... I couldn't work at all yesterday during the day, but when I went back at midnight, I had no problems working straight through 3am.

People have started writing to me about DLTool and it's been encouraging. According to sourceforge, it's been downloaded almost 2,000 times now, which isn't all that much, but is still pretty cool. The feedback I get for it is definitely way better than any money they could've paid me for it (well, unless it's a lot of money =P) cause it's really cool to make something that makes someone's life a little better, and cause more people learn chinese now =P. Some e-mails I've gotten:

Hello,

Congratulation for Dltool. It is really useful to decode characters I don't know yet when I chat with Chinese people on MSN Messenger.

Hi there Mr Huang,

I've been using dltool for several months now, and it's been unbelievably helpful. So firstly, thank you for taking the time to code such a great tool! My only question is, do you plan to port it to Linux, or know of any similar projects I could look at? I'm just planning to move over to Linux, but without something like dltool it might not be worth it...

Either way, thanks for your time!

Hallo,

I like very much your DLTool; it makes it really comfortable to read short stories on the net and because it's so quick to look up words, I am really encouraged to pay more attention to precise pronounciation and correct tone of Chinese characters.


The second one was kind of a "hooray! ... oh shit" moment. hooray cause he liked it, oh shit cause he might not check out linux if there's nothing similar (which there isn't, unfortunately... hurry up, Mono!!) heh, oh well =P
December 16, 2003
¶ paypal fraudsters
My theory about the strategy of the ebay guy from last week:
  1. Buy something expensive on eBay
  2. Pay for item, get it delivered, wait a couple days.
  3. Raise complaint with paypal, claiming item was never delivered, even though it was.
  4. If seller provides proof of delivery, quietly cancel complaint and re-sell item.
  5. Otherwise, $$profit$$

What a total fucker. The shitty thing is that because of PayPal's automated complaint system, I doubt they have checks in place to detect this kind of fraud. Like, they have enough trouble shutting down the fake-paypal websites, I doubt they'd devote any resources to stopping this. So I was fine cause I sent them a UPS tracking # and it was shipped to his confirmed address, but if
I hadn't done either, I'd have been SOL.

........................
One exam down, one to go.

December 17, 2003
¶ Flyer on the Great Dome
As reported by MIT News, a replica of the Wright brothers' Flyer was spotted perched above the Great Dome early this morning. Here are some photos I took. Kinda funny cause one of the students that put it up there accidently left his laptop on the great dome after they came down and had to ask the campus police if he could go back and get it.
December 22, 2003
¶ home for the holidays
Well, the semester is finally over and I'm back home again. Just picked Heather up from the bus stop, so we're a family of four again. It's nice to have that feeling of closure when a term ends, cause you know that all of the school work you've been working on is done and can't come back to haunt you ever. The research work, on the other hand, is a totally different beast.

So MIT and graduate school aren't quite so intimidating anymore. Most people seem fairly normal, just exceptionally brilliant. I definitely don't feel like I'm one of the smarter students there, but I think I'm doing okay so far. There aren't as many super-egotistical megalomaniacs as I'd feared, but they do rear their heads every once in a while. A lot of the other first years get really stressed out a lot, it unnerves me sometimes. I want to shake them and be like, "dude. relax." but I don't think that would help much.

Went snowboarding at wa-wachusett last friday w/bryant and nick. that was mad icy, not very pleasant at all. Well, on the one hand it was good to get out on the slopes again and try out my brand new used and beat-up board, but the mountain was also in piss-poor shape. I think I've had enough of buying used snowboards on eBay. heh.
December 25, 2003
¶ the fetish night before christmas
Merry Christmas. w00t.

On Monday, I got really sick of my hair. It was annoying me. Down past my ears and getting in my eyes all the time. But I'm developing this aversion to barbers... it's like I don't trust them anymore. Like your auto-mechanic, right? You never know what they're gonna do and how it's gonna turn out... except that getting a haircut only costs like $10 and you don't really get cheated... so it's not really like your auto-mechanic, but whatever. Point is that I went into the bathroom with a pair of scissors and gave myself a haircut. I couldn't really see the back of my head, so I just guessed where my hair was and chopped away. I missed some parts, but got rid of the hair that was annoying me, which is good enough for me. Not sure that stacy's gonna be so happy w/it, tho =P


Heather's bf Jeff is here for xmas. He's a nice guy, and I think my parents like him. We did the whole christmas dinner thing and lit some candles and played cheesy holidy music. The only place we messed up is we forgot to wait until morning to unwrap pressents. We don't really exchange gifts anymore. Well, we kinda do, but they're more like token gifts. Instead, we take turns unwrapping presents that people give to my dad. Lotta people give him stuff, so we had fun doing that.

Later, heather convinced me and jeff to go to club Hell, so we went. It's downtown, off of Weybosset street. Tonight was fetish night. We got in mostly free with some flyers heather had picked up on thayer a couple days ago. Definitely a weird night. It was like a potpouri of nightcrawlers. The music was totally random.. pretty good music individually taken, but definitely not a coherent theme. At one point, a trio of thonged lesbians on a couch behind me were mounting each other; a bunch of open-shirt white guys on the dance floor in front of me were thrashing to AC/DC (back in black); while behind them, in a corner at the bondage station, some girls cuffed and chained to a large cage were busy getting spanked and whipped; and to my right this hefty girl (at least twice my weight) had taken her bra off and was grinding this little guy no bigger than me. Definitely not the usual Club Hell crowd.
December 27, 2003
¶ september, 1752
something they showed us when I took CS015 way back in the day and always thought was kinda neat, but forgot about for a long time.

At any unix shell, type: cal 1752

That'll give you a nicely formatted calendar for the year 1752. The cool thing about it is the month of september. it's only 17 days long. historians will give you this schpiel about switching from julian calendars to gregorian calendars and popes and jesus and stuff, but I just think it's cool. end of story.

This is the output I get:
bento ~ $ cal 1752
                             1752                              

      January               February               March        
Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa
          1  2  3  4                     1   1  2  3  4  5  6  7
 5  6  7  8  9 10 11   2  3  4  5  6  7  8   8  9 10 11 12 13 14
12 13 14 15 16 17 18   9 10 11 12 13 14 15  15 16 17 18 19 20 21
19 20 21 22 23 24 25  16 17 18 19 20 21 22  22 23 24 25 26 27 28
26 27 28 29 30 31     23 24 25 26 27 28 29  29 30 31
                                            
       April                  May                   June        
Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa
          1  2  3  4                  1  2      1  2  3  4  5  6
 5  6  7  8  9 10 11   3  4  5  6  7  8  9   7  8  9 10 11 12 13
12 13 14 15 16 17 18  10 11 12 13 14 15 16  14 15 16 17 18 19 20
19 20 21 22 23 24 25  17 18 19 20 21 22 23  21 22 23 24 25 26 27
26 27 28 29 30        24 25 26 27 28 29 30  28 29 30
                      31                    
        July                 August              September      
Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa
          1  2  3  4                     1         1  2 14 15 16
 5  6  7  8  9 10 11   2  3  4  5  6  7  8  17 18 19 20 21 22 23
12 13 14 15 16 17 18   9 10 11 12 13 14 15  24 25 26 27 28 29 30
19 20 21 22 23 24 25  16 17 18 19 20 21 22  
26 27 28 29 30 31     23 24 25 26 27 28 29  
                      30 31                 
      October               November              December      
Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa
 1  2  3  4  5  6  7            1  2  3  4                  1  2
 8  9 10 11 12 13 14   5  6  7  8  9 10 11   3  4  5  6  7  8  9
15 16 17 18 19 20 21  12 13 14 15 16 17 18  10 11 12 13 14 15 16
22 23 24 25 26 27 28  19 20 21 22 23 24 25  17 18 19 20 21 22 23
29 30 31              26 27 28 29 30        24 25 26 27 28 29 30
                                            31
January 3, 2004
¶ I don't want to go to med school, damnit
took a trip down to NYC for the new year. that was fun. stayed with lixi tuesday night. lunch on wednesday with lixi, mike simon and doreen wong. met up with bryant, sumi, and sonic later. went to some punk/indie rock club to celebrate the new year, but we didn't really like the bands there and the music was deafeningly loud, so we left early and went back to bryant's. ended up watching iron chef for 3 hours. thursday hung out with bryant at macy's and museum of natural history (the dinosaurs are so cool!), cooked dinner at rich's place and played halo for a really long time. crashed at bryant's, ate pizza for lunch and watched resident evil the movie. caught greyhound bus home. nice trip.download movies, buy movies,download mp3,hindi mp3 download
January 4, 2004
¶ are we really that desperate?
So I got bored last week and was browsing the personals on craigslist and was curious about what kind of guys responded to the personals. So I put up an advertisement as a woman seeking a man, and directed the responses to some random hotmail account. To my chagrin, more than a fourth of the responses I got were from MIT graduate students.

According to the 2000 census, the Middlesex and Suffolk counties (my geographic area) have approximately 550,000 people between the ages of 20-35. There are 5,000 graduate students at MIT, most of whom are male. That's less than 1% of our representative age group.
download movies, buy movies,download mp3,hindi mp3 download
So do MIT men prefer the online dating scene over the physical scene? Or are we just really desperate as a whole?
January 8, 2004
¶ roar
albertosaurus sign download movies, buy movies,download mp3,hindi mp3 download
January 9, 2004
¶ ph34r the sh33p
don't click here if you run Mozilla or are afraid of sheep. javascript sheep brought back to life by a wistful memory.download movies, buy movies,download mp3,hindi mp3 download
January 10, 2004
¶ quincy mahket
weather.com says it's like -9° F out1. and sunny. Excellent! one might say, what better thing to do than go for a bike ride? My words exactly. Headed east then south, across the Longfellow bridge. Stacy calls me when I'm crossing the bridge, and icicles form on my hand2 as I take it out of my glove to answer the phone.

Today, I wanted to explore the North End, cause I haven't really roamed around there yet. Skirted through Beacon Hill then made it to Quincy Market. Ended up walking through most of the shops there, then biked back to my dorm. I should've worn an extra pair of socks. My right foot was going numb on the way back. I think I'll leave the rest of North End for another day.

Jay's (supposedly) coming up to boston to visit today. He missed the first train by a couple minutes cause new yorkers are idiots, so he's hopefully on the next train by now. that'll be cool, haven't seen him in a while.

Sometimes I feel a little lonely up here cause I don't have a whole lot of friends yet. But then I think of my roommate's wife and I don't feel so bad anymore. I live in a two bedroom apartment, with a randomly assigned roomate. He's a 2nd year grad student in Chemical Engineering, from Shanxi in China. Several weeks into the semester, his wife moves in with us. Didn't speak a word of english, and had never left China before. So here she is, about as far as possible from home trying as hard as she can to learn english, with only her husband around, who's usually busy with his work. Anyway, my point is that I don't think I have it as tough on the social side as she does.
1 okay, so it's actually 7° F, and "feels like -9°", but saying -9° sounds cooler.
2not really, but that's what it felt like download movies, buy movies,download mp3,hindi mp3 download
January 13, 2004
¶ and away
to singapore! download movies, buy movies,download mp3,hindi mp3 download
January 16, 2004
¶ medicinal purposes only
finally got here. note to self: do not fly China Airlines again.

[begin obligatory travel story]
shuttle flight from boston to new york. something strange was tripping a warning sensor and delaying our flight so we couldn't take off. finally, the pilot realizes that there are too many little kids sitting in the front of the plane and we're aft-heavy. so they spend like 10 minutes doing a little musical chairs routine and moving the kids to the back so our center of gravity is where it should be. makes me wonder what would happen if those kids suddenly started running around mid-flight...
[end obligatory travel story]

it's nice and warm here. 88° F... yeah, that's nice =P weather.com says boston is "-4°, feels like -27°." to anyone in boston: pbbbbbbbbbbbbbbttththhh =P

Oh yeah, contrary to what I've been telling people, chewing gum hasn't been totally un-banned here. Apparently, they did the california thing and it's legal for medicinal uses. So if you have a prescription saying you must chew gum to survive, then it's okay. otherwise, it's not. something like that.download movies, buy movies,download mp3,hindi mp3 download
January 20, 2004
¶ in singapore
last full day in singapore. pretty cool so far. hung out with stacy for several days, which was nice. dropped lots of money in a video arcade, saw Paycheck, dinner with the family, met up with andy and went to karaoke and dinner, etc. etc.. nice trip so far.

The actual symposium was nice. I was terribly underdressed (UMichigan t-shirt and fat black pants) and some of the organizers chewed me out for it. Everybody else pretty much had at least a shirt and tie. Oops. Some famous important people gave boring talks to open the symposium. Me and 4 other mit kids skipped out on that cause it was so boring. Came back just in time for lunch. Then a lot more technical talks. Those were pretty cool. More techy stuff, blah blah blah. More food.

I gave a poster presentation this morning, and it was reasonably well received. People even seemed like they were remotely interested in what I was doing, which was a surprise. The way it works is that everyone has this giant 3'x4' poster that they stand next to for a couple hours. During that time, other students and faculty walk around and ask you questions if they're interested. The poster is supposed to be about your research work, but since I haven't been doing any research at MIT so far, the poster was about my undergraduate work with twd.

Halfway through the poster session, three profs. standing next to me got into a heated debate about the merits of matlab and mathematica. Then this ring of grad students formed around them as we watched them duke it out. It was weird. I had this running commentary in my head as they argued... "C pulls out the elegance argument, A counters with pragmatism, B goes off on a tangent about engineers vs. computer scientists, C says it's stupid... ooh, low blow." etc. etc. All this while about 10 of us grad students circled them, watching quietly.


download movies, buy movies,download mp3,hindi mp3 download Just hanging out at some internet cafe now. The plan is to kill time for the rest of the day, then it's off to taiwan tomorrow. gonna go see family, travel around the island for a bit, then find and pester smee.
January 26, 2004
¶ rainy taipei
wow... what a trip. am in taipei now, at sooms's place. she's not feeling so hot today (going to bangkok destroyed her gi tract) so she's sleeping. i spent the last four days mostly in the back of my uncle's nissan quest minivan with his three adolescent children. we all drove down to southern taiwan last wednesday and began working our way up the eastern highways. I left them when they hit hualien and took a train back up to taipei and met up with sooms. some memorable moments:

- It's raining. Me, being the hard-core new-englander that I am, thinks umbrellas are for wimps so I deign not to unfurl one. My cousin asks "don't you want an umbrella" and I'm like nah. Then he's like, "you're not afraid of going bald?" and I'm like, "bald? wtf?" and he's like "yeah man, the rain. it's bad... acid." and two femtoseconds later I've hoisted an umbrella the size of texas.
- Scrawling wishes on a large, crimson paper balloon, holding it still in the wind while a fire is lit in its gaping belly, and watching it rise majestically into the moonlight, another fiery red dot in the sky joining other messages of hope for the new year. Watching it grow smaller and smaller until at one moment, with the blink of an eye, it's gone.
- Climbing the mountains. Holy shit does taiwan have a lot of mountains.
download movies, buy movies,download mp3,hindi mp3 download - Apologizing a thousand times over to my parents that me and heather were ever 15 years old as I watched, from my observation post in the back of a minivan, the drama of three children (ages 11, 13 and 16) unfold in a spectacular display of sibling rivalry and teenage angst
Will be back in cambridge soon. Am looking forward to that... I've had way too much asian food lately and am craving a good mushroom and swiss burger cooked just right (medium) served with a pickle, fries, and a fucking coke. Can anyone say "234 Burger"? (paragon)
January 30, 2004
¶ if I could
if I could change my undergraduate concentration, I would:

1) have done math/cs instead of pure CS. Well, maybe not. At least I think I would've taken a math class. I'm definitely regretting not having taken a math class since high school (no, I don't think discrete math counts) bhsigelm had the right idea. Math has always been one of those things that just intimidates me. it's like, if you're a math major, then you've got to be freaky smart. cause you're transcending the physical into some bizarre world of abstraction that actually kinda makes sense if you can think about it hard enough without bursting a blood vessel.

2) Not have been a philosophy major. god, what a waste of time. The only reason I took The Nature of Morality is that stacy was taking it too. After that, it was one of those well i only need three more courses for the degree so why not? kinda things. I used to think philosophy was like math.. an elevation of the mind to a plane unfettered by the chains of reality. but now I just think it's all a load of horseshit.

download movies, buy movies,download mp3,hindi mp3 download
January 31, 2004
¶ no minesweeper for you!
sign declaring illegality of playing computer games
Only in Singapore can you be arrested for playing minesweeper. This photo was taken at Far East Shopping Center. download movies, buy movies,download mp3,hindi mp3 download
February 4, 2004
¶ shield your eyes
so my roommate moved out. and he took his wife with him. for a while, he wasn't sure if he was gonna take her. his department rented him out to some companies in ohio and minnesota for the semester1, and at first he wasn't gonna bring her. he tells me this and i'm like, "wtf!? take her with you!!" eventually things worked out and they flew to ohio together several days ago. so now I don't have a roommate. it's nice and quiet for the most part. I don't know how long this will last. Chances are that I will be assigned a new random roomate within the next week or so. Oh well.

One of the benefits of having a place to yourself, as I've discovered, is that you can walk around the apartment butt naked and nobody will care.

he he he


1 So apparently, the Chemical Engineering department has this rental program where companies can pay the department lots of money and then get some grad students for a semester or two. The grad students are sent out and do work for the company, but don't get any more money than their usual stipend (~$1800 per month). it all goes to the department coffers. i think that's sort of how it works.
¶ rss aggregators
this is for the blogging n00bs.

scenario: You like reading news sites. And blogs. And maybe Dilbert. The problem is that all of these are frequently updated, and you don't want to miss anything, but it's a pain in the ass to go click on every single web page every time you want to know if there's something new. Something more convenient is desired... that can just tell you in a single glance if a new story/article/comic is out.

solution: Create a standard format for distributing this kind of frequently updated content. Call it RSS. An RSS feed describes pieces of dated information. Whenever a news article or comic is published on a web site, the RSS feed for that web site is also updated. The reader (you) can then run a program to automatically and periodically harvest the RSS feeds and tell you if there's something new. This way, the situation has become a interrupt-based model instead of a polling-based model1.

These RSS feed readers are commonly known as RSS aggregators. There are now like a billion of them in existence. I have been using RSS Bandit. It looks and acts just like an e-mail client. You give it a list of RSS feeds, leave it running, and whenever something new arrives, it notifies you. If you find a client you like better (brandon?) please let me know. I definitely haven't tried all of them.

Pretty much every major news site, online comic strip, and blogging engine in existence publishes an RSS feed. This page has a nice list of popular feeds. My feed is linked at the top of my page. Xanga feeds can be reached at http://www.xanga.com/rss.aspx?user=username
1A nice, albeit somewhat extreme, way of describing the difference between interrupt and polling models of delivering messages was explained to me as follows. Consider messages delivered over the phone. We all use an interrupt-based model - when someone has something to tell you, your phone rings, interrupting you. You then pick it up and take the message. In a polling-based model, however, it would be like you picking up the phone every 10 seconds and saying, "hello???"
February 5, 2004
¶ go jen
congratulations to jen, future MIT phd student!
¶ welcome to 6.893
So I'm a teaching assistant (TA) for Larry's course this semester. It's 6.893 - Pervasive, Human-centric computing. It's an SMA class, meaning that all of our classes are teleconferenced with universities in Singapore. There are a number of large television screens and cameras in our classroom, so that we can hear and see them, and they can hear and see us. Larry conducts the lectures, and I'm there on standby. We have a massive technical support team of videographers, teleconferencers, and computer people ready to assist if the video stream, audio stream, or computer broadcast breaks down. Since Singapore is pretty much on the exact opposite side of the world from us, it's hard to find a good class time. So we meet twice a week - Monday 9 AM EST (10 PM in Singapore) and Wednesday 8 PM EST (9 AM in Singapore).

The class focuses on emerging technologies. Every student is given an HP H5550 iPaq handheld computer. These things are jacked (Intel XScale 400 MHz cpu, 128 MB RAM, 802.11b wifi, bluetooth, 16 bit color, etc.) Comes with WinCE, but we're wiping it and installing linux, python, gtk+, and java. We're going to spend a week on each of location tracking, handwriting recognition, speech recognition, and computer vision, and then do a final project integrating all of those technologies. Sounds cool, right?

Me, i'm like "shit..." cause I've never taken the class before. I haven't done any of the assignments, or had experience in any of those fields. But, in Larry's words, I'm the first line of defense when something goes wrong for the students. My job is to stay one week ahead of the students and try as hard as I can to figure out what might go wrong, and how to fix it. And if there's one thing a student hates, it's an unprepared TA. *whimper* And all I really want to do is play with the iPaqs.
February 6, 2004
¶ fear not the cold
man shoveling snow topless

If you have ever wondered what kind of spirit it takes for a man to live and die for a baseball team that hasn't won the world series in 86 years, behold the Bostonian in his natural habitat.

Photo taken with permission, while biking through Central square. Click image for full-res photo.
February 11, 2004
¶ opening cans
every now and then I fixate on something. It enters my mind, and I just can't get it out. lately, it's been electric can openers. I want one. But not to open cans with. I want the ones that come with a motorized sharpening stone in back, because I want to sharpen my Knife.

My kitchen revolves around my Knife, and it's getting dull and needs to be sharpened. So I've been dragging stacy to Target and Walmart in search of a friggin electric can opener. But I couldn't find one that I liked. So now I'm looking online and all of a sudden I'm seeing these professional Chef's Choice Electric Knife Sharpeners that retail for $120 and I start to drool. I'm drooling over a $120 knife sharpener, damnit what's wrong with me? But I was looking for can openers, not knife sharpeners. I feel like a yuppie.

Last year, I had this ancient sharpening stone my mom gave me. When my Knife got dull, I'd wet the stone, sit at the table in our suite, and you could hear little shick! shick! sounds for minutes on end. weirded out some people. I guess the sight of a 16 ounce, 8" meat cleaver being rhythmically honed to a razor sharp edge on a whetstone can be surprising. but damnit, i just want a sharp Knife, and I can't find my stone, so I want an electric can opener.
¶ limits of a public journal
there are some things you just can't blog about...
February 16, 2004
¶ updates from cambridge
new roomie moved in a week ago. we get along. have more in common with him than i did with china, at least =P

So I'm not really one for romantic things, but I'd feel like a tool if I didn't do anything on v-day. stacy came up friday night. The plan was to hang out in cambridge, maybe go ice skating, and then go snowboarding early saturday morning. Picked her up from the bus station, and then she was like, 'dude i forgot my contact lenses' and she didn't want to go riding in her brand new glasses so we were like 'shit'. stopped by a couple of opticians to see if we could buy some disposable contacts for her, but no go, as all the ophthamologists had gone home for the night and weren't giving out prescriptions. So we drove down to providence. and then drove back up to cambridge, with her contacts. That was friday. romantic, huh?

saturday was cool. took her to Loon, a medium size mountain with some nice riding. I bought new bindings last week, so my board actually stays on my feet now.

sunday met up with amandine and bryant and (surprise surprise) yotam for dim sum at china pearl. shocked them all with my blue hair, which stacy dyed for me last friday. I would post a picture, but I think my camera has breathed its last. won't turn on now =/ time to buy a new camera! dim sum, as always, was cool. had time to enjoy it this time. last time i went to china pearl with jay, we showed up 40 minutes before his train was scheduled to leave from south station. our meal was like: wait for table, get table, mob carts, snarf snarf, mob carts, snarf snarf, throw money at cashier, run to south station.
February 18, 2004
¶ virtual monday, pleasurable office chairs
Yesterday (Tuesday), was a Virtual Monday. Virtual Monday means that even though it's a Tuesday, we have all of our Monday classes and the Institute operates as if it's actually a Monday. The idea is that we want to have most of our holidays on Mondays cause it makes for better weekends and more uniformity, but we don't want to screw over the courses that have class on Monday. So on the Tuesdays following every other Monday holiday, we have a Virtual Tuesday. On Wednesday, the Institute returns to its normal schedule.

in other news, I was just browsing through the archives of the ACM (Association for Computing Machinery) Digital Library, and happened across the proceedings of a conference titled DPPI: Designing Pleasurable Products and Interfaces. Of course I had to take a look. So I look and see that the second abstract in last year's proceedings came from some researchers in the Netherlands. It's titled: "Measuring the emotions elicited by office chairs"1 At this point I'm just ready to fall over laughing. But I think maybe it's just a hokey title and they're actually presenting some interesting research, so I read the abstract. And I quote:
Office chair designers have traditionally focused their design efforts on optimizing the so-called 'ergonomic fit.' Although the effort to design chairs that support physical comfort is commendable, the focus on ergonomics neglects the possible impact of emotional responses on the general experience of comfort. The general experience of comfort experienced when using a chair is not only influenced by the ergonomic fit but also by the 'emotional fit,' i.e. an emotional response that is desired by the user. In this paper, a study is reported that was designed to measure emotional responses evoked by office chair appearance. The study was part of a bigger project concerning attractive and comfortable office chairs. The emotional responses evoked by 15 chairs were measured with the Emocard method, a non-verbal self-report instrument. Some differences were found in the results obtained with the Emocards and those obtained with a standard verbal evaluation method. Although discriminative to some extent, the non-verbal method was found to be less discriminative than the verbal method. In the discussion section, some recommendations for the development of the Emocard method are reported. It is discussed that, given these feasible recommendations, the Emocard method can be a useful tool for office chair designers that want to 'design for an emotional fit'.
So in short, they took some office chairs, and this thing called an Emocard, and showed the chairs to a bunch of people. Then they wrote a paper on it and presented their findings in an ACM-sponsored conference called Designing Pleasurable Products and Interfaces.

Somebody shoot me now before I get farther into academia.
1Karen Reijneveld, Michiel de Looze, Frank Krause, Pieter Desmet. Designing Pleasurable Products And Interfaces. archive Proceedings of the 2003 international conference on Designing pleasurable products and interfaces, Pages: 6 - 10
February 22, 2004
¶ green thumb
This (DivX low motion, 21 MB) is for amandine.

::mischievous grin::
February 24, 2004
¶ blood, suffering, and anguish
So I'm taking Robert Morris's class on distributed systems. This guy is 1337. He took out the Internet in 1988 and is now a convicted felon or something as a result. But he doesn't talk about it much, and I get the impression it's not something he likes being known for. Anyway, he's teaching at MIT now and runs the Parallel and Distributed Operating Systems (PDOS) group.

For the class, we're writing some code and so he gave us all accounts on the PDOS systems. The three machines that we get accounts on are named blood, suffering, and anguish. Somehow, it seems appropriate. See, whenever he gives his lectures, he always has these crazy facial expressions. If someone asks him a question, he scrunches his face up way tight and grits his teeth and grimaces like someone just shot him in the nuts with a 12-gauge shotgun or something equally painful. When the guy lectures, I feel like he's in constant agony, and I feel kinda bad, like he's thinking "ach, you friggin grad students, why can't you just leave me alone!?"

Yuan says he's logged in to suffering a lot. It seems fitting...
February 26, 2004
¶ Bill Gates
Bill Gates gave a talk today. I had totally forgotten about it until angelina reminded me, so I was 20 minutes late. Don't really remember much about his talk, it was all PR material. The whole time, my thought train was like, "haha, this guy has a super dorky voice!" ... "holy shit this guy is rich!" ... "dork" ... "#$^&@ rich!" ... "dork" ... "this guy could buy canada" ...

Overall it was interesting, if not just to see the guy. He made a lot of jokes (indirect references) about how he never graduated from college, and how rich he is. I got in line to ask a question, but I was too slow, and they ended Q&A before it was my turn.

In high school, I had this totally unjustified hatred for the man. In retrospect, it was just the geeky thing to do, like macintosh bashing. I would listen to other people say why they didn't like him, and then repeat what I heard, without really checking anything myself. Now it's different, but it's interesting to look back and realize that my opinions weren't really my own at the time.

It was interesting to hear him mention his philanthropic efforts. He said at one point, (paraphrased) "It's a little strange, spending some days trying to make a lot of money, and then other days trying to give it away". Glancing at the website, the Bill and Melinda Gates foundation has an endowment of $26 billion. That's an incredible amount of money for a charitable foundation. If nothing else, that's definitely the power to effect change.
February 27, 2004
¶ reused anal plugs
So you know how sometimes you get a mass email, and then you reply to the mass email, but you accidentally hit "Reply-to-all" instead of just "reply"? And sometimes you might say things you don't want other people to know about? and it can be kinda embarrassing? yeah...

So there's this mailing list called reuse@mit.edu. The way it works is if you have something you don't want/need anymore and you're looking to give it away, you send an email to reuse describing your item and how someone should contact you if they want it. There must be at least a thousand people on the reuse mailing list, cause stuff comes and goes super fast. Usually, it's stuff like old computers or furniture or houseware or stuff like that. Occasionally, there's something interesting.

A couple days ago, someone posted an email to reuse that starts as follows:
To: reuse@MIT.EDU
Subject: not-so-little blue friend
Date: Wed, 25 Feb 2004 16:36:24 -0500
From: xxxxxxx x xxxxxxxxx 


free to a good home:

one (1) Private Collection brand "Ultimate ANAL Plug", size medium.
The description goes on, but you get the idea. Anal plug, big, blue, and brand new up for reuse. So today, some girl had one of those moments and hit reply-all instead of reply, and her email was as follows:
Date: Fri, 27 Feb 2004 00:26:22 -0500 (EST)
From: xxxxx xxxxx 
To: xxxxxxxx x xxxxxx 
Cc: "reuse@MIT.EDU" 
Subject: Re: not-so-little blue friend


hi im not sure if this is claimed yet but id rilly lyke it!! my boi is
lookin for an upgrade :) ummm, hee hee ;) ok lemme kno...i live at
next house so i kin pick it up on campus. thanx a millyun! :) :) :)
So I'm sitting at my desk reading this, and I'm like, "girl, you did not just tell a thousand people that you're looking to upgrade your anal plug."
February 28, 2004
¶ totally useless
gah. It's 4:30 am, and I can't sleep. i hate it when i can't shut my brain off.

stacy was telling me about her interviews in new york today, and told me a brain teaser she and eugene were joking about. It goes like this: You have two jugs. Jug A can hold 3 gallons of water, and jug B can hold 5. Using just these two jugs and a running faucet, how do you measure out 4 gallons?

So it's a pretty simple one, and the answer is:
  1. fill B (A: 0, B: 5)
  2. fill A with B (A: 3, B: 2)
  3. empty A (A: 0, B: 2)
  4. fill A with B (A: 2, B: 0)
  5. fill B (A: 2, B: 5)
  6. fill A with B (A: 3, B: 4)


Then I couldn't sleep, and started thinking about generalizing the problem and came up with the following generalization:

Problem:Given n jugs with capacities c1, ..., cn, find the shortest sequence of actions that allow you to measure out k gallons of water.

Solution:This is a classic example of uninformed search.
state space:a vector [j1, ..., jn], where ji is the current amount of water, in gallons, in jug i
actions:
  • fill jug i
  • empty jug i
  • fill jug i with jug j
transition function:
  • [j1, ..., ji-1, ji, ji+1, ..., jn], fill i → [j1, ..., ji-1, ci, ji+1, ...,jn]
  • [j1, ..., ji-1, ji, ji+1, ..., jn], empty i → [j1, ..., ji-1, 0, ji+1, ...,jn]
  • [j1, ..., , ji, ..., jj, ..., jn], fill i with j → [j1, ..., p, ..., r, ..., jn], where p = min( ci, ji + jj ) and r = max(0, jj - (ci - ji))
start state:[ 0, ..., 0 ]
goal states:any state [j1, ..., jn] such that there is some jug i such that ji = k
Given that formalization, you can apply a simple search algorithm like breadth first search to find the shortest sequence of actions that will give you your desired measurement. This search is complete, so if BFS finishes without entering a goal state, then you can conclude that the task is impossible.

So there you have it, a generalization of one of those totally useless brain teasers that you might get in a job interview. Damnit, why can't I come up with a useful insight for once???
March 2, 2004
¶ there is definitely more than one
So it's that time of year again, right? tax season. rah rah. *sigh*

Today, I got some letters in the mail labeled "IMPORTANT CONFIDENTIAL TAX INFORMATION ENCLOSED" so I'm like, ok, I'll need to keep these for later.

Then I take a closer look and see that it's addressed to Albert T. Huang. Albert T. Huang? Well, okay, maybe it's a typo. There's a typo on my drivers license too (they printed my license up as Albert J. Huang instead of Albert S. Huang).

Then I glance at the address and it says "University of California" and then I'm like, wtf? Have I been living a double life at UC Davis without knowing it?!?

Finally, I open the damn thing and confirm that yes, I am still sane and that no, my name is not Albert Tinghui Huang, and that yes, mail addressed to one Albert Huang was sent to the wrong Albert Huang and I really feel like the universe should be imploding right about now.

So I googled the guy and sent him an email which was basically like, "dear albert huang, this is albert huang. uc davis sent me your tax forms. they got the wrong albert huang. you want them? -albert huang"

my head hurts now...
March 8, 2004
¶ visit day and a drummer
CSAIL had its visit day for prospective PhD students last weekend. Originally, I was gonna lead a bicycle tour around cambridge and boston as a daytime excursion on Saturday, but the weather went to shit so we canceled it.

The way visit day works is that admitted students are invited to MIT for a weekend to check out the campus and for us to convince them that they want to be doctoral students here. We arrange daytime excursions (e.g. my bike tour), take them out to fancy dinners, show them our brand new building that we're moving into next week, and arrange one-on-one interviews between prospectives and faculty members.

It was kinda weird, though, realizing that it's been an entire year since I first checked the place out. A milestone, I guess. The same reflection that the passage of time seems to accelerate with age. A year ago I was one of those clueless prospectives bumbling about NE43 looking for a professor to talk to. I'm still clueless and bumbling about, but at least I can point at them and laugh =P

While biking up mem drive last week, I passed by a drummer on the river. He was all set up on this grassy bank facing the river with his base, snare, tom-toms, cymbals, etc. It was mad windy that day, at least 20 knots, so the grass around him was all streaming and bent way down, and his hair was going nuts. He seemed so into it, just beating out some rhythms on the river, paying no attention to the cars racing by on memorial drive 50 feet away (although the wind was so loud you couldn't hear them at all). That was cool.
March 10, 2004
¶ mazes
When I was in elementary school, we played with mazes a lot. For some reason, they were just fun. You know, start from one corner, and work your way out to the opposite corner. I was pretty good at them, usually faster than the other kids. My reasoning for this was my methodology. I would always start from the exit of the maze, and work my way back to the beginning. Somehow, it always got me there faster, but I never knew why. Well, not always, but most of the time.

I started thinking about that the other day and came up with this explanation. If I gave you a giant n-ary tree, drawn on a big piece of paper, and told you to draw me the path from the root node to any given leaf node, you would probably start from the leaf node and work your way up to the root. Like, you could start from the root and work your way down to the leaf node, but you might take a wrong branch and have to backtrack, whereas going from the leaf node up is a sure thing.

So if you think of a maze as a tree data structure rooted at the maze entrance, and dead ends and the maze exit all being leaf nodes, then it makes sense to start from the exit and work your way up the tree to the start.

Of course, that would only work if an amateur designed the maze. At least, that's how I used to do my mazes. I would always start by drawing a box, then drawing a random path from the start to finish, and then fill in the maze by drawing branches off of that random path. And I'll bet it looked suspiciously like a nice branching tree.

A good maze designer would make mazes that end up looking more like arbitrary graphs than trees. Drawing it out as a tree wouldn't help you at all cause you'd have no notion of parents and children. What would make the most sense is if you drew two trees, rooted at the start and finish, and connected them in the middle of the maze. That way, starting from either end wouldn't help you at all.
March 12, 2004
¶ freebord
drool [flash movie]

http://www.freebord.com
March 16, 2004
¶ 2 gone, 3 left
A friend and fellow student had to go home about a week and a half ago. I'm not too clear on exactly what happened, but the basic idea is that she suddenly lost most of her vision (i.e. went blind) and sense of taste. Something about a neurological disorder. It was awfully sudden. One day we were chilling in her office across the floor from me, and then the next day I come in and hear that she's in the hospital and can't see. Several days later, she's lost her sense of taste and is on her way back home to Vancouver.

She's in a canadian hospital now, hoping to recover. Since I don't know what's wrong, I also don't know her chances of recovery, but the grapevine says she's either gonna get better soon, or not for a really long time. We're sending her a little care package and get well cards.

it's times like this when I'm just at a complete loss as to what to do. It's frustrating to realize that there's absolutely nothing to do other than hope and wait.
March 18, 2004
¶ distributed systems, stata move
We're moving to our brand new building this weekend. Consequently, the machines hosting this blog will be down for a couple days.

The more I learn about it, the more I feel that distributed and networked systems is a field that's been studied to death. Well, not to death, but virtually all the low hanging fruit has been taken. It's not to say there's nothing left in the field, just that relative to the number of people in it (a looooooot) there's not much in terms of deep research problems.

For my class, we have to do a final project. phds are expected to do an original research project. So my group was just sitting around, trying to think of stuff to do and it was just painful. We were like "distributed file systems... nope... shared memory... nope... distributed spam filters... nope... peer to peer systems.. ew..."

So there's a lot of stuff that's wrong with the internet today, but it's not because solutions haven't been found. It's that so much is invested in the existing infrastructure that nobody wants to switch. IPv6 is the classic example. Not enough IP addresses to go around, but nobody wants to switch to a new system so we get these kludges like NAT and CIDR. SMTP is another. It's ridiculously easy to spoof someone's mail address, and spam people.

Maybe I'm just being pessimistic. But then I think of fields like vision and speech, and it's clear that there are so many deep and open questions there, like generalized object recognition, and scene reconstruction.

I think we're gonna end up doing some peer to peer thing anyways, cause we can't think of a better idea. something about enhancing bittorrent to replicate trackers and integrate it into searchable, stable networks like edonkey2k.
March 24, 2004
¶ welcome to the stata center
stata center

at times like this, words fail me.

¶ stata first floor
It's not quite finished yet. The grand vision is that the first floor will be a sort of indoor "Student Street" with food vendors and lounges and large open spaces for students to congregate. I'm not exactly sure why, but somehow I feel this is an appropriate stage for some offbeat musical...





March 28, 2004
¶ why I hate law
[rant]
Ask a mathematician or a computer scientist or someone like that to tell you what's beautiful, and you'll often get descriptions of simple but descriptive and powerful constructs. ex is a beautiful function. the unix file system ideology is a beautiful thing (everything is a file). The logarithmic spiral, the lambda calculus, the game of Go, etc. are all examples of beauty and elegance in our eyes. They embody power in simplicity. It's so easy to understand the basic concepts behind them, but the implications of each are vast.

You see the logarithmic spiral mentioned most often in popular science as the curve describing the nautilus shell and lots of other curves found in nature. The lambda calculus embodies not just computer programming, but computability in its entirety. Go is amazing because of the complexity that can arise in a single game with such simple rules. You hear about computers beating and matching human chess grandmasters and world champions every now and then, but you never hear about computers being able to play go, because it's so much more complicated than chess (and yet so much simpler) that conventional algorithms stand no chance against a good Go player.

Anyway, the point of those paragraphs is to contrast with Law and the Legal system. There is no Beauty in the legal system. You will almost never see generality or simplicity because it just doesn't exist. It's powerful, and extremely descriptive, but the complexity is just staggering. Legislators just pound out rule after rule after rule, enumerating everything in excruciating detail. I'll bet if you got a legislator to write a computer program to display the first 20 even numbers, you'd get a program that looks like this:
print 2
print 4
print 6
print 8
print 10
...
print 36
print 38
print 40
On the other hand, a mathematician would give you a program that looks like this:
i = 2
repeat 20 times:
     print i
     i = i + 2
Anyway, that's a little extreme, but you get the idea. They both serve the same purpose, but the second way is arguably more beautiful than the first. If you read through tax law or your municipal ordinances, though, you'll never find things like that. It's always item after item hammered out one by one.

And it sucks to read.

I guess you can't really blame the legislators, cause there aren't a whole lot of beautiful (as defined above) ways to describe our current state of society.. there are just so many weird cases that have to be dealt with that would be hard to fit into a general clause. I dunno. Maybe there are. If anything, I guess you could argue for the beauty of the Constitution, but then there are all of those amendments...
[/rant]
April 3, 2004
¶ peer2peer
I'm not really sure why, but for a long time now, I've had this penchant for peer-to-peer systems. A part of it is this awe at emergent complexity and emergence in general. Another part is a disdain for organized structure, because it always seems so fragile. Not really sure... I'll have to figure that out another time.

Sophomore year of college, Ben got a bunch of us together to implement his grand vision of Peerahna, a hybrid p2p network. The structure that he came up with is what all the biggest networks today (Kazaa, edonkey, cutemx) use - the idea of supernodes managing ordinary client nodes on the network. We never really made anything of peerahna, partly cause we really weren't the best coders then, and none of us really wanted to take the time to follow through once we got our course credit.

Anyway, I felt a little bad about doing peer-to-peer stuff again this time around, cause it seems like something that's kinda crowded right now. There's also always that guilty feeling that people try to shove on you about copyright infringement and hurting the artists, but I never really took that one too seriously. A recent empirical study done by one prof at the Harvard Business School and another at UNC-Chapel Hill shows strong evidence that file sharing networks have a statistically insignificant effect on record sales. So that fixed one moral qualm of mine, leaving only the "eh... crowded field" feeling. But as we got working on our project, I started getting excited again, cause I really think we have some interesting ideas.
April 7, 2004
¶ starcraft and koreans
When I was in high school, everyone was super sensitive about tolerance and understanding and trying to avoid stereotyping. You never said black people were better at basketball than white people, or that asians were smarter or that men and women had some fundamental differences.

As I went through college, though, all of that just kinda went out the window. Although I don't think it's universally true, there are definitely some trends that are more than just statistical coincidences. Asians (at least in america) suck at sports. Kenyans will always win the boston marathon. Japanese people will always win the Coney Island 4th of July Hot Dog eating contest. There will always be more good basketball players of african descent than not.

Which brings me to the point of this story, which is that pretty much all young Korean males play Starcraft.

About six (six!?) years ago, I started playing Starcraft. At Brown, I started playing sc with sonic. That was bad news for us. Definitely the cause of some relationship strain. But it was damn fun. And addictive too. I can't even begin to count how many times I've deleted the game from my computer, only to reinstall it again a week later. Brandon might remember seeing us in our latitude cubicles playing in the middle of the day while all the rest of the engineering team was doing their dev work. It got to the point where to force myself not to play, I drove to a dumpster and threw my entire box set in the garbage. That lasted about a year and a half. We downloaded the game again and have started playing online almost daily now (sorry stacy).

Throughout the whole time, the scene changed, people came and went, styles of play changed, but one thing remained constant. There were always like a billion koreans playing starcraft. Hordes of them. Forming clans, shouting at us online in these strange korean characters. Me and sonic have been learning Korean by playing starcraft. how sad is that? choban! gosu! dong mang!

There are some koreans in the office next to mine. They're in the computer architecture group, with Arvind and Shrini. we really don't have a whole lot in common, but I started talking to one of them about starcraft once and it was like instant bond. Totally different culture and background and research interests, but we all play starcraft. And I didn't even really need to ask. It was like, as soon as I knew he was Korean, I knew he played starcraft.
April 9, 2004
¶ starcraft
i have deleted starcraft from my computer.

...
April 11, 2004
¶ building 66


Building 66. Otherwise known as the 30-60-90 building. As seen from the roof of the Stata Center, looking southeast towards the Charles River and Boston.
April 13, 2004
¶ A metric for human input
So I was thinking.. does it make sense to ask the question "What's the bandwidth of your senses?" ? By senses, I mean touch, taste, sight, smell, hearing. Is it possible to quantify the rate at which one is able to absorb information via these senses?

Intuitively, I would rank them as follows, in descending order: Sight, hearing, touch, smell, taste. I'm not committed to that ranking, but it's a rough idea. Being able to see definitely tells you much more about the world than being able to taste. Being able to hear what's going on around you is much more informative to a person than being able to smell.

I don't think we'll ever come up with a metric for the raw interface, because it just seems too difficult, but it would be kinda cool. It's not too hard to formulate a rough metric for some methods of acquiring information, like reading, or listening, but the metrics are still an approximation. Glancing at a couple of websites, we have the average reading speed for american english marked at ~250 words per minute, and the average speaking/listening speed at ~125 wpm. Technically, you can absorb information faster by reading than by listening. Makes sense, right? You typically read a book, not listen to the audiobook.

Of course, that whole idea gets thrown out the window when we start considering modalities like watching videos and listening to music. I have no idea how to quantify the rate at which we process information when we watch TV. Or when we listen to music.

So I started thinking about this cause I thought it would be cool if we could find faster ways to convey information to people. On a whim, I thought it would be neat if you could encode information musically and teach people a "musical language" of sorts, such that by playing a carefully arranged symphony, you could teach them the history of Rome or something. I doubt it would sound good, but the point is to transmit information, not pleasant listening. But then I was like, well supposing we had such a system, how could we evaluate it? and then was like, wouldn't it be cool if we had a metric for evaluating arbitrary methods of learning. A nice, hard, tangible metric, mind you, like MB/s. Not one of those mushy metrics that psychologists and cognitive scientists use.
April 16, 2004
¶ panorama from stata center roof
panorama photo looking south from stata center roof

Click on the image for a larger copy (2872x768). I'm not so good with the stitching software, so one of the seams is pretty obvious =/ This is looking southeast, once again. You can see the 30-60-90 building on the left, the Earth-Sciences building in the middle (the big ugly tall one with the globe on top), and the great dome on the right.
April 19, 2004
¶ mmm... siu ngap fahn..
The mom wouldn't let me get too close (kept hissing at me), but fortunately I have my zoom lens ^_^ and it's actually a gosling, not a duckling, but you get the idea ;)

yellow gosling by BU bridge

in other news, the Kenyans won the Boston Marathon again...
April 26, 2004
¶ s{nak,kat}eboards
I like things that roll.

skateboard, on table

Meet stumpy, my skateboard. Actually, I don't know if I can really call him stumpy, cause the trucks are toby's. But the deck is stumpy, so I guess it's okay to call it stumpy.

Ok, that wasn't so clear. A couple years ago, me and stacy bought a skateboard and a lone deck1 together. We named the skateboard toby and the lone deck stumpy. All was good. Then, about a year and a half ago, I got hit by a van while riding toby. That sucked. The van also snapped toby in half, so toby died. But toby's trucks were still good, so I put stumpy on toby's trucks, so problem solved. Except now I don't know whether to call it stumpy or toby.

That was an awful tangent. Here toby/stumpy's underside.

skateboard, on side

Anyway, the reason I'm posting all these pictures of my skateboard is cause I bought a snakeboard a couple weeks ago and have been riding around on it. It's pretty damn cool.

snakeboard

They're not very popular around here. Roads aren't so good, I guess. The idea is you strap your feet in and propel yourself using a snaking motion. I like it cause the whole idea of moving without having to push off with my feet is pretty cool. The first day was awful, though. For at least the first hour, all I did was stand on it, wiggle my ass, and then fall off. Repeatedly. Then I started getting the hang of it though. Real tough to go uphill, though. Actually, I can't go uphill. Maybe I need more practice.
1 the deck is the wooden board that rests on top of the trucks, which are the metal supports that attach the deck to the wheels.
April 28, 2004
¶ end-of-semester-crunch
tired.

*thunk*
May 2, 2004
¶ talking to walls
pervasive computing researchers love scenarios. I guess it's cause they can't really come up with a new theory to prove or provide evidence to support a claim, that they feel the need to paint a picture to justify their work. Anyway, seeing as that's sorta what I'm doing now, here's a scenario.

scenario: You are visiting a large complex for the first time, and are unfamiliar with the surroundings. You've been walking around for a bit and aren't really sure where you are. You have a meeting that you're supposed to go to, in room 32-G838, but don't know where that is. So you pull out your cell phone and use it to make a quick scan and fortunately, there's an Intelligent Wall nearby. You call the wall and a conversation ensues
wall: yes?
you: I'm lost.
wall: What are you looking for?
you: Room 32-G838
wall: You're in the wrong building. gives directions... Do you want a map?
you: Why yes, that would be wonderful!
wall sends a map to your cellphone
you: thanks. bye.
wall: goodbye.
you get to your meeting, and live happily ever after
Here's how I would do it today:

Design: There are several main parts to this system.
  • Short range wireless communication
  • Speech understanding, generation interface
  • computational devices embedded in the walls
The "intelligent wall" is nothing more than a consumer-grade personal computer hidden behind the wall, ceiling, or floor. It uses a bluetooth wireless interface to advertise its availability. Recent cell phones have bluetooth units already built in, allowing you to do exactly the scanning process described above. The folks in Spoken Language Systems on the 3rd and 4th floors of our building have some speech software that's already quite robust and configurable, and can be used in conjunction with a map-generating backend The bluetooth specification already defines audio transport protocols, so a "phone call" to the pc can be passed through the SLS system for a real time conversation with an intelligent wall. Maps can be sent as compressed images also using Bluetooth via the standard OBEX protocol.

Remarks: Okay, some of that might have been a little technical, but the point is to explain exactly how such a system could be implemented today. We're implementing a similar system (without the speech integration) for this Tuesday, when our new building officially opens... so I started thinking about ways we could augment it, and this is what I came up with. To be perfectly honest, it is a little contrived (why not just knock on someone's door and ask for directions, right?) but maybe better ideas will come later...
May 8, 2004
¶ complexity
In grade school and college, (and even now sometimes) we used to have these mini contests of who-is-the-most-screwed. You know, like "shit man, I got 3 essays to write that are *all* due this week" or "Man, I got FIVE exams all this week!" or "so for this project I gotta do THIS and THIS and THIS and THIS... (ad inifinitum)" We'd all want to express to our friends how much work we had and on hearing the news, the rest of us would all be like "oh man! that sucks!" or "oh yeah? you think that's bad, wait'll you hear about MY work... (yada yada yada)"

In software engineering, there's this false rubric people use to assess each other's projects that's based on the number of lines of code they write. "hey. how big was your project" "10,000 lines. you?" "20,000" "wow." It's kinda like the big penis thing. Inexperienced coders are wowed by the intial size, but they know nothing of the quality. I've definitely fallen prey to that way of thinking quite a few times in my undergraduate career. In CS32, we were way proud that our code base hit 40,000 lines of C++, but not so proud cause a team in the year before us hit 70,000 lines. Friends always asked us how many lines of code we wrote and we always impressed them with that number.

Once you hit a certain point, though, you start to realize things. You realize that the fewer lines of code there are in a project, the fewer bugs there are going to be. And that its size is inversely proportional to its maintainability and readability. And essentially that the only reason you'd want more lines of code is to impress your friends who don't know jack shit about writing good code.

So I guess what I'm trying to drive at is that people often equate complexity with quality when they shouldn't. If a friend has a crazy schedule and massive workload, you'll sometimes look on and think, "wow, he must be pretty good" instead of, "his life would be so much easier if did X instead of Y" People who see a complicated apparatus that they don't understand will just kind of glaze over their eyes and think the creator must be something pretty smart. But it's true a lot less than we'd think. And I'll wager that we've all had moments when we tried to use the seeming complexity of our knowledge to impress a friend.

Here's a classic example. A friend not in your field asks "So what's your research?" and you immediately rattle of the technical description of your research "oh, I'm studying stochastic techniques in allocating resources for distributed shared memory" knowing he won't understand it, and hoping he'll be pretty impressed by something he doesn't understand. "oh wow. sounds complicated (smart)" right? And then you leave it at that. So now you've left your friend with the impression that you're doing something intelligent without giving them an idea of what you're actually doing, whereas you could've taken maybe 30 seconds to explain in layman's terms what you're life is about.

shit, i started rambling...
May 9, 2004
¶ senior tiles
For a number of years at my high school, there was this tradition called "senior tiles". The idea is that the school gives graduating seniors a 4"x4" blank ceramic tile and you get to paint whatever you want on it. The school would then have it glazed and fired, and all the senior tiles of your class would be mounted together in a high-traffic corridor.

Naturally, people would paint images of importance or significance in their life. Athletes might paint footballs and uniforms, people would paint friends' names, the cynicists would paint their tiles all black, etc. I decided to paint the phrase "幹你娘" (gan4 ni3 niang2)1 in large characters on my tile, and nothing else. So I did it, and they glazed and fired and mounted my tile, and there it stood for quite a long time. Most people who passed by didn't understand it, as there really aren't that many chinese kids at my high school. I'd like to think people would look at it and think they were some obscure words of wisdom and blessing, but who knows.

Yesterday I had my 5-year high school reunion, so I went back to the hallway and checked to see if it was still there. Someone must've figured it out, cause my tile had been ripped straight out of the wall. Everyone else's tile was still there, only mine was gone. I know it was still up last fall cause I saw it while walking by with a friend, so it managed to escape the authorities for almost five years. In Bryant's words, "it had a good run."
1 translation: f**k your mom
May 12, 2004
¶ jay's stupid ass riddle
#!/usr/bin/python

import sys
import random

if len(sys.argv) < 2: sys.exit(2)
random.seed()

successes = 0
trials = int(sys.argv[1])

for i in range(trials):
    x = random.random()
    y = random.random()
    if ( min(x,y) < 0.5 and \
         max(x,y) - min(x,y) < 0.5 and \
         1 - max(x,y) < 0.5 ): successes += 1

print float(successes) / trials

# python jayriddle.py 1000000
0.25026

1 / 4


update: Okay, so jay objected to my empirical solution, and then I posted some really arrogant solution that was supposed to be like, "you're a tool. see how easy it is?" but then that was completely wrong and so jay (rightfully) called me a dumbass and then I started thinking about it the right way and realized sonic's solution is about as simple as it gets so I'm just gonna stick with my python script.
May 13, 2004
¶ simmons hall at night
Another of MIT's architectural curiosities. Simmons Hall, undergraduate dormitory. Estimated cost - $80 million. Capacity - 350 beds. You do the math.


simmons hall at night



This is a night photo I took a few weeks ago. It probably looks bigger than it actually is. Every room has 9 square windows in a 3x3 grid. I should get a daytime shot of it, it looks pretty cool. Click on the image for full resolution.
May 18, 2004
¶ curious
who the hell reads this thing, anyway?
¶ motor vehicle based routing
Sometime in the not too distant future, I predict that cars will come standard with some sort of short range (<100 meters) wireless communication device. Embedding such a device into vehicles would open up a whole new class of communication opportunities and problems to be solved. Let's engage in a bit of mental masturbation and imagine what we might do.

First, assume that every vehicle has some sort of globally unique identifier, like a MAC address and RSA public/private key. Second, assume that every vehicle has some way of rougly determining its geographic location (e.g. GPS coordinates).

We can model the system as an undirected graph, where each vehicle is a node and edges join vehicles that are in direct communications range with each other. Let N denote the set of all nodes/vehicles, and E denote the set of all edges. Furthermore, each vehicle has some attributes like location, destination, and velocity.

Here are a couple interesting problems that we might be able to solve.
  1. Given this system, is it possible to efficiently route a message from an arbitrary vehicle v1 to another vehicle v2? In other words, if I'm driving my subaru impreza (v1) somewhere in boston, and sonic is driving his bmw z3 (v2) out in santa barbara, and there exists a path from v1 to v2, can I mock sonic's mom by routing a message solely through other vehicles?
  2. Given this system, is it possible to collect and distribute traffic information such that vehicles can issue queries about the status of traffic in a certain area? If I'm driving from boston to providence and I-93S is closed because some semi jack-knifed and cars are backed up for miles, can my car automatically warn me and find a better route?
Academically, question #1 is more interesting. That's hard core mobile routing, but traditional mobile routing algorithms like DSR and DSDV don't scale well enough to be practical. I wonder if you could use distributed hash tables. Presumably, if you knew where the recipient is, you could take advantage of geographic information and route based on location. Something like broadcast to a geographic radius. If you had no idea where the recipient is, though, I'm stumped.

You might ask, why bother with #1? If I have a cell phone and sonic has a cell phone, why not just make a damn phone call? The main benefit is decentralization. Bam, you've just taken out the middleman and I no longer need to pay x cents a minute to talk to sonic. Of course, the latency will probably never be good enough for audio, but we can always hope.

Question #2 isn't as technically interesting, but is probably more useful. Not technically interesting because it's basically a special case of #1. The basic assumption is that a vehicle has some idea of the traffic level in its location, and can transmit that information. An inquiring vehicle need only transmit a message to any vehicle in the location of interest, and a query/response can be established.
May 20, 2004
¶ i'm slow
i figured someone must've thought about that car thing before me.

turns out morris (my distributed systems professor) did it like four years ago
May 21, 2004
¶ the wheel goes round
this weekend i escort stacy to new york city, where she'll be spending the summer working at goldman sachs.

Three years ago, I did the same with z. She got a job at GS her junior year summer so I went with her to NYC early on to help her with some of her stuff.

At the end of the summer, z broke up with me.
May 25, 2004
¶ darpa grand challenge
A couple months ago, the first ever DARPA Grand Challenge was held. To summarize, teams had to build vehicles that could autonomously drive 150 miles through the Mojave Desert. Lots of teams entered, some were dinky little high school teams, and some were from powerhouses of robotics like Carnegie Mellon and Caltech. It was a complete disaster. No team made it farther than 8 miles. Vehicles got stuck in ditches, rolled over, ran into parked vans, etc. Embarrassment.

After that fiasco, a group of students and alumni up here at MIT decided to put together a Grand Challenge team of their own for the next race, so I dragged Karen to a meeting tonight (well, didn't really drag, she seemed fairly excited). There's this mentality here that's sort of like "ooh lookit us, we're the best engineering school in the world, we'll 0wn th1s r4ce". But it seems pretty cool, and I'm thinking of joining in to help out on the software systems side. Karen's done some hard core stereo vision, which would be crazy useful. I've done useless stuff like realtime face detection. Don't think that's so helpful out in the middle of the desert...

Currently, the team is split up into several groups - software, vehicle, sensors, and funding. Vehicle is thinking of buying an old British army tank to use. That would be sweet. Carnegie Mellon used a hummer for the first race - it got stuck in a ditch and its wheels caught fire. You ever see that happen, brandon? =P
June 2, 2004
¶ mindless update
Summer has more or less started for me, and I'm gonna be hanging out around boston for a while. I spent the academic year mostly twiddling my thumbs, taking classes, and fulfilling requirements, without doing much research. It's not a terrible thing, as now I only need a couple more classes, but I'll need to find something to work on and call a research project.

Helping stacy move to nyc was pretty fun. Got to cuss out all the asshole new york drivers. Now that I'm an asshole boston driver, I feel like I can take on the big apple (sort of). Hung out with some good friends, ate some food, drove back.

Last weekend was graduation weekend for Brown so lots of alums made their way back. That was cool, even though I ended up not hanging out with most of them.

Yesterday was jackie's 21st. happy b-day! ate some dinner, crashed some bars, masqueraded as an undergrad, walked home.

Million dollar question: What in the world is my research focus?
June 4, 2004
¶ smooth move
i knew it was gonna slip out at some point, but it still sucked when it did.

I used to (still do) have this habit of giving totally asinine answers to random questions. A typical exchange would be like this:
someone: Hey, who's that ugly girl?
me: Your mom!
someone: ...
So I called stacy a couple days ago and when she picked up the phone she was like 'who is it?' but she didn't hear me the first couple times so then i just blurted out 'your mom!' and as soon as i said it, i thought "... fuck."
June 5, 2004
¶ stallman's finger
earlier this week, we were walking out of the building when we bumped into richard stallman. He gave us a cheerful greeting and said, "don't forget to give Bill the finger on your way out!"

I found that amusing.
June 8, 2004
¶ roommates
So in the past I've refrained from gossiping about my roommates, but I figure now that they're all gone and probably not coming back, I'll share some thoughts.

conclusion: never enter into a housing situation where I have no control over who my roommates are.

I've been living in two-bedroom apartments this year, in an MIT grad dorm, with randomly assigned roommates. I've gone through 3 different roommates (4 if you count china's wife). I'm gonna call them Spain, China, and India, cause that's where they're from.

Spain was okay. A little quirky and way full of himself, and I think he would've pissed me off after a while, but he was okay. He did things like kept his cologne in the fridge next to his AA batteries, and had a copy of the Dale Carnegie book "How to Win Friends and Influence People" in the bathroom for toilet reading. Spain is in the Sloan school of business, which immediately raises his shmuck level by an order of magnitude. I moved out cause our apartment was right over the central A/C unit for the building and the floors and door would rattle constantly.

After I left spain, I moved in with China. China's a pretty nice guy, just here to do his doctorate in chemical engineering. A northerner, speaks mandarin with a thick northern accent. Two weeks after I move in, he comes up to me and says, "My wife is moving in with us next week. Is that okay?" Now I don't want to be the asshole that separates him from his wife, so I say sure, no problem, but inside I'm thinking "wtf!?"

So China's wife arrives and moves in with us. It's her first time out of the mainland, and she doesn't speak english. She's relieved that I speak mandarin. Then they proceed to chinesify our apartment. They had this thing where they wouldn't use the in-house washing and drying machines. Instead, China's wife would hand-wash all their clothes and dry them in the bathroom. So half the time I'd go in the bathroom and there'd be some clothes soaking in the sink next to a bunch of underwear being hung up to dry.

They were very nice people, just made me feel a little crowded. Anyway, so in late January, China got rented out by his department to some companies in Ohio and Minnesota, and they left.

After that, India moved in with me. Bored and curious one day, I googled him and discovered that he's being sued for many millions of dollars by the family of this girl who committed suicide at MIT several years ago. Wrongful death. Basically, they claim he stalked her to death. So I'm like, great, China moves out and stalker moves in.

He actually turned out to be a really nice guy. Very considerate, and there was only one of him. I talked to him once about the stalker/lawsuit thing and he seemed pretty confident of winning. We had some nice conversations over the semester, and he helped me fix my bike once.

So then India graduated and now I have the apartment to myself. Which means I can do things like play obnoxiously loud music and walk around naked ^_^
June 9, 2004
¶ can of corn
question: What do you do when you want to eat a can of corn, but your can opener has been stolen from you?


answer: bash the can of corn with the blunt end of a giant knife until it cries for mercy!
June 18, 2004
¶ oxygen annual meeting
so I went dark this last week cause we've been preparing for the Oxygen Annual Meeting. It's basically when all our big sponsors (Acer, HP, Nokia, Phillips, etc.) come to MIT for a big powwow and we show them fancy demos and explain to them what we've been doing with their millions of dollars. And it's also an effort to ensure our continued funding.

It was kinda like the stata center opening last month, just more stuff to do and more people to impress. This time was different, though, cause I was armed with my very own UROPs. That's right, I've been given charge of my very own undergraduates [evil grin]. When they work well, it's like having two extra hands. When they don't, it's like having an extra hand with a severed nerve connection.

I can't really call them my UROPs, cause Larry's paying them, and he tells them what to do in general, but I get a lot of help from them, and it's fun to call them mine anyway =P
I've started feeling more comfortable/confident around the other students here. Not so intimidating anymore. Still definitely don't feel super smart, but at least am feeling up to par, which is good. Around the faculty, though, it's a completely different story. Like, during the lunch and dinner sessions for the Oxygen meeting, I'd be sitting at a table with these chief research scientists at industrial research labs and my professors, and they'd be telling jokes about the pranks they played back when the Internet was the ARPANet.

Peter Szolovits told us about the "around the world" game - back when there were fewer than a hundred machines on the entire Internet, you'd login to a machine at home, then telnet to the machine in Utah (cause there was probably only one computer in Utah), then from there to the one in tokyo, then to australia, germany, etc. until you went all the way around the world back to your machine. Then you'd hit exit and see how long it took for your exit command to go around the world. I guess it seems kinda silly now, but that must've felt pretty cool back when there weren't a whole lot of computers.

So there they are reminiscing about the creation of the Internet and here I am being like, "uh... anybody used to play Trade Wars?"
June 20, 2004
¶ turing complete my ass
[rant] here's something that really annoys me. Once every month or so, a couple of people will get into an argument about whether a programming language X is better than a programming language Y. Or about whether another language Z is a "real" language or not. Inevitably, someone will pipe up in an attempt to be clever and say "well, they're both Turing Complete, so they're just as good as each other."

It irks me, because it's a statement that doesn't say anything other than indicate to me that you took an intro course on computational theory and are invoking Turing Completeness for no purpose other than to stroke your academic wanker. Oh, they're both Turing Complete, why of course! problem solved, javascript is every bit as powerful a language as C++ because they're polynomially equivalent! why didn't i see it before!?

It irks me because the probability of someone invoking that principle rises exponentially as the argument progresses. It's like waiting for someone to read a bad line from a script.

It irks me because it's a fallacy of equivocation. When we argue about the power of a programming language, we don't use the word power to mean 'ability to perform a certain kind of computation', we use it to mean 'able to do some shit, do it fast, and with as simple a program as possible'. But some smartass just has to remember the definition of power as defined in the sipser book and equate it with daily usage.

grrr. [/rant]
June 22, 2004
¶ go obsession
Lately I've been playing a lot of Go. I don't really know why, but one day I just started playing and didn't stop for like 5 hours. Then the next day I did the same thing. For the last few weeks if I'm not working, eating, or sleeping, I've probably been playing Go. I'm terrible at it, and I routinely get trashed when I play online, so for the most part I just play against the computer.

Even when I'm not playing, I think about the game. When I talk to larry, I don't see his face. I see a grid and a game scenario. Where's the right place to play a stone? Ahh, right on his left nostril. That's the spot. There's this amazing wiki with all sorts of guides on tactics and practice problems that I read until like 4 in the morning. Really fascinating stuff. Makes me want to go write a go-playing program.
June 23, 2004
¶ hull breached
Early this morning, the AI Lab file servers were disconnected and powered off quite hastily. This was to stop a rampant rm -rf /home/ai3/* that was wiping out half of the lab's home folders.

According to max, a lab machine had been compromised some time back. The tech staff has known about it for quite a while, and were gathering information and statistics on the intrusion. They were providing information to the FBI in an attempt to nab the perpetrator instead of just stopping him. Apparently, our cracker friend got wind of the fact that s/he was being tracked, and in an act of vengeance, decided to wipe out everyone's home directories.

rm -rf worked in alphabetical order, leaving a swath of destruction that made it through the M's before being stopped. So for most of the day, everyone with login names from a-m were wandering around aimlessly, souls without a home. Quite freaky, doing an ls in your home directory and seeing absolutely nothing there. In the late morning, a snapshot made at midnight was remounted read-only to give people some access to their files. I'm not sure what the status is now.

My group wasn't affected, as our stuff is hosted on different servers.
June 27, 2004
¶ The Chinatown Bus
Took the Chinatown bus for the first time. What an experience. For those not in the know, the Chinatown bus is a $10 ride from Chinatown Boston to Chinatown NYC. Operated, of course, by chinese people. Getting on the bus in Boston was a complete riot.

First. There is no bus terminal. Nobody knows where the bus stops to pick up the passengers. Everybody waits next to the ticket booth, and 10 minutes before the scheduled departure, a little Chinese man comes by and yells at you and brings you several blocks away to the bus. On the way, all the store owners come out and start making fun of you and the other 50 people wheeling their little luggage pieces across the street.

Second. After everyone had gotten on the bus and we were on the way to the highway, the bus got delayed in a little downtown traffic. So the conductor jumps off the bus, walks out into the street, starts yelling, "New York! New York! Anybody want to go New York?", and starts selling bus tickets to new york as we're on the way to the highway. As he's selling tickets, the bus has to keep moving, so when he sells one, he tells the passenger to run up the street and get on the bus. He actually manages to sell about 7 more tickets to completely fill the bus before we're out of traffic. Simply amazing.
¶ crushed car
Here's something you don't see every day.

Crushed car spotted 4:38 PM EDT June 24, 2004, on Canal Street, Chinatown, NY, NY.
June 28, 2004
¶ longhand what?
discovery of the night: Experimental results confirm that I have forgotten how to write in cursive.
June 30, 2004
¶ how to choose a good password
A few years ago, ben got me into the whole Dvorak keyboard thing. Totally different arrangement of the keyboard that's pretty fun to type with. I used it pretty extensively for a few years and got to the point where I could type a little faster with dvorak than I could with qwerty. Eventually I stopped using it, though, mostly because it's optimized for english language and not for coding. Typing unix shell commands and curly braces in dvorak was especially rough. Lately, my favorite use for dvorak is to use it to choose passwords.

So the idea is that when you choose a password, it shouldn't be based on a real word and it should seem almost like a completely random arrangement of characters and symbols. Brute force password crackers always start by trying dictionary words and then permuting them and variations of them, which is why passwords like "Fred", "Password", "Loser" aren't such good ideas. But if you take those words and type them on a normal keyboard as if you were typing on a dvorak keyboard, then what comes out instead are the words "Yodh", "Ra;;,soh", "Ps;do". Instantly, you have a super strong password that's also super easy to remember.

Now all you gotta do is learn to touch type in dvorak ^_^
July 13, 2004
¶ filters
Think of the thoughts that go through my mind as a continuous signal with numerous frequency components, with the spectrum being all the different feelings and emotions I could have. If you could read that signal directly, you'd know everything that I ever thought and felt. Every ounce of happiness, despair, impulse, and desire.

When I speak to different people, parts of this signal are transmitted to them. But the signal is filtered, with a different filter for every person. For people I don't know, it's a narrowband filter. I only show very select frequencies of the signal of my mind. If I don't know you, you don't get to know when I'm sad and depressed, or when I'm hungry or sleepy. As a person becomes closer and closer to me, the band widens, and more frequencies are passed through. Each individual frequency component is also filtered over time, usually with a lowpass filter to smooth it out. I'll tell good friends how I feel, but I won't tell them every time my mood changes. For my closest friends, even those lowpass filters aren't very selective, and any time they tune in, they see a lot of the variations and changes going through my mind.

But I don't think anyone will every be close enough to me to get that raw, unfiltered signal. Somehow, it's just not something I would do.

This blog pretty much gets the complete stranger filter.
July 19, 2004
¶ beacon hill skate shop
Usually, when I think about the idea of working at a retail store, a little knot forms in my stomach and I feel nauseous. The prospect of just waiting around all day for people to come buy things, having to deal with irrational and unreasonable customer demands, the rudeness and callousness of all the annoying people that just happen to have some money to spend, is just more than I can handle.

If I was a kid, though, I don't think I'd mind hanging out at a skate shop. You'd meet a lot of other skaters, help fix skates and boards, do the sharpenings sometimes, and maybe help give skating lessons. Nothing too demanding, pretty relaxed, and you don't get as many asshole customers (I think). There's this place called Beacon Hill Skate Shop (which isn't actually in Beacon Hill, it's in the theatre district) that I went to last week that to get my skates sharpened. Really crazy boss, with these two teenage underlings. Guy must've been in a war or something, he was always ordering the two kids around like they were grunts in a platoon, and when he first looks at you, you feel like he's sizing you up to see if you're gonna jump him or not. The kids were pretty cool, probably just getting a summer job, hanging out in boston. I liked that place. I could do that.
July 22, 2004
¶ paper draft done!
finished writing the first draft of a paper I've been working on! w0000t! I'm gonna publish something! I'm gonna be a famous academic and bang heads with peeps like sir tim berners lee and stephen hawking! haha. not.

Anyway, so the title of the paper is A Privacy Conscious Infrastructure for Location Aware Computing, which hopefully sounds sufficiently complicated to impress and dazzle the general public. and a draft is available for your masochistic perusal here (pdf). The plan is to tidy it up and rewrite it (it is a first draft, after all) and then submit it to some far away conferences so that I can go traveling on the department's expense. I'm hoping I'll get in to PerCom 2005 cause they're having it in Hawaii next year, and I've never been to Hawaii.

And uh, yeah... I also want to advance my academic career and standing and that kinda stuff too... right...
in other news, the world is really fucking weird. ask sonic or me for details.
July 24, 2004
¶ salsa bicycle
*anger*

My bike got stolen.

grrrrrrrrr.

Thursday, there was this bigass concert outside our building. Some guy named Willie Colon. Does Salsa stuff. They were trying to set a world record for the most number of people dancing salsa at the same time. See news article.



Okay, maybe not bigass, but big enough for the city to close down a major intersection. funny place to hold a concert, if you ask me. That's a picture I took from my office window about an hour before they were supposed to really get going. I don't know if they actually succeeded, cause I went home before they started.
July 27, 2004
¶ south boston beaches
so apparently there are beaches in south boston. when i saw that, i was like wtf!? so i decided to go check them out on saturday. driving is difficult, so I biked there.

it's about 6 miles out from where I live, so it's not a bad bike ride. On the way, I stopped by Wai Wai Can Ting in chinatown for some lunch. I love that place. It's a tiny little hole in the wall of some alley that's half underground, but they make the best duck rice I've had in boston. No frills place, you can tell all the tables and chairs cost like $3 each, and you can tell who the regulars are cause they just come in and start arguing with the owners.

Anyway, so eventually I got to south boston and lo and behold, there were actual beaches there. Not beaches that I'd walk on barefoot, mind you, but they still count as beaches. I wouldn't walk on them barefoot cause the sand is gravelly and there's lots of trash and it being south boston, I wouldn't be surprised to run across broken glass and shit like that. But they're still beaches.

The cool thing about the area is that it's right in the approach path to logan airport. So about every 15 seconds or so, some bigass jet would come hurtling overhead. Great place to just bum around and watch the planes come in.

click on the tiny ass photo for higher resolution. Boston is the clump of buildings on the right. Prud is the tallest one on the left of that group, a little ghosted from the stitching.
July 29, 2004
¶ artemis 2004 visit


the Artemis Project

kids are awesome.
July 30, 2004
¶ should've asked for her phone number
After dinner tonight, Karen and Dan and I decided to go check out Phoenix Landing, a small club up Mass ave. So we head on over there at around 11 pm and it's kind of empty, not too many people there. Only one girl on the dance floor by herself. So we're like, "all right, let's get this party started!" Actually, we weren't really, but I managed to get them dancing after some coaxing. The music was really good, though - it was drum and bass night and the DJ was good. People started showing up after a bit and it got pretty lively. Good scene.

Anyway, after about an hour or so, we're sitting down, taking a break. Karen gets herself a coke, we chat a little. Then this girl sits down next to me, gives me a little smile, and looks away. I don't think much of it, figured it was just a courtesy smile or something like that, so I give her a stupid grin and then turn back to Dan and Karen. Some time later, I get tired of dancing again and sit back down next to her (she hadn't moved since then). She glances at me a few times, but I'm trying not to notice (I really wasn't in the mood to meet anyone).

A few more minutes pass, and then all of a sudden, when I'm looking the other way, I feel something on my shoulder and I turn my head around and she's fallen asleep on me. I tap her on the head, thinking this girl's had one drink too many, and she jerks her head up, grins at me, and sits up straight. I'm still pretty oblivious to the world, so I just sit back and watch people tearing it up on the dance floor.

Not even a minute passes by, and I feel her head on my shoulder again. By this point I'm trying to figure out if she's actually drunk, or if this is her way of saying hello. I notice that she hasn't touched the beer she's been holding since I first saw her, so she's probably not drunk. Friendly girl. Karen and Dan look over and are like, "dude, when did that happen" and I'm like, "umm... guys.. this girl just fell asleep on my shoulder. what should I do?" Dan tells me to drink her beer.

Another ten minutes passes and it becomes obvious to me that this girl is not asleep, and I'm just trying to figure out what to do. She's kinda cute, but we haven't even exchanged a single word. Karen and Dan are both tittering at me and I'm just sitting there like a total fool. Eventually, some guy walks over and shouts at me "Don't worry! She's with me! I'll take care of her!" and then walks away. I don't think he was lying, cause I saw them together earlier, and he had also given her the beer she wasn't drinking, so now I'm trying to figure out if he's her boyfriend or not. Her head is still firmly planted on my shoulder.

Some more time passes, and while my confused brain is still trying to decide what to do, the guy comes back, shakes her, and says they're going home. As they're leaving, she turns and smiles at me. Then I feel dumb for not asking for her phone number or name or something.

I've been instructed by Karen to quote her saying "You seem to attract weird intimacy". I've also been instructed by her to post to craigslist missed connections.

*sigh*
August 2, 2004
¶ need a place to live!!!!
so my current lease expires in 13 days, and I don't have a place to stay yet. Plans with justin and jen fell apart a couple times (grrrr!) and then plans with andy and karen fell apart cause andy got s+p again and karen decided to take some time off, and now I'm like dude! I need a place to live!

so uh... anybody living in boston got some ideas?

and don't anyone dare call me irresponsible. I'll bite you and give you rabies.
August 6, 2004
¶ sappy music
mmm... it's that time of year again... time to hide in my room with the door closed belting out sappy love songs. except J does it all year round... here's one from 五月天

恒星的恒心 -五月天

...

... 我安静倾听 却无法领悟 你为何放弃
带走回荡的回忆 你像流浪的流星
把我丢在黑夜 想着你
你要离开的黎明 我的眼泪在眼睛
下定决心 我决定
用恒星的恒心 等你 等你

那一年的花季 那一刻的呼吸
那生命的旅行 因为你动魄惊心
我不是很聪明 我以为我可以
守护你 一直到最后一丝呼吸
我 只是没发现 故事已结局
你早已离去 我还在坚定


老了 累了 倦了 变了 那不会是我 不会是我


If you're on a WinXP machine, you might need to install east asian fonts (Start -> Settings -> Control Panel -> Regional and Language Options -> Languages -> Install files for East Asian languages
August 10, 2004
¶ racing cars
Sometimes, at night, I get restless. It's like a lot of pent up energy needs to be released, and I can't sleep until I do. It's weird because sometimes I'll get really sore as if I've been running around a lot, and the soreness only goes away when I do something active.

Lately, I've taken to skating around the city at night. Skating on the sidewalk is really bumpy and you can't go too fast cause you freak out the pedestrians, so I usually stay on the road and keep up with the cars. I get a kick out of racing them when I'm on skates. It's easier than with a bicycle cause I can turn a lot faster on skates. My favorite street so far is Mass Ave, cause there are enough cars to make it fun, and they usually don't go faster than 30 mph. Never really clocked myself (how would I?) but I think my limit on skates is about 20-25.

It's fun to get up right next to a car in the next lane and stare down the driver as you skate, especially when they know you're racing them. There are basically three kinds of drivers in that situation. You have the cautious ones that are afraid of hitting you, so they move away to give you some more room. You have the regular drivers who just ignore you cause they're used to you (e.g. taxi drivers). And then you have the street racers that actually try to beat you and don't give a shit if they hit you. Those are the most fun.

Not really sure why I do it... guess it's partly to see how fast I can go, and cause it's challenging. Me and J used to love sprinting through crowded shopping centers, weaving through pedestrians and seeing who could get to the other end the fastest. I think it's similar to that. There's not as much fun just racing around an empty rink cause there's no risk. Running through a mall, if you mess up, you take someone out and look like an asshole. Here, if I mess up, I probably get my head run over. Adds excitement.
August 13, 2004
¶ need to spend $3000
Whenever a research group in CSAIL makes a small purchase, we have to pay a departmental tax. I think it's to cover administrative and overhead costs. For purchases under $3000, the tax is something like 60-70 percent of the original purchase price. But if a single purchase order is greater than $3000, then the tax is waived.

So whenever we buy a new computer to be used as a desktop or server or notebook or something, it's cheaper for the group to buy a $3001 system than it is to buy a $2000 system. It's funny cause you go into your advisor's office and he tells you to buy a new computer and he's like, "Make sure you spend at least three thousand dollars."

"Sure Larry, no problem! Can do!"
August 17, 2004
¶ my angry book review.
[rant]
Normally, I am forgiving of the incorrect use of science in science fiction for the sake of plot. It's okay that half of the science in Star Trek is bullshit cause it helps make a really good story most of the time. But Neal Stephenson just annoys the hell out of me when he writes about computer stuff.

In Cryptonomicon and Snow Crash, there are a couple things that really pissed me off.

The first was the man's obsession with powers of two. Everything in his stupid little world was a power of two. Yes, binary is important in computer science, but if you really wanted something with an elegant mathematical grounding, you'd pick a number system of base e. And if you can't handle a non-integral radix, then just pick three cause it's still more efficient than two. The only reason computers operate in binary is cause all the physical components happen to be cheaper that way, not cause it's more efficient.

Second. So it's cool that Stephenson tries to explain lots of CS topics in layman's terms. But when you're explaining how a computer monitor works, don't describe a CRT when you're explaining how a friggin LCD works. LCDs do not have big radiation guns and phosphor particles. CRTs do. LCDs don't. grr.

Some of what he describes is well done, though, and grounded in some very cool, but relatively unknown science. van Eck phreaking (spy on a video display from a distance by picking up its electromagnetic emissions) definitely being the coolest. Except he does screw up and apply it to an LCD display, but that's forgivable, imo.

Related to van eck phreaking, and not mentioned at all by stephenson, is eavesdropping on a modem by observing the LED status indicators. I think that's pretty hot. Too bad it doesn't work on ethernet routers and switches.
[/rant]
August 18, 2004
¶ monthly update
The housing saga has come to a close. Finally! I ended up getting a room in S+P off the waitlist. 703B, huge corner room looking southeast, good view. I can't move in until September 4, though, and my old lease ended sunday, so I'm just hanging out around home for now.

Still not done writing that damn paper. Larry's quite demanding, which is both frustrating and good. I've also been dragging my feet on it. Hope to have it done within the week. PerCom deadline is Sep 8, so I think that's the do-or-die date. I'll be presenting some form of it at SOW, which is a MIT-only student run workshop.

Decided last week to train for a marathon. Gonna aim for the Green Mountain Marathon in Vermont. Not sure if I can do it, cause I haven't gone running in over a year. Think I have a chance, though, cause I've managed to run 16 miles over the last three days (5, 4, 7) down in lincoln woods. Big test will be saturday, when I try to run 13 miles. This'll be cutting it really close, cause there's only 11 weeks until the race. It was kinda weird the way I decided. I was walking around downtown late last friday by myself, people watching and thinking, when I started getting really jumpy. Then I started running for no reason whatsoever and ran back to my dorm from back bay, which isn't all that far, but isn't something I normally do. So I was like shit, all of a sudden I feel like running again, let's try doing a marathon. Are there any psychoanalysts in the audience that want to take a stab at this one? =P

HIPAA is still kicking my ass. I hate the health care industry.

Hung out with lindsey and jen last saturday. Very good to see them again =)
August 20, 2004
¶ revuhse da cuhse!!




For the uninformed
August 21, 2004
¶ 12.5 miles
omg... legs sore... so sore...

Think I'm still on track. Completed 12.5 miles today. Took longer than I expected, but I attribute that to the rain and to the hills. Four miles into the run, it started pouring buckets, but I didn't want to stop so I kept going. Rain soaked shirt is heavy... like training with weights... sheesh. Lots of thunder and lightning, my dad called me an idiot and told me about the two guys hit by lightning last week in narragansett (about 30 miles south of here). oops.
August 26, 2004
¶ saving flags
It always saddens me when I see a tattered flag. The kind that have been stuck up on a car and driven for so long that they've just fallen to pieces. Like, they always look like they've been through a damn war or something cause they're always threadbare and ratty and half of the cloth is missing. It's not hard to see why they get that way, cause when the car's driving really fast, the air turbulence around the back of the flag whips it back and forth at such high speeds that it's basically like cracking the flag like a whip a couple hundred times a minute. The flapping sound you hear whenever you see a car driving by with a flag is exactly like hearing an incessant string of cracking whips.

So I was thinking that if you somehow controlled and smoothed out the air flow across the flag, then it might last longer somehow. My theory is that if you anchored two pieces of wire/string underneath the flag, offset to one side, and then fastened them to the end corners of the flag, then when the car reaches high speeds, the lines would force the flag to take the shape of a close-hauled sail. This would reduce the turbulence around the flag and should get rid of all the flapping. Of course, it would look like you're sailing a flag, but i'll bet you'd seriously increase the lifespan of your flag. You might look a little weird, too.

Here's my crap-ass ascii diagram
       |.
       | .  
flag-> |. .  <- anchor lines 
       | . . 
       |  . .
    _.==================._   
   /                      \
  |                        |  <- strangely proportioned car
  |________________________|
  |  |                  |  |
  |__|                  |__|
August 29, 2004
¶ shackled skateboard
So I saw this Boston Herald in a Dunkin Donuts a couple weeks ago and just _had_ to buy it.



According to the article, two kids out in Whitman were arrested for skateboarding. I'm sure the kids were total punks, but my heart goes out to them. Skateboarding is not a crime!! Freeeeeeedooooom!!! We will not be oppressed! Raaaaaaaah!!
August 31, 2004
¶ sow 2004 paper done
SOW 2004 paper is done and out for the printing press. "Camera ready copy" available here. Not too technical, should be easily understood with a basic math and physics background.
September 12, 2004
¶ running, self-doubt
So I'm no so confident anymore that I'll be able to do this marathon.

I realized last week that I had originally miscounted the number of weeks I had to train. I thought I had 11 weeks, but I realized that I actually only had 9. So if I'm gonna keep doing this, I need to accelerate my training (again). So far, my mileage has been like this:

week  | sun   mon  tue  wed  thur  fri  sat
  1   |  x     5    4    7     x    x    12.5
  2   |  x     2.5  2.5  7.5   5    x    x
  3   |  10    x    3    2.5   x    x    x
  4   |  15    x    4    3     x    x    x
  5   |  16

I didn't do a midweek run on week 3 cause I pulled a muscle on wednesday. Last week, I got a little weirded out cause my foot started feeling the same way it did after it got run over by that van1, so I didn't do the midweek run. According to my accelerated schedule, today was supposed to be an 18-mile run, but I only completed 16 miles =/ Shortly into the 17th mile, my legs raised a revolt and refused to continue. I had a short conversation with them that went like this:
me: Hyah, mule! Hyah!!
my legs: Hell no, bitch! We ain't running no more!
me: Hyah, mule! Hyah!! Faster!!
my legs: screw you.
me: I, your brain, command you. Continue!!
my legs: You wanna be a paraplegic?
me: That'll do, pig. That'll do.
Fortunately, I was only about a mile from my dorm when my legs quit on me, so I started walking back. Unfortunately, I didn't make it all the way back. At 77 Mass Ave, my legs refused to even walk, so I ended up rolling around on the grass for 15 minutes waiting for them to revive. I briefly entertained the idea of crawling to the student center on my hands and knees to buy some ice cream, until I realized I had no money. damn.

One frustrating thing is that I'm not even running fast. I've been averaging slightly more than 10 minutes per mile, which is pretty damn slow, imo. The real frustrating thing is that if I did actually have 11 weeks to prepare, then I'd still be on track, as today would only have been a 16 mile run.
1 Two years ago, I was riding my skateboard one night when a Brown facilities & maintenance van hit me and ran over my foot. Luckily, no bones were broken, and the official diagnosis was "tissue crushage". The next few months, my foot just felt... crushed. The feeling went away after about six months had passed.
September 15, 2004
¶ and then there were none (women)
So there are officially no more women in my research area (except for the secretary, Sally). Three faculty, eleven phd students, two visiting scientists, one research staff guy, two masters students, two undergraduates, and a volunteer. All guys. We have some serious gender imbalance issues.

On the one hand, it's not like there weren't ever any. Last year, karen and winnie were phds, and debbie, nancy, and jessica were meng's. the meng's graduated, karen went home, and winnie migrated to the 9th floor. But still... it's like csg has cooties.

They must all be in AI. That's gotta be it. Artificial Intelligence is just sexier than computer architecture, that's all. something like that.
September 19, 2004
¶ First Church of Christian Science at night




reflecting pool - First Church of Christian Science, downtown Boston. Nice place to go and contemplate your existence in solitude.
September 20, 2004
¶ stupid running
So you'd think that running would be a great time to think about all sorts of things like research problems and stuff like that. After all, what else am I gonna do with my brain in that time, right?

Somehow, it's a lot harder than I thought it would be. Like, last week I managed to solve a machine vision homework problem while doing a few laps - something about perspective projection and the relationship between vanishing points of orthogonal lines. That was cool. But then yesterday was a total failure. It was like all the oxygen had fled from my brain and I was stupidified for the whole run. After my third mile, I was thinking about how much of the run I'd completed, and decided that I was a ninth of the way done, cause 3 x 9 = 18. Of course. It took me nine more miles to realize I need to go back to 2nd grade math.

In the meantime I decided to think about the Viola-Jones face detection algorithm and if maybe you could generalize it to handle image rotations. But in reality, all I ended up doing was remembering how the original algorithm works and then fixating on certain words for several minutes at a time. "Integral image"... (5 minutes later)... "cascade"... "classifier"...

clearly, that did not work so well...

Larry said I need to find a math guy to run with and get him to teach me math stuff. So uh... any math grads training for a marathon around here? =P
September 22, 2004
¶ taiwanese
So I signed up for this Taiwanese class at Harvard. It's a full credit class, and apparently the undergrads there can use it to fulfill their language requirement

When I told my mom, she got mad at me and told me to go take something useful like spanish. Then my aunt told my mom she's lucky cause willie took a class in sanskrit or something even more obscure like that. My dad, on hearing the news, was like "好啊!多認識幾個哈佛的台灣小姐吧!" then I'm like, why do I tell you guys anything?
September 23, 2004
¶ new address
So csg.lcs.mit.edu was rather unceremoniously uprooted and is now hosted at pink-panther, and no longer has the username aliases.

If you're reading this, you have the new address already, but it might look kinda nasty (e.g. people.csail.mit.edu/u/a/albert/public_html/blog). A shorter URL is http://csail.mit.edu/~albert/blog/
September 28, 2004
¶ hero, dead woman
My favorite line from the movie 英雄 (Hero) is when 飛雪 goes apeshit on 殘劍 and kills him and then is like, oh shit! and just keeps saying over and over again 你為什麼不擋我的劍? It's the instant when she realizes she's done something so terrible that can never be undone, something she never meant to do, but did nonetheless in the heat of the moment. She's killed the one person most important to her, and no matter what she does, things are never going to be okay again. It really sucks, and all at once I'm thinking damn that sucks but also damn woman, why'd you stick him with your friggin sword? Why couldn't you just punch him in the stomach like normal angry girls do? Then she kills herself and the movie ends.

Last last Sunday afternoon, they found a dead woman's body floating in the Charles, wrapped in plastic. Someone spotted her off the Longfellow bridge. That's on my training loop, so I crossed the bridge three times that morning and afternoon. Didn't look over the side, though. That would've been interesting. The same day she went missing last month, police found her car on the Revere/Malden border abandoned and burning. Someone clearly didn't like the girl very much. Lately, I've been fantasizing that her body is actually el's body.
October 5, 2004
¶ farewell, 寶石燒臘
while poking through some old photos...




That was my favorite butcher shop. I'd go there to buy roast pork and roast duck and good things like that. I guess Public Health didn't like them very much and closed them down a few months ago. *sigh* We don't need no sanitation!
October 6, 2004
¶ your life isn't that bad
any time I think my life sucks, or I'm in a shitty situation, I remember that there's always someone way worse off than me, and I don't feel so bad anymore. I usually don't feel good either, but it helps to know someone else is having it at least as bad as you are. misery loves company or something like that.

Case in point. Meet S. S was a Nepalese farmer, just hanging out in Nepal doing the farmer thing, when A came around. A was working the peace corps in Nepal when she met S and they fell madly in love or something like that. A convinced S to leave friends, family, and country to marry her and move to the US with her. All was well for a few years. S started learning English, american customs, all that fancy jazz. Then A got bored and decided she didn't really care for S anymore. While S hung out in upstate NY, A went traipsing around in Mexico where she met C, fell madly in love or something like that, and experienced some serious marital infidelity. A convinced C to leave friends, family, and country to marry her and move to the US with her. But first she had to divorce S, who still loved her.

S is now going through a divorce after only a few years of marriage, and has sinced moved to Cambridge. I guess you could say he's better off than he was before cause he's in the land of opportunity and will inevitably go farther here than he would have as a farmer in Nepal or some bullshit like that, but no matter which way you put it, some things suck pretty hard for S.
October 7, 2004
¶ apple, ntt, mitsubishi, cia, acer
Sometimes I feel like I should know more about what my advisor does...

Last week (two weeks ago?), some people from Apple came to visit the lab. Larry entertained them for a bit and then punted to me. I brought them downstairs and showed them the kiosks, bluetooth stuff, and some positioning software.

Today, some nihonjin came from NTT and Mitsubishi or something like that. Larry entertained them for a bit and then punted to me as he ran off to meet with the the CTO of the CIA and entourage (since when did larry meet with the CIA???) I fumbled as the 3rd floor kiosk choked, but recovered and brought them down to the first floor kiosk. I kept talking to the translator, though. I remember hearing somewhere that if you're ever entertaining foreign dignitaries you're supposed to speak to them and not the translator, but I couldn't help it..

Some dude from Acer's coming tomorrow and I think I have to do my thing again.
October 8, 2004
¶ reduction
Savage loved to harp on and on about reduction. Harry did too. Reduce Knapsack to 3SAT to CSAT and stuff like that. They'd always go on and on about the importance, beauty, and elegance of reduction. And it was always kinda neat and stuff to me, but that's about it. Just neat.

The more you think about it, though, the more apparent it becomes that reduction is quite often not just a tool, but the essence of solving a problem. Being able to reformulate a problem in terms of something completely different usually gives you a different perspective and allows you to pull out a different toolbox to attack it. Sometimes, I feel like linear algebra's existential purpose is to serve as a set of easily solved problems into which other, more difficult, problems can be reduced.

In the 9th grade, we were learning about solving systems of linear equations, and there was this one bit on "representing" the equations in a matrix. And that went totally over my head. I was like, there are these stupid equations, what the hell do they have to do with this box of letters? And I didn't get it. It was too hard for me to accept the fact that to solve one problem, it's sufficient to solve a transformation of that problem. Sometimes you get it, sometimes you don't, but understanding the principle of reduction is kinda cool.

Of course, just knowing that reduction is useful doesn't really help much when you're trying to solve a problem... I guess that's what makes some people way better than others at problem solving - being able to spot reductions. All of those stupid tech/finance interview questions asking you about probabilities and numbers and shit like that, they're really just seeing how good you are at reducing an unfamiliar problem to one for which you have a known solution.

I liked the way Feynman described his mathematical skills as nothing but a toolbox... He'd say that what made him good was that he simply had a different toolbox from most other people, and that quite often, his tools fit better than others at solving, say... questions related to theoretical nuclear physics. So that's total bullshit (the part about what made him good), but for some reason, I really liked that portrayal. You see a problem, you turn it around, massage it, and then see what tools you can use to attack it. If it works, great. If not, try again.
October 9, 2004
¶ 安い刺身 (cheap sashimi!)
Today, I found heaven, and it is called Yoshinoya. After splurging at Oishii a couple weeks ago and feeling our wallets cry out in pain, a cheaper way to good sushi was desired. Enter Yoshinoya. Japanese market selling sushi-quality raw fish. You can't just go to Shaw's or Stop and Shop or even Whole Foods to buy fish cause it's never fresh enough there. But the Japanese markets - they know you're not gonna cook that fish, so it damn well better be fresh. And at $13.00 / lb, it sure beats any sushi bar I know if. So I bought a whole lot of raw salmon, brought it home, and ate it. いただきます!
October 10, 2004
¶ ASPLOS XI reception


So I'm attending my first ever honest-to-goodness academic international conference. Conveniently enough, it's being held in boston. The Association for Computing Machinery Eleventh International Conference on Architectural Support for Programming Languages and Operating Systems.

Yeah, it's not my field either.

Today was the reception. Apparently, I'm told that my main objective in attending a conference is not so much to attend the talks and learn new things as it is to meet people, shmooze, and network. So I mostly ended up tagging along with Charlie cause he seemed like he actually knew some people there, and was better at butting in on totally random conversations. It was funny cause half the people we met were senior graduate students about to graduate who were attending the conference mostly to meet existing faculty who might be useful during their job search. I was talking to one of them from UW and was like, "dude, what are you talking to me for?" and he basically said the faculty are intimidating and I was like "word..."

Met Manish, a brand new professor at University of Colorado at Boulder. He confirmed what I expressed to stacy, which was that once you become a faculty member, it's like an impenetrable barrier is erected between you and the students. That tiny little title "Professor" is enough to prevent you from ever being on the same buddy level as the other students. He was like "I really want to just scream and say 'guys! it's not a big deal! five weeks ago I was standing where you are!'" Makes me wonder what it would've been like if I tried to hang out with a junior faculty the way I did with my other friends. "Hey Ugur, wanna go catch a movie?" I'll bet they get over it, though... will have to ask larry about this one.
October 11, 2004
¶ ASPLOS day one


Lots of talks today. Only went to half of them =P Stumbled in late to the keynote speech this morning, slept through most of the first talk (Programming with Transactional Coherence and Consistency), and listened through the next two. Lunch was cool, chatted with a UW student. Worked for Raytheon doing missile defense for quite some time and they sent him to get his PhD, so now he works on the WaveScalar dataflow machine. Cool guy. Also met 寥世偉, who's on Research Staff at Intel. Skipped the next session of talks and crashed back at home for a bit.

Ed, who works a couple doors down from me, gave a talk in the Security session. Pretty cool stuff, but at the end of the talk, this lady from Princeton started ripping into him. Severe hostility, I was like, "woah nelly!" She definitely said "I don't think your model can work" in reference to the entire subject of his talk, and told him to go read so-and-so's paper on secure computation and to reference so-and-so's paper on security models. Everybody at the conference was like, "woah there, lady, be nice..." The session chair got up at one point to break off the fight if he needed to, but she relented.

Dinner was held at the Prudential Skywalk - 50th floor. Pretty sweet view from up there (see photo). I ended up hanging out with all the WaveScalar people from UW, who all seemed pretty cool. More shmoozing. Good food. I got carded twice when getting drinks. Nobody else did. *sigh*
October 13, 2004
¶ well... since sonic started photoshopping... ;)


No, it's not really that color. But it looks pretty cool this way =P

Ivy covered building spotted at the corner of Berkeley and Commonwealth, Boston.
October 17, 2004
¶ my first marathon


Four hours, forty six minutes, fifty two seconds. Official results posted here. The last 10 miles of the race was brutal, as it got cold (low 50s), cloudy, and windy (sustained 20-25 mph headwinds) I ran a large part of the race with this really nice canadian lady. We had good conversation. She's sixty years old. crazy...

Accomplishments:
  • ran a marathon. All 42 kilometers of it. yeah, 26.2 miles, but after chatting with the canadian, I decided 42 kilometers sounds more impressive =P
  • ran a marathon while sick (caught a cold on thursday, still sick now)
Failures:
  • Did not beat P-Diddy (4:14:54).
  • Did not beat Oprah (4:29:20).
Amandine was awesome and came up to vermont with me for moral support and drove us home after my legs shut down. On the way home, we made the obligatory celebratory I-93 stop.



Here's a chart of my training (miles completed). I definitely wasn't umm... rigorous near the end.
week  | sun   mon  tue  wed  thur  fri  sat
  1   | x     5    4    7     x    x    12.5
  2   | x     2.5  2.5  7.5   5    x    x
  3   | 10    x    3    2.5   x    x    x
  4   | 15    x    4    3     x    x    x
  5   | 16    x    x    2     x    x    x
  6   | 18    x    x    x     x    x    x
  7   | 12    x    x    10    x    x    x
  8   | 20    x    x    x     x    x    x
  9   | 4     x    x    x     x    x    26.2
Was it worth it? Totally. Would I do it again? Maybe, but not for a while. It'd be cool to do serious training and see if I could hit some milestones (e.g. beat P-Diddy, sub 4-hour run, etc.) but for now, I'm just gonna chill out for a while...

October 21, 2004
¶ why my robot vision professor is cool.
meet my robot vision professor. Berthold Horn.



The guy's ancient. He's been teaching this course for almost thirty years now. We're still using the book he wrote in 1986. But he has this awesome sense of dry humor. And a cool accent. And he's way smart.

Recently, we learned about techniques to recover three-dimensional shape descriptions from images using brightness measurements in a single photograph (i.e. given a picture, describe exactly the physical geometry of what's pictured). All sorts of weird shit like reflectance maps and albedo and surface normals. One of the few photos in the book is on page 263.



If you take a closer look at the picture, here's what you see.



Kids who paid close attention in DARE will recognize that Cannabis sativa is a quality strain of marijuana. It's the kind of marijuana you'd smoke if you wanted a cerebral, mental high (as opposed to getting mind-blowingly stoned with an Indica strain). And all the good stuff is in the resin. That ain't no schwag he has a picture of. And when you write books like this, you don't just go throwing random photos in, you pick them carefully. Not that I have any personal experience, of course...
October 28, 2004
¶ the night we won
After an Emerson College student was killed last week in riots at Kenmore square after the sox beat the yankees, MIT sent out an email telling us all to stay at home during the World Series. So of course, the first thing we did when the Red Sox won was to haul our asses down to Kenmore.

Tonight was actually tamer than it was last week, but it was still pretty crazy. Hordes of people were just streaming out of their homes and making their way towards Kenmore. Once there, they just packed in and were screaming, honking, crying, yelling, cheering, and making a whole lot of noise in general. Naturally, riot police were everywhere, and tolerated the crowd for an hour or so, at which point they brought in the dogs and the cavalry and started beating people out of the area. Fun.















October 31, 2004
¶ pumpkin drop
Friday night, they did the Pumpkin Drop off the Green Building. Fairly simple.
  1. Take a pumpkin.
  2. Throw pumpkin off roof.
  3. Watch pumpkin drop 300 feet and explode on pavement.
  4. Repeat 39 times.
  5. Feel good.
(no pictures, sorry)
November 7, 2004
¶ latexrender test
latexrender test


\int \int_{D} (uE_{x} + vE_{y} + E_{t})^2 + \lambda(u_{x}^{2} + u_{y}^{2} + v_{x}^2 + v_{y}^2) dx dy


V_n({\bf b}) = max \left\{
\begin{array}{l}
n U_B\ (sell)\\
(C_A b_C + L_A ( 1 - b_C ) ) + V_{n-1}({\bf b})\ (unwrap)\\
\end{array} \right.
¶ The most annoying greek letter
[rant]

By far, the most annoying greek letter ever thought up has to be the letter ξ. It's not only hard to pronounce (ksi, try saying that ten times really fast), but it's damn near impossible to write too. ξ. It's like a perverted E. And the worst is the blasted little squiggly at the bottom! Screws you up!

This is what happens when I try to draw the ξ


It just comes out as a bunch of squiggles! squiggles!! I don't want squiggles! I want ξ!!

*runs around in circles, pulls hair*

[/rant]
November 9, 2004
¶ inlined LaTeX
So I wrote a bblog plugin for LatexRender, which means I can inline $\LaTeX in my posts now. No more crappy HTML equations! Yay!

*Insert gratuitous mathematical nonsense*

$
 \begin{displaymath}
\mathop{\mathrm{corr}}(X,Y)=
\frac{\displaystyle
\sum_{i=1}^n(x_i-\overline x)
(y_i-\overline y)}
{\displaystyle\biggl[
\sum_{i=1}^n(x_i-\overline x)^2
\sum_{i=1}^n(y_i-\overline y)^2
\biggr]^{1/2}}
\end{displaymath}
$

A consequence of this, however, is that the content of my blog is no longer as portable as it used to be. If I suddenly decided I hated bblog because the developers support colombian drug lords or something, then it would be difficult to port the content to another system... oh well.
November 13, 2004
¶ why I like AFS better than NFS
  1. universal path names. No machine specific paths that depend on the mount point.
  2. better security. No need to trust client machines. No single user with local root access can su as somebody else (Larry doesn't like this, as it means he can no longer arbitrarily su into his student accounts and access their files)
  3. no need for an /etc/exports file that specifies a whitelist of hostnames allowed to mount the shared filesystems. Any host on the Internet can mount the AFS volumes as long as it supplies the right credentials.
  4. Distributed, coherent filesystem means no more single point of failure (anybody remember the old sunlab days - God is dead!! and all activity in the lab ceases)
November 16, 2004
¶ bigger pictures
A few weeks ago, I had lunch with my advisor and this guy named Gregory Abowd - an associate prof. at georgia tech. They had a nice conversation, and I just sat and ate.

Something that struck me was the level of the topics of their discussion. They didn't talk about specific research results or technical details or stuff like that, it was more like wide scoping statements and opinions about the state of this field and that field and what they thought about this research direction, and that research direction. And I realized that there's no way I'd be able to talk about things like that. I could yammer on about this part of a project I'd been working on or that class I took last fall, but ask me to give my opinion on the state of computing research and my eyes will glaze over.

So I guess what it came down to was that their views of CS and HCI research are just much wider than mine right now. And even after being neck deep in this stuff for the last five years, I still don't feel like I have any kind of grasp on what's going on. Definitely know a whole lot more than I did last year, but still feel like I have years and years more to go. I don't wonder anymore why it takes so long to get a phd... sometimes I wonder if four or five more years is going to be long enough. scary.

They say that Hilbert was the last great mathematician, in that he was that last one to really have a deep understanding of every branch of mathematics. Supposedly, nowadays the field is just too big for any one person to be an expert in all of it, even if you spent your entire life studying. That's kinda the way I feel about CS right now... there's such so much to know that it'd be foolish to try and learn it all. Daunting...
November 21, 2004
¶ busted camera, busted paper
broke my camera =( no more pretty pictures until I get pentax to fix it.

The paper I wrote in august was vehemently rejected from PerCom. Choice comments from the reviewers - "The paper is poorly written and the scheme lacks novelty." "it is difficult to find any redeeming quality beyond the fact that..." Ouch. They received 233 paper submissions and accepted 39 (16.7%) so I'm definitely not alone in getting turned down, but it's still a huge bummer. Well, time to get back up and keep going.

In other news, I've decided that at the end of a long, hard, depressing week, setting shit on fire does wonders to improve morale. *evil grin*
November 25, 2004
¶ nokia and python
So I've been super excited all week long cause Nokia's releasing a python interpreter for their Series 60 phones and we got our hands on it and I'm having all sorts of fun with it. And I'd rave about all the cool stuff it's got but I think we signed some kind of NDA so I have no idea what we're allowed to talk about. And then I go and try to tell my friends that this is the coolest piece of software that Nokia's released in forever and it even has a command line interpreter and you can build your own modules to interface with the native symbian os, but then they all give me this funny look and are like, "symbian... python... interpreter... what?" and then I realize I'm getting all excited about this damn thing but can't convey how cool it is to them but even if they did understand it, they'd still be like, "okay, so what's the big deal". and then I want to scream and be like "but don't you see the beauty of it!?" but then I sit back and think "man... wtf is wrong with me?"

*sigh*

Hmm... I wonder if I'm allowed to say all that... stupid nda's...
November 28, 2004
¶ running in the rain
My camera turned on! yay! but then it died again. boo! but not before I managed to take a picture. yay!


So one thing I've been mulling about is this question - if you get caught out in the rain and want to make it back inside, is the best way to stay dry (get the least wet) always to run as fast as you can straight to shelter? Or are there circumstances in which, for example, you'd want to walk instead of run? intuitively, I'd say that maybe you'd not want to run fast if the wind was blowing a certain way...
December 2, 2004
¶ value of privacy
In working so much with location aware computing, we've been riding the fence on privacy issues. Essentially, the technologies that we're working on and developing are used to track people's movements as they move around during the day. Working in a building with staunch privacy advocates like Richard Stallman, who apparently refuses to even use the prox-card readers that let us in the building (how the hell does he get in? air ducts?), it's definitely an issue that comes up every now and then.

So under what circumstances would you give up personal information and let some third party (school, government, company, etc.) track your movements and your actions? I had a conversation with mvk the other day, and he mentioned some studies (forgot which ones) that essentially suggest people are unconsciously more than happy to sacrifice privacy in exchange for little rewards. Case in point - supermarket rewards cards. You let the supermarket keep track of every single purchase you make in exchange for saving maybe 5% on your purchases. Most people, when asked directly how much they value privacy, would name a very high price, thinking that it's something they really care about. But if you throw them a biscuit and then just take what you want, more often than not, they'll happily give up the privacy they held on to so dearly no so long ago. Ooh, I can save $3 if I let Shaws profile my shopping habits? sign me up!
December 5, 2004
¶ reviving a tradition
So trina was telling us how when she used to work in building 20 way back in the day, they'd goof off by drenching a tennis ball in lighter fluid, setting it on fire, and batting it through the corridors. I was like, awesome!! So on friday, before burnination, I made a run through the tennis courts and picked up some abandoned balls. 11:00 rolls around, madness ensues, and I now have a new favorite game (sorry, ice hockey). For lack of a better name, I call it fireball

Fireball is a multiplayer game played in rounds. It is, in essence, a variation of Hand Ball

materials required:
  • tennis balls (a few)
  • camping fuel / lighter fluid
  • lighter / matches
  • fire extinguisher
  • nonflammable wall and playing area
  • metal (or other nonflammable material) spoon
At the beginning of each round, a tennis ball is soaked in fuel for approximately 30 seconds. One player, designated the server, uses the spoon to carry the tennis ball to the designated playing area. When all players are assembled, the tennis ball is set alight. The server then strikes the ball with her free hand (the one not holding the spoon and ball) towards the wall. The ball is allowed to bounce off the wall and the ground once before the next player must strike the ball back towards the wall. The ball is kept in play in this manner until it runs out of fuel and extinguishes. If a player fails to keep the ball in play, an appropriate punishment is enforced. The type and severity of the punishment is determined and agreed upon before game time. One suggestion is to throw the flaming tennis ball at the person in question.

details:
  • players must strike the ball with their bare hands.
  • players should wear natural fibers such as cotton and silk. Synthetic clothing such as polyester is strongly discouraged.
  • If a person or object other than the tennis ball catches fire, the fire extinguisher should be used to extinguish the flames.
December 12, 2004
¶ nocturnal TQEs
I've become nocturnal. I decided that daylight is distracting, so I've taken to going to sleep at 5 am and waking up at 12/1 pm. Get a lot more work done this way, cause there's nobody to bother me when I go work in the lab, and only a few hours of daylight to bother me. It's not that I don't like the daylight, it's just that it's harder to concentrate on my work, cause I get the urge to go outside and run around in circles or something.

There's this nagging thought in the back of my mind that maybe this is not such a good idea...

Semester's over. I think I'm done with my course requirements, but that depends on if I get an A in Vision. Enoch was telling me how us new kids have it easy with the TQE (Technical Qualifying Examination). Apparently, back in the day when he was a young grad student (like back in 'nam or something like that), they had to get all A's and A+'s in their TQE classes. Weren't even allowed to get an A-. If you did, it's not like you get kicked out of school, but you'd have to go through oral examinations to prove to the faculty you knew more than jack shit. If you couldn't do that, then you got kicked out. So I guess we have it easy, cause now the minimum grade requirement is only at least three A's.. one B is acceptable. I alleged that students just got proportionately more A's back then than they did now (i.e. grading was easier) but Enoch would have none of that.
December 17, 2004
¶ obscure developer tools
how's this for obscure:

Today, we released PyBluez 0.1 - python wrappers around the GNU/Linux bluez bluetooth stack. They're developer tools for a minority programming language for a minority technology on a minority operating system. I'd be surprised if there are more than a few hundred people in the entire world who'd actually be interested.

So umm... if you're a linux bluetooth developer who likes python, check it out
December 19, 2004
¶ fighter pilots pursuing dreams
When we first showed up at MIT last September, they told us that typically, 1/4 of the students who start the phd program don't finish. Lots of people hear that, but they never really know why. People not familiar with the program often have this misconception that if you leave after a couple years, you either failed out or you got kicked out. Not really true, though.

It's about that time... when a bunch of my classmates have decided that the phd just isn't the thing for them, and they're packing up and getting ready to go. Some are going to industry to work and make real money... some are going back to their home countries to get married and pop out babies... some have just decided that academia isn't the thing for them... and then there's rik.

rik started doing his phd in aero-astro at the same time as us. Then one day he decided he didn't want to build the planes and rocket ships anymore and decided to drop out of the phd program and join the air force to be a fighter pilot. So he got laser surgery to correct his eyesight (air force only accepts pilots with perfect vision) and sent off his application. He finished his masters and will be leaving soon.. the air force and navy application process take a while, so he's gonna go work for Blue Origin and be a rocket scientist while he waits.

Apparently, this sort of thing is more common than I realized. twd was telling us about how his brother got started as a helicopter test pilot like twenty years ago... he was working on simulation software when one day he was testing the simulator and did this one maneuver that made the helicopter crash in the simulator. twd's brother refused to believe that the maneuver would actually make the helicopter crash, so after trying it in the simulator over and over again (and crashing over and over again in the simulator) he just went outside, grabbed a helicopter, and tried the maneuver himself.

the helicopter did not crash.

twd's brother is still alive, and is still a helicopter test pilot.
December 29, 2004
¶ walking on thin ice.
I think my parents figured out how to googlestalk. Hi dad.

I realize now that I accomplished pretty much jack shit this past semester. Learned a lot, but basically didn't do any research at all. Not so good. How am I supposed to graduate if I don't do any research!? *pulls hair out*

[rant]
Went to the woods today to see how thick the ice on the lake was. Did the standard procedure - drill to check depth, move 10 feet, repeat until safety limits are established. Got really annoyed cause this woman walking her dog by the edge started yelling at us saying the ice wasn't safe and to get off the ice. I tried telling her that I was drilling the ice to see how safe it was, but it was useless. She started spouting some bullshit that you need six inches of ice to safely support a walking person1 and ended by yelling "have fun falling in!" and walking away.

Stuff like that really bugs me. I would've been fine if she had just said something like 'be careful, I don't think the ice is safe' and left it at that, or even if we could've had a nice conversation where I explain to her the safety procedures I was following. But she wouldn't hear a single thing I said and just kept on freaking out on me.

It happened again with the second person we saw that day, about 10 minutes later. I was about ready to explode with frustration.

The actual ice depth varied from 1" in some places to 3" in others. Not safe if you're not careful where you step.

No, we did not fall in.

Even if we had fallen in, we would've gotten cold, wet ankles at worst. The water was never more than 2' deep in the areas we walked through.

I guess what bothers me more generally is when people don't have a clear understanding of true safety limits for a certain activity, and then try to restrict your actions based on their misinformation. Or even when they do have a good understanding, but treat you like a helpless imbecile nonetheless. For example, when MIT sent out a message to the general community urging everyone to stay indoors during the world series. That's just insulting.

I'm not saying that I never make safety mistakes, cause I do. But what I would appreciate is if when people see someone doing something that seems unsafe, they take a second to establish just how unsafe it is, and if the person is aware of both the risks and consequences, instead of just going all freaky ballistic.
[/rant]
1 2" is sufficient for a single walking person if you're not obese, 6" is enough to support a decent pickup truck. Most ice safety charts you'll find nowadays will cite a minimum depth of 4" to be safe, but that's also bullshit. See here and here for examples of conflicting figures.
January 3, 2005
¶ hello, 2005
a few resolutions:
  1. procrastinate less
  2. read less slashdot (this follows from 1)
  3. get my Masters degree
  4. find a PhD thesis topic
  5. set more things on fire
  6. run another marathon, beat oprah (maybe)
  7. learn to cook better
  8. return to a normal sleeping schedule
January 8, 2005
¶ the problem as a battle
Having trouble sleeping again. It's 6 am and I can't fall asleep.

I'm beginning to understand how to appreciate difficult problems. Lately, I've started thinking about the whole process as a battle. My opponent is the problem, and I must defeat it. Like any adversary worth fighting, this is one that must be carefully studied and analyzed before being approached. My opponent will expect and easily deflect the obvious approaches, otherwise he will have been defeated long ago by others who have come before me. Indeed, several have come this way before and retreated, declaring him an unsurmountable obstacle. Therefore, I must approach with caution.

Patience is often rewarded with success, as is diligence. If one type of attack fails at first, then it is beneficial to step back and determine why it did not work, and if there is anything to be learned. Eventually, by probing and exploring from every angle I know of, I will expose the weaknesses of the problem. Knowing where the opponent is weak gives me the confidence to approach and make a final assault. If my analysis was correct, then I will easily prevail. What seemed like an unbeatable foe a short time ago becomes the dust in my tracks.

If I was wrong, however, and acted hastily, then I will be defeated. With luck, I will escape mentally battered but intact. Without luck, my opponent will crush me, permanently impairing my ability to wage battle in the future (they say that's what happened to Sipser after he spent a couple years trying to solve P ?= NP... he does have this crazy look in his eye...)
January 9, 2005
¶ TQE finished
All done with my TQE! w00t!
January 13, 2005
¶ on being an astronaut
A dream I once had as a kid, but never really put much thought into because it seemed so unlikely has recently resurfaced after Jen went to visit Kennedy Space Center last month.

So here's the deal. If you want to be an astronaut for NASA, there are basically two ways to do it. You can go the military route and hope to be a mission pilot or mission commander, or you can go the civilian academic route and hope to be a mission specialist. If you go the civilian route, having a phd in mathematics, physical sciences, or engineering helps a lot. See NASA astronaut class of 1998. Apparently, that's what half the students in the aero astro department here are planning.

If you make it past the initial selection process (application, written exam, interviews) then there's a two year training program. Then you're an astronaut candidate. You're not guaranteed to fly, however, as it depends on the missions. Since Columbia, there haven't been many shuttle missions, so there are some astronaut candidates who've been waiting 7-8 years to fly. Some give up on flying and move on to doing other things with their lives.

So I figure I meet the height requirements for being a mission specialist, am in good physical health, and will eventually get my phd in an engineering field. What's there to stop me?

Well, there's the eyesight problem. NASA demands good to perfect eyesight, and corrective surgery disqualifies you. So I'm screwed for now, but that policy might change (Air Force/Navy started allowing fighter pilots to have eye surgery three years ago, NASA is expected to follow suit). Besides, if I apply, it won't be for at least four or six years. NASA hasn't been hiring young astronauts lately anyway. In recent years, they haven't taken on candidates under the age of 36.

Where will I be when I'm 36? Running some company? Tenured professor somewhere? Working an industrial research lab? Flipping burgers? If I applied and got accepted to training, would I give it all up just for a chance to shoot for the stars? Who knows...

But that's like aeons from now... best to forget about it for a few years...


Yes, nowadays you could just fork up $200,000 to ride a tour bus upstairs, but that's cheating. It's like hiring a bunch of sherpas to give you a piggyback ride up Mt. Everest.
January 18, 2005
¶ frozen meetings
So the speedometer on my car crapped out a few weeks ago, and I made an appointment to get it fixed today.

McKinsey is coming to CSAIL tomorrow. They're interested in Oxygen and our research. A bunch of faculty are giving presentations. Larry was gonna do one, but he had to go to Singapore, so he asked me to give a short talk instead. I'm like, sure Larry, can do. Then he's like, Randy Davis wants to meet with you beforehand to make sure you fit in. Fit in!? Alarm bells clang in my head and I ask who's coming from McKinsey. Oh, just their CIO, Director of IT Strategy, and entourage. umm... okay Larry, if that's you want... /me pisses his pants. He assures me that mine is a minor presentation and it's okay for me to screw up cause I'm a student and stuff. fair enough.

So Larry's in Singapore, I just got back from Quebec last night. Today's the only day I can meet with Randy (on the phone), and he wants to meet at 11:00. Beautiful, exactly when I'm getting my car fixed. So I pull into the shop, turn in my car keys, and Randy calls. He gets annoyed right away cause there's a TV in the shop and it's loud and people are talking and he wants me to go somewhere quieter. There's no quiet place inside, so I walk out to the back driveway and commence our meeting. Randy wants to go over the presentation slides and make some suggestions, so there I am, crouching in the driveway of some auto repair shop, one hand on cell phone, one hand operating laptop, and it's 10 degrees fahrenheit outside so my ass is frozen already. People pass by and give me funny looks. Jerks. Haven't they ever seen a chinese kid talking on a cell phone and fixing some powerpoint slides in the back of an auto shop before?
January 25, 2005
¶ TA feedback
So Eta Kappa Nu runs a course feedback thing where at the end of every semester, they go around and have students fill out forms to evaluate their classes and lecturers and TAs. Since I TA'd a class last spring, I got evaluated also. I finally got around to looking at the class evaluation. I was mentioned twice.
TA A. Huang (5.0/7.0, 4 responses) was a knowledgeable and patient TA. A couple of students commented that he was not always friendly, however.
"On A. Huang (TA): A great hacker."
I guess the point is that I did all right as a TA. It bothers me a little, but doesn't really surprise me, that some students thought I wasn't very friendly. I think I've become accustomed to being curt and foregoing formalities and idle banter. If someone comes to me with a problem, I'll spend as much time as needed to help take care of it, but no more. So sometimes people would come up to me, ask a question, I'd give a one word answer, and then go right back to doing whatever it was I was doing.

I do remember not liking that exact same attribute in other people I've encountered. I never really knew if they were curt because they found me annoying, or if that's how they just were. A smile, however brief, did a lot to make me feel more comfortable. Now I find myself doing some of those things that I didn't like when I was in the other position, and it bugs me.

So I guess I'll tack on another resolution, since it's still january - be (or at least seem) friendlier to people I work with.
January 27, 2005
¶ no love for the geek
I just found out that the LinuxWorld conference and expo is happening in Boston in just a few weeks. That's cool, I like Linux, maybe I'll stop by. But I find it vaguely disturbing that the conference dates are February 14-17. Hordes upon hordes of linux fiends converging together, on Valentine's Day nonetheless. Don't they have someone special to be with? I don't like perpetuating the stereotype of the socially awkward loveless computer geek, but geez. mp3 download download mp3
February 3, 2005
¶ airborne porta-potties
Yesterday afternoon I looked out my window and saw a porta-potty.

It was one of those standard bright blue stalls with a white roof, swaying to and fro in the wind. I don't know why, but I was somewhat mesmerized by this porta-potty and spent a minute or so just looking at it. It wasn't actually right next to my window, it was across the street, being lifted by a large construction crane, but the angle of my window was such that if you just looked straight out, there were no tall buildings behind the porta-potty, and the suspending chain was so long that it just looked like it was being dangled there from nowhere against a cloud-speckled sky. It seemed strangely romantic in some twisted way.

Of course, immediately afterwards, my train of thought degenerated into standard toilet humor and I started thinking how amusing it would be if they lifted it while someone was actually taking a dump in there. Open the door after taking care of some business, and all of a sudden you're two hundred feet in the air standing in a vat of shit.
February 8, 2005
¶ user studies
Rule 1 of performing an experiment that involves human subjects: Abuse your friends and colleagues
[scene - Albert enters Max's office]

Max: Hey Albert, what's up?
Albert: I am here to strain the bonds of friendship.
Max: What do you want, and can I have your data?
February 13, 2005
¶ what to do in case of fire
run
At one of the Dreyfoos entrances to Stata...
February 20, 2005
¶ UROPs
A fellow graduate student said something to me the other day that really irked me. Shortly after I told him I'd been working with a few undergrads (UROPs), he asked me the question, "So do you know how to manage UROPs?", in this somewhat condescending tone implying that I didn't and he was about to tell me.

Anyway, so after I preened my ruffled feathers, and after he went away, I thought some more about the question and realized that there's one fundamental attribute about UROPs that, while I hadn't totally ignored, hadn't quite appreciated completely before. To me, the big difference is that undergrad research assistants are not employees, are not merely tools, and you can't manage or treat them like employees or tools, despite the fact that they are getting paid to work for your lab.

The majority of the UROPs that pass through our lab don't come for the pay. They come because they want to find out more about our field, about the research we do, and to see if they like it. Being MIT, they're almost all talented and quite competent. So there's no question about whether or not they can get something done. The question is whether or not we can find the proper motivation, and the right support system so they can do what they want to do.

Employees are often seen as mere resources and tools to get something done. If you need something done and either don't want to or can't do it yourself, you get someone else (who works for you) to do it for you, and you don't feel bad about it. Not so with UROPs. It's quite tempting to think, "gee, I'd love to analyze this data set in this way but don't feel like doing it myself" or "gee, it'd be cool to have the reults of this agonizingly tedious experiment but I can't be bothered to run it" and then make a UROP do it, but if you do that a lot, they start to think research sucks and never come back.

I guess you could expand this thought to not just students, but underlings (including employees) in general - people who work for you are not just tools, blah blah blah...
February 22, 2005
¶ first words
I made the monumental step of writing the first words of my Master's thesis today. I think it took me like an hour to write four sentences, but they were some pretty damn good sentences, if you ask me. It's shaping up to be about five or six chapters long. I think I will need to increase the rate at which I write sentences of my thesis. I will also need to learn to write better.

Spending time with stacy is nice. We don't do anything productive. Ever. It's mostly eating, sleeping, eating, sleeping, with occasional days of movies, video games, and snowboarding. Sometimes we get into technical discussions. Today was Python vs. Java. Last week was security vulnerabilities of ssh rhost files, and linux kernel modules.
February 25, 2005
¶ google map
Ingredients:
  • 1 unmonitored giant printer
  • 1 Google Maps
  • 1 copy of Photoshop
  • 1 grad student with a thesis to write and a tendency to procrastinate
Directions: Combine ingredients. Mix well. Shake 'n Bake.

Result: A very large map of Cambridge.



March 7, 2005
¶ 阿媽
阿媽過世了.她今年八十三歲.爸爸說她睡覺時候走了..走地很快..沒有什麼痛苦.我們下禮拜要回去台灣出席葬禮.

我上學期學台語就是應為想要有一天能夠回去台灣跟阿媽講台語.. 跟她說┌阿媽,你好.你食飽末?我在美國學一屑仔台語啊┘... 現在已經沒有機會了..
March 19, 2005
¶ back from taiwan
Got back from Taiwan last night. I really hate these whirlwind trips, they screw up my sense of time. I always bring all these things to do on the plane or in my few minutes of free time, like homework and papers to read and theses to write, but I never do any of them. Somehow I just find it too hard to concentrate, so I just end up buying somethin random at the bookstore and do some leisure reading on the plane. Read The DaVinci Code and Angels and Demons this time. Nice books, but they sure aren't helping me graduate faster =P MIT's spring break just started, so I guess I could have stayed longer in Taiwan, but I didn't really feel like it this time.
March 21, 2005
¶ Privacy violations
I found out a few weeks ago that one of the CS professors at Brown has been spying on students in his class. Every student in his course is supposed to run a startup script on login to set the correct environment variables and so on, so they add /course/csXXX/bin/csXXX_student_startup to their .cshrc or whatever. The professor added a line in the startup script that runs a program of his to collect every student's web browser history file (which is private). Essentially, he's accessing, logging, and recording their personal data without telling anyone or obtaining anyone's consent. People hardly ever read the course startup scripts, so nobody knew he was doing this for months.

One of the students in the class spoke to him about it, and he apparently said something about de-identifying personal information and using numerical identifiers instead of names. I find it highly intrusive, unethical, and disrespectful that this was done without either notifying students or obtaining their permission. It seems like he did not go through the Office of Research Administration and fill out a proposal to use humans and human data as the subject of research, as University policy dictates he should. Neither did he obtain the permission of the VP of CIS, the Provost, or the General Counsel, as the Brown Computing Acceptable Use Policy says he should. Obviously, it's a fair amount of red tape to cut through, but I'll be damned if I let someone poke through my personal files without at the very least telling me first.

None of this has really gone down yet (I've been pushing for someone to take it up with a dean or provost or something), so I won't say who it is, but personally, I'm disappointed.
March 24, 2005
¶ voices in my head
Sometimes, when I'm lying awake in bed at night, I think I hear voices in my head. They're faint, indistinct, and hard to hear. I struggle to listen to them, lying perfectly still and motionless until the voices become clearer.

Then I realize it's just my damn el-cheapo computer speakers that are picking up RF noise from the powerlines.
March 27, 2005
¶ goodbye for now, comments
I've turned comments off for now. The comment spam has been getting quite bad. At first, I'd delete them by hand. Then, I wrote a script to speed up the process. In the last week, I've been getting around 500 comments a day, all spam. There aren't very many solutions out there for bBlog (the blogging engine I use), as it's not as popular as MovableType or Wordpress. So for now, I bow my head to phentermine, online gambling, and pre-approved mortgages. I wonder if it's worth switching to a more popular system for the anti-spam features... email me if you have suggestions.

MIT spring break is now over. Am entering the final stretch of the semester, where I supposedly finish writing my masters thesis (!!) With copy of Strunk & White in hand, I boldly go where thousands of clueless grad students have gone before...
March 31, 2005
¶ in conversation
I had an uplifting conversation with an MIT faculty member the other day. Essentially, I was complaining to him that even after all these years of study, I still feel inadequately prepared for the research I'm trying to do, that there's still so much out there that I have no hope of even catching up to the current state of research in my field. It's not just that the computer science is hard, it's that there are all of these other disciplines intermingled with it that in order to have a solid understanding of what's going on, I feel like I need a solid understanding of both fields. Last week, I found myself bombarded with all these physics terms - Bethe free energy equations, Kikuchi approximations, minimizing entropy - that just went way over my head and I felt quite inadequate.

Anyway, the uplifting part of this experience was that this professor confessed to me that half the time, he didn't understand everything either. There are a select few faculty members, he said, who do get everything and they are truly amazing. As for him, he felt fine knowing that even without grasping everything to the same degree of sophistication they did, he was still able to contribute meaningfully. He never bothered trying to understand when the physicists tried to butt into his field and offer their interpretation of the subject, because he could always understand it in some other way that didn't involve arcane theorems named after dead Eastern Europeans. And that got me thinking - wow, if this professor at MIT, who I have the greatest respect for, doesn't always get this stuff all the time, maybe there's hope for me after all.

So the moral of the story is that I don't feel as much pressure to learn what a Kikuchi approximation is anymore.
April 5, 2005
¶ Intuitive explanations
Some of the greatest moments in learning for me have been when, after spendings hours or days or even months trying to figure out a particularly difficult concept, I am presented with a simple but intuitive explanation that makes everything suddenly click into place. The world becomes clear, and the concept, which seemed so daunting and challenging before, appears as simple as elementary algebra. Such moments of tribulation are typically followed by massive confusion, wondering why nobody brought forth that simple explanation in the first place. Sometimes it even makes me feel that if I armed myself with an encyclopaedia of these simple explanations, that I could singlehandedly raise the world's awareness by an order of magnnitude (this feeling is usually quite short-lived).

A recent example - I had been trying to do some reading on my own and figure out what Markov Random Fields are. They are used heavily in computer vision research, and I thought it would be useful to know what they are and why they are used. It was a complete failure on my part. Paper after paper, I just couldn't figure it out. Frustration reigned supreme and battered my tormented ego. Then one day, I found out that a Markov Random Field is nothing more than a Bayesian network with undirected edges. Like a Bayesian network, it exists to allow the user to estimate the hidden state of a system by inferring the most probable state from the set of observed variables. But instead of using directed edges to express causal relationships and conditional probabilities, a MRF uses undirected edges to express compatibilities and joint probabilities ( assumptions about the probabilities that two variables have certain states rather than assumptions about the probability of one variable given the value of its parents ). Instantly, Markov Random Fields made sense to me and I could see why they're being used so much.

So here's the kicker. Intuitive as that was to me, unless you're an AI specialist or have taken a reasonably challenging course in probability theory, that probably (haha) made no sense to you at all. The generalization of this is that simple, intuitive explanations for a subject certainly exist, but each "intuitive" explanation is intuitive only for a certain, possibly extremely small, audience. One of the major challenges that a teacher faces is knowing exactly which audience she is preaching to, and which of those explanations is exactly the right one to give. The best teachers can read their students and refine their estimates of both which kind of audience their students fall into, and which explanations are best.
April 6, 2005
¶ train crossing mass ave in snow
April 11, 2005
¶ bouncy balls
I had the (mis?)fortune of passing through the Senior House Bouncy Ball Drop last Friday. One of the events scheduled during MIT's Campus Preview Weekend (visit weekend for new admits), the Bouncy Ball Drop is essentially a bunch of undergraduates taking 6,000 bouncy rubber balls and throwing them off the roof of a building, with strobe lights flashing.
  +--------------------+
  |    Senior House    |
  +----------------+   |
      .............|   |
  --------+..X.....|   |
          |........|   |
          |.court-.|   |
          |..yard..|   |
          |........|   |
          +-----+  |   |
                |  +---+

It's not too hard to get up on the roof and window ledges of Senior House overlooking the courtyard, as the ledges are very wide and roof access is easy. As I walked through the courtyard after the drop (armed with bicycle helmet), it became quite difficult to place my feet on the ground without stepping on a damn bouncy ball. Not all the balls were thrown at once, and my helmet seemed to scream bullseye, so I ended up getting pelted by at least 20 or 30 balls from above. There were also other students in the courtyard engaged in a bouncy ball fight with those on higher ground, so I suspect I may have been a casualty of that conflict.
April 19, 2005
¶ Brandeis
More procrastination.

This last week was Brandeis's Festival of the Arts. They have a nice group of spinners there who invited us to come perform with them. They were launching fireworks somewhere else on campus while we spun, so that was pretty cool. Stacy took some short videos with her digicam =)

albert with duobles double staff

albert with snakes snakes
April 25, 2005
¶ sonic's run, dropping things
Congratumalations to Sonic, who ran the Big Sur International Marathon and officially beat me by two minutes and five seconds! (but actually a few more minutes faster)

I've decided that here at MIT, almost all forms of entertainment involve heaving something from a roof or bridge and witnessing a spectacular demise or ensuing chaos. Some recent examples that come to mind:

Sodium Drop heave a kilogram of pure sodium into the Charles River. appx. 100 ft. descent. Early fall. picture
Pumpkin Drop heave fifty large pumpkins off the top of the Green Building. appx 300 ft. descent. Halloween
Bouncy Ball Drop heave 6,000 rubber bouncy balls off the roof of Senior House. 3 floor descent. Campus Preview Weekend (early April)
Piano Drop heave a 700 pound upright piano off the roof of Baker House. 7 floor descent. late April. some pictures here
May 2, 2005
¶ pornographic research
AKA: how to spend your days looking at pornography, calling it research, and getting it published.

While researching ways to approach my final project for my computer vision class, I stumbled across this gem. It's a paper published in 1996 in the European Conference on Computer Vison that describes a technique for detecting naked people in images. By analyzing color and texture properties to determine skin regions and fit candidate images to structural models, they made a pretty good porno-detector.

See also: here

And no, my final project has nothing to do with pornography.

[1] Fleck, M., Forsyth, D., and Bregler, C., "Finding Naked People", European Conf. on Computer Vision , Vol II, pp. 592-602. 1996
May 5, 2005
¶ photo-guided driving directions
An idea I think is cool, but will probably never get around to doing myself, so I'm throwing it out here.

One of the things we've been toying with at lab is the idea of photograph-guided navigation. The basic problem is that written driving directions are not optimal. Consider:
  • Turn Right at Main St. 0.5 miles
  • Turn Left at Park Ave. 1.4 miles
  • Bear Left at Broadway 0.3 miles
  • Arrive at Destination
Being able to follow these directions requires being able to identify "Main St", "Park Ave", and "Broadway". How many times have we tried to follow directions like these only to find that the street signs are difficult to see or not even there at all? The visual cue that we're given is unreliable. What if, instead of a bunch of street names, you were given a series of photographs?



Would that not be so much easier to follow than a little line that says "Turn right at Main Street". You could still have the text, of course, you'd just supplement it with a picture.

So how would something like this work? There are two things that need to happen. First, you'd need an image database of every intersection and point of interest, along with the location of the image and a direction vector. You need the direction vector because at any given point, you can have many images facing different directions that look completely different. It would be silly to give directions that say "Turn left when you see this picture behind you". Collecting all the images is easy. Take a laptop with a GPS unit, a webcam, and a big hard drive. The GPS unit provides accurate positioning data along with direction vectors. Point the camera forward at all times and keep it turned on. As the car drives, the laptop automatically grabs images from the webcam and stores them onto a local database that gets merged with a central database later on. A skilled programmer could write the program for this in a single day. This is actually how MapQuest built its street maps. They hired a bunch of people, gave them laptops and GPS units, and told them to drive around and type in all the street information they could find.

Second, you'd need to integrate this into a search engine. Google Maps seems like a good candidate, given that it's fairly easy to customize and integrate into your other web applications. When you get your list of directions from Google Maps, you compute a position and direction that you want a picture for and then look for an image in your database that matches up. A nice thing about it is that you could roll it out incrementally. If you don't have a picture available for an interesction, big deal, just keep showing what you've always shown before. Another thing you could do is to have two image classes - one for nighttime driving and one for daytime driving. The picture above shows an arrow overlaid on the image, pointing in the direction you want to turn. This arrow is easily calculated based on the angle of the turn (the same way they get the "Bear Right", "Slight Right", "Right" phrases.)

So anybody at Google read this blog? =P
May 10, 2005
¶ learning airline ticket prices
Another idea I think is cool, but will probably never get around to doing. This one is somewhat more speculative. It's also not my idea - this one goes out to Dan Weld out at the University of Washington, who already did it to a first approximation, I think... which makes me wonder why I'm writing about it in the first place... oh well.

Unlike bus and train fares, air travel ticket prices fluctuate dramatically in a seemingly random fashion. A seat on the same flight from Boston to San Francisco can change price by hundreds of dollars in a matter of days. People are often left wondering whether waiting a day or two would get them a better price, or if they should buy immediately.

These prices are not completely random. A friend in the industry tells me that there are hordes of people whose jobs are to sit at a terminal and change ticket prices. I don't know the exact methodology, and there are probably rules and spreadsheets that dictate how the prices are to change, but at the end of it all, there's a human in the loop setting the price.

What if you could train a system to learn when is the best time to buy a ticket? You tell the system the time and endpoints of your planned flight, and then it tells you when you should buy your ticket. Machine learning algorithms are strong enough now to detect complex patterns in ticket prices and finding a local minimum is a simple matter. Dan told me he did this a few years ago and got good results - don't remember the details, though. You could probably formulate this as a Bayesian inference problem and train it on lots of old data.

So how much would you pay to (probably) save a couple hundred dollars?
May 19, 2005
¶ Master of Science
Full Text: here

Title: The Use of Bluetooth in Linux and Location Aware Computing

Abstract: The Bluetooth specification describes a robust and powerful technology for shortrange wireless communication. Unfortunately, the specification is immense and complicated, presenting a formidable challenge for novice developers. Currently, there is a lack of satisfactory technical documentation describng Bluetooth application development and the parts of the Bluetooth specification that are relevant to software developers. This thesis explains Bluetooth programming in the context of Internet programming and shows how most concepts in Internet programming are easily translated to Bluetooth. It describes how these concepts can be implemented in the GNU/Linux operating system using the BlueZ Bluetooth protocol stack and libraries. A Python extension module is presented that was created to assist in rapid development and deployment of Bluetooth applications. Finally, an inexpensive and trivially deployed infrastructure for location aware computing is presented, with a series of experiments conducted to determine how best to exploit such an infrastructure.
¶ sm thesis receipt


Two down, only four more years to go...
May 24, 2005
¶ but I'm not really graduating...
MIT keeps sending me these things now that say "Congratulations, new graduate!" and pestering me to take surveys on what I'm going to do with my life, and encouraging me to go to graduation events. And it's weird because I'm not really graduating. I finished a requirement of my program, and am moving on to the next part. Even the Alumni association is bugging me now and you can forever reach me at ashuang@alum.mit.edu...
June 20, 2005
¶ Project Oxygen final days
Project Oxygen, which is where my funding comes from, ends soon. It was one of the more high profile projects in the AI Lab and LCS. "Pervasive, Human-Centered Computing", bringing pervasive computing just a little closer to reality. Since I didn't bother finding a research advisor when I first showed up a couple years ago, I ended up being shuffled into the project. That was fine with me, since I had no research direction of my own and was willing to give it a shot. Plus, Nokia gave us these sweet new phones to do research with, complete with cell phone plans. So sometime last year, I canceled my own phone plan and started using the Nokia phone exclusively. Of course, the only reason I did that was to better familiarize myself with the phone and approach the "research" from a more involved standpoint =P

They just held the final Oxygen Annual Meeting last week, where all the people from our sponsors (Nokia, Hewlett-Packard, Acer, etc.) come and the faculty give talks and show off their stuff. I spent the few weeks after graduation banging all of our stuff into shape, scraping something together to show our sponsors. The big day came and went, we demoed our system, impressed some people more than others, and then breathed a sigh of relief. Five year project, coming to an end. Of course, they're planning stuff like Oxygen 2 (O2 hahaha) but none of that is definite yet.

So now the big question is - how long will the cell phone plan last? Does it end with Project Oxygen? Will it slip through the administrative cracks? Will I have to switch phone numbers again? Oh, the suspense...
June 29, 2005
¶ VPN madness
Way back in the day, when we first got cable internet service through Cox @Home, we used a little Toshiba Satellite Pro 435 CDS running Redhat Linux 5.0 to serve as a home router. This was before they had the little Linksys and D-Link boxes that you can get at Best Buy for $20. It was a workhorse, never stopped, never failed. After a few years, though, they came out with the all-in-one routers, so we switched to using them because they use less power and are cheaper.

In the last few years, we've been trying to setup a virtual private network (VPN) between the home network and the office network, but the damn routers kept crashing. Linksys advertised that their routers could do VPN, but it was a total disaster. The things were unreliable to no end. I finally got fed up with them a few weeks ago and tossed them out and replaced them with some old Linux boxes we've had lying around. Brandon suggested some specialized distro a while back, but I like Debian, so I decided to do it the Debian way. There wasn't a Debian-specific document out there on how to do it, so I wrote one up after piecing together the parts.

It's been working beautifully for weeks now, both faster and more reliable than the crappy Linksys boxes ::mild bitterness:: we used before. Also setup a PPTP server so that windows machines could connect to the VPN more easily from on the road, but haven't documented that part yet..
July 5, 2005
¶ DC monuments at night
A weekend jaunt to Washington, DC...





July 17, 2005
¶ somewhere in Texas - Linux + Bluetooth + T-Mobile GPRS
This is one of those "wow let's reflect on technology and go ooh aah posts." Plus a howto.

As I type this, I'm sitting in the back of my uncle's Honda Pilot, somewhere in between Fort Worth and Houston. My cousin is sitting in front of me watching a movie on a Playstation Portable. It's kinda cool, to actually be online way out in the middle of Texas on some highway (route 30?). No more just listening to the walkman or MP3 player, now I can look at porn news and read email and stuff. Oh, and blog.

It actually took me a while to figure out how to get it all set up, so I posted my configuration and setup here. The basic idea is to take a laptop computer and a cell phone that has a GPRS data plan, and then link the two together via Bluetooth so that the laptop can utilize the cell phone's internet connection. With T-Mobile it's actually not too expensive - an extra $5 per month gets you unlimited data access. There are some crappy restrictions, like all ports except email (POP3, IMAP) being blocked, and having to use a proxy server for web browsing, but it's useful. I drool over the 3G systems, but they're so expensive that I can't justify getting one on my grad student stipend.
July 23, 2005
¶ orca pool test - alumni pool
Thursday we brought the sub out to the alumni pool for a systems test. Checked the motors, sensors, drove it around for a bit, freaked out the little kids , and ran a couple of simple mission scripts.



Army of laptops invades the swimming pool..




August 1, 2005
¶ shipping out
After many trips to home depot, the electronics store, and the West Newton YMCA pool, we've packed up ORCA and are shipping out to San Diego in the morning. I'm wondering how we're going to be ready for the competition, since a large part of the software hasn't even been written yet (!!) and some of the parts haven't been tested. This morning was the first time we attached and tested the new downward looking camera. There's also a forward looking camera, and a linescan camera (a camera that only captures images of a horizontal line directly in front of the camera, but does it *really* fast, like 10 KHz fast) that have been unit tested but not integrated yet.. I just loaded a new operating system on the sub a couple days ago cause the old one didn't have good firewire support, so we're still working on the kinks on that... eep... well, can't really do much about that now... off to san diego!


Hoisting the sub makes it easier to work with and test certain parts, like the downward looking camera.
August 12, 2005
¶ ORCA 8 - results


Yesterday we got back from the AUV competition. After 6 whirlwind days and nights, all of which are seamlessly blurred into my fuddled brain, we ended up with 3rd place out of 16 teams, behind University of Florida and ETS.

The actual competition was held out at the Space and Naval Warfare Center out in San Diego, at their Transducer Evaluation Center (TRANSDEC). A transducer is a sonar emitter and receiver, and the Navy built a pond that minimizes multipath, making the acoustic conditions similar to that of the deep ocean and ideal for testing sonar devices in.

The first few days of our trip to San Diego was spent setting up operations at the Vagabond Inn and putting the sub back together. We had to partially disassemble ORCA for the plane ride over, so the thrusters, cameras, and main electronics components got reattached once we reached the hotel. Second task was getting Internet access. Since the Vagabond Inn doesn't currently provide Internet access for its guests, we signed up for a Verizon 3G BroadbandAccess account that we canceled a week later. On Thursday morning, we hauled ourselves out to the transdec and began operating from there during the day. Each team is allocated a tent with some basic utilities like power and tables and chairs.

After we got setup at the TRANSDEC, we began our first practice runs in the actual pond. Team members aren't allowed in the water, so the Navy provided professional divers to operate the sub while we test. We designated Sam as our official dock man, which meant that he was the only person communicating with and giving instructions to the diver. Once everything is ready to go, they hoist the sub into the water and off we go. Unfortunately, our first test run was a complete disaster. Nothing worked the way it was supposed to and after a few minutes we pulled out of the water to do some diagnostics. After a couple hours we figured out and fixed the two problems that killed our first practice run. The first problem was that we put the vertical thrusters on backwards. Yes, backwards. The fore and aft vertical thrusters are a matched pair so they spin differently when given the same commands, and we had the fore thruster where the aft thruster should be, and the aft thruster where the fore thruster should be. So whenever we told the sub to dive, it would try to jump out of the water. The second problem was a wiring problem which we traced down to a bad firewire cable that was bringing down the entire firewire subsystem, which meant our cameras didn't work. Once we figured that out, we swapped a good cable in and resumed testing.

At 7:00 PM, the first day of practice at the TRANSDEC ended and all the teams packed up and hauled out. We grabbed a quick bite to eat and immediately got back to work at the Vagabond Inn. The management there is great to us and lets us use their pool at night, so we pretty much camped out by the side of the pool while we worked. A few of us got tired and crashed for a few hours and the first night shift began. At around 2:00 AM, the sleepers woke up to relieve the first night shift and kept on toiling until early morning.

The next couple days were largely spent testing the sub, fixing bugs, and writing software to handle the actual competition run. By the second day of practice, a long waitlist for practice time developed, so during the times that we couldn't use the actual TRANSDEC, we tested the sub in the small dolphin tank by the side. It wasn't quite the same as the real thing, but worked for the most part.

We even had a miniature scale version of some of the course elements that we used in the dolphin tank to test the machine vision algorithms.



Saturday and Sunday were the competition days. There were two rounds of qualifiers, from which four teams were selected to compete in the finals. It ended up being us, UF, ETS, and Duke. During each competition run, teams were given 5 minutes of dock time to bring up and check their systems, and get the sub in the water. For us, this meant booting the sub (which now runs Debian GNU/Linux), calibrating the sonar equipment and the cameras, and loading the mission scripts. After that, each team has 15 minutes of competition time to accumulate as many points as it can. For our first qualifying run, we made it through the validation gate and completed the most valuable course element - surfacing in the surfacing zone right above the sonar beacon. That was enough to get us into the finals, which was good.

Saturday night was spent refining the machine vision systems and writing mission scripts, to the point where we were able to successfully complete every course element in the hotel pool with 90% reliability. We were going to test this in our second qualifying run, but that ended up being a bust because we entered in some wrong numbers during our dock time and hosed the sonar equipment for that run. We were still reasonably confident, though, and got in a few practice runs before finals. We made our final competition run at 3:30 PM on Sunday, which ended up being a minor disaster. Three minutes into our dock time, we realized that the firewire subsystem had failed again and our cameras weren't working, so we tried a cold reboot. That didn't work, so after deliberating for a few seconds, we tried hotplugging the camera connectors. With normal firewire cables, this is okay because the ground pin is much longer than the power pin, but with our custom-built waterproof connectors, this is not safe because all the pins are the same length and you risk completely frying your electronics. It was a do-or-die situation, however, so we did it and it worked, so we put the sub in the water and started the first mission run with 12 minutes of competition time remaining. The sub made it through the validation gate and to the surfacing zone, but after that it took the wrong heading and went in a direction tangential to the next mission element (we suspect the compass crapped out on us). After watching it go the wrong way for a couple minutes, we stopped the mission and were going to reconfigure it to try again with a different heading, but by that time we only had about 5 minutes left and decided that we didn't have time to risk another run (you lose all your previously acquired points when you try again).

In the end, the top three teams (us, University of Florida, and ETS) all completed the exact same course elements, but MIT was heaviest and UF was lightest so they won by virtue of being a number of kilograms lighter than us. That was pretty disappointing, but we'll be back next year to try again and reclaim our title =P The day after, we took a team trip to the San Diego Zoo to decompress before packing up and heading home.



images link to higher resolution versions.
August 13, 2005
¶ on switching research groups
I met a student today who went through a lot of what I'm going through now in my academic life, and hearing his experiences was very encouraging. A couple years into his phd, Chris decided that while the stuff he was working on was neat and fun, it never really inspired or deeply motivated him. The projects he worked on were high profile and got a lot of attention, but didn't feel like substantial research. There weren't any theorems to prove, no experiments to run, no equations to solve, nothing to bind his work together in a complete and satisfying way. His master's thesis was more an engineering project than it was scientific research, and even though MIT is an engineering school, doctoral students are still expected to produce quality research results. In the end, he didn't feel like he was in the right place and switched research groups. Switching groups, while not uncommon, was still difficult, and raised a lot of questions. Was he betraying his old advisor by leaving? How would it impact his academic career? Would he find what he was looking for? Could he afford the 18-24 month setback it would cause in his doctoral studies? Definitely not an easy choice.

Hearing him talk was encouraging because I feel like I'm in the same boat he was in a few years ago. When I first applied to MIT, I really had no idea what it was I wanted to specialize in. The first sentence of my application essay pretty much said, "I like computer science. Sorry I can't be more specific than that." which I guess was okay with some people on the admissions board. I still didn't know what I wanted to do when I showed up, and ended up being more or less randomly shunted into my current group.

Without a focus of my own, it didn't seem like a bad place to be so I worked on the projects while trying to figure out exactly what I'm here to do. Now, I'm at the point where I've finished my master's degree and need to choose whether I want to stay where I am, or recalibrate my bearings and head somewhere else. The conclusion I've reached again and again since early this year, while not always decisive and firm, has been the same - it's time to move on. Since arriving two years ago, I've consistently found myself drawn to the topics and questions involved in machine vision, robotics, and artificial intelligence to a much greater degree than I am to the problems addressed by Project Oxygen. So sometime during the spring, I started looking for a new group to work with. It was a lot harder than I thought it would be, and disheartening at times, but after several months of searching, I think I've settled on a new group to work with.

Throughout all of this, my advisor Larry has been great. I've been able to talk freely with him about wanting to change topics and possibly groups, and he's always been supportive, even giving me advice on which groups he liked and what he knew of the other PIs I've been considering. I'm hoping that I'll be able to keep working with Larry to some extent, but things change so quickly around here that I really can't say much for certain.
August 22, 2005
¶ orca8 sub videos
Finally got around to extracting some video off of the data logs on the submarine.

If you were a submarine being hoisted out the water, what might you see if you looked down? (3.6 MB mpg)


If you were a submarine inspecting some pipe segments and dropping some balls in a little square bin, what might you see? (7.5 MB mpg)
August 27, 2005
¶ Critical Mass
Today, I went for a ride with Critical Mass Boston. From the Wikipedia entry:
Critical Mass is an event held typically on the last Friday of every month in cities around the world, where bicyclists and self-propelled people take to the streets en masse. Critical Mass has no leaders, and no goals other than to meet once every month and enjoy the security of riding, rolling and travelling through the city together.


At around 5:30, the cyclists began gathering in Copley square, mostly just hanging out and chatting with friends while everyone trickled in. By the time I got there, a number of people were already riding in circles around the square, creating a ring of bicycles just going round and round, getting bigger by the minute as people joined in. At 6:00, there were at least a couple hundred bicycles in the area, and the ride began.

As we rode through the city, we pretty much took over the streets and all automotive traffic came to a complete standstill. Reactions from drivers and pedestrians were mixed - most people stopped and stared, wondering who we were and what we were doing. Quite a few drivers got angry and impatient, honking their horns, trying to inch their way through a sea of bicycles, inevitably without success. Making our way down Newbury street, a chant started somewhere in the group. "Who's streets!?" "Our streets!!" [repeat]. Not everyone joined in; some rang their bells or honked their bicycle horns in approval, others just watched and rode on in silence. Passing by a few city tour buses, a few cyclists would shout to the confused tourists, "Welcome to Boston!!!".

Occasionally, the group would thin out as the more eager cyclists sped up and moved more quickly than the rest of the pack. When this happened, someone would start shouting "Mass up!!" and an invisible hand would massage the group back into a critical mass as those in front slowed down and the laggers caught up. There was no leader, no one person directing the flow of bicycles. Instead, whoever was riding in front determined the next waypoint. Sometimes there were competing factions trying to steer in different directions ("To Cambridge!" "No! Turn left, to Allston!") and some unseen roll of dice would choose the winner, but never was there an individual who could be singled out as heading the group.

Riding with Critical Mass was a completely different experience from any cycling I'd done before. On the streets, we became first-class citizens. No more hugging the side of the road, flinching as cars and trucks barreled past. Instead, there was an undeniable sense of safety and solidarity throughout the entire group. When I finally broke off at Harvard Street and rode home, I became intensely aware of how alone I was on the road when there weren't a few hundred other bicycles riding alongside.

There were a few things I saw that I didn't particularly like. Although we took the road away from the drivers, we also took it away from people on foot. Those trying to cross the street had no choice but to wait with the cars as a flood of bicycles washed by. A few people who got impatient and tried to cross were bumped and not treated very well. A number of arguments started between cyclists and upset drivers, with the cyclists dishing out more than their fair share of harsh words. Without any leader or governing authority, cyclists were free to act how they pleased and hide in the safety of the group, and with that many people there are bound to be some bad apples.

All things considered, though, I'm glad something like Critical Mass exists and happens. There is no doubt in my mind that all of the drivers we passed by today will be significantly more aware of cyclists and skaters on the streets, which at the very least means a safer road for me when I'm riding around town.







August 31, 2005
¶ grad school, year 3
I'll be starting my third year of grad school pretty soon. I'm getting old, I think. I remember when I first showed up, I met some third year grad students and thought they must've had it all figured out, where they were going, what they were doing, the grand master plan. Now I'm there and I'm like, "wtf??" It was like that in high school and college too. Guess I'll never have things figured out. I do feel like I'm 'on track', though. Finished my masters, got through the technical quals, have some approximate idea of what I want to be doing for my thesis work, and know what I'll be working on for the next few months.

Dan graduated a couple weeks ago, and we had a little celebration cake for him. He said he started as a grad student at MIT in 1994. That's like, eleven years ago. I didn't press for details, but he did say that he took at least a couple years off to work in industry. He's driving out to California now, on his way to the Valley to create a startup. Has no money, no company, no infrastructure, but does have an idea. Seemed pretty confident, so I was like 'power to you, dude.'

Once Dan left, the other grad students in the area started trying to figure out who's the senior student now. There's this sort of cloud of doom hanging over the senior student, cause everyone's waiting for him to graduate... and once he does, the cloud shifts a little and starts casting its shadow on the next guy. There are still no women phd students in our area, what is up with that?
September 15, 2005
¶ Bringing Down the House
Yesterday, I met one of the card-counters from Bringing Down the House. For those who don't know, it's this great story of a team of MIT undergraduates who learned to count cards while playing Blackjack. The book describes their exploits as they take this knowledge and use it to rake in millions of dollars from casinos across the US. The writing of the book itself isn't that great, but the story is awesome.

It was one of those welcome socials, where everyone sort of introduces themself and is supposed to say something a little interesting, and this woman mentioned that she was in the book. All of a sudden, a bunch of us are like, "woah, awesome!" and she's an instant rock star. Later on, she got to telling a few of us about her time on the team and a little bit about what it was like to take the casinos for a ride. Some cool things like how they'd fly out to Vegas and Atlantic City about once a month, and how each year the team would pull in about $1 million. She downplayed the money, saying that with a team of 20 people, a $1 million profit means each person only gets $50k. Micky Rosa never existed, although there was a real Micky involved who was a total cheapskate and jackass. The ridiculous disguises were... ridiculous, although disguises were being used. They didn't actually hire strippers to cash chips, although they did have a ton of trouble when MGM switched all their chips. Good stories.

I thought it was pretty interesting how she talked about it like it was just some part-time hobby, and it really seemed that way to her. The fame and glory brought about by the book far outstripped her own views of the subject. Back when she was still an undergrad, she said the teams were actually trying pretty hard to recruit new players, but almost everyone they approached was wary and skeptical, and thought it must have been some kind of scam. Now, everyone who's read the book or knows something about it gets way more excited about it than she does. She seemed like she almost regretted telling us, and said later on she wasn't even sure she had wanted to. To be honest, I'm not sure if I would've mentioned it either. It was obvious that from now on, a lot of people are going to think of her as "the blackjack girl" and not the other grad student. I imagine it's similar to why Robert Morris never talks about the Morris worm..
September 30, 2005
¶ software engineer discovers joys of hardware
I've spent the last several months discovering all the awesome machining and fabrication facilities that we have at our disposal, and it's totally awesome. Even though what I've been doing isn't nearly as hard or complicated as building software systems, there's something to be said for building something that you can hold in your hand at the end of the day. The word heft comes to mind. I love it when I'm holding something that I made that has heft. It feels substantial, there's some instant gratification. It's hard to get that hefty feeling with software, there's just no way to get a sense of it.

The latest toy for me to obsess over is the laser cutter. You make a drawing in your favorite design tool (AutoCAD, SolidWorks, or even Adobe Illustrator), insert a sheet of plastic, plywood, glass, or any other material that vaporizes, hit "Print", and watch it cut your design out. I actually found a legitimate excuse to use it for my new project =P





Now I just gotta find some excuse to use the 3D printer... *grin*
October 7, 2005
¶ unreliable people
Schrock's dad won the Nobel prize! Now we know where at least some of his smarts came from. (Eric Schrock was the same year as me at Brown, and we worked on a bunch of projects together. He's now a kernel guru at Sun)

[rant]
Some time ago, I began to appreciate the value of a dependable person when working as part of a team. Not necessarily the fastest, or the strongest, or the most talented, but just plain dependable. Looking back on a number of group projects or team efforts I've been a part of in the past, the ones that failed were never because we didn't have the potential, or the drive, or whatever. They always failed because someone, who everyone else was counting on, just didn't follow through with their part. Oh, I didn't have time. Sorry, it slipped my mind. Oops, this other project is way more important. My schedule changed unexpectedly. There's always some excuse.

Recent example: I've been maintaining this translation software for a few years now. I don't put a lot of effort into it anymore, and it targets a niche audience, but a few people find it quite useful. Sometime in the spring, a programmer approached me with some suggestions and patches to improve it, and said he wanted to help out. Optimistic, I gave him access to the project files and within a week or so he made a new release. On looking at it, I found a number of bugs, and asked him to fix these and re-release. All of a sudden, *poof* it's impossible to find this guy anymore. Over the next six months, he becomes the busiest person in the world without a single moment to spare. Finally, I got annoyed and fixed the bugs myself, ending this whole collaboration feeling quite let down.

Anyway, I guess I'm not saying anything that anyone doesn't know already. It just bugs me that dependable people are so few and far between. I suppose that can't be helped, though, as there are only so many people you can be 'dependable' for.
[/rant]
October 17, 2005
¶ Kimono: Kiosk-Mobile Phone Knowledge Sharing System
We did a lot of work with Nokia in the spring researching/developing information distribution systems in the context of ubiquitous computing. September rolled around and we submitted a paper to Mobile and Ubuiquitous Multimedia 2005. The reviewing results just came out, and we'll be presenting our work in New Zealand come December. I'm not sure yet if I'm going because funding is a little tight right now, but here's to hoping for a Nokia-sponsored trip to New Zealand!

Kimono: Kiosk-Mobile Phone Knowledge Sharing System

Abstract:

The functionality of an information kiosk can be extended by allowing it to interact with a smartphone, as demonstrated by the Kimono system, and the user interface can be greatly simplified by “associations” between pieces of information. A kiosk provides information that is relevant to a particular location and can use valuable context information, such as the fact that a user is physically standing in front of the kiosk, to tailor the display. Its graphically rich screen is suitable for presenting information to the user and has a natural input modality requiring the user to simply touch the screen. However, a kiosk lacks mobility and cannot stay with the user as he or she moves about the environment. Also, information provided by the kiosk must be remembered by the user. Finally, it is difficult to add information to the kiosk, and so the kiosk remains an information display device.

All this changes when a handset, such as a PDA or smartphone, can interact with the kiosk. The handset acts like a personalized proxy of the kiosk. It accompanies the user serving as a memory device. It is also an excellent media creation device, capable of taking pictures and recording voice memos as well as short text messages. Associating newly created content with other currently selected content makes for a simpler user interface. Content and its associations can be uploaded to a kiosk allowing others to access to it.
October 20, 2005
¶ rower on the charles
October 21, 2005
¶ ladypack
I've slowly been transitioning from ubiquitous computing to computer vision. A few months ago, I joined Seth Teller's research group and started working with a ladybug2 omnidirectional camera. Omnidirectional here just means the camera is composed of six individual cameras pointed in different directions so that they collectively subtend almost the entire sphere. The idea is to use it for localization and navigation - the task of a computer figuring out where it is based on sensory information and how to get from one point to another.

Collecting and processing data with the ladybug2 is difficult, mostly because it delivers so much of it. Each frame is six 1024x768 images, and analyzing 15 frames per second means going through 70 MB/s. Compressing the data helps the data transfer, but that means it has to be uncompressed before analysis.

To gather data, I got some ideas from Charlie Kemp and built a wearable computer system. The ladybug2 is chest-mounted to give it a reasonable approximation to human perspective. Processing and data storage is done with a laptop which is mounted on a modified backpack. Power and data cables connect the camera to a hardware compression unit on the backpack, which transmits data to the laptop via a Firewire800 connection. Eventually we'll be adding other sensors like a microphone, laser range finder, and inertial sensors. I've been keeping a little website for my progress and thoughts here.

Here's a closeup of the ladybug2 camera unit


The power and fibre optic connection to the hardware compression unit.


The laptop mounted on the modified backpack


I don't think we'll be able to do much realtime processing just yet since the datasets are so large. For now, the ladypack (as I call it) is just going to be a data collection unit.
October 24, 2005
¶ the sudden onset of winter


Andrea and I went hiking this weekend and stayed at Carter Notch Hut up in the White Mountains. The hike up was beautiful, warm, and sunny. Sometime in the middle of the night, old man winter decided to stroll on in and give us a surprise as we rolled out of our sleeping bags in the morning.

Saturday afternoonSunday morning
November 14, 2005
¶ BSO SRI
The summer between my junior and senior years in high school, I attended the Brandeis Summer Odyssey SRI program. I forgot what SRI stands for, but it was basically a geek camp of 13 high school students. We signed up to be some professor's research bitch for eight weeks and agreed to love it. I asked to be placed with a computer scientist and ended up in the lab of a cognitive scientist / psychologist. The research sucked, and I vowed to never enter the field of cognitive science, but the camp was a blast.

Since then, I've learned that three of us have entered a graduate program at MIT. Makes me wonder what the other 10 are up to now.

I suppose a deeper question might be - how much did the high school program affect our career choices five years later when deciding between graduate school and industry? Did the program nurture our scientific curiousity, or were we there because we already knew (subconsciously) where we were going? ehh.... whatever.
November 24, 2005
¶ beating airport security (sort of)
situation: When I'm sending stacy off at the airport, it would be nice to extend the time we have together as much as possible. Saying goodbye at the security checkpoint just doesn't seem right, and it would be fantastic if I could wait at the gate with her until the boarding call when she actually gets on the plane.

note 1: Many airlines, such as JetBlue and Alaska Airlines, now offer the option to check-in online from home. This option is enabled 24 hours before the scheduled departure time, and lets travelers print their boarding passes from home.

note 2: Traditionally, there are three points in the air-travel process where ID and a boarding pass are required: the ticket counter for checkin, the security checkpoint, and the departure gate when boarding. Most departure gates only require the boarding pass, and do not check IDs.

solution: Restrict all travel to airlines that offer online checkin. Call the traveler Alice, and the companion (non-traveler) Bob. Bob wants to accompany Alice all the way to the departure gate but would normally be turned away at the security checkpoint. Instead, Alice checks in online shortly before her scheduled departure. Alice then makes a digital copy of her boarding pass and modifies it (using Photoshop or Gimp or whatever) so that it has Bob's name on the pass instead of her own. She then prints out both the original and the modified boarding passes. Bob now has what appears to be a valid boarding pass and can make it through the security checkpoint since the security officers only perform a cursory visual inspection to see that the name on the boarding pass matches the name on the presented ID. Bob can then accompany Alice through the checkpoint to the departure gate. Since they checked in online, they don't need to present their IDs to a ticketing agent. Also, since Bob does not try to board the plane, he doesn't need the boarding pass any longer.

notes: This is almost certainly illegal. This is a mental exercise only, and I don't actually recommend trying it.

corollary: With the use of a fake ID, it's possible to fly under a completely bogus name. Furthermore, it's possible to fly without a record of ever having traveled using that fake ID. Say you have a fake ID for the name Charlie. Purchase a plane ticket for the name David, and do the online checkin. Doctor the boarding pass so that it has the name Charlie and pass through security using the fake ID and the modified boarding pass. Destroy the modified boarding pass. Security checkpoints do not record the IDs used, so there will be no record of having passed through security using that pass. Travel with the unmodified boarding pass that has the name David on it. I'm not sure why you'd actually want to do this, but it's fun to think about...
November 25, 2005
¶ User-friendly failover mechanism via removable media
I've recently realized that USB memory keys make great switches.

Take the example of a small organization that has a primary file server with multiple backup servers. The backup servers periodically retrieve updates from the primary file server and have the exact same configuration as the primary with the exception of ip address and hostname. If the primary server fails (e.g. due to a hard disk malfunction), then one of the backup servers needs to be promoted to replace the primary. Let's restrict ourselves to situations where this failover doesn't need to be immediate, and a few minutes of downtime is acceptable.

To do this with a USB memory key, configure each server so that it periodically checks for the existence of a special file /media/usbdisk/PRIMARY-SERVER. If the file is detected, then the server promotes itself to act as the primary server and reconfigures its network settings appropriately. Otherwise, the server demotes itself to a backup server that retrieves updates from the primary. The important thing to note here is that for many Linux distributions (e.g. Debian, Ubuntu), /media/usbdisk is the mount point for USB memory devices - when a USB memory device is inserted into the computer, its contents immediately show up at /media/usbdisk. Now, all you need to do is purchase a cheapo memory key from the local computer store and create an empty file on it called PRIMARY-SERVER, and you have an instant switch that lets you choose which machine to promote to the primary server.

So why does this matter? Probably the best feature about a scheme like this is that the failover process can be completed in a matter of seconds by even the most technically incompetent person. It's simple and intuitive. If you're using your software that relies on the file server and you notice that the file server isn't responding, you just walk over to the server room and move the "switch" to another machine.

The reason I care is that I help run the computing infrastructure for a small organization. They have a handful of technically unsavvy employees and require a file and database server. I'm happy to setup and configure the servers for them at my leisure, but I can't be on-call if a server fails and they need it replaced immediately. Now, when a server does fail, they simply move the switch and disconnect the failed machine. Since computers are cheap now, they can get triple redundancy with a simple failover mechanism for less than $1,000. When a server needs to be replaced, they send it my way, and I set it up when I have time. Then I just send it back and they plug it in.

Since the failover is so simple, it would actually be good practice to periodically switch primary servers just to ensure that the backups are still working. One of the biggest problems faced in server failures is that the backups don't work when they're most needed, precisely because they're not regularly tested. In a system like this, I would rotate the primary server switch every week or so, just to make sure that all systems are functional.
December 4, 2005
¶ Building Fire Nunchaku
Materials:
2  1' long 1" diameter wooden dowels
1  Nunchaku swivel kit
1  roll of aluminum foil tape
2  bottle caps
2  strips of kevlar tape 2' long, 2" wide, 1/16" thick
4  penny nails
6  1 1/2" wood screws
kevlar tape can be purchased online from www.dube.com or other fire juggling supply store. dowel, foil tape, penny nails, wood screws can be purchased at a hardware store. nunchaku swivel kits can be purchased in Chinatown or at an online martial arts supply store. Bottle caps... go drink a few beers.

This is what the swivel kit looks like.


This is what the dowels should look like


Method:

Lathe the last 1" of each dowel to be just barely narrower than the interior diameter of the swivel kits. If no lathe is available, then you can try shaving the dowel by hand, or buy dowels that are already the correct diameter. I like the lathe because the swivel kit fits better this way.


Fit the swivel kit onto the lathed section and mark the hole.


Remove swivel kit. Drill a small hole in the dowel where marked, about half the diameter of the swivel kit hole.


Reattach swivel kit and line up the holes. Hammer the pin into the dowel.


Wrap the unlathed ends of the dowels in foil tape, so that it covers about half of the dowel's length. Be sure to cover the ends as well.


Place bottle cap over taped ends of dowels.


Hammer two penny nails into each bottle cap to hold them in place


Wrap the bottle cap end of each dowel with a strip of kevlar.


Fold in the end of the kevlar. This protects from fraying.


Anchor the kevlar with two wood screws. Be sure to direct them so that they don't hit the penny nalis.


Add a third wood screw on the opposite side. This isn't completely necessary, but I like to do it. Prevents the kevlar from shifting


Finished pair.


While we're at it, why not double the supplies and make two pairs?


And burn.
December 9, 2005
¶ spaceship engine
I walked into my office yesterday, and my officemate Blaise was beaming. The previous night, he conducted his first succesful test-firing of a spaceship engine he's been working on. He's tried to explain it to me a few times, but I think the rocket-science part of my brain never fully developed. Actually, one of the few things I did gather was that it's not a rocket engine, it's what he calls an electrospray engine that works by somehow charging particles and flinging them off in specific directions to achieve the desired thrust vector. That made me think of ion engines, but apparently it's not that either. Regardless, I congratulated him and immediately accused him of not being a true computer scientist. Computer scientists don't build spaceship engines, the foundations upon which my intelligence is built would crumble if anyone were to violate this simple tenet. My next thought was, "but... I want to build spaceship engines too... "
December 19, 2005
¶ writing a book
The last few months, I've been diverting some of my time into writing a technical book, and things have recently started to come together. Larry started contacting publishers last week, and today we met with Catherine from Addison-Wesley. It's quite a fun process, this whole book writing thing, and it's cool to learn about what goes on. She came over to CSAIL for lunch and we chatted about the book and what kind of people might buy it, how it's structured, our publishing options, and so on and so forth.

It's interesting to see how publishers balance their desire to give authors free reign in writing with their need to make money. At the end of the day, a publishing company is still a business, and they'll often make choices just for the sake of sales figures. For example, they'd prefer to publish a book as part of a series because it's easier to sell. A library, or a retail store might be like, "oh, we carry all the _other_ books in that series? Sure, we'll stock a few copies of this one then".

At the end of lunch, I mentioned that I had a friend at Brown who wrote a book for Syngress, and Catherine was like, "Luke! I loved working with him!" and I was like, "wtf!?" (unvocalized) and it turned out that a few years ago, Catherine was at Syngress and worked closely with Sonic on his book. note to sonic: Catherine says hi.
December 24, 2005
¶ Stabbing Johnny Damon
A few nights ago, we went to Magianno's for dinner. At a table near us, someone had brought a life-sized cardboard cutout of Johnny Damon to the restaurant, which was just sitting at their table. Turns out everyone is pissed off that Johny Damon is leaving the Red Sox to join the Yankees, and they were using the cutout as a sort of voodoo figure. Everyone was using it to curse Johnny Damon and his family, and I definitely saw someone random person stab it in the heart with a steak knife. Harsh love, that's for sure.
January 3, 2006
¶ Your Research Dollars at Work
Jen and I love our Settlers of Catan. Naturally, we were very sad when we found out that we had somehow lost one of the blue city pieces from our set. A few years ago, we might have just sighed and used a piece of paper as a placeholder for when we play. But I wanted a new piece, and wanted it shaped just right. Fortunately, all the wooden playing pieces are 2-1/2 dimensional surfaces, which is perfect for the laser cutter. A few days ago, Amandine and I had some free time, so we measured out the pieces, drew up a CAD file, and printed a replacement blue city. It was actually cut from clear acrylic plastic and then colored with a blue Sharpie, but retains its transparency. Original wooden blue pieces are on the left, and the newly cut city is on the right.


Then, since we were there and already had the CAD files, we were like, "well, why print one piece when we can print 30!?" So we printed a whole new set of pieces from clear acrylic. I call them the stealth pieces because when we played with them later that night, it was impossible to see where the clear pieces were, so it's like nobody ever noticed what the stealth player was doing.
January 11, 2006
¶ getting a new desk
I switched desks yesterday. I only moved about 20 feet, and my new desk is in the same room as the last, but it was a momentous occasion.

The room that I'm in is a large, cavernous open space that houses about 15 students. It's divided into two sections, separated by a wall jutting about two-thirds of the way into the room. One half is where the PhD students sit, and the other half is where the MEng (Masters) students sit. When I first moved into my group, all the desks on the PhD side were full, so I got a desk on the other side. Consequently, I was isolated from the other doctoral students in my group and had virtually no contact with them... I may as well have been on the other side of campus. It's not that they avoided me, it's that I was just far enough out of the paths they took in their daily routines that we never had any unplanned interaction. Hanging out with the MEng students was cool, but we have very little in common. Most of them did their undergrad at MIT and still have their buddies around, most are interviewing for jobs and have little interest in searching for thesis topics or attending the latest research talk on state estimation, a bunch of them are working together on the same project so they tend to huddle in a circle - they're great people, but it's clear that we lead different lives.

A couple days ago, I had a rare conversation with one of the other phds and was lamenting my situation, when he mentioned to me that Patricia, one of the students on their side, had just left. Two seconds later, I was jamming out an email to Seth pleading for the desk. Five hours later, it was mine and I was singing victory hymns all night long. The next day, I bade farewell to the MEng students and wheeled my lab equipment twenty feet northeast.

I've been there a day now, but that one day has made me feel more a part of the research group than the three months spent on the other side. Listening to the others debate the existence of closed form solutions to certain Gaussian integrals, getting into a conversation on using Matlab to represent tree data structures, chatting to a labmate about him starting a company to build engines, none of that ever really happened on the MEng side. Even having one of the other doctoral students come over and exclaim, "who are you!?" and me responding, "Hi, I'm Albert... we've met twice" was nice in the sense that I was suddenly in this student's daily routine and that made me feel more integrated into the group.

Plus, the new desk is huge and has a window =P
January 17, 2006
¶ native english speaker
It occurred to me, while reviewing a paper submission for an academic journal, that I'm quite lucky to be a native English speaker in a world where almost all major scientific publications have standardized on English. It saddens me that the authors of the submission, who are clearly not native English speakers, have to struggle so much with basic writing skills, because despite the interesting things they have to say in their paper, almost none of it is properly conveyed. What should be a fun and easy to read paper has become an unnnecessarily voluminous document whose flow is hampered and constantly interrupted by glaring grammatical and stylistic errors that jump out of the pages and divert my attention away from the actual content. Against my own will, I find myself irritated at these distractions and annoyed that such material could be so aggravating to read. I want to scream, "Go take some English classes!" but then I realize how awful it is of me to think that. Then I get annoyed that the Natural Language Processing people down on the third and fourth floors haven't gotten their automatic text translation act together yet ;)
January 31, 2006
¶ ladypack paraphenalia
DARPA dude came to visit last Friday. Seth wanted me to demo my stuff, but I had made advance plans to go on the GSC ski trip to Sunday River. Instead, I made a short video for Seth to show. That, combined with a recent webpage I set up, gives a pretty good synopsis of my current research.

http://people.csail.mit.edu/albert/ladypack/media/20060126-ladypack-darpa.avi (18 MB XViD encoded)

Some screenshots:


February 2, 2006
¶ Building Underwater Robots for Dummies, day 1
Winnie and I had this somewhat braindead idea to run a short two-day IAP class on building underwater robots. Braindead because we both have too much other stuff to do already. At any rate, neither of us chickened out in time so here we are, teaching 15 people how to build inexpensive robotic submersible vehicles =P





The vehicles are based off of this book called Build your own Underwater Robot and other Wet Projects, with a few of our own touches. Students are split off into teams of two. Each team is given a 10' section of PVC pipe, and they're free to chop it us as they please. We use 12V DC hobby motors from Electronic Goldmine, which are coupled to plastic boat propellors from Tower Hobbies. The motors can be run wet, so there's no need to worry about fancy sealing methods (they corrode and fail after a while, but are only $1.25 each so no big deal). Batteries and the control box are kept dry on shore, and power is run through a CAT5 ethernet cable to the vehicle.

Today we started everyone building. Tomorrow they'll hopefully finish up and start work on some more advanced projects, like building pressure sensor circuits, assembling motor controllers (for computerized motor control), and adding waterproofed video cameras.
February 4, 2006
¶ IAP robots days 2,3
It's been a fairly exhausting week, but totally worth it in the end. All the students loved the class, had great fun building their vehicles, and (presumably) learned a fair amount in the process. Most people took longer than we anticipated and didn't get to the more advanced material like pressure sensors or motor controllers, but everybody completed an operational vehicle, tether, and control box (tether is the long cable connecting the vehicle to the control box). We hung out in the Alumni Pool for a few hours today, driving the vehicles around and playing some fun games. A few students brought their children and siblings, who were also thoroughly entertained.






I also managed to get a video of one of the vehicles doing some tricks (QuickTime, sorry!).


The total cost came out to be aroud $30 per vehicle, including tether and control box. If you're interested in building one, or putting one together for your kid or younger sibling/cousin/friend, it's a huge amount of fun and the basic vehicle doesn't require that much skill to assemble. I don't have the energy to post full instructions, (read that book!), but here is a complete list of parts we used.

Vehicle
qty name where to get price
4 Plastic propellor www.towerhobbies.com - LXE472 Dumas Plastic Prop 1/8" $1.15 x 4 = $4.60
4 12V DC Motor www.goldmine-elec.com - G9331 Type 2 DC Robot Motor $1.25 x 4 = $5.00
1 Male DB9 connector www.digikey.com 209M-ND CONN DB9 MALE SOLDER CUP TIN (or RadioShack part# 276-1537) $0.63
1 10' length Schedule 40 1/2" ID PVC Home Depot $1.62
2 - 10 Schedule 40 1/2" PVC 90-deg elbow joint Home Depot $0.25 x 10 = $2.50
2 - 8 Schedule 40 1/2" PVC 45-deg elbow joint Home Depot $0.35 x 10 = $3.50
2 - 8 Schedule 40 1/2" PVC T joint Home Depot $0.30 x 10 = $3.00
8 8x32 machine screws, 2" long Home Depot $0.0622 x 8 = $0.50
8 8x32 machine screw nuts Home Depot $0.025 x 8 = $0.20
4 pipe clamp thing (I don't know what it's called.. it's a metal bracket in the PVC aisle that is just the right size to clamp around the DC motor) Home Depot $0.159 x 4 = $0.64
4 something to couple the propellor to the motor shaft, ideally a short cylinder with 1/8" outer diameter, and 1/16" inner diameter. Otherwise, just wedge something in between and hot glue it.


Tether
qty name where to get price
1 Female DB9 connector www.digikey.com - 209F-ND CONN DB9 FEMALE SOLDER CUP TIN (or RadioShack part #276-1538) $0.67
1 Male DB9 connector www.digikey.com 209M-ND CONN DB9 MALE SOLDER CUP TIN (or RadioShack part #276-1537) $0.63
~10 meters CAT5 Ethernet cable your office closet?
2 D-sub backshell 9 position www.digikey.com A23475-ND (might not be correct part #), (or Radio Shack part# 276-1513) $1.95 x 2 = $3.90

Control Box
qty name where to get price
4 DPDT on-off-on rocker switch digikey, forgot which part#, or RadioShack $1.20 x 4 = $4.80
1 lighted rocker switch www.goldmine-elec.com - G8184 C&K Lighted Rocker Switch $1.00
1 Female DB9 connector www.digikey.com - 209F-ND CONN DB9 FEMALE SOLDER CUP TIN (or RadioShack part #276-1538) $0.67
1 some kind of project box (tupperware or something)


Other parts
1 or 2 spools per 6 or 7 vehicles 22 AWG red hookup wire DigiKey or RadioShack
1 or 2 spools per 6 or 7 vehicles 22 AWG black hookup wire DigiKey or RadioShack
solder DigiKey or RadioShack
closed-cell styrofoam or something to adjust the buoyancy of the vehicle
zip ties, rubber bands, or bag ties to secure the styrofoam
hot glue, to make things stick.

Tools:
  • Screwdriver (phillips, or slotted) for the nuts & bolts
  • Solder Iron
  • PVC pipe cutter or hacksaw
  • DC power supply, or rechargable 12V battery (an old car battery is fine)
  • wire snips
  • wire strippers
  • pliers
  • Hot glue gun
February 14, 2006
¶ Meet Cooper
Jen got a dog last week. An AIBO ERS-7 to be specific. I'm still not quite sure what possessed her to do it, but there's a robot dog living in our apartment now. He shares a space on the floor next to our other robot - the Roomba ripoff. Anyway, meet Cooper:



It can sing, it can dance, play a bizarre version of Simon, find its charger when its batteries are low (sometimes), but best of all, it can blog. Cooper supports several different blogging APIs (Blogger, Typepad, Atom, Movable Type), and I ended up hosting a Movable Type blog for the dog. I'm totally serious, here. The dog blogs.

link to Cooper's blog
February 20, 2006
¶ wanted: mathematician friend
When I was in college, a lot of the girls I met wanted a gay friend. The logic was something like they wanted someone who could understand and empathize with all the things they were experiencing and feeling, who wasn't susceptible to many of their weaknesses, and would have absolutely no romantic attractions whatsoever. In essence, about as perfect a platonic friend as you can get. Of course, this is a vast overgeneralization and a stereotype worthy of condemnation, but that's the way it was. A few of them joked about hunting down gay men just to befriend them, but I'm not sure if they ever followed through.

The last few years, I've been thinking, "man, I sure could use a mathematician friend" You know, someone you can go skiing with and while you're on the lift be like, "so what's the deal with normed vector spaces anyway?" I always get lots of these little annoying mathematical questions that I don't know offhand how to resolve myself, don't know where to look, and assume that my hypothetical mathematician friend would hear it and be like, "oh! well the answer to that is XYZ!" When I first showed up in grad school, one of the first things Larry (jokingly) told me to do was to befriend a mathematician. For a while, I played ice hockey with a really great guy named Thomas who was doing his phd on combinatorics (IIRC). During the car rides to the ice rink, I managed to quiz him a few times on abstract algebra, but eventually he graduated and is teaching at Harvard now.

So uh... any mathematicians out there that like playing hockey or setting things on fire? =P
March 9, 2006
¶ rubik's cube madness, prelude
Jen found a toy factory or something in Taiwan that sells Rubik's cubes for cheap in quantities of 192. So we did the natural thing and ordered 5 cases. We're not quite sure what we're going to do with 960 cubes, but we don't have do decide for a while because we got the cheap shipping (by boat) and they won't arrive for at least a month or two. We could do something like the rubikcubism guy did, but I kinda want to build a machine that automates the image forming process (i.e. solves cubes one at a time and places them in the right spots so that eventually it forms a complete image). Either way, the possibilities are endless [grin]
March 14, 2006
¶ encounter with a UFO hunter
During the IAP class that Winnie and I ran on building robotic submarines, we happened to enter into discussion with a man (not in the class) who was looking for someone with a submarine. Basically, this man is strongly convinced that a UFO crashed into a nearby kettlepond in recent decades, and wants someone with a submarine to search the pond with him to find it and figure out what it is and from whence it came.

My gut reaction was to run far, far away. After all, UFOs are sort of this taboo subject living in the realm of pseudoscience and yeti hunters that I typically associate with crazed out folk just looking for a conspiracy. Due to the circumstances, I couldn't completely run away because we had a class to teach, so I ended up quietly slipping away at a moment when he directed his attention at Winnie, and left her to deal with him.

Later on, I got to thinking, what if he had just said "aircraft" instead of UFO? If the same man had come up to me and said, "There's a kettlepond nearby and I strongly suspect that an unidentified aircraft crashed into it many years ago, will you help me look for it?" I might've said, cool, we'll see what we can do. At the very least, I would have given the request much more respect. Almost the same words, but radically changing my opinion of the subject.

I'm not really sure what the point of this post is... just something that got on my mind.
March 18, 2006
¶ glassblown paperweights
I signed up for the glassblowing class. It has nothing to do with my research, but oh is it fun. The class is held in the basement of Building 4, in a cluttered, sooty room. At the back of the room there are three large furnaces, one for melting glass, and the other two for keeping glass hot while you're working with it. Most of us wear sunglasses to class because the furnaces are so hot and painfully bright. It's a completely different world in the glass lab... So much of MIT is involved with cutting edge technology - nanoparticles, genetic engineering, etc. - but here it's about practicing and honing techniques developed thousands of years ago with a few simple tools.

Paperweights I made last week:





April 11, 2006
¶ what is the brain's API?
Michael Black came and gave a distinguished lecture last week. He spoke about a group he's working with that's trying to build a neural motor prosthesis. Basically, they implant an electrode array into the part of your brain that controls motor function. Using all the filtering and estimation techniques that modern machine learning provides (kalman filters, bayesian inference, etc.), they try to interpret the signals emitted by the neurons in that part of the brain to let patients control stuff.

Today, John Wyatt came and gave a talk on building retinal implants to restore vision to the blind. The idea there is to take patients who suffer from retinitis pigmentosa or macular degeneration, and use an electrical device to replace their damaged rods and cones. The device is used to electrically stimulate the cells that the rods and cones would have otherwise stimulated. Isn't anywhere near close to letting blind people read and write, but they're making some exciting progress.

Seems like it's a fun time to be an electrical-neuroscientist / mad scientist / Dr. Patrick Cory.

I wonder how much crap they get from PETA and other animal rights activists. The neural motor prosthesis people go through hordes of monkeys and monkey skulls trying to figure out good techniques and methods. The retinal implants people like to use a certain kind of pig because it has an eyeball that's just about the same size as a human's. There aren't very many standard surgical procedures that involve cutting open someon's retina and inserting an electrical device, so they try out new surgical techniques on the pigs. Poor pigs, living their lives and rolling around in the mud one day and then getting little pieces of PCB shoved in their eyeballs the next. All in the name of science (and medicine), though.
April 18, 2006
¶ cannons, scientologists, and a marathon
Random stuff.

A few weeks ago, some MIT students drove to Caltech, stole a large Spanish-American War cannon, drove it back out to Cambridge, and set it up in the middle of MIT campus. More information at http://www.mitcannon.com/.





Early last week, I spotted some Scientologists protesting in front of MIT. I really don't know what to make of these people... Some things just never cease to amaze me.



Yesterday was the Boston Marathon. Kenya won again (of course). It was my first time actually going there to watch, and incredibly inspiring. Especially the jogglers. Stories don't get better than this. The current world record holder for marathon juggling (Zach Warren) - running a marathon while juggling at the same time - going head to head with the former world record holder (Michal Kapral) in a winner-takes-all showdown. We saw them pass the 25-mile mark and it was simply amazing.

May 14, 2006
¶ rain rain go away
Row, row, row your boat, gently down the stream...

The neighbor's basement flooded today and he spent the entire day getting it pumped out. We're luckier because our foundation is a few inches higher, but I've been checking our basement every other hour in anticipation of high water. My dad's office basement suffered a minor flood yesterday also while I was there helping out with the computers, but we managed to stop that before it did much damage.

Ahhh, the incessant pitter-patter is driving me crazy!!
May 16, 2006
¶ Why I hate Hewlett Packard
I had an absolutely awful experience with Hewlett Packard customer service this past week, and after being given the telephone run around for hours upon hours, repeatedly denied, explictly lied to, and hung up on twice, I have resolved never to purchase a Hewlett Packard product again, and will strongly recommend the same to everyone I care about until their technical and customer support improves dramatically.

A summary of my complaints:
  1. HP told me my laptop would be repaired under warranty and returned within 3-5 business days. 6 business days later I had to call and find out that I would be charged $300 for repair. HP did not make any attempt to contact me and inform me of these charges, or of the delay.
  2. Five separate service representatives failed to explain to my satisfaction the type and extent of the damage that was not under warranty. Two of them gave explicitly contradictory descriptions of the damage - Mike said the damage was internal, and Sam said the damage was external.
  3. I was blatantly lied to a number of times. Mike said a service technician would call me in within two hours. Nobody ever called. Sam said he did not have the authority to authorize a repair on the laptop, and 10 minutes later he actually did so.
  4. My questions were never directly answered. For example:
    • I asked Mike the name of his supervisor. He responded by asking what he could do for me. I asked him to answer my question, and he did not refuse, but instead asked unrelated questions. This repeated several times.
    • I asked many times to be connected to a supervisor, or a case manager, and was never told "yes" or "no". Instead, they responded with "please tell me what is wrong with the laptop" or other unrelated questions.
  5. I was hung up on twice. I have never before experienced a dropped phone line in my office building, and don't expect to again unless I am on the phone with HP customer support.
  6. The original reason put forward to explain why my laptop was not repaired and returned to me turned out to something that did not affect the working condition or structural integrity of my laptop, and had nothing to do with the reason I sent it in for repair.


My experience
Last September, my lab purchased an HP Pavilion dv1000 laptop for me to use in my research. Nine days ago on a Sunday, the laptop suddenly and quietly turned off when I was using it, and would not power on again despite my most valiant efforts and pleadings. I called HP tech support, and after an hour of going through diagnostic procedures, was told that my laptop would need to be sent in for repair. Additionally, I was told that this problem was covered under my warranty and that my laptop would be returned to me in 3-5 business days. Fine, I can work on something else for a few days.

Tuesday morning rolls around and I receive a Fedex box for my laptop so I bring it to the nearest Fedex/Kinko's and bid my laptop farewell for a few days. Later that day I receive an automated email tracking my laptop and find out that is received the next morning. Go Fedex.

Thursday and Friday roll around and I don't hear anything, and wonder what's taking so long, but don't worry about it too much.

On Monday, I still haven't received my laptop and so I call HP customer support to determine the status of my laptop. It turns out that the laptop is not repaired and they've determined that there is "damage to the upper assembly" of the laptop that they do not consider to be covered under warranty, and that I will have to pay $300 for repair. Of course, I am astounded and upset. I ask again for more specific details on the type and extent of the damage. What does "damage to the upper assembly" mean? Is it internal damage or external damage? What is the upper assembly? Is it a scratch? Did a cable break? Did someone (not me) smash it with a hammer?

I explain to the service rep that when I sent the laptop in for repair, that the exterior of the laptop was in pristine condition, without any scratches or blemishes, and ask her to clarify the damage. She is unable to do so, and asks me to call again the next day. Confused, I agree and hang up. A few minutes later, I resolve to get the issue fixed and call again. This time I'm connected to someone named Mike. I ask Mike to transfer me to someone who can tell me what's wrong, but he doesn't. I ask Mike to transfer me to a supervisor and he doesn't. I repeatedly tell Mike that the laptop was never dropped, shaken, or physically mistreated since it was purchased, and that this purported damage could not have been caused by me. Whatever, it's not like he's listening to me anyway. Mike puts me on hold for a while and eventually tells me that he's arranged for a service technician to call me within two hours and explain the damages to me. Suspicious, but somewhat appeased, I agree and let him go. Of course, nobody ever calls me. Bold-faced lies.

Tuesday morning (today), I call HP tech support again and ask why I wasn't called. Initially, the service rep (another Mike, but I don't know if it's the same one) tells me that there is no record that anyone is supposed to call me. I insist that there is and after a few minutes of "checking", he concedes that someone was supposed to call me. Whatever. Once again I try to apprehend the extent of this "damage to the upper assembly" and after another 15 minutes, manage to get Mike to tell me explicitly that it is internal damage, but he's unable to tell me what kind of internal damage. I ask to speak to a supervisor. I continue to protest that the laptop is under warranty and that this $300 charge is bogus unless they can explain the damage to me and why it's not covered. He keeps saying something about "accidental damage is not covered under your warranty" but will not tell me what the damage is. I ask repeatedly to be transferred to a supervisor and after about the 10th try, he agrees. After being put on hold for an additional 30 minutes without anyone picking up, I have to hang up and leave for a meeting.

After the meeting, I call tech support again and Jason Victor answers the phone. I cut right to the chase and ask to be transferred to a supervisor, because it is evident to me that the people I've been speaking to aren't able to answer my questions. After 15 minutes of asking to be transferred to a supervisor, he agrees to do so and puts me on hold. 34 minutes later, the line disconnects and I am back to square one. Funny, I've never experienced a dropped call from my office before.

Undeterred, and extraordinarily frustrated, I call again and Sam answers the phone. First, I make another brief attempt at understanding exactly what this damage is. Sam puts me on hold for 5 minutes and then tells me that there is damage to the exterior of the upper assembly. Hold on a second, Mike told me that the damage (whatever it is) was to the interior. So if it's exterior damage, is it a scratch or what? Sam has no idea and is unable to find out. He says he'll have a technician call me tomorrow. I call bullshit and decline. I ask if Sam has the authority to authorize the repair without charging me, and he says no, he does not. I ask if his supervisor has this authority, and he says no, his supervisor does not have the authority. I ask who does, and he says, "the case manager". I ask to be transferred to the case manager and he refuses.

Next, I try a different approach and ask Sam to explain to me why it is that I was never contacted about this repair, and why I had to wait until Monday to call and find out that it wouldn't be repaired unless I paid $300. Sam has no explanation, and puts me on hold. Five minutes later, he tells me that he's going to authorize a repair to the power supply of the laptop, but that he won't authorize the damage to the upper assembly. I ask him to clarify and eventually understand from him that the damage to the upper assembly does not affect the structural integrity or working condition of the laptop, and that the problem with the power supply is what's preventing my laptop from working, and is covered under warranty. All of a sudden, I am extremely confused. I was given the impression from the very beginning that this damage, which nobody has explained to me yet after 5 hours on the phone, is the root cause of the laptop's problems. Now, I am told that it is merely cosmetic exterior damage, and that my power supply will be repaired under warranty. I make him repeat and confirm to me several times that the laptop will be returned to me in proper working order. Finally, I ask him to explain all of the discrepancies I've encountered, and he is unable to do so. I ask to be transferred to a case manager, and he puts me on hold. 20 minutes later, the line disconnects again. Surprise surprise.

In short, this was an extremely unpleasant experience that smacks to me of deceit, and an intent to defraud a customer out of a service (the repair) previously agreed upon in a written contract (the warranty). I have gained absolutely nothing from this exchange, and wasted hours of my time speaking to customer support representatives who are trained to do nothing but deceive, lie to, and otherwise mislead customers. It will be a cold day in hell before I, or anyone I have influence on, purchases another HP product again.
May 25, 2006
¶ Ladybug2 + GPS + roof rack
People in my research area have been toying with the idea of participating in the next DARPA Grand Challenge. It's all very speculative right now, but a couple of us got excited and started playing with some ideas. One idea was to stick the Ladybug2 on top of a passenger car and see how far we could get with that. So a couple days ago, Tom, Matt, and I cut out a mounting board for the ladybug2, bungee-corded it to Tom's roof rack, and drove around Cambridge taking some data. We loosely synchronized it with a GPS also, and the result is pretty cool.

Bishop Allen -> Norfolk -> Mass Ave (25 MB XViD)

North on Mass ave crossing the Harvard bridge (33 MB XViD)

The good thing about the Ladybug2 is that it's almost perfectly calibrated so we don't need to worry about the relative positions and orientations of the individual cameras. One bad thing that we noticed is that it has a low dynamic range, visible as the sky being totally washed out while the sidewalks are dark.
May 31, 2006
¶ behind enemy lines
I've infiltrated the CS department at the University of Washington, and am collecting information on their daily activities in preparation for an eventual armed assault led by MIT undergraduate minions.

Umm.. by which I mean I asked Seth if he knew a good way for me to find a legitimate excuse to hang out in Seattle for the summer, and he contacted Steve Seitz, who was kind enough to give me some desk space for a few months. I'll still be working on my MIT projects, but will be doing so while in Seattle. So I'm technically a visiting graduate student here for a few weeks each month. I tried to get a UW ID card, but they wouldn't give me one cause I'm not _really_ a student =/ The conversation went sort of like, "Can I have an ID card?" "What's your student number?" "I don't have one. I'm a visiting graduate student." "No. Go away." "Awwww...."

It's quite nice here. Having only two bases for comparison, I'd put it at halfway between Brown and MIT. Brown CS is quite small, with fewer than 40 phd students, and MIT CS is ridonkulously huge, with 400+ phd students. UW is sort of in the middle, with 150 students, so it's a relatively close-knit enivoronment, but still has a bit of wiggle-room. Well, at least that's my impression after being for two days.

So far I've watched Aseem Agarwala give a very cool thesis defense, and fell asleep at a talk given by a Columbia prof. I'm definitely looking forward to meeting the UW grad students, if not just to see how things are done here.
June 21, 2006
¶ globetrotting
Wow, things have been ridiculously busy lately.

My sister graduated from med school, and there is a new Dr. Huang in the family. w00t!

Seattle and UW have been great fun. Met a lot of very cool people, mostly from the Graphics and Imaging Lab.

Took a few days off in Puerto Rico with my sister before she starts her residency. Some random photos.















Last Friday I flew directly from San Juan in to NYC to attend CVPR 2006. Been crashing near the WTC with Andy. It's quite an experience, and somewhat overwhelming. More on that tomorrow (or later?)
July 19, 2006
¶ DGC eye candy
Grand Challenge eye candy! (DivX videos).

DARPA is sponsoring 10 teams for $1 million to compete in the Grand Challenge. Teams who want this money need to submit a proposal. Here's the video we sent in with our proposal:
(77 MB DivX)

A few weeks ago, Matt, Ed, David, and I borrowed Tom's car and strapped a GPS, SICK laser scanner, AVT Marlin camera, and an XSens IMU to it and drove around taking some data. Ed is the resident laser expert, and stitched the laser scans together using the GPS and IMU measurements. He synced this to the video, and we got this cool visualization as a result:
(57 MB DivX)
August 14, 2006
¶ Book deal
A while ago, I mentioned that I've been working on a book. Turns out that things didn't work out with Addison-Wesley and Prentice Hall, but a couple days ago, we got offered a contract from another publisher! The working title is "Bluetooth Essentials for Programmers". They're sending us the paperwork this week, so more details later, but I'm super excited. w00t!!
September 4, 2006
¶ Penny Arcade Expo 2006
Last weekend, we went to the Penny Arcade Expo, and it was a total blast. The premise is that it's a convention for gamers by gamers. According to the website, there were around 20,000 attendees this year, with around 8,000 or so present at any given point.

It's a pretty new event - only started a couple years ago, but the response from the gaming community has been huge, and this year's venue was pretty much bursting at the seams. When we showed up last Friday, there was a huge crowd of at least a thousand people milling around in the atrium waiting for one of the main panels to begin. You'd think that having to wait a couple hours with a thousand other people would get boring, but trust gamers to keep themselves entertained with a single large inflatable rubber ball. The atrium spanned four floors, with people were packed all over the lower floor and the balconies of the upper floors, and this spontaneous game developed where the people on the lower floors would try to bounce the ball up to the higher floors, and the higher the ball went, the louder everyone cheered. Occasionally, the entire crowd would alternate between chants of, "Up! Up! Up!" and "All hail ball! All hail ball!"

Most of the events at the expo were game related, with various tournaments (Quake 2, Smash Bros., Halo 2, etc.). There was a line for almost everything, but nobody really seemed to care because at least a third of the attendees had brought a Nintendo DS and would just start up a game of Mario Kart or something while waiting in line. The DS has this nifty 802.11 networking feature that allows ad-hoc network games to start up, as well as for people to temporarily download entire games from others. We spent a good deal of Saturday afternoon playing New Super Mario Bros. with this 12-year old kid who randomly joined one of our games.

Some highlights of the Saturday night concert:
  • Two guys (Tycho and ??) opening the concert by playing a round of Guitar Hero onstage. Halfway through the song, the PS2 running their game crashed, and everyone was like, "wtf!?"
  • During MC Frontalot's gig, he shouts out to "Get I get a 'Nerd Ho!?'" Crowd roars, "NERD HOOOOO!!!" Yes, I joined in.
  • Most of us have been to or heard of concerts where people hold up lighters during some moving parts of a concert. Recent years have seen people doing this with cell phones. PAX takes it to the next level, with half the crowd holding up and waving the bright screens of the Nintendo DS, interspersed with plastic light sabers.


October 15, 2006
¶ Maiden Voyage of the Nirvana II
Alex has this R/C sailboat he got a couple months ago, and we went with him to try it out for the first time yesterday. It's pretty neat.. two servomotors, one controlling the mainsail and jib, and the other controlling the rudder. The servos were pretty weak, and it was quite windy, so we were worried that the boat might not be able to turn upwind in some cases.



Initially, we started out at the little public park across the street from Microcenter. The boat had this cute little stand you could use while assembling.



Turned out that the river was too shallow over there, and the keel would just sink into the mud. Eventually, we convinced Alex to go to the sailing pavilion, where the water is deeper (but there is more real boat traffic). And it worked, the boat sailed!



But not for very long. After about 20 minutes, we lost control of the rudder, and the Nirvana II made a mad dash for Boston (it started on the Cambridge side of the river).



After helplessly twiddling with the controls for a bit, we finally asked one of the sailing pavilion folks to help mount a rescue operation.



And thus ended the maiden voyage of the Nirvana II.
October 27, 2006
¶ Linux Bluetooth Developer Meeting 2006
So... I'm in Finland now.

A couple weeks ago, Marcel sent me an email asking if I would be available to participate in a Linux Bluetooth developer meeting. Nokia offered to cover my expenses, so I cleared it with Seth and was like, "Helsinki, here I come!" The purpose of the meeting is to essentially decide on the future of the Linux Bluetooth subsystem. The primary topic has been finalizing the D-Bus API for hcid, hidd, btaudiod (doesn't exist yet), and Bluetooth networking. (aside: D-Bus is absolutely amazing, and GNU/Linux has been in desperate need of something like it for years. If you do any sort of desktop Linux development at all, you have to check it out)

I haven't participated in anything like this before, and it's absolutely fascinating. I'm not really a core BlueZ developer, but I have written a lot of documentation for the project. Representing at the meeting are people from Red Hat, SuSE, Tom Tom, PalmSource, and Nokia. Nokia is actually hosting the entire event at their Nokia Research Center headquarters, and has shelled out a fair bit of cash flying out a bunch of us, putting us up at hotels, lending us their conference rooms, and feeding us breakfast and lunch (please stop saying that Nokia is trying to kill Bluetooth!!)

Most of Wednesday was spent working out the core D-Bus API for hcid. I think the Tom-Tom guy was a little bummed because they don't like D-Bus. Tom-Tom devices have very strict memory and processing limitations (due to cost), and they don't want to have to link against D-Bus. Everyone else was like, "D-Bus r0x0rz!!!" Wednesday night, Nokia rented out a conference room/sauna in downtown Helsinki and sponsored a little social event. Apparently, all respectable conference rooms in Helsinki come with a sauna. So you have dinner, conduct your business, and then jump in the sauna. Picture 15 guys who just met hanging out butt-naked in a sauna, chatting about Bluetooth. yeah...

Thursday morning we worked on A2DP and unifying Bluetooth audio services in Linux. It's a total mess, and I don't envy the developers working on it. In the afternoon, we moved on to Bluetooth networking services (e.g. PAN, DUN, LAN). I was still pretty jet-lagged, so ended up just crashing after we split up last night. Today was less structured, and we talked a bit about HID. I also spent a few minutes pitching the book I'm writing with Larry (almost done!!!).

More on this later (and pictures)!
October 28, 2006
¶ airport security redux
About a year ago, I wrote about how you could bypass airport security by simply photoshopping a standard boarding pass. Turns out some guy took this one step further by creating a web tool to automatically generate valid-looking fake boarding passes. Ooh, and stirred up a whole boatload of trouble too =P The movie reviews The movie reviews Movie reviews thriller Divx movies online Divx movies
October 31, 2006
¶ BlueZ Meeting 2006 photos
Finland has this obsession with caf�s. You practically can't walk half a block in Helsinki without running into a caf�. And they all have these fabulous coffees and snacks.



This was possibly one of the oddest moments I've ever had as a software developer. Writing Bluetooth code, fixing bugs, and having a beer, while wrapped in a towel waiting for the next sauna run. It's quite fun, though, and I highly recommend it.



The actual meeting, at Nokia Research Center headquarters.



Some random statue in Helsinki at dawn. Apparently, it's a pretty famous statue.



mp3 download download mp3 Full movies onlineMovies DivxThriller cinemaAll genresAll genres
December 13, 2006
¶ updates
Well, that month went by pretty quickly.

Life lately has largely been dominated by the DARPA Urban Challenge. The MIT Team is very large, and geographically dispersed. So, to put it mildly, there has been some miscommunication and political distress. I suppose that's what happens with a high-profile project that a lot of people want to get their hands on.

I've been having a difficult time finding a balance between working on my phd thesis and working on the Urban Challenge. So far, I've completely neglected my research. Doesn't really help me graduate, but at least I'm having fun =)Classical composers blogClassical composersThriller cinemaReviewsMovies
December 29, 2006
¶ The evolution of PyBluez - Wii, vibrators
I found this immensely amusing. Some folks used PyBluez to interface a Nintendo Wiimote with a GNU/Linux system (forthewiin.org). Then, some other folks took it one step further and hooked up a Wiimote to control a Sony PS3 (gamebrink.com). Next thing I hear, pybluez is being used to turn the Wiimote into a vibrator (fleshbot.com). It's the little things like this that really make my day =PAlbum review Classical reviewsMovie reviews onlineMovies reviesReviews
January 22, 2007
¶ Coming (eventually) to a bookstore near you
omgomgomg, We're on amazon now! w00t!

Albert Huang and Larry Rudolph. Bluetooth Essentials for Programmers. Cambridge, UK: Cambridge University Press, 2007.

Oh right, I guess I never really followed up with details on my post last fall. Umm, so basically Cambridge University press offered to publish our book. It's not scheduled for actual publication until later this year, and I don't think the date has been finalized, but hopefully we'll see it in stores by April or May. We sent them a completed manuscript a few months ago, and we're currently waiting to hear from the copy editors. I think the idea is that the copy editors will find most or all of the typographical, grammatical, stylistic, and other errors not directly related to content. They'll send it back to us, and we'll be expected to correct the errors and then send it back to them for one final pass before it gets sent to layout and typesetting.

At least, I think that's how it's going to work. Haven't actually gone through this book-publishing thing before, so this is all new to me. Regardless, I'm very much geeked out by seeing it listed on Amazon =PDvd movies reviewGreat reviewImportant reviewJ reviewJournal review
January 30, 2007
¶ We're (sort of) on TV
About a month and a half ago, I met with a producer from the Discovery Channel who was working on a show they were calling "2057", which was supposed to be some Discovery Channel special about what technology would be like 50 years from now. It wasn't an actual interview - no cameras or anything, I just told her about the DARPA Grand Challenge and how things are different this year, and gave her a bunch of animations that we'd made during our work in the past several months.

The show aired last night, and omgfwtfbbq was it absolutely awful! They spent about 5 minutes talking about the previous DARPA grand challenge, and in those 5 minutes showed maybe 15-30 seconds of the clips that Ed made last summer (around minute 17, some renderings of a Ford Escape driving through the city and building a terrain map using a SICK laser scanner). So that was okay. But half the show was this cockeyed pseudo-drama with all these lame futuristic props and scenarios of the future that were just so contrived that I couldn't keep a straight face for more than five seconds while watching. Anyway, it was kinda neat to see some of the stuff we made end up on the Discovery Channel.Real review centerReal review boardReview zoneYour review boardDvd fun club
January 31, 2007
¶ Integration Bee
On tuesday night hockey, we've been getting some locals showing up lately. They're nice guys, but they're not really into the whole Harvard/MIT super-brainiac thing. For quite some time, they would always trash talk the rest of us in these absolutely ridiculous ways. Some classics: "You can do calculus in your head, but you can't pass a puck!" "You know PI to ten thousand digits, but you keep tripping over your skates!". Nice guys, but I'm never really sure how to react to that.

In other news, we went and watched the annual MIT Integration Bee today. Think spelling bee, but instead of getting up and spelling a word, you get up and solve analytic integrals. There were 12 finalists today, facing off in a tournament fashion. Contestants would compete in pairs. An integral would be shown to both contestants, at which point they would have 4 minutes to solve the integral. Contestants were allowed two guesses per integral, and the first to solve the integral correctly gained a point. The first rounds were sudden-death, and later rounds were best two out of three. The winner of the entire tournament is then crowned Grand Integrator



Here's a toy integral they showed just to explain to rules to the audience:



It was cute. The idea is that ∫ (1/ cabin) d cabin == log(cabin) + C. Now, a log cabin + C is a houseboat (C -- sea), but they said omitting the constant is fine, so log cabin would have been acceptable.

Anyway, it was pretty exciting. This one in particular was pretty cool:



The guy on the left solved it in 5 seconds. 5 seconds! And I think it was 5 seconds only because that's how long it took him to write down the solution.

The audience commentary was pretty funny too. Occasionally you'd hear someone get impatient and start shouting "Integrate! Integrate!" Actually, that was usually me and Matt shouting. A guy sitting behind us was also adding his own real-time commentary. "That's totally wrong. Where'd he get the 1/5 from? And the pi? Where'd that come from?"
July 11, 2007
¶ resurfacing
Well, now I know what happens when life starts getting really busy. I stop writing here (surprise, surprise). Not sure that I really care to recap all the exciting events of the last six months, and not sure that most people would really care to read through it all, but here's the executive summary.

Life has essentially been dominated by my participation in the DARPA urban challenge. I've learned an incredible amount about working as part of a large team on a large project with high stakes. In all the other projects I've been on in the past, nobody really cared whether or not I succeeded. Okay, maybe one or two (me and my advisor) but that's about it. This one is completely different, partly because we have so many people watching. It's been an absolute whirlwind, with a short break just after we had our site visit (a qualifier of sorts). In the weeks leading up to June 20, we all hunkered down and gave it all we had, trying to get our car in shape for the site visit. As soon as that was over, I took off for a couple weeks and spent some time in singapore with stacy, and then a week in seattle to decompress. Now it's back to the grindstone, with just about 4 months left before the final race.

It's been pretty tough for me to find a balance in the last year. I haven't spent nearly as much time with my friends or family or stacy as I wanted to, haven't finished half the projects I've started, haven't made much progress on my phd, and the list goes on. Instead, everything has sort of been eclipsed by working on the urban challenge. On the other hand, I've gotten a chance to build a robot car, been interviewed by Popular Science and the Discovery Channel, and have worked on what I really believe is the future of automotive travel. It's an incredible experience, but I'm acutely aware of the things I've been missing out on. At this point, I've more or less dedicated all of my energies to seeing it through, and decided that I'll try to pick up my life where I left it come December. I am hoping, though, that I'll be better about taking some time every now and then to write here, if not only because it gives me something relaxing to do.

July 29, 2007
¶ Street performing
For reasons still somewhat unknown to me, I was invited to participate in a street performance today at the Farmers' Market in Union Square, Somerville. It was quite possibly the oddest thing I've done in a few months, and it was an absolute blast. There were four of us - myself on double staff, Amanda on poi, Alicia on hoop, and Marty the 60 year old clown on clown duty. I didn't really know what to make of Marty. On the one hand, I'm thinking that this is the most random assortment of street performers I've ever seen, and on the other hand I'm thinking holy crap this guy is way more than twice my age and still has the energy and spirit to actually put himself out here for a street performance.

At first, it was only myself, Amanda, and Alicia. We were completely unorganized and had barely been able to carve out some performing space on Union square, and were alternately spinning, hooping, and trying to engage the people that came by. The kids were fantastic. They'd wander over, attracted by the bright colors and flashy movements, and then ask questions like what is that and how do you do it and can you teach me. Marty showed up after a bit and then started organizing us, gathered a much larger crowd, and turned us into a motley assortment of impromptu performers.

I've never actually been a street performer before, and it's definitely not something I'm good at. Being on the performing side casts it in a whole different light for me; you never know what kind of audience you're going to get. The people come and go so quickly that if you're not able to capture someone's attention in the few seconds it takes for them to pass by, that's it, they're gone. Our audience would occasionally swell to 30-40 people, and as soon as we let up for a few seconds or a minute, it would quickly disintegrate to just a few people. The moments when no one is watching are intimidating, as you can't help but feel that people are just walking by and thinking "oh that's dumb". Overall, though, it was a load of fun and I'm glad I agreed to do it.

August 6, 2007
¶ On geese and turtles
We do a lot of our testing at South Weymouth Naval Air Station, a decommissioned naval air base that's been abandoned for 10 years. The people who manage the area have been very generous about letting us use the space, although it does come with some restrictions. After it closed, the air station went through a big environmental cleanup, and now there are all sorts of environmental rules and regulations that we have to follow. For example, we're not allowed to bring open cans of fuel or gas on the property, or to refill the car on site. We're not allowed to paint the tarmac (e.g. for lane markings) or to use chalk. That actually vexed us for quite a while, until we realized that we could use flour. So every time we want to mark out our test course, we buy a few hundred pounds of flour and then lay it down using one of those field marking machines that are normally used to mark soccer fields and such.

Turns out that (surprise, surprise!) flour is very edible, and birds find it quite tasty. It took the geese less than a week to discover the huge dinner plate waiting for them at Weymouth, and now every evening at around 6pm, they line up along our lane markings and start pecking away.



About a month ago, we also got another surprise visitor. The site manager had mentioned a long time ago that a family of snapping turtles lives near the airstrip, but we didn't give it much thought until one day one of the turtles decided to come check us out.



For a while, we were pretty worried that we'd forget about the turtle and that the car would accidentally run it over. The obstacle detector had a fairly generous threshold, and anything shorter than a foot at that point was generally considered to be a part of the terrain (the running joke was that we have a baby-kitten killing machine). In the end, the turtle wandered off the course on its own volition after strolling around for an hour or so.

August 27, 2007
¶ Venting
Every now and then, I get a wake-up call reminding me that my world is not often a happy place where everybody gets along. Yesterday, a good friend of mine told me that she was physically assaulted several weeks ago by someone we both know. The reasons for the assault aren't clear to me, and to the best that we can understand, he just beat her up for fun. In the weeks prior to this happening, he had already been physically and verbally harassing her, to the point where it was making her very uncomfortable. She confronted him about this and asked him to stop, and he apologized and said it wouldn't happen again. The next week, he beat her up pretty badly. He's fairly bulky, probably around 180 lbs. I'd be surprised if she's more than 100 lbs.

For a long time, my friend didn't do anything about it or tell anyone, largely out of fear. Eventually, she contacted the police, filed a report, and triggered an investigation. I won't get into the details, but the end result is that he's getting off with a lighter punishment than he should get, and she has physically recovered.

I'm not quite sure why I decided to post this. It's not that this sort of thing surprises me. It's not like I don't read the paper or watch the news. I guess it's just that I get angry, sad, and depressed each time it happens, especially when it involves someone close to me...
September 3, 2007
¶ Consulting for Ford
A few of us made a trip out to Ford headquarters in Detroit this past weekend. I'm not really sure how much I'm supposed to not say, so for now I'll just say that the Ford grand challenge team brought a bunch of us out there as "consultants" ;) It was fun to see another team up close and to work with them.



Ford is using an F-250 pickup truck for their race vehicle. Lots of room inside, and they have all of the computers housed in the bed of the truck.



Like us, they're using a Velodyne high density laser scanner. They're using Riegl laser scanners instead of SICK, which we use, for pushbroom sensors. They're also using Point Grey Firefly MV cameras.



We did a bunch of tests with them in one of their parking lots. The parking lot itself had a nice cozy feel, as it was surrounded on three sides by a sunflower farm.

September 5, 2007
¶ LiquidPiston in the news


The Hartford Courant, a small newspaper in Connecticut, is running an article about my labmate Alec and his dad. They've been working on designing an efficient internal combustion engine that theoretically is a few times more efficient than today's best. It's been fun to hear him talk about starting a company around their idea (www.liquidpiston.com), applying for patents, raising venture capital, hiring people, and everything else that comes with starting a business based on a crazy idea. Who knows, maybe ten years from now their engine design will be the design of choice in cars of the future? Photo taken from the Hartford Courant website.
September 16, 2007
¶ Bluetooth Essentials For Programmers
Cambridge sent us some advance copies, so I think I can now officially say: It's finally done, and out the door! The book is not officially being released for another couple weeks, but some websites are taking pre-orders. Now I can finally start competing with Luke for amazon.com sales rankings ;) Today's ratings: Luke - 218,129 Me - 294,422 Harry Potter - 7

Offical book website: www.btessentials.com

October 20, 2007
¶ Urban Challenge testing at El Toro
Today marks the end of the second week that I've spent out in California. There are four more days of testing before we pack up and ship out one last time. It's an odd feeling, knowing that so much of this is coming to an end soon.

We shipped our LR3 on October 3rd via a company that specializes in transporting cars. Ed and I left the following day and spent a few days in Detroit, helping out the Ford motor company's team (long story). After a few intense days in Detroit whipping them into shape, we arrived here in El Toro and began preparing for the arrival of our car and the rest of our team. In the meantime, we still had a huge amount of code to write, and converted our hotel rooms into remote offices -- everything from buying desk lamps at Staples to setting up the desktop workstations we shipped from Cambridge. It's a bit of a shame that in the two weeks we've been here, we still haven't had time to do much sightseeing or check out the area. We've been so focused on keeping our heads down, writing code, fixing bugs, and testing, that we really haven't explored Irvine and LA at all.

Our testing here happens at a decommissioned Marine base in El Toro that we've leased access to. It's similar to the decommissioned Naval air station that we tested at in Weymouth, but much larger and actually has a road network that we can use for urban driving. The marine base itself is quite something. The buildings were all abandoned years ago, the roads are overgrown with trees and bushes, and a clan of groundhogs (or some other small burrowing mammal) has taken root. Every now and then, when things quiet down, we see one of them standing up in the middle of the field, tentatively testing the air before shooting back down the instant something else moves. Through force of habit, we brought a few hundred pounds of flour with us and have been putting down lane markings with our field marking machine. Only now, instead of geese lining up to feast on the buffet of flour, we have groundhogs and crows.

In some vague way, it's like driving our car through the aftermath of a war zone. Just yesterday, a spent 9mm gun casing punctured one of our tires and halted our testing for the day. I suppose it's appropriate in some way, given that DARPA clearly intends on using this sort of technology for military purposes. I walked through some of abandoned barracks today (we're technically not allowed to, but there isn't really anyone around to stop us) and it's not like anything I normally ever see. Broken furniture strewn about, empty swimming pools and officers' clubs, stray cans of pepsi that are 10 years old, ripped up carpeting, it's a little creepy. And less than 500 yards away is an onramp to I-5, one of the major highways on the west coast, spanning the entire nation from north to south.

Movies on DIVX Ipod movies Full movies online PDA moviesThriller movies Caltech has also been testing in the Marine base, and we run into them every now and then. I'm hoping that as we approach a stable system, I'll have more time to go and meet the Caltech students, take a ride in their car, and see how they're doing. The Ford team showed up this week, and has been testing almost side by side with us. Cornell is supposedly showing up tomorrow, so it'll be a big robot car pre-party.

I still have no idea what our prospects of winning are. Some days it feels great, other days I do wonder if we'll be a complete embarrassment to MIT. Overall, I feel pretty good, but since we've never done this sort of thing before, it's hard to know what to expect. At any rate, with each passing day, there's less and less that we're able to change, and pretty soon we'll just have to step back and see what sort of life we've breathed into our car.

October 21, 2007
¶ Windy Day
Testing today was cut short due to strong winds. We showed up to the marine base at sunrise to be greeted by sandy gusts of wind and toppled trees. Every time we opened a window or a door, a fine layer of sand would waft in and cover our seats, monitors, keyboards, and everything else. Testing in the desert proper must really suck. By 9 am, the Walmart tent we often eat lunch under was all bent out of shape, and soon after that the base commander closed the whole place down because it was getting too dangerous. It's a bummer for us, but I feel bad for the Caltech folks who drove an hour out here only to be kicked out before they could get much testing done. Cornell's probably itching to get some testing done too, but I don't know what their options are. Luckily, we were able to do a few autonomous runs in the early morning and got some data that we can work on for a while.replica watch Movie reviews thriller Movie reviews comedy Movie reviews comedy Movie reviews action Movie reviews action
¶ Irvine Wildfires
In the end, we were able to get some testing done today. Ford has a big research center in Irvine, and there's a large, unused parking lot that they let us use. It's not as good as an actual urban road network, but it's better than nothing and we were able to do some productive traffic behavior and e-stop tests.

We'd been hearing reports of wildfires spreading throughout the LA area throughout the day, but didn't actually realize how close they were. Then one minute we looked up and realized -- holy cow they're practically right next to us!



Turns out that they were even closer than that. Just a few miles down the road from our hotel, the hills were ablaze. On our way home, we swung by the shopping center where we usually get lunch, and there were dozens, probably hundreds, of people just standing on the side of the road watching Irvine burn. Seth, David, Ed and I stood there mesmerized, looking at these vast expanses of hundred-foot tall flames sending soot, smoke, ashes, and embers flying everywhere. I climbed up on a backhoe to get a better view, and overheard a group of high school students contemplating the fate of their school, which was within a stone's throw of the fires. People began ignoring traffic rules and parked their cars almost in the middle of the road, got out, and just stood there watching. It was quite a sight, and definitely not the sort of thing you'd see in Boston.

mp3 download download mp3
October 22, 2007
¶ Santiago Fire
The marine base was closed again this morning. They let us in for about an hour starting at sunrise, but then the northern part of the base caught fire and so we had to leave. We tried going to the Ford parking lot, but that's directly downwind of the fire and it was raining soot and ash there, so we ended up leaving. Haven't had much luck otherwise, and today has pretty much been a bust for testing. Although considering everything else going on in the area, it feels like we should just be thankful that we haven't been in mortal danger yet.

I found a graphic on www.ocregister.com that gives a good idea of the extents of the Santiago fire, the one affecting us. I added some green blobs to show where our practice grounds and hotel are with respect to the fire. It's a bity scary...

October 28, 2007
¶ DGC NQE updates
CSAIL is keeping a blog/news site with updates from the Urban Challenge as it happens.

http://www.csail.mit.edu/events/news/2007/DARPA.html

I probably won't update this blog much for the next few days (or until the race is over?) as I'm generally too exhausted after each day to do a whole lot other than collapse in bed. The good news, however, is that our initial runs are very promising, and people are starting to notice as as serious competitors =)
February 21, 2008
¶ My book has been pirated?
On the one hand, I'm flattered. On the other hand, wtf?

May 17, 2008
¶ Thesis Proposal
Over my many years as a professional student, I've found that it helps to set goals for each semester. Early on in this semester, I decided my goal would be to submit an official thesis proposal. That meant coming up with a coherent proposal, forming a committee, and getting a few signatures. Yesterday, I turned it in. Yay! And not a moment too soon, seeing as the semester is now pretty much over.

Ed turn in his doctoral thesis today, and Alex and I documented the process. We walked with Ed from our building to the EECS graduate office, Alex taking photos with Ed's camera, and me with a little camcorder. It was an odd little procession, with much fanfare from the three of us. The folks in the graduate office were highly amused. When you turn in your thesis, they give you a little receipt, which is pretty much the official notice that you have satisfied all of the departmental requirements to be granted a PhD. So many years, for such a small slip of paper!

On Sunday, most of our lab is heading off to the International Conference on Robotics and Automotion (ICRA). Yoshi and David will be presenting some aspects of our Urban Challenge work. I haven't been to ICRA before (or any pure robotics conference, really) so it should be fun!
June 6, 2008
¶ Urban Challenge log files public
We've made our Urban Challenge race log files public, along with software for viewing the log files. Software requires a GNU/Linux system (we used Fedora Core 6 and Ubuntu 7.04). Running the viewing application with the log files basically shows our car's point of view for the entire race. If you followed the race and are curious about what happened to MIT at specific points (e.g. the collision with Cornell, or trouble on the dirt road) then this could be a fun thing to look at.

http://grandchallenge.mit.edu/wiki/index.php/PublicData

July 20, 2008
¶ drifting orcas
This summer I'm visiting Dieter Fox's lab at the University of Washington. I mainly wanted to be in Seattle so that I could be closer to Stacy, and it turned out to be a great opportunity to both get Dieter's input on my thesis and to collaborate with one of his students on a project that we're both interested in. So far it's been great, and I consider myself lucky that there's a great school here with a top-notch robotics lab. On the weekends, Stacy and I have been trying to take advantage of the nice weather and do some fun things here.

Last week, we went up to the Evergreen Speedway and watched a drifting competition. It was mostly amateur car fanatics and ricers, but definitely a lot of fun to watch.




Today, we took a day trip up to San Juan Island on the Canadian border. We'd heard that it's a great place to go on a whale watching boat tour, but were hesitant to pay the almost $70/person fee to sit on a boat for 4 hours, so we ended up just exploring the island by car and foot (we brought Stacy's car to the island on the ferry). It turned out to be a beautiful place, and really reminded me of Block Island. We eventually ended up at this place called Whale Watch Park overlooking the water, and were expecting to find a nice looking place rather devoid of sea life. Instead, our jaws basically dropped to the ground when we saw a pod of orcas swimming past about thirty seconds after we arrived. Absolutely majestic, and at some points they were fewer than 50 yards from where we were sitting on the rocks.





• Powered by bBlog