The DataHero Blog

How One Company Makes it Easy to Manage Github Projects

August 13th, 2013

Conquer Github

Like many software companies, we use GitHub as our source code repository.  GitHub provides a great hosted service of git’s incredibly developer-friendly software.  Unfortunately, the tools for effectively managing projects leave a lot to be desired.

Take GitHub Issues for example.  It’s a great feature in that it’s tightly integrated with git, allowing you to reference your tickets from within the commit messages.  Unfortunately, if you’re an engineering or project manager who wants to see how your milestone is progressing, the only insight provided is a completely meaningless “percentage of issues complete” bar.  Want to see the breakdown of tickets by developer or by feature label?  Forget about it.  Even answering a simple question like “How many issues does Gail have assigned to her?” requires URL hacking (assuming, of course, that you only have one active repo).

Answering questions like these are crucial if you want to effectively manage a project, and now you can do that with DataHero.  By connecting your GitHub account to DataHero, you can visualize and navigate key metrics so that you can focus on managing your project, not managing GitHub.

Let me show you how we use DataHero to help manage our development milestones.

After I’ve connected my GitHub account to DataHero, I see a list of the repos associated with my account:

Screen Shot 2014-12-05 at 10.41.02 AM

Note: DataHero will never, ever, ever download your source code – we only access GitHub Issues and the metadata surrounding Commits, and only after you click Import.

I start by selecting the repo I want to manage and import its issues (if I want to import issues across all of our repos, I can do that too).  After the issues are imported, DataHero automatically generates a set of suggested charts which show me important metrics about my repo, like tickets created by developer and number of issues closed by milestone:

Screen Shot 2014-12-05 at 10.42.29 AM

From here, I can view and refine any of the suggested charts, or create a new one using DataHero’s easy drag-and-drop interface.

Let’s say I want to see the breakdown of open issues by developer for the current milestone.  Here’s how I create that chart in just four steps:

  1. First, I click the Create New Chart button.
  2. Next, I drag the Assigned To attribute onto the chart canvas.  This will create for me a chart of all issues by assigned developer.
  3. To filter out closed issues, I drag the State attribute onto the part of the canvas labeled Create a Filter Using State.  When the filter overlay appears, I uncheck Closed.  My chart is instantly updated to show only open issues.
  4. Screen Shot 2014-12-05 at 10.43.24 AM
  5. Screen Shot 2014-12-05 at 10.45.10 AM
  6. Finally, to select only the current milestone, I drag the Milestone attribute onto the canvas (again to the region labeled Create a Filter Using Milestone).  I select only the current milestone and click Apply.

Screen Shot 2014-12-05 at 10.50.56 AM

And with that, I have a chart of the breakdown of open issues for the current milestone by developer!  Now I can see if the ticket distribution is skewed and if we should consider reassigning issues.

Once I’ve created all of the charts that are important to me, I can keep them up to date automatically using DataHero Live Charts.  During dev meetings, we can reassign and update issues and instantly refresh charts by just clicking Update Now.

Finally, managing GitHub projects is easy.

 


 

 

DataHero helps you unmask the answers in your data. There’s nothing to download or install. Simply create an account at and connect to the data services you use every day (like Salesforce, Stripe, MailChimp, Dropbox and Box). DataHero automatically decodes your data and shows you the answers you need through dynamic visualizations.

 

Start Managing My Github Projects

 

 

By Chris Neumann

Create my Free DataHero Account

Get the fastest, easiest way to understand your data today.