Trello is one of the best productivity tools to hit the scene in the past decade, mainly due to the power of visual organization. It's more than just a to-do list alternative. It's an entirely different paradigm, especially for programmers.

Admittedly, Trello is best for solo endeavors or small-team projects (up to, say, five people). Beyond that and it can get a bit chaotic, at which point you'd probably fare better with something like Basecamp, Asana, or Wrike.

Here are some essential tips that'll help you get the most out of Trello. They're all native to Trello itself so no browser extensions required. Feel free to pick and choose the tips that work best for you.

1. One Board per Project

Trello is comprised of three main elements -- boards, lists, and cards -- but for some reason first-time users tend to avoid using boards altogether, effectively diminishing Trello's organizational capabilities by one-third.

trello-programmers-boards

When you first start using Trello, you may be tempted to have a single "programming" board with one list per project. This could work for tiny projects, such as for homework assignments in a programming course, but it's too limiting otherwise.

Commit to using one board per project, whether that means one board per website, one board per mobile game, or one board per in-house utility tool. For massive projects, you may even want to use one board per project module!

2. Use Lists for Milestones (and More)

Trello doesn't offer a default set of lists when you create a new board so you can do whatever you want, but a lot of people suggest starting with the "Done, Doing, To-Do" method of organization (meaning one list for each of those).

This can be a useful method, but it's often too simplistic for programming projects. As such, you should forget that it even exists.

Instead, I've found it most effective to create one list for every project milestone. Think of each milestone as a new release, whether major or minor. This keeps tasks organized in a way that makes practical sense.

trello-programmers-lists

For example, you might have a list called "Release 1.3" consisting of all the new features you expect in that upcoming milestone, but you might also have a list called "Release 1.2.7" consisting of the next bug fix patch.

You can also have separate lists for organizing tasks that don't yet belong to a milestone. An "Ideas" list is great for brainstorming. A "Back Burner" list is good for rejected ideas you may want to revisit. You should also have a "References" list for important sites and file attachments.

3. Use Labels for Status or Priority

If you're the kind of person who prefers the "Done, Doing, To-Do" method that I dismissed above, don't worry. You can still incorporate it into the milestones-based approach mentioned above.

Labels are a great way to mark the status of a given task. You can, for example, create three separate labels -- Done, Doing, and To-Do -- and use them to mark each card to denote progress. Use different colors per label for visual organization.

trello-programmers-labels

Or you can use labels as a way to mark priority for each task. Create labels for "Urgent", "Important", "Normal", and "Trivial" to show which tasks need the most urgent attention. I find this to be more practical than progress-based labels, but to each his own.

And don't forget that you can filter by label when searching Trello! When searching, add #label to your query to only search through cards with that label (so #urgent for Urgent cards). This is an incredibly useful feature that you should master ASAP.

4. Use Checklists for Sub-Tasks

Another bad Trello habit for first-time users is using it in the same way that you'd use a to-do list application, namely using one card for each atomic task. You can do this if you want, but that's a quick way to overwhelm your board with too many cards.

A better alternative is to group related tasks together under a single card and use a checklist on that card to manage the individual atomic tasks.

trello-programmers-checklists

In the screenshot above, you can see how much cleaner and more organized it looks to use a checklist, and it only requires a single card. Without it, you'd have five individual cards that clutter everything up unnecessarily. Avoid card overload as much as possible.

Another benefit of this is that it's easier to see progress at a glance (a card with 9/20 tasks says something, but a list of 11 cards doesn't say much) and it's easier to shift tasks between lists (one card to move versus 10+ cards to move).

5. Add Task Types to Card Titles

With Trello labels being used for either task status or task priority, you lose the ability to tag each card by the type of task it is: Bug, Feature, Optimization, etc.

trello-programmers-card-titles

I get around this by simply typing the task type right into the card title. Task statuses and task priorities can change frequently but task types usually stay the same, so this works fine 99% of the time. If a type does change, it only takes three seconds to edit the title.

Or you can suffix card titles instead. Whether you use Bug: blah blah blah or blah blah blah [Bug] is entirely your preference.

6. Delegate Team Members to Cards

Some project management tools force you to assign tasks for individual users, but the beauty of Trello's system is that it goes the other way around -- you can add users to individual tasks. This way you can have multiple users per task.

Before you can add people to cards, you'll have to invite them to your board. Invited members can have Normal permission (view and edit cards) or Admin permissions (remove members and change board settings).

trello-programmers-team-members

Note that you can search and filter cards by assigned members just as you can by labels. Simply add @member to your search query, such as @joel to see all tasks that I'm currently working on.

One word of warning: this system works best when members are assigned to tasks on a need-to-know basis only otherwise it can get a bit hectic.

So if you ever doubted Trello as a collaborative tool for programmers, let this convince you otherwise. Trello is actually very good for collaboration as long as the team isn't too large.

7. Leave Notes Using Comments

The comments section of a card is the perfect place to leave notes, either for yourself or for your team members, regarding the progress of the task or any obstacles that are currently in the way.

These notes can also come in handy as a historical archive of what went wrong with a task. That way if the task ever switches hands to another member, they can catch up rather quickly.

trello-programmers-comments

Comments are also a great way to leave questions for others, especially if you're playing the role of project manager and you aren't sure why a task is progressing slowly or if you want to change a task's requirements.

Notify users to urgent comments by @mentioning their names. And remember that comments should be notes! Discussions are better suited for a real-time alternative like Slack.

8. Mark Each Card with Deadlines

Deadlines aren't just a useful way to manage priorities and stay organized, but can increase overall productivity as well. Thankfully, like any good to-do list application, Trello supports deadlines on a per-task basis.

trello-programmers-deadlines

I'm a big fan of card deadlines because Trello will send you email notifications when a deadline is coming up and when it passes. The deadline indicators on the cards themselves are helpful as visual aids too.

If you don't want the email notifications, you can disable them in your account settings. (Unfortunately, this will turn off ALL notifications as there's no way to only disable deadline emails.)

9. Enable the Calendar View

Speaking of deadlines, did you know that Trello has a calendar view that will show all cards that have due dates on them? You have to enable the "Calendar" power-up for your project's board to see it.

trello-programmers-calendar

The calendar can display cards in a Weekly or Monthly format, which provides yet another way to stay on top of your tasks in an organized manner so you never forget an important due date.

10. Add New Cards via Email

Have you ever been struck by inspiration to add a new task to Trello while you were away from the computer or otherwise unable to access Trello?

Or maybe your team communicates mainly through email and you want an easier way to turn those email chains into task cards on Trello?

trello-programmers-email-cards

The good news is that you can create Trello tasks using email. Open the side menu for a given board, click More, and then click Email-to-Board Settings.

You'll be presented with an email address. Send any email to this address with the card title as the email subject and the card description as the email body. In the settings, you can designate which list will be used when creating these cards.

11. Learn the Keyboard Shortcuts

This final tip is one that every Trello user should heed but will prove especially useful for programmers who already prefer to navigate everything using keyboard alone.

Trello has a number of hotkeys you should know:

  •         Arrow keys
        
    to navigate between cards and lists.
  •         B
        
    to switch boards. Type to search.
  •         D
        
    to add a deadline to a card.
  •         F
        
    to open the card filter panel.
  •         L
        
    to open the labels panel.
  •         N
        
    to add a new card after the current card.

This isn't an exhaustive list. Press

        ?
    

 any time to bring up a keyboard shortcut cheat sheet that includes every option available.

Other Ways to Improve Trello Productivity

In terms of programming workflow, I've found that these are the most important points that keep me productive and organized. Trello offers more features so be sure to check out our full guide to Trello project management.

And if you want to free up even more of your time by letting Trello automate repetitive actions, consider hooking it up with a few IFTTT recipes and utilizing these third-party integrations.

How do you use Trello for programming projects? Got any other tips to share? Or do you prefer a different task management app? Let us know in a comment below!