Everything below is coded in Python 2.5, but most likely works on 2.4 and 2.6 as well.
You will need the pygame library for drawing.
I had to zip everything because my server provider would keep trying to execute the .py files. ugh!
Libraries
Below are some of the libraries and helper code that I use to develop my projects.
| Pygame Helper | This is the MOST important library that I use for every single one of my projects. It is essentially a class that implements all most boring pygame integration parts. All I ever do in all of my programs is extend this class and override its update(), draw() and keyboard/mouse event functions. |
| Starter code | Here is my starter code that extends pygame helper. I always copy paste this file, change the name, and start implementing. |
| Vector 2D | This class represents a vector and provides a lot of useful vector functions, including angle(), length(), dot(), etc... I use it extensively in my projects. |
| Particle engine | My particle engine library :) It creates small explosions of particles of different colors. The effect is not anything spectacular, but I sometimes use it to spice up my programs because it is very easy to use. |
| Springs | I use this library to quickly create springs in my code. They come in handy a lot, mostly for visualization purposes. I use the more stable and mathematically superior verlet integration scheme to prevent explosions. |
Example code
Some examples of simple programs that demonstrate use of my libraries.
Turbulence![]() |
A very simple turbulence effect that illustrates my normal use of my libraries. |
Projects
Here is the code for some of my projects.
N-player tetris![]() |
This is my multiplayer cooperative tetris: Multiplayer players cooperate to create lines. The code is functional, albeit non-optimal. |
Hanoi Solver Arm![]() |
The robot arm solves the towers of hanoi. |
Grapher![]() |
Code for my Graph Layout program that you can see in my Projects page. |




