Python Pool Analysis August 5, 2016

It can be difficult to find the best method for parallel data processing. In Python, I came across six different options to run the same code concurrently, some truly in parallel and some interleaved as green threads. Overwhelmed with options, I decided to dig into the details of each pool and really test them.

I created a CLI to test each of the six different Python pool implementations for both CPU and I/O-bounded workloads. I have open sourced the CLI and my test results on GitHub so other developers can run their own tests or just skip the dirty details of benchmarking and use my own conclusions as a reference.

Home Server November 1, 2013

I manage my Ubuntu server very regularly, running a wide variety of applications from inside virtual machines. More recently I’ve been deploying some internal services within Docker as well.

I run multiple websites via the LAMP stack (Linux, Apache, MySQL, PHP). I also have some instances of Mongo, Cassandra as well as Gitlab used in personal development.

Arc October 1, 2012

Initially an attempt to build a game from the ground up, developing this game engine gave us valuable insight into how games ought to be developed. In the process of creating the Arc reactor, we learned how to work as a tight team with a powerful focus on making an intuitive game library API.

With OpenGL, we built the reactor in Java and we probably spent more time arguing about the right name for a method than actually writing the code; however this did result in a beautifully crafted API! In the end, we realized the project was way over our heads in complexity. We needed the know-how for optimizing for performance and our skills were not yet ready for making the aforementioned game. We learned a great deal through teamwork, code management techniques, and API development. Soon after wrapping up our ideas, we moved on to working on Noonian.