Ask HN: How do you manage your one-man project?
I am doing some side projects at my "copious" spare time (getting up at 5am and work for 2 hours). I think it would be a shame if I end up wasting time. So, I wonder if any of you, in your one-man project, use any software development methodologies (scrum)? Any project management software (evernote)? Or do you relax and not keep track of it at all?
61 comments
[ 3.8 ms ] story [ 345 ms ] threadLists are good - things to do both "must have" and "would like" - plus "yet to be tested" as things develop. Anything you cant just keep reliably in your head.
Carry a notebook around to jot ideas and sketches when you are doing other things.
I have one big project, so I have a Trello board for that, with lists for: Today, Tomorrow, and then future work by discipline (it's a game, so things like: gameplay, rendering, art, design, etc.).
Every morning, the first thing I do is check my today list. If it's empty, I move some things from the tomorrow list in. Then I fill up the tomorrow list with things from the future work lists.
This means I have a list of all the work I need to do, but I don't explicitly plan more than a couple of days ahead - things are too variable for that.
Once tasks (in the today list) are done, they get moved to a 'done' list that I can review later.
It's simple, and seems to work fairly well for me.
http://www.thesecretweapon.org/
I find that since I'm using the source control anyway, I may as well keep a track of everything there too.
it's an open source project, so this not only helps me having a clear idea of what I'm meant to be doing, but it also helps others to contribute to it, by giving a precise idea of what can be worked on at any given time.
Keep a simple list of things to do as a backlog and maybe another list of "would like"s. I personally use SimpleNote and Notational Velocity for both.
http://www.fossil-scm.org/
A todo list app can also be useful, but only if using it is something you use out of habit. That's why Github issues fits nicely with me, because it fits with my natural workflow (filing issues or scouring issues of software I want to use).
Generally though, I find that having a site out there and people using it is the best motivator to keep pushing forward. It creates a real sense of urgency and priorities, and you simply won't have the luxury of not focusing on the important stuff that affects people's experience.
You're (usually) not going to accomplish much, macroscopically, until you've done a fair amount of ground work (e.g. learning APIs). You need to keep that ground work fun, so whatever structure you impose on the process (to-do lists) needs to be focused on improving this factor.
I have a separate dev user on my machine that has no email or any other distraction and I keep my browser clean and purged.
This means it's a pain in the a*se to login to sites I visit in normal life.
Tracking progress helps motivation.
I'll host all my side projects on github. To keep track of bugs and new features I use github's issue tracker. Besides that I carry around a programmer's journal (some small paper notebook) where I write down new ideas, code snippets or concepts.
Personally, I find TDD is a helpful design aid for tricky bits of code. I don't bother when it's trivial, but when creating major systems or components, it helps to focus my design and enforce encapsulation.
I keep shuffling how I organize tasks. There's by-project, where I list all the things that need to be done to complete something. But I also have to keep some context lists like "next time I'm working on the website" or "next time I feel like doing a bunch of Photoshop work" for those tasks that keep getting put off.
I also keep a wall calendar (just a big sheet of white paper) with post-its for each deliverable. They keep slipping, but at least I can see how many weeks are left until external events.
When things get really unproductive, I walk away from the computer and sit down with a notebook or stack of index cards/post-its and dump everything that needs to be done. For tasks that are stuck, I try to apply Merlin's idea of visualizing what it will feel like to have it done: http://www.43folders.com/2005/10/16/43f-podcast-the-to-have-...