Why Use GitHub for Project Management?
Time is money, and it’s a resource that software engineers have in short supply. On top of that, developers have their hands full with development – admin tasks are often looked at as an unnecessary convenience. They pile pressure onto team members who are already struggling to keep up with their workload.
Unfortunately, many developers have had a bad experience with project management software. It can often feel as though you’re using a tool because you were ordered to – and not because it’s actually useful.
Learning to use new tools takes time;
Keeping those tools up-to-date takes time;
Sharing data between systems takes time;
But that’s not a good enough reason to dismiss project management tools altogether. After all, fewer than a third of all projects are completed on time and on budget, and a whopping 97% of companies believe that project management is critical to business performance and organizational success.
The truth is that project management software is no longer optional – it’s mandatory. But the good news is that you can do it all from within GitHub – so your developers don’t need to learn new systems and so that your data isn’t spread across a dozen different service providers. Here’s how.
Why Use GitHub for Project Management?
It’s pretty simple – developers love it.
According to Gartner, 75% of all enterprise resource planning projects fail, largely because of a lack of uptake amongst staff and the need to train people on how to use the software.
GitHub has an advantage here, then, because developers are already using it to store and share repositories.
Getting developers to use GitHub is about as difficult as getting 17-year-olds to use Snapchat. You’ll be setting yourself up for success right from the start because you’ll be talking in a language that they already know, and you’ll be asking your staff to use a tool that they’re already updating on a daily basis.
Of course, there are naysayers out there who’ll ask questions about GitHub’s efficacy when it comes to project management. After all, there are tools out there that are specifically designed for project management.
Those naysayers aren’t telling the full story. There may well be better software out there, but it won’t do you any good if you fail to use it. A plane can travel faster than a car, but you’d still jump behind the wheel instead of into the cockpit if you’ve never learned to fly.
GitHub for Project Management
Using GitHub for project management is actually pretty simple. In fact, it can make you much more productive if you’re using its components and integrations properly. We know that from personal experience – it’s worked for us with teams of up to 15 developers, and there’s no reason why it can’t be scaled even further.
GitHub Issues will be your friend here.
It has some fantastic features already built into it, and some of them are conspicuously absent from other project management tools. For example, Basecamp doesn’t offer tags and Asana doesn’t offer multi-user assignments.
GitHub describes Issues as “a great way to keep track of tasks, enhancements, and bugs for your products”, adding that “they’re kind of like email, except they can be shared and discussed with the rest of your team.”
Some of GitHub Issues’ most useful features are:
Built-in tagging system: This allows you to organize and prioritize your workflow and to easily search through projects for relevant information.
Milestones: Perfect for associating issues with specific features or project phases, such as bugs that need to be fixed before a beta launch or tasks to be completed in October.
Multi assignments: Issues can be assigned to users in bulk, saving time and making you more efficient.
Commenting: Engineers and management teams can easily discuss progress and results at every step of the way using the inbuilt commenting system.
Task lists: Larger issues can be broken down into stages to discourage the creation of dozens of microscopic issues, keeping all of your work in the same place.
Markdown format: The ability to use markdown formatting will prove popular with your developers, and it can be used in most places around GitHub.
High security: You can trust GitHub to keep your data safe, and it’s harder to breach than most other project management systems.
Project boards: These can be used to house issues, pull requests, and notes, categorizing them as cards in columns of your choosing so you can look at larger projects as a whole. Like this:
And better still, thanks to the GitHub spirit of constant improvement from the community, a whole host of extra integrations can be found in the integrations directory.
Project Management Integrations for GitHub
The basic features that Issues can offer are enough for many businesses to get by on. But others will want to adopt more powerful tools to turn GitHub into a project management powerhouse.
That’s where the integrations directory comes in, allowing users to integrate GitHub with other tools such as Slack and ZenHub. Here are just a few of the integrations that you’ll want to take a look at.
It’s the number one choice for time tracking, time estimates, and time reports, and it integrates so closely with GitHub that it looks and feels like a native part of it. That helps to cut learning times when you ask your team to start using it.
On top of that, reported timings and estimates are displayed right next to Issue titles, making it easy to keep an eye on whether you’re on schedule. This is important because many companies only share timesheet data with managers, and they’re often only looked at when it’s time to create a report or an invoice.
When you switch that around so that the entire team can constantly see estimates and time spent on tasks, it’s a different story altogether. It suddenly means that everyone can track progress and keep an eye on project progression, which means that everyone will hold you accountable. It also means that if your developers cause delays then there’ll be someone to pick up on it and to ask them why.
ZenHub is designed to add enterprise-grade project management tools right inside the GitHub interface. It uses a browser extension which makes it easier for your team to use it on the go, and it offers up the much-needed ability to visualize the entire workflow from start to finish.
Of course, one of the other advantages of using ZenHub is that it’s purpose-built for developers, designed to bring your team together in an environment that they’re already using. Managers, meanwhile, can access accurate, real-time data at every step of the way.
Better still, if you do use ZenHub then you know you’re in good hands – it’s already trusted by Adobe, Sony, VMWare, Starbucks, Microsoft, Panasonic, Comcast, and more. And it integrates with Slack, which brings us on to the next item on our list.
Slack is one of the most rapidly growing business tools in the marketplace, and it’s easy to see why. It makes it much, much easier for your team to stay in touch, especially if they’re working from home or based across multiple locations.
Slack integration is built into a number of GitHub add-ons, but it also has an integration release of its own. The great thing about this is that it augments your existing project management process, offering up features – such as customization, file sharing, and instant messaging – that often trump what GitHub itself has to offer.
Of course, we’re not saying that you should go ahead and use the Slack integration from the outset. It might not be right for you, and you don’t want to overwhelm your developers by expecting them to learn to use too many new tools. But if you’re already using Slack within your business, it can’t hurt to integrate it with GitHub for your developers – especially if you’re using it for project management.
HuBoard is another smart choice for bringing project management to GitHub because it’s built from the ground up using the GitHub public API. Better still, it’s specifically designed to keep issues in the same repository as the code that the issues are referring to, which will help you to store all of your data in a single place.
It also has a useful drag and drop interface, which makes it quick and easy to assign issues to your team members, and you can customize almost everything that you see in front of you. Perhaps most importantly, it also allows you to prioritize the work, making sure that your developers are working on what’s most important to the business.
HuBord has a number of different payment options and they even offer up their top plan for free to educational institutions. A free trial is also available, so you can give it a go before you commit to using it full-time.
Who’s Using GitHub for Project Management?
By its very nature, GitHub is better suited to companies that have a large number of developers. One such company is MailChimp, which is used by more than ten million people and businesses around the world to send marketing emails.
MailChimp started to use GitHub Enterprise to work together across teams, with developers and content creators alike using the system to manage projects.
Then there’s CoverMyMeds, a company that converts the manual, paper-based health care process into an electronic workflow, integrating with more than 45,000 pharmacies and insurance plans. They faced the interesting constraint of being forced to keep all code on internal servers, which ruled out many pieces of project management software. They were able to use GitHub Enterprise to house everything internally, boosting productivity as a result of it.
GitHub is also used by SAP, Braintree, Hootsuite, The Trainline, HubSpot, the DLR Institute of Robotics, and even NASA’s Jet Propulsion Laboratory.
How to Get Started with GitHub Project Management
Your developers are almost certainly already using GitHub, so you won’t have to worry about walking people through the sign-up process. Of course, you might want to carry out a brief audit to make sure that everyone has the correct permissions and that they’re added to the right teams, but once your basic infrastructure is in place – and it probably is already – you’re good to go.
You can get started by creating an issue to share a new idea or to report a bug. Once an issue has been created, you can assign it to a relevant team member and support it with file attachments, codebases, and other information. For larger projects, add milestones so that you can stay updated along the way, and encourage your developers to document their processes through GitHub.
Remember that Gartner found that 75% of all enterprise resource planning (ERP) projects fail. Set yourself up for success instead by providing training if necessary and incentivizing participation. Consider holding a ‘GitHub user of the month’ competition and rewarding the most active (and efficient) employees with gift vouchers and other goodies.
Any system is only as good as the people that use it. Ultimately, it falls to your project management staff and your developers to make or break your processes. Switching to GitHub increases your odds of success, but it’s your employees who’ll determine whether it works for you.