I want to teach you a tiny bit of project management. I’m not a project manager, but as a developer working in a corporate environment, I’ve seen it done well. I would guess a lot of you guys have never worked on a corporate team like that and have never given it any tiny bit of thought, but project management can be useful—especially if you have started working on a team with other people now. I’m not talking about only software development projects, even though that’s the situation I’m most familiar with. You can apply these techniques to any kind of project.
Let me just tell you in one paragraph what I mean by “project management”. Overall, the goal is to facilitate and coordinate the completion of some overall “project”. It’s about keeping track of tasks to be done, what state of progress they are in, what the requirements are, and any impediments that may arise along the way. A project manager typically works with a team (or a few teams) working on a project, and he or she helps everyone stay abreast of the state of the current tasks everyone is focused on.
In both of the corporate jobs I’ve worked as a developer, we used Atlassian Jira as our task and ticket manager (https://www.atlassian.com/software/jira). It’s software that allows you to create tickets for tasks that need to be done. Jira is quite complex, and in Jira you can include many different kinds of information along with tickets. You can move them into different buckets like “To Do”, “In Progress”, “QA”, etc. Jira will also keep track of all the history of tickets, any notes on them, any movements, and discussions about them.
Jira is great, but it’s more complicated than what you need for a small personal project or small team projects. Also it’s not free. So for the kind of project I’m talking about today, I recommend Trello (https://trello.com/). Trello is free for basic use. For more complicated usage needs, they have add-ons that cost money.
By the way: I’m not being paid by either Jira or Trello. Nor do I speak for either of those companies. I’m an unrelated third party, and these are just my own unbiased personal opinions.
Today I made a new Trello board for a personal, one-man, me-only project. It’s like a To-Do list, but a little more sophisticated because it is several lists coordinated in one view.
When you start a new board, you just name it, and it lets you create lists. Adding new lists is how you create buckets like “to do”, “in progress”, etc. And basically that is what I’m suggesting—that it’s valuable to add this kind of project management to your life. And perhaps you might do that by creating a dedicated Trello board for each of your major projects. Then you can keep up with your tasks by moving them between these buckets. And you can see everything going on at once by looking at the board.
Your buckets (“lists”) might start out basically the same. In software development, we would have buckets like “backlog”, “to do”, “in development”, “QA”, “owner approval”, and “ready for deployment”. Here, backlog contains just everything you want to do some day, possibly ordered by priority. The “to do” list is your current focus. I think “in development” is clear. QA is for quality assurance, which means testing. Owner approval (or maybe it’s called other names elsewhere) means that the owner of the project signs off that the project meets his needs, which is usually a cursory inspection. After that, this task is ready to be “deployed”. It’s in a state where if you need to click a button or something to actually publish it or make it live, then you may freely do that and then remove the item from your board.
Outside of a development environment, you might choose different names, and less of them. Perhaps just “to do”, “in progress”, “QA”, and “ready to go” to start. Then mainly you use the board to keep track of the state of all the tasks you are focused on right now.
One of my projects right now is to build more of a public persona. It may seem vain, but I think over time it will help me maintain better job security. Plus I enjoy writing, and I’d like to build an audience so people actually read what I write. There are many task related to that ongoing project that I want to keep track of. So I just made a board for it.
I just started this board, so I haven’t added any of my to-dos yet. In my case QA will just mean whatever QA means for the kind of task at hand. For a blog post, it will mean proofreading. And off screen there is a “ready for deployment” list. It’s just a place to put things when they are ready to go. Having this blog post ready to go means I can push the “publish” button and make it live.
One more thing: like most good web projects nowadays, Trello also has a mobile app. I find it quite use-able, and you can view the same boards either on your desktop or in the app.
I hope this sparked some ideas for you. If you thought this was useful, please share the blog post on Twitter or any other platform. If you have comments or questions, you can contact me on Twitter (https://twitter.com/adamfgcross), and follow me to get updates when I write more.
Plus I do a lot of micro-blogging on Twitter that you won’t see here in my long-form blog. The more good follows and shares I get, the more time I can spend on my writing. 😀 Thanks for reading