Last week as there were no more user stories on the board, my Product Owner proposed me something from the next sprint. Create templates in production. Hmmm... It turned out that in fact those templates should have been created in three different phases. No problem. There is a procedure! Great. I asked the author for it.
The procedure is well written. Among other scripts to run, I had to build and send about a dozen HTTP POST requests per template per phase. Much fun for a developer, right?
As I’m quite new on the underlying application I executed the procedure in one phase, just to see if it works fine, how the application responds. Then I talked to the author and we agreed, this should be automated. He said that we should ask for some time during the next sprint planning, so that we have a user story to create a tool. It seemed a good idea.
In a few days - still before the next sprint - there was time to create those template in the next phase.
I was sweating and swearing. Based on the sizing, I had a day to create those templates. Then I made the decision. Let’s write that tool, no way that I follow that procedure ever again.
By the end of next morning - no, I did not work during the night - the tool was there, working!
Two python scripts, both can be executed given a few arguments. There is a step between to be still done, but that’s not so complex, there is no much place to err there.
My colleagues were happy about it, especailly my Product Owner when I told him that instead of billing the project for one day for the third phase, it is about half an hour. Me personally have nothing but advantages of this small development. I exposed myself to python’s urllib3 a bit, but what’s more important I could practice TDD.
My advice is not to repeat boring procedures. Automate them! You’ll code which is way more fun and you’ll make people happy about you!
Remeber: You didn’t study hard and struggle in life to become a machine!