Up to now, when I do software development work at home I haven’t used any management tools. Heck, I don’t even use version control. I just keep a todo text file somewhere.
But astonishingly, this is getting a bit creaky, as the todo files are fulfilling several roles and it’s not clear what’s been done and what is highest priority.
My concern is just if I start using JIRA, a bug tracker, a project manager and so on they will cost more time than they save. Even something like SVN might seem a no-brainer, but I don’t want to be screwing around fixing repos that are in a weird state, and that does seem to happen from time-to-time with vanilla SVN.
So…recommendations for “lite” tools, that won’t cost much admin time? Or other suggestions?
Anything is OK for your bug tracker/todo list/project management. Including a text file. I’ve used a spreadsheet, a text document, a database, email and the other stuff.
It’s only worth doing anything complex if (A) you need to share it with someone else, or (b) it needs to include structured relationships (to resources, people, design hierarchy or anything).
But version control of some sort is handy even if it fails sometimes. I’ve used PVCS, SourceSafe, Windows, and SVN, and SVN is by far the most irritating, but even so I wouldn’t be without it.
I can easily imagine being too lazy to set up a version control system, but even I can see that not having it would create more work. The rare failures are not and never have been important: we’re talking loss of past versions, not loss of work in progress. The only problem is that you have to plan to dedicate the disk space.
Bug tracking for a single-programmer project? I’d just use a text file. Or Word doc. No need to get fancy.
But source control? No way I’d write a line of code without source control. It’s a lifeline. I disagree with Melbourne, SVN is not bad at all. No, it’s not a no-brainer, but I’ve yet to find source control that is. It doesn’t take too long to learn or set up, it’s free, and it does the job.
While I do think version control is separate, for everything else - from to-do lists, project notes, design thoughts, screen shots, email snippets, and pretty much anything else - I’ve been using OneNote more and more. It really is flexible. We have had at least one major thread on it at SDMB earlier in the year.
If you get a private github it can do most of this with its issue tracker. Only $7/month for 5 private repositories.
Git really isn’t that hard. At first all you need is pull, commit, and push. But having access to things like reflog, reset, and rebase can make you practically immune to really dumb decisions. (Except for really dumb decisions when using rebase which can make your commit history look hilarious)
Distributed version control is the only thing anybody should be using right now, at least until somebody comes up with something even better, but it is pretty much the case that git has, for the moment, swept the likes of SVN, CSV, SourceSafe, Perforce, and everything else into the rubbish bin of history. There are other distributed version control systems, like Mercurial, Bazaar, and darcs, and there are reasons one might choose any of them. But absent some specific, educated reason, the default choice ought to be git, if only for its ubiquity and the ease of finding support for it.
As for an issue tracker, I’d say it’s hardly necessary for a small project, though if you use Github you can get one with practically zero effort, so why not?
What’s your favourite language and IDE? If you happen to be using Visual Studio, I can strongly recommend Visual Studio Online, which is a terrible name for something that’s really a “lite” version of Team Foundation Server. Includes source control, issue and bug management, and some development planning features. Free for up to 5 users.
I’ll third the suggestion of git, but with a caveat. It’s a fantastic tool but there is a learning curve to it, and the curve is steeper than it really needed to be because git re-uses terms from other version control systems to mean completely different things. Once you get over that learning curve, though, it’s just a great, flexible and easy-to-use tool.
Thanks for the suggestions guys. I haven’t used Git before, but after investigating I like the concept behind it, and it seems to sidestep some of the issues SVN can have, so I’ll give it a go. The first beginner’s guide I found (actually a community-created one at stack overflow), looks comprehensive while still using words of one syllable
In terms of keeping a record of planned tasks and bugs, I will look at OneNote, Visual Studio Online and Mantis Bug Tracker and report back…