Redesigned an app
Used Python
Created a command line interface
+1
After finally reading the Gang of Four Design Patterns for OOP, I've been re-thinking almost everything I've built in terms of more clear design patterns.

My first attempt at redesigning my existing applications is my refactoring of my TODO cataloging CLA

Specifically I split out the loading of configuration parameters from the main function into a separate function that, regardless of whether a config file or command line args are used, returns a dictionary of parameters in the correct formats.  It may seem basic but I figure it's a good place to start.