Wednesday, March 31, 2010

Top 10 Improvements for Basecamp (according to me)

Disclosure: I didn't quite get to ten, but it makes for a good title. Plus, I'm hoping for some additional suggestions from you.

Now, let me first say that Basecamp is an excellent tool helping developers and freelancers across the world create and do business more efficiently and productively (I think even happier, too). In fact, Basecamp has encouraged extensions, plug-ins and additional tools to accomplish the types of improvements we all think about. As I work in Basecamp throughout my typical work day (very efficiently and productively, I might add), I try and limit my wish lists to functionalities that truly might belong in the core app.

And as you know, I never point out a problem without offering up a solution; so you'll see those listed here, too. You are more than welcome to offer your own suggestions (in fact it is my hope that you will), so that as a community, we'll encourage 37 Signals to make some improvements to one of the best, fastest-growing collaboration & project management apps available.

1) Create Templates from Existing To-Dos.
Is there anyone first using Basecamp who ventures into creating templates before they have mastered the art of ToDo lists? Granted, you are up and going within minutes, but the likelihood is that you could have spent a great deal of time thinking though and creating a very detailed ToDo list, only to find out you have to repeat all that work (read: typing, copy+pasting) to develop a ToDo list. Suggested Solution: offer a "Create Template from this ToDo list" link on the ToDo page.

2) Allow "Who's Responsible" to be set on ToDos.
Speaking of ToDo lists, there's additional information you very well could know at the time you are setting it up - specifically, who's responsible for a given task (after all, it's a template, right?). Of course, I'm not asking to be able to set a due date at the template level (although, some not-so fancy math could allow you to set the due date of the first item on a ToDo list, then cascade due dates down to all the other items based on how much time they might take). Anyway, often times it will be the same person performing the task, and it could be changes later on the fly. It would be a time-save, especially for larger ToDo lists. I kind of get the feeling the developers at 37 Signals didn't anticipate particularly large, detailed ToDo lists, so maybe on my team, we're overachievers!? Probably. Let's move on, though.

3) Ability to create a calendar of ToDos.
Seriously, you get a calendar for Milestones, why not one for ToDos? It would be just as helpful, if not more so to the developers.

4) Switch which Milestone or Project a ToDo is associated to.
This just happens sometimes, and you need to switch. It's strange with such a flexible system, you're locked in. This would also be helpful if you had a hot idea and just wanted to get a project started without having to create a brand new category to make sure it will stay there forever. If you knew you could switch where your new list would live in the future, you might be more likely to get your ideas out quickly, and while they're on your mind - knowing you wouldn't have to re-enter them later when your team reorganizes projects. Suggested Solution: allow ToDos to be moved to a different milestone.

5) Time Tracking and Creating Reports
The Create Report functionality is not as quick as it could be. First off, it would be supremely helpful to save the state of your report criteria as you swap between dates or people. Secondly, move the "Create a Report" link from the right side, to the left. Since it's not stateful, your mose makes a two-way trip all across the screen each time you want to change days. In fairness, I think I'm being nit-picky here, but it's an area that is so useful, it makes the frequency of these annoyances ever-present. Suggested Solution: tighten up "Create a Report" interface.

6) Use a calendar control for creating Time Tracking Reports.
This one could have gone with #5, but I believe it's such a no-brainer, it deserves its own number. Instead of using TWO drop-downs that slowly do a very repetitive job, drop a nice calendar control (how about the one from the ToDo screen?) on that screen. I'd be able to spend less time looking at where I spend my time, and focus that time on the actual work! Suggested Solution: replace drop-downs with calendars when picking a date.

7) Time tracking for individual projects, ToDos or Milestones.
It's crazy how close you can get, but just can't quite make it happen. On each item of a ToDo list, you can see how much time you've tracked by clicking the clock next to it. That's obviously very useful information. So why isn't it obvious that it would be nice to see a total without breaking out a calculator and opening/closing each Todo down the list? Perhaps our group is unique in how we categorize our projects, but since the system offers the flexibility to do it that way, the report functionality should be as flexible. Suggested Solution: drill down one more step to total up time tracked on a specific ToDo list or milestone.

8) Set up multiple-person groups.
Since it's hard to report ToDos on projects where more than one person has ToDos, this would be useful. It would allow you to print one calendar of ToDos (assuming you've implemented request #3), for a project that two or more people can use. It would also alleviate the possibility of forgotten or missed ToDos since they were on someone else's list. For a quick example of this, simply go to your dashboard, then milestones. What if you wanted to coordinate two or more peoples' work for the week, but could only see one person's milestones? Suggested Solution: create multiple-person groups for tracking and reporting purposes.

9) Open attached files in a new window.
When collaborating on a project, attaching files is a great feature Basecamp already has. Launching in the same window, however, takes you away from the conversation and keeps you from easily toggling back and forth between the discussion and the file. On top of that, you may be tempted to close the window instead of use the back button - not to mention, what if there are two or three attachments to compare? It may seem like a minor annoyance, but if there is not a compelling reason to open in the same window, I'd like to see it launch a new window. Suggested Solution: open attachments in a new window/browser tab.

Now look at that, I only made it to nine!
I told you titles are just a gimmick. Again, my hat is off to the developers at 37 Signals for the fantastic suite of light-weight, yet productive tools they've created. It's a testament to their work that a conversation like this one is generated around their developer-focused tool set.

Now it's your turn. If you feel I missed anything, or Basecamp already has a solution for my complaining, please post it here.