Developers are an optimistic bunch. So are sysadmins and devops folks. We always think it's going to take half as long as it does.

What it does

Machine learning on tickets (help desk, task, bugs, etc.) -- it extracts out the aspects of the problem that have caused problems in the past, and uses that to predict how long a new ticket will take to resolve.

How I built it

I wrote my own machine learning algorithm (so that it could run in app engine with little memory and short deadlines) and did some natural language processing on the ticket texts.

Challenges I ran into

Unlike many big data systems, there are often surprisingly small numbers of tickets. Very few helpdesks have even a million tickets to work with.

Accomplishments that I'm proud of

It's minimalist -- it just does what it says, and that's it -- and doesn't require any manual setup.

What I learned

There is a lot of natural variation in how long a task takes, but also that human beings have a lot of biases which can be worked around.

What's next for Automated Estimator of Effort and Duration

I'm working on providing stats that show how well it is working, and comparing it to human estimators.

Share this project: