I have spent practically all day coding, coding, coding. I am adding features to, and (more than anything) refactoring, the Python data validation program that I have been working on for my day job. The result isn’t perfect, but it is far better than where it was this morning.

First, I broke up my 600-line script into numerous module files. I was happy to learn how easy this is, but I am still a novice at what I can do with the Python package I have created. Having multiple files allowed me to refactor the major features of the application, and to identify the customization points I need to work on next, without getting lost in a single, enormous source code file.

Then, I started to delete stale code, refactor old but working code, and optimize the performance of the major data pipelines. It felt good to make everything streamlined.

Lastly, I did some testing. I don’t have proper unit tests, and still need to learn how to structure a Python package properly to allow for unit testing. That may be tomorrow’s task.