Github boards for project planning
At the beginning of every project we review our development process and the tools we use in order to check if there is something that we could be doing better than the last project. So at the beginning of our latest project we decided to slim down the current toolset without loosing functionality as we were having that feeling of tool overload and information spread over a thousand systems: issues on tool A, code on tool B, general tasks on tool C, and so on, you get the point!
We were already using Github to host our projects (both code and design files) and related issues so we decided to give Github project boards a try in order to do our project planning instead of using yet another external tool.
How are we using Github boards?
We started using a Github board per each of the repositories we have (i.e. iOS app, Android app, Elixir/Phoenix backend) but we realised that it didn’t give us an overview of how the project was going, that’s when we found that we could create a Github board for the organisation and have the tickets from all the platforms being listed there.
On the board we have 5 columns:
- Frozen / Needs Action: tasks that are blocked and need some action or decision until the development can start;
- Go Live: all the tasks that have to be done until the Go Live;
- Current Sprint: tasks planned for the current sprint, we are currently using 2 week sprints;
- In Progress: tasks that are actively being developed;
- Done: tasks that have already been done;
Our routine goes like this: at the end of each sprint we remove the tasks that have been done from the board and move tasks from the Go Live column into the Current Sprint column. When a developer starts a task he moves the issue to In Progress and when the task is finished he also moves it to Done, nothing fancy or different than what you might already be used to.
The beauty of this is that you have all the related information (planned features, bugs, documentation) and work done (code, design) in a single place, you barely need to leave Github to contribute to the project. This is specially great when we have clients that aren’t that tech savy and struggle to follow the flow of information through all the different tools.

Problems we found when using Github boards
Nothing is perfect and Github boards are no exception, we found a few things that we do not like:
- From the board itself we can only copy a card or remove it from the project, any other action needs to be done by opening the issue on a new tab;

- Issues that are closed aren’t moved automatically to the Done column;
- Quite limited in relation to other platforms like Jira, but it contains the bare essentials for doing project planning if you do not care about burndown chats and so on;
- Using Github like we do for wiki, issues, project planning, code hosting can be dangerous as you are dependent on a single platform;
Github and more specificaly Github boards certainly aren’t perfect and we hope Github improves on it but for the moment it suits our needs and we can live well with it’s shortcomings.

