Welcome to the homepage of Charles Dietrich (chazmatazz)!
I am a PhD student at the University of Colorado at Boulder (started August 2010). I work in the area of craft technology, robotics and swarm intelligence.
In fall 2010, dissatisfied with the properties of the programming language MIT Proto, I developed PyMorphous, a Python library for spatial computing with a graphical simulator. The library adopts the message round semantics of MIT Proto and uses a very similar graphical interface, but removes some of the restrictions on computation style, provides an easy-to-use imperative programming style, and provides the ability to use existing Python libraries. I also wrote a shim to use PyMorphous within Webots (work with undergraduate KJ Khalsa, see "KJ Khalsa graduates").
In spring and summer 2011 I developed a barebones javascript library based on PyMorphous that uses WebGL for the graphical simulator. This is used in various (unreleased) collaborations with artists and landscape architects. Future work might use WebCL or Google Chrome Native Client for the programming of the swarm element, to facilitate easy porting to hardware. In the spring and summer I also worked on hardware implementations using the Atmel Xmega.
For June 2011-May 2013 I am funded as an eCSite fellow. The eCSite program brings computer science PhD students into K-12 non-computer science classrooms to teach about computational thinking. I work with Dan Zahner of the Millenium Lab at Boulder High School. Dan teaches drafting, design and robotics. One of the projects we are planning is to have drafting students design and build robotic insects (Creepy Crawly High School). For fall 2010 I served as a teaching assistant for Computer Systems taught by Dirk Grunwald. In spring 2011 I served as a teaching assistant for Intro Computer Science taught by Michael Main.
In the spring of 2011 I took Things That Think with Mike and Ann Eisenberg. My group's final project was Geonect, a project that allows kids to design using simple geometric shapes with a Kinect providing the user interface. Through watching Mike and Ann's son furiously waving his hand around to move a shape, I learned about HCI as well as the relationship between gesture, structure, and the environment that the user generates. I have a bit of formal background in HCI, having taken Francois Guimbretiere's HCI Design course (Fall 2009) at Cornell.
In fall 2011 I am taking Dustin Reishus's Swarm Intelligence and Self Assembly course.
I'm especially grateful to Eric Schweikardt of Modular Robotics for introducing me to distributed robotics and inspiring me to seek my PhD. Go buy some Cubelets!
I have an B.A. in Biology and an M.Eng. in Computer Science, both from Cornell. As an undergraduate I was interested in ecology and population dynamics. With Alison "Sunny" Power I studied the possible effects of gene escape from genetically modified crops on ecosystems. As a graduate student I focused on algorithms, computer vision and compilers. After graduation I worked on static analysis and automated bugfinding software. I also have expertise in web development.
I love living in Boulder and snowboarding and biking and doing yoga in this beautiful area.
My Contact Info