finals week, I'm working hard December 09, 2007
For the last week or so, I've been hacking on a side project I'll call 'pye'. Pye is an automation framework. Let's dissect those two words:
- automation - in this case, to automate something is to reduce a task that usually takes multiple steps into one or zero steps
- framework - some pre-built code that you can use to make your own neat programs
My goal for pye was to be a modern day Makefile - but all automated tasks are written using Python. Right now, I've got some default tasks included with the library:
- deployment - a generic Django deployment task that works with most SCMs (tested with subversion and mercurial)
- unit testing - a task that will run all of your project unit tests AND highlight errors in red, passing tests in green, and file/line number info in yellow BECAUSE readability increases productivity dramatically!
- autorun - inspired by Ruby's autotest, this task watches files and runs a command when a file changes. I use this with the unit testing task to run certain unit tests when corresponding files changes.
I'll probably get around to releasing it in January.