Posted by Andrew Trusty
on May 09, 2008
Actually, I hear he is pretty bad at bowling but not too bad at basketball and poker. These are just a few of the thousands of interesting facts I have stumbled across while working on my latest endeavor. I don’t usually follow politics very closely until after the conventions are over and there are less candidates to study but this election has caught my interest more than most. It is a heated race between the first viable woman candidate, the first viable non-caucasian candidate, and one of the oldest candidates. So I’ve decided to throw my talents into the race behind the candidate I’m leaning towards (you get one guess who that is).
So I’ve gone and built a free online political education game for Obama, completely un-official and un-endorsed (so far). The name of the game is Click 4 Obama. The tagline is “You play, Obama wins!” and the premise behind it is pretty simple. As people answer quiz questions about US history, politics, and government, the site generates ad revenue which is used to buy ads for Obama. There is a bit more detail to it that you can read about in my official introduction of Click 4 Obama and more details are on the Frequently Asked Questions page.
I could talk about Click 4 Obama all day long but you should really just go check it out and give it a spin. I think I’ve actually managed to make politics fun and educational; my high school teachers would be so proud.
Posted by Andrew Trusty
on March 04, 2008
In the last two days I’ve thrown together a nifty little Comic Gopher Google gadget that you can put on your Google homepage or your own webpage. I’m hoping it will serve as a marketing tool for Comic Gopher but I wouldn’t be surprised if it becomes much more popular than Comic Gopher because its free and easy to use. It doesn’t have all the features or comics that Comic Gopher has but it actually supports a number of comics that Comic Gopher doesn’t because it works by grabbing comic RSS feeds rather than scraping pages. Anyways, feel free to add it to your Google homepage by clicking the below button and drop me some feedback.
Posted by Andrew Trusty
on February 21, 2008
I graduated in December and instead of getting a job I’ve been trying to wrap up this pet project I have been working on in my free time. After about two months of work, I’ve finally managed to make it presentable and setup a website. Without further ado, I give you Comic Gopher – fetching the comics you love quicker.
Comic Gopher provides your daily webcomic fix, all on one page. It’s like the comics page in your newspaper but better because you get to choose which comics you see. It’s a desktop program that works by downloading the newest comics off the internet to your computer so you can take your comics with you anywhere you go, whether you are connected to the internet or not.
I developed Comic Gopher because I’ve always wanted to automate my daily comic routine so I don’t have to load every comic website every day just to see if there is a new comic. It saves me time and makes it easier for me to find new comics to read. You can download and try out Comic Gopher for free for 30 days and I hope you will find it as useful as I have. There is also a Comic Gopher wiki where you can learn how to add new comics or customize the look and feel of Comic Gopher if you feel the need. Any comments or feedback you have would be appreciated.
Posted by Andrew Trusty
on August 26, 2007
I went west this summer for an amazing internship at Google. I worked on the Google Base development team as a software engineering intern. I did some really interesting work with my host Deepak Lachwani and some other really cool Googlers on a generic image quality classification system for internal use. That is about all I can say about my professional activities there given their ‘loose lips sink ships’ policy of external communication. Overall, it was a really challenging and rewarding environment though, especially since I went in thinking I was working in Java and then I had to learn C++ during my first few weeks.
But being there in the middle of Silicon Valley on Google’s main campus, it really felt like you were at the center of the technological wonderland. In every direction, you see buildings with the logos of the technology giants and at their feet they are surrounded by dozens of startups, familiar and unfamiliar. There is a noticeable energy and excitement exuding from the people working there. At Google, the concentration of intelligent, capable, and driven people was amazing. And at the rate they are hiring, you can and sometimes do meet a few new and interesting people every day at one of the many amazing cafés. I met a lot of other interesting people from all over the world, interns and full-timers and non-Googlers, whom I hope to keep up with.
Continue reading…
Posted by Andrew Trusty
on May 06, 2007
I started working with a new research group in the Cognitive Computing Lab under Ashwin Ram this semester. The project I am working on is concentrated on using Case Based Reasoning techniques to easily develop AI opponents in video games. We are using Wargus, an open-source mod which allows you to play Warcraft 2 using the open-source Stratagus game engine, as the platform for our CBR research.
My contribution to the project was to develop a map classification system for Warcraft 2 maps which would provide additional features for the CBR engine. The system is a joint project between my Pattern Recognition class professor Jim Rehg and the CCL researchers Santi Ontañón and Manish Mehta. It was also a good starter project for getting more familiar with the architecture of their system since I plan on continuing to work with the group for my senior research project.
Continue reading…
Posted by Andrew Trusty
on December 23, 2006
Or more aptly: ML from 0 to 60 in one semester. The semester long compiler project in the Compilers and Interpreters course was arguably the largest, most structured, and diverse programming experience I have had. The course was taught by Richard LeBlanc based on the course as taught by Olin Shivers. The textbook which defined the Tiger language we were compiling was Andrew Appel’s Modern Compiler Implementation in ML.
The project was done in groups of two and we built out the compiler at the grueling pace of about one module every two weeks. We started with the lexer and parser which we built using ML-Lex and ML-Yacc respectively. We then proceeded to do type checking, translation to intermediate representation, instruction selection (MIPS), and data-flow analysis among other things. In the week before our finals, we managed to cap it all off with a serviceable register allocator.
At the end of the semester, it was an extremely satisfying experience to see our Tiger factorial code be compiled into working MIPS instructions and to watch it run. Looking back, it seems to be something of a miracle that we started from scratch and were able to put together such a system in an unfamiliar language in one semester.