I saved myself 27 minutes a week, and it feels great. It may not be a lot, but it was enough to stop a particular task from being a nuisance.
I work for a publishing company that uses a homespun CMS. One of the features we built is to allow editors to post polls to engage readers. A few editors do this on a regular (typically weekly) basis.
Anyway, the feature was first developed with the main goal of displaying the polls and collecting the responses. A poll’s question and choices are fetched from a database and the newest poll is displayed by default. Unfortunately, nothing was ever built to allow the editors to add new polls, so they would send the details to us by email and we would manually insert it into the database.
Shortly after I started in my initial position as a web developer, adding these polls to the database became my responsibility. The task overhead – receiving the initial email, opening the DB admin tool, switching to and from the email to copy and paste the values into the appropriate tables, checking that it worked correctly, and sending a confirmation email – was enough to make the effectively-ten-minute task a noticeable burden. I mean, for something that seemed like it should have been painless, I was really feeling it. After a few weeks of doing it this way, I decided to do something about it.
I started off by describing the project to my manager and asking for the go-ahead. The response wasn’t encouraging. He explained to me that, at some point in the past, they decided it would be faster to manually insert poll questions into the database than to build a tool for it. That was enough to make me forget about it. How weak of me.
But another few weeks passed, and I could no longer contain the temptation to improve the process. I took about an hour of downtime at work to write the necessary code and queries to simplify the whole procedure. Now I just fill out a three-field form to post the poll. Text, text, textarea, submit. It doesn’t even take a minute now, which is a 90% reduction in time!
I designed it mostly to help myself, but now it serves as a proof of concept to roll it out as a tool that the editors can use themselves. Of course, it will need to be user-friendly to have any chance of acceptance. Still, the expected benefits are there for both the development team and the editorial team: 1) it saves us time and – perhaps more importantly – pain; and 2) it will allow the editors to have greater control over the content on their sites and they won’t have to wait as long for the work to get done (it’s faster to find one minute in a day than ten of them).
The fact that I can take a manual process and automate a solution is one of the reasons I chose to go into software engineering, and I don’t think I’d put myself in a situation where I don’t have that kind of freedom.
As for this project, the next challenge is to gather support and feedback from the potential userbase: the editors. Doing so will put me in a much stronger position to make a case to my manager to back the solution.