Building A Better Basecamp Dashboard

Last year when Basecamp updated to a newer version, we decided to stick to the original system (now referred to as Basecamp Classic). Like many agencies, we use Basecamp Classic to track our time on tasks, on to-do lists, and on projects overall. It's our auditing, our billable hours, our time estimates on future projects, etc. Since then, services have popped up to added time tracking to the new Basecamp, but we weren't keen on paying extra fees to share our info with another third-party if we didn't have to.

Basecamp Classic does an... okay job of providing an overview of everything you're working on. Its strength is with individual projects, but the system has a dashboard that summarizes upcoming events and recent project activity. But it never really felt good enough. Not quite sorted the way we wanted, not quite showing the information we wanted.

Turns out, Basecamp Classic has some well documented APIs. If the default dashboard doesn't work the way we want, we can just build one that did!

The idea of an alternate dashboard for Basecamp classic isn't a new one. Basecamp maintains an extras pag on their website with plenty of choices. But one of the advantages of being a professional web development studio is that we're fully capable of customizing a solution to our own particular needs. And as a bonus, it gives us the opportunity to pull in outside information into the mix… making tthe result less of a vanilla Basecamp dashboard, and more of a Visual Lizard dashboard.

Originally, we thought of this as something to have up on our wall, ala Panic's Status Board. As we pulled in more data, refined the sorting, marked things we should be paying attention to, it became everyone's go-to page. It's how we watch what's happening overall.

We went through several interations, cherry-picking what and how data was laid out. Like all good dashboards, it shouldn't be overwhelming us with absolutely everything. Just just has to provide a bird's-eye-view; flag anything that might need attention, and trust us to have the tools we need to interpret it in more depth.

Putting the time and date on a dashboard when its already available on every device you already own may seem redundant, but its invaluable to have it there to give context to all other information.

The upcoming events and milestones get pulled directly out of Basecamp's calendars, but shown with a little more information. The time the event is happening and the project its related to is made prominent. Currently-happening events get highlighted, and past events get scratched out as the day passes.

Staff emails are linked to our individual IMAP inboxes, giving us counts of everyone's unread messages and total emails. This, along with a count of hours worked in the past week help us flag people who could use a hand with their to-do lists.

The list of Basecamp projects smack in the middle is our main upgrade. It's fed by Basecamp's recent activity dashboard, but purposely skews the results to create an engagement priority. Messages, comments, and files contributed by a client are highlighted in blue. To-do items, SVN commits, and our internal communications get less importance. If we haven't responded to client activity within a short timeframe, the project gets flagged in red and jumps higher up the list; it's purposely weighted sorting, reminding us to communicate with our clients in a timely manner.

Site monitoring is an in-house service we've built to watch over launched websites. If a site goes red, we know there's a connection issue we should be looking at. Server monitoring works the same way, but for the entire machines we're using for hosting, rather than individual sites. Between these two services, we're proactive about our technical support responses.

Adding the latest twitter posts to the dashboard provides us the same engagement reminder as the basecamp projects; when a reply or mention is made, it shows up right there, making sure we see it and respond. And the weather? There so we know how much we have to bundle up during lunch :)

Somewhere during development, this dashboard went from a side-project to an essential part of our daily routine. We have a better idea of who's working on what, on where people are when they're out of the office, and of where a client might have posted a message if they've forgotten to check any staff off to notify. Less is slipping through the cracks. More is getting acted on quicker. Individual habits went by the wayside as we tweaked the dashboard to solve problems. The number of post-it notes and scrawled reminders visibly dropped (though not the number of Field Notes subscriptions).

That's when we knew we had something great. Not just a customized dashboard of Basecamp Classic, nor just a better overview of our in-progress work. We have the capability of taking something good, and make it great. Even if only for ourselves.

to blog