Archive for February 2009

Real Time Raytracing Success!

Oh man oh man oh man, two bottles of 5 hour energy and a delicous mug of Peet’s Major Dickasons freshly roasted coffee later and I’m doing real time raytracing!

Its nothing super fancy, but as part of the assignments I’ve been working out for the graphics class I’m TAing (CS184 at UC Berkeley) I’ve been putting together a framework for the students to explore raytracing in. And while we’re at it, why not try to make it run in realtime. Turns out that cutting out disk access and loading everything up into RAM, using OpenGL as a final pixel buffer to display images, gives you gobs of performance for free. Now who would have thought that? ;)

So, I’ll clean this stuff up and post some demos. Phong shading has never looked so good as when you can swing the camera around objects!

Monitors monitors monitors! What’s with 16:9 and shiny plastic bevels?

After Microcenter rudely and unceremoniously canceled my in-store pickup order of the Samsung 2343BWX (errors in their inventory database…). Apparently this monitor is pretty hard to get – 23″ and 2048×1152 for $199 is such a sweet deal – that neither Fry’s, Central Computers or any of the online retailer could even get me this monitor (although there were some refurbished models around).

At this point I’m very happy with my dual 20″ Samsungs, both at 1680×1050, but I had some reason to add another two screens to my setup. The 16:10 aspect ratio of that resolution is really great for coding with side-by-side editor windows. They’re just not big enough to prevent me from constantly resizing windows. And whenever I work at home on my dad’s 1920×1200 screen, I have significantly less of these issues. My preferred coding setup is two sets of 80-characters-wide text screens with a project explorer and outline view flanking them. This just fits well with 1920 by 1200 pixels. Which is why I’m out shopping for a good pair.

Fry’s had one of the 2343BWX on the showroom floor so I had the opportunity to see it in bad light running at a shitty resolution. Hmm, the 16:9 did look a little less “coding-friendly” than what I currently had, and the incredibly shiny bevel looks plasticky next to the matte bevels found on monitors aimed at professionals. Since I didn’t want to order a monitor online and find that I didn’t prefer its features. So right now I’m looking at a comparable Samsung 2233 monitor ($199). Also shiny bevel, also 19:6 but a lower resolution of 1920×1080 (compared to 2048×1152) and I find that my worries were unfounded.

The shiny bevel, although nothing to be excited about, becomes unnoticeable against the very bright screens and impressive contrast of the latest Samsung releases. The 16:9 is great for movies, but since a 1080p monitor has less vertical than the 16:10 monitor of equivalent width. After messing with Eclipse on the 1920×1080 resolution, I came to the conclusion that upgrading would only be worth it if I gain a decent amount of pixels both vertically and horizontally. So I’m taking these back and waiting until the larger 23″ 2048×1152 monitors are back in stock.

Of course, the real answer comes in a much simpler package – 30″ of pure viewing bliss like the monitors in the Graphics lab!

Dawn on a Rainy Day – Hackathon 09

There’s something quite magical of watching dawn from your apartment, rain streaking the windows. And its an ideal time to reflect why you’re up at this hour, and what you’ve been doing over the last 48 hours.

In my case, I’ve been hacking at all through Friday and Saturday. The website is blank, since its not a web service (yet) and it was for Hackathon 09, so no time was wasted on nice frivolities like “websites” and “marketing”. All the focus was on our SMS application, that does price lookups for UPC codes texted to it.

The scenario is as follows: You’re standing in Fry’s, looking at some piece of tech gadgetry that you just have to have. But are you going to be angry that you bought it here if there’s a sweet deal online? Or even better, what if Best Buy across the street had it for 20% off and you didnt know? Send off a text message with the UPC product code to our service, and you’ll receive a reply looking something like this:

"WD 250gb My Passport Hard Drive. (4.5/5) $52 at, average price of $69. Locally at Best Buy for $75"

I built this with an impromptu team of three other Berkeley students – Timothy Liu, Dounan Shi and Irving Lin – and decided to do this text message based service similar to (which, BTW, is also a very cool service, but I find that whenever I use it I’m extremely frustrated that I have to make a call and stand there, waiting for the voice prompts to read me info on my product.) It was a really fun experience, and although we didn’t win anything we’re planning to build this out into a serious web service that people can use.

For future hackers, if you’re doing a mobile app, have it ready to demo on the judges’ phones. Let them whip out their cell and use it. We didn’t do this and we realized after showing it to people later that day that the coolness factor is just about zero until someone can do it themselves. And good luck!

Another cool thing I saw at Hackathon was – online electronic music sets from premier DJs. I’m jamming out to it right now! They release DJ sets (those hour-long musical journeys that DJs create by mixing many different tracks) in a track-by-track form in their music player. Finally, you can get both the awesomeness of these DJ sets and the convenience of knowing which song it being played, and jump to the songs you particularly like.

Finally, it was interesting to see a different interpretation of the “Hack day” concept from the Yahoo hack days I’ve been involved in. Yahoo hack days are known for their 90 seconds presentation, and I wish they did that as well. We had 4 minute presentations, and it was a lot harder to follow the main points of people! 90 seconds is an excellent time limit to explain hacks done in 24 hours. Schwag, Pizza and Beer was also notoriously missing… is the recession taking its toll? Hmm, no, because they had Sushi (which disappeared in a matter of minutes) and burritos in the afternoon. Possibly the lack of alcohol explains the productivity! The turnout was amazing – 25 teams in total! – which they managed to do by offering $200 to the student group that turns out the most entries. So they had CSUA, IEEE and UPE all working for them, which was utter genius.

Anyway, the sun is rising and I’m off to go pick up my new Samsung 23″ HD monitor. My aim for desk domination through sheer pixelcount is nearing completion since I’m about to put down the third monitor on my desk. Once I upgrade to 4 by duplicating the current purchase (yea, im waiting for the end-of-the-month paycheck) I’ll finally have that 3840 by 2300 pixels of screen space on my desktop. 30″ monitors be damned!

I got into Stanford, now what?

As the good news keep rolling in, with PhD acceptances suddenly going from scarce to abundant, I’m being slapped in the face by the question I should have been asking while applying – WHICH ONE?!!!?!

Undergrad was a fairly easy decision. Go to the best school you get into. Grad school… A little more complicated. The questions range from “Can I afford the area?” (easy, fellowships!) to “Will I want to marry someone from here?” (interesting… but not very informative still) to “Are there people I want to work with?” (crucial… but true for too many!) to “Do I want to live here?” (which just makes it harder).

I’ve had a fantastic run at Berkeley, and although there’s plenty I don’t agree with and plenty I’ve loved, I came out on top overall. But now that I need to again ask the question of where to go, life gets a lot more complicated really quickly!

On the plus side, it is President’s day, so maybe I’ll spend some money on two new monitors to complete my 4-screen desktop setup. Hmmmmmmmmm how does 3800 by 2400 pixels on your desk sound?