Yet another post to add to my “Ask The Readers” cycle. What are you guys using for bug/issue tracking. As we all know, there are 3 things that distinguish a real software developer from a ‘just out of school’ newbie. These things are (not necessarily in that order):
- Real Programmers use Source Control
- Real Programmers Track Bugs
- Real Programmers use Emacs and/or Vi
Yeah, you thought that #3 would be about documentation or Unit testing, but it’s not. I’m feeling subversive and mischievous today (after all it’s April first) so you get the Vi/Emacs remark. Deal with it.
It’s easy to pick source control, since after all there are essentially only two worthwhile systems out there: cvs and subversion. There are some other systems that offer cool features, and I’d love to hear why your system is better than the others, but at the end of the day these are the two important ones. They are basic, simple and powerful.
Bug tracking on the other hand is a whole different animal. There are dozens of systems out there, one more bloated than the other. Personally I use a home grown system which I dubbed SITS, and which is my little vaporware project which may or may not become public at one point. It is very basic, and simplistic – not to say primitive. For some time now I have been looking around for alternatives to see if perhaps there is a more organized, polished way of doing these things. So far I haven’t found anything that would suit my needs. So I figured I might as well ask here. What do you use to track your bugs?
I’m really looking for something simple, preferably web based, and if possible something that could work as an issue tracking system as well so that I could keep my syadmin tasks in the same place as software related bug reports. PHP+Mysql is proffered since this is the platform I’m working with, but I’m open to new things.
Suggestions? Let me know what works for you, what doesn’t and which systems do you hate.
[tags]bug tracking, issue tracking, sits[/tags]
Where I work we prefer Trac (http://trac.edgewall.org/).
We also have to use FogBugz occasionally, which I do not recommend. At least for the way we do things, Trac is the better choice.
I don’t know if your comment about cvs/svn being the only worthwhile version control systems out there or if IHBT, but both of those systems suffer scalability problems. The up-and-coming source control system is git, which is a semi-distributed SCM system used to manage the Linux kernel sources, among other things.
Professional developers will probably be familiar with at least one of Clear Case, Visual SourceSafe, or Perforce. IMO the only SCM worth anything in that list is Perforce, which isn’t saying much, but it is what they use at Microsoft and Google (as well as other companies). Our repository has long since outgrown svn, and we use P4 as well, along with a custom wrapper we wrote around it.
For small projects, sure, use svn. I use that at home, though I’ve been thinking of switching to git just because of the cool factor. But realize that it’s definitely not one size fits all.
Moving on topic, though, at the company I work for we use a home-grown bug tracking tool as well. At home, I just use a plain text file, since I don’t need anything fancy. Looking at the svn history of the BUGS file lets me see which checkins addressed which bugs, so it even (sort of) integrates with my source control.
Our programmers tried bug track and roundup, then later bugzilla. Then ended up on something else (other than
For source control, they used svn but were talking about trying git.
And they all used visual studio (makes sense for .NET). Since we were mandated to use Windows, I used notepad++ for my scripting (I wasn’t a full programmer). And occasionally xemacs.
We use trac as well, its user-interface is simple, it has lots of plugins, supports svn very well, but i hear that it supports other source control software (i think cvs, git and mercurial).
as for bug tracking, I find it good enough for us, but I work in small company, I don’t know if bigger companies have different needs from the bug tracking system.
anyway, give it a chance :)
+1 for Trac!
I’ve been using it for different projects for a few years now and it’s been a pleasure. I was even able to stretch it outside the limits of pure bug tracking using its quite good XML-RPC API plugin. On a more personal note, I think it’s the best looking bug tracker out-of-the-box there is.
On top of all that, the Python code of Trac is top-notch, a real pleasure to read and modify when needed.
At work, we use Trac (or at least some of us do; others never check their tickets…). For my own personal stuff, I just use GoPlan. It’s extremely simple but does the little that I need it to do.
BTW, I heard “real” programmers don’t use DH ;)
$ time curl http://www.terminally-incoherent.com/blog/2008/04/01/what-do-you-use-f or-bugissue-tracking/ -o tmp.html
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 49516 0 49516 0 0 2453 0 –:–:– 0:00:20 –:–:– 5180
real 0m20.285s
user 0m0.014s
sys 0m0.037s
1. Visual Source Safe is a tried and true classic, I highly recommend it for source control.
2. A Microsoft excel spreadsheet or Microsoft Word document for defect tracking.
3. VI is for wankers, real programmers like more bling-bling, go for the best IDE on earth – Visual Studio.
We use Trac here. I have used FogBugz and Bugzilla a looong time ago, and they were both awful, but may be better now. The only real gripe I really have with Trac is the standalone user management is awful. It’s designed to be tied into your domain’s user accounts, so the standalone stuff is an afterthought. A very minor gripe is that their wiki markup language is a bit cumbersome if you’re used to mediawiki
We also use Source Safe, but I’m told by some that git is the dog’s bollocks when it comes to source control.
On average, JIRA does the bug tracking job. Adam made me laugh. And vi is for people who are intimidated by emacs ;-)
~Matt
Use Borland StarTeam!
*shamelessly promotes own product*
If there isn’t enough here to scratch your itch, I’ve put together a page of links to bug tracking discussions just like this one:
http://ifdefined.com/blog/post/2007/10/Links-to-other-comparisons-of-i ssue-trackers.aspx
Regarding source control, before you limit the list to cvs and svn, you might want to hear what Linus Torvalds has to say about “git”:
http://youtube.com/watch?v=4XpnKHJAok8
Wow, trac is clearly the favorite here. I will need to check it out.
Bugzilla was written in Perl. FrogBugz was written in Wasabi (whatever the fuck that is). Trac is written in Python. I’m going with Python on this one.
Also, I’m not tracking bugs or doing source control with anything that has Microsoft in the name. I’m not paying out of my ass if I can have a free solution that is better. :)
@Ian – rub it in, why don’t ya? Lazy programmers use DH. One of those days I will get of my ass and move. You don’t even want to know when was the last time I upgraded my wordpres for precisely the same reason (laziness).
@Matt – actually, you probably should use a wild card there: “* is for people who are intimidated by emacs” :P
@Nathan – well, I admit that I was never involved in projects of the size that would actually require more than svn. But yeah, I can see how it might be a problem as things scale.
@Corey – thanks for the video link. The cvs/svn bashing made me LOL.
I guess I need to look into git now. :P
FogBugz on Linux is PHP, so maybe don’t rule it out.
Wasabi is what the FogBugz folks use internally so that they can have the same codebase for ASP (for Windows) and PHP. They write it in Wasabi, run it through the “compiler”, and PHP comes out the other end for the Linux version, ASP for their Windows version. They ship the PHP, not the Wasabi.
I have developed a free open source bug tracking app which maybe you would NOT like, BugTracker.NET, because it only runs on Windows, but FogBugz was my biggest inspiration, so it might be worth a look for you.
For version control: svn, but soon switching for git,
bug tracking: trac,
and for development: eclipse with vim plugin ;)
At work I have to use Telelogic’s Synergy (recently been bought by IBM). I hope it will be discontinued ;). It has good workflow ideas but terrible GUI and terrible CLI which tempts you to make big handling mistakes which an admin only can correct (not the user himself).
It has one very nice idea: you can not simply check out things, you need to create a “task” first with a description and a project tag, and then things you check-out stick to that task, and in the end you check-in the task. This makes for a really nice workflow in connection with a bug-tracker; i.e. you create a task to fix bug 75308, and you immediately see from the task contents what were the files you needed to touch.
As I said: nice workflow, but terrible implementation.
At home I use svn, and for my workgroup I had a brief look at Rational (just another IBM product …) but had not enough time to finish this evaluation.
An interesting talk on Soure Control by Linus Torvalds
@Adam – I think that’s the same talk as Corey posted few comments above. Thanks anyway, it is an interesting vid. I love the cvs bashing lol
Git beats the pants off Subversion, so I am going to have to be another voice here backing it up. I’ll take Emacs + make + gcc + Git any day. I don’t yet have a preferred bug tracking system, though. Maybe ditz.