Wordpress, maybe
I have had enough fun writing my own blogging web app; I think it’s time to switch over to something more industrial. I downloaded Wordpress today and gave their “famous” 5-minute install process a go, which worked like a charm.
I haven’t fully committed to the switch yet, but so far I like what I see.
Tagged Tags: VisualCore on June 14, 2009 at 9:11 pm
PyMW: Logo and Layout
Created a new logo and web layout/design for PyMW. This isn’t really part of the summer of code gig, but I was feeling inspired so I threw this together. It’s still a work in progress, but you can get a feel for the design.
I’m not much of a graphic artist when it come to identity, but I tried to represent idea of one framework joining many disparate models of computation as well as the general idea of master-worker computing.
Tagged Tags: Design, GSoC, PyMW on June 10, 2009 at 12:08 am
.NET 4.0: Parallel Programming
.NET 4.0 Beta 1 contains some interesting parallel programming constructs. Sounds like a great idea, I’m really interested to see where this is going.
Tagged Tags: C#, Parallel, VB.NET on June 5, 2009 at 11:35 pm
PyMW: Week one
Today is the official end of my 7th day of working on the PyMW interface for BOINC for Google Summer of Code.
It took me three days to get the my first PyMW app to run (monte_pi.py), which ran on 4 virtual nodes (4 tasks). More than four tasks was causing problems, it turned out that there was a bug in the PyMW BOINC interface. Now that that’s fixed, I ran with 200 nodes yesterday and 800 today.
This morning, I tried running with 2 physical nodes: my laptop and my Ubuntu VM, which failed at the end of computation. Somehow the canonical results are not being recognized which causes the BOINC interface to get lost in limbo and hang forever.
This week, I created a pure-Python assimilator for PyMW, which works pretty well, but is perhaps causing the error above.
I also rewrote a big swath of the BOINC interface to stop it from using a new thread for each task during task reclamation (getting data back from BOINC). Since it was using one thread per task, it was reaching the maximum number of scheduler threads. This in turn caused the execution thread to hang until some of the tasks completed. Now it reclaims tasks in a single thread and is able to queue all tasks in a single shot, greatly improving the throughput from PyMW -> BOINC.
Overall, it’s been really fun so far. The first few days were trying, since there was little documentation of how to get PyMW to play nice with BOINC. But seeing the first application run was great
Tagged Tags: BOINC, GSoC, Parallel, PyMW, Python on June 5, 2009 at 12:01 pm
Glaive, XNA Game
This semester I took a software engineering class and I had the luck of joining a game development group. Our team of 8 created an old school, 2D game kind of like Gauntlet. We mashed-up of lots of old 2D graphics and music from games like Super Mario Bros., Sonic the Hedgehog, Chronotrigger and others.
If you have XNA GameStudio 3.0 installed, you can run the game now. If not, you will have to wait until we get the installer working (hopefully soon!). Until then, you can check the videos out.
Also, it’s open source (GPL), so feel free to check out the code and use it in your project!
Tagged Tags: C#, UCB, Video, XNA on June 1, 2009 at 11:37 am
Google Summer of Code!

My proposal has been accepted by the Python Software Foundation for Google Summer of Code 2009!
I will be working on the Python Master-Worker computing project (PyMW), a Python API that provides access to various distributed and parallel computing frameworks. In particular, I will be working on the Berkeley Open Infrastructure for Network Computing (BOINC) integration. BOINC is best known as the underlying system that enabled SETI@Home and I’m really excited to peek under the hood!
My goal is to make it easier for PyMW users to create BOINC applications by simplifying the setup process as well as adding new support for some important BOINC features. This will require some changes to PyMW as well as some changes to the BOINC server. If you are interested in seeing all the details, a public copy of my proposal is posted at the GSoC website.
Tagged Tags: BOINC, GSoC, News, Parallel, PyMW, Python on April 23, 2009 at 12:33 am
Hackathon Video
I just stumbled across this video of our project for the Berkeley Hackation. My partner for the Hackathon, Yiding Jia, is presenting.
Berkeley Hackathon 2009
I participated in the Berkeley Hackathon 2009, last night from 6pm to 12 noon the next day (pictures). The goal was to build the most impressive or useful application possible in 18 hours, in teams of one to four.
Our team (of two) took 2nd place and won laptops! There were a ton of really awesome projects – my favorite was the Missile Command game that, when your cities got bombed, it actually corrupted a selectable application’s memory because “games don’t have harsh enough consequences.” Failure to protect your cities resulted in the death of an application before your very eyes.
The first place was a web API that allowed you to run an application in a thick AND thin client at the same time – not just pushing bitmaps, but actually rendered in HTML!
Our entry was a 3D visualization of news data & relationships in Java & OpenGL – I want to make a few tweaks, but I hope to post it soon.
3D News-Vis
A 3D visualization of Yahoo! news data
Created for the 2009 Berkeley Hackathon in 18 hours, this visualization queries data from the Yahoo! News API and displays each result as a cube. By clicking on cubes, a heuristic algorithm selects salient words from the existing news entry and re-queries the new topic.
Created in collaboration with Yiding Jia, we won 2nd pace in the Hackathon.
Download: Source (Java, requires JOGL)
Tagged on February 14, 2009 at 12:00 am
AI, Pacman & Python…

I’m taking an Artificial Intelligence class this semester, and the class uses Pacman (in Python) as a pedagogical tool for learning AI. What a great idea! The projects typically start off by asking you to play a game of Pacman, and then dive into the content.
Here is one of the projects, if you are interested.
Also, if you want to use this system at your school, I think they are actively seeking other instructors to try it. Contact Dan Klein if you are interested in more information.
Tagged Tags: AI, Algorithms, Python on February 13, 2009 at 12:18 pm




