User:Bobbyp
Hello!
I'm Bobby, and I'm interested in system dynamics, energy, and education. I'd like to bring system dynamics to the OLPC.
I'm applying for the Google Summer of Code with my project, OpenSim.
General Background
I will be 24 in May, I attended RPI in Troy, NY for 2 years studying computer engineering, but wanted to do something more applied with my computer skills so I transferred to SUNY ESF in Syracuse, NY to major in Environmental Studies (I will graduate in December 2008). I got back into coding through classes on ecological modeling, spatial modeling and GIS. I've been pretty heavily coding models, algorithms and interfaces for the past 2 years, mainly in C#, ObjC and some Fortran, but the past 3 months I've been using C++ for 8+ hours a day with some Python and Actionscript thrown in the mix. I've got a Mac with Linux (both FC8 and openSUSE10.3) and Windows, and I've just started over the past few weeks to pick up GTK, although I've used Cairo in a project for a couple months. I've only dabbled with the XO so far, but am really looking forward to developing for it. Currently I am beginning a Master's program in System Dynamics at the University of Bergen in Norway.
Previous Projects
I've been involved with many projects before, both as part of my coursework and for work. I'm currently working with 2 others on implementing a multi-player, flash-based game that allows 6 people to control a hypothetical country as government ministers. The flash interfaces with a C# ASP.NET webservice, which in turn communicates with a DLL version of the Vensim simulation software. This past summer my friend and I created an interface for the large T21 North America model, a large System Dynamics model for simulating the effects of different government policies (like carbon taxes, electrification of the countries freight rails, etc) on energy demand, and oil price, among other things. The interface was written in C# with OpenGL for the visuals, and can be found here (sorry, Windows only).
RPI
At RPI I had experience with two large projects in the Spring of 2004, one was for Frank Wright in my Intro to Management class (one of the hardest classes I've taken) and the other was in Introduction to Engineering Design. In the management class, our team of 4 was given the task of coming up with a strategy for Nokia to take over the next few years (in 2004 their once unassailable market share was being chipped away at). We spent 2 months preparing the presentation and presented to our professor and a group of telecom industry executives. (Our proposal was basically to focus on the longer term, several years off back then, 3G infrastructure and work towards providing and using a fat pipe to the phone, and transmit voice data as VoIP, if you're interested.) We ended up with an A+. I learned an enormous amount in this class, from presentation and management skills, to time management (our professors motto was "prior preparation prevents poor performance"), to critical thinking and information gathering skills. It was one of the most difficult and most rewarding classes and projects I've ever worked on.
For Introduction to Engineering Design, I was on an 11 person team with computer, electrical, mechanical and aerospace engineering students. Our task was to design a launcher for balsa wood gliders. We got an initial list of product specifications, and from there it was up to us to design the thing. The mechanical students created the overall design, the aerospace kids worked on the gliders (we were expected to design those as well), and us computer/electrical types worked on control systems. After we were forced to give up on our microcontroller a couple days before the symposium we were to present the product at, I designed a physical controller using ICs to control the pitch and rotation of the launch platform and launch of the glider. I don't have any pictures of the final product, but I do have a couple things on my controller here. It was a last minute job, but it worked perfectly. We got an A on the project (I can get references for the grades if needed, I know grades aren't anything but for projects they can be a pretty good indicator of effort). I definitely gained project management and design experience here, as well as a better ability to work with people designing component interface specifications. While it was more stressful and a bit less rewarding than the management project, I nonetheless learned a great deal.
OpenSim
As my masters thesis at the University of Bergen I am creating an open source System Dynamics modeling tool. This is the basis of the work I hope to do for the XO, and there is a little more information here:
Its a Trac site, so you can browse some of the source I've hacked together so far. If you're interested in checking it out, there are instructions for building in the wiki there. You will need to have LLVM 2.2 installed in order to build OpenSim, as we rely on their JIT compiler. Right now the only output that works is Python, but within a day or two we should have LLVM-IR output, and from there its just a short step to JIT compilation and outputting the results of the simulation.
bobbypowers@gmail.com