Why I Chose GitHub for Project Management (And How I Keep My Sanity)
Like many developers, I fell down the rabbit hole of binge-watching YouTube tutorials when I started thinking about project management. One common recommendation from programming influencers? Build your own issue tracker! At first, I thought, "Hey, I can totally do that!" I could create something customized for my own projects. Win-win, right?
Well, it didn't stop there.
Soon I was thinking, "If I’m building an issue tracker, I’ll need a database. Why not build my own for that too?" Then, before I knew it, I was spiraling down into the idea of creating my own programming language and interpreter. I mean, why not? The deeper you go, the slipperier it gets, and I quickly realized that I was getting too ambitious. For me, mastering the basics of organized project management was already going to be enough of a challenge without having to build the entire platform from scratch.
So, I did a little research.
I considered Asana because it’s popular, user-friendly, and has that professional cachet. But I knew GitHub was sitting there, with its slightly geeky feel, staring me in the face. Sure, GitHub isn’t exactly sleek or shiny, but let’s be honest: this project is super nerdy at its core. It felt like a natural fit. So, GitHub it was.
The Organic Flow of My Project Management
Now, how do I actually manage my projects? It’s a bit organic, to be honest. While I do have a big-picture plan in mind, I tend to focus on things that align with what I’m learning at work. If I’m working with Lambda scheduling at my job, I’ll tackle similar things in my personal project. But if there’s nothing pressing from work, I stick to the plan.
What’s the plan, you ask? Simple: each month has a focus.
For example, October 2024 is all about charting. My goal is to dive deep into this area and spend the entire month focusing on it. November? That’s going to be device-heavy as I prepare for the cold fall and winter months. I break the work down into digestible chunks and work backward from the end of the month.
Breaking It Down
Once the focus is clear, I try to break everything down into smaller tasks. I’ll spend at least an hour spinning my wheels on a problem before leaning on AI (although, let’s be real—sometimes I just can’t resist!). This process forces me to focus more on learning the skills rather than rushing to deliver something.
Scheduling Time for the "Other Stuff"
I also schedule some time for the less glamorous aspects of the project. For example:
Bug Catching and Debugging: I don’t have a QA team (surprise, surprise), so I schedule time every week to click through my page, walk through the code, and find bugs. I’ll log issues in GitHub as I go, and yes, sometimes I’ve written duplicates. But who doesn’t love a healthy backlog?
Content Catch-Up: This block is for documenting my progress. After making a bunch of updates, I need to go back and ensure my documentation reflects the current state of the project. I might be slow, but this process helps me learn and understand what I’m doing on a deeper level.
Why GitHub?
In the end, GitHub won me over not just for its geeky charm, but because it fits the spirit of my project. It keeps me organized while allowing flexibility, and it’s accessible to anyone who might want to collaborate (or just peek under the hood). Plus, it’s a great tool for managing issues, pull requests, and documentation all in one place.
By choosing a platform that aligns with my needs (and my nerdiness), I can focus more on the skills I want to develop without getting sidetracked by building unnecessary infrastructure.
That’s why project management isn’t just about tracking tasks—it’s about finding a system that fits your workflow and your goals.