The Beginning
Looking back on where Task Badger came from and reflecting on why we're offering this service.
Welcome
I'm Simon, the founder of Task Badger. I've been a professional (as in paid) software developer for over 20 years and one of the lessons I've learned is that building software is easy but running software is hard.
What I mean is that anyone can throw together some code to make a site or an app. Sure, making a good product is hard, but not for technical reasons. In this post I'm going to talk about one aspect of running software that always comes up and is what lead me to build Task Badger. As I was saying, running software can be hard. Software is not static, it has operational needs. You need to manage the services and the databases, you need to deal with security, upgrades, logging, disk space etc. The challenges never go away as long as you are still running the system. Even if you make no code changes at all you still need to manage the system.
The Setup
I built Task Badger to help with some of these operational challenges, specifically those related to running background tasks.
I first had the idea for Task Badger while I was performing a large data migration. The task was running on a machine in the cluster and took over a week to complete. What I found particularly frustrating was that I didn't have a good way to monitor the progress of the migration without logging into the shell to see the task output. I needed a page on the internet I could go to which would show me the status.
Another problem I had is that the task process would periodically crash for a variety of reasons and I had no way of knowing when this happened. On one occasion the task crashed late on a Friday night and I didn't check it until Sunday afternoon! I needed something that would notify me.
At that time I thought about building something to solve these problems, but I couldn't build it into the product I was working on and I didn't want to build a new service just for this migration. Migrations are painful, but they don't happen very often, so we ignore the pain.
On the other hand, although these long-running tasks are not that common at the individual or even organization level, there must be a lot of them happening all the time. So while it probably isn't worth it just for me or my organization, it should be worth it for everyone.
In my next post we'll look in more detail at what Task Badger has to offer.