Bitesize Agile with GitHub

About

Implementing a boiled down version of Agile development and applying it to your games development.

What is Agile?

A google search here or there will get you the answer to this question, but for this instance the basics is breaking down parts of application development into achievable tasks within a sprint. A sprint is usually a time span of a week to two weeks. Within this sprint you commit to what you believe can be done within that time span. If you get it all done within that sprint you can add more from your backlog, which would result in a spike. A spike is when you add work into your sprint that you didn’t originally account for within a sprint. Usually a task is defined by its effort of work in points or estimated time it takes to completed. This is scratching the surface, but its a boiled down explanation.

Sprint Structure

Within agile there is a concept of a sprint, which is a measurement of time where you try to complete tasks. When trying out Agile within Arduboy games development attempt week long sprints. Don’t feel like you have to assign tasks for each sprint, but just add your tasks into the In Progress lane and see what you can get done within a sprint.

To keep track of what you got done within a sprint use GitHub’s milestones for each week long sprint and assign it to a pull request.

Pull Request?

A pull request is when you merge code from a branch to another branch. Within GitHub you can create a branch development and make a pull request into master. Within there you can apply a milestone which would be a sprint.

Why?

It forces you to layout the project in a manner where you can see a story or task in a project by using a Kanban board. A Kanban board is a way to manage work visually so you see the whole picture of a project. An added bonus is that it gets you more task oriented and also get the brain going on what needs to be done to archive a release or whole application.

Bitesize?

Well, there are a ton of resources out there that allow you apply agile to a project. You can get very granular when planning out a project. There can be epics which include stories and tasks where a story could have sub-tasks within it. With this post i’ll be using GitHub Projects using the baked in Kanban board template.

Where Do I Start?

Follow these steps to create your first board.

So… Whats Next?

Well, start asking questions here or just play around. I promise you the little time and effort spent planning out your game within a structure sets you up for success.

Example

With Game Jam 5 I am using agile to better organize my game and keep track of what I get done within sprints.

Use Case:

Recommendation:

  • Get an idea for a game and give yourself a month to complete it.
  • Have each week be a sprint.
  • Take a few days to plan and add tasks to your project you wish the game to have.
  • Setup milestones so you can track what you completed within a sprint.

Closing

Just ask if things aren’t clear or recommend portions where this post can be improved. There is so much I can add without writing a series.

This is marketable knowledge that is used within the industry, so applying it to Arduboy games development only adds to your toolbox and keeps you current.

Ba an IT Professional


Keep expanding your knowledge by leaning how APIs work!

1 Like