I had an interesting email conversation on Friday with which I wish to bore you.
It’s a long story but first some background…
I discovered a data problem in Bugzilla (our bug tracking software) and fixed it in a couple of entries. This triggered emails to the developers responsible for those bugs. One of those developers, Dave D, came and asked me about it. I told him the problem, and he suggested I send an email to the developers explaining the situation.
I sent this:
> I've just had to fix a couple of invalid bugs in bugzilla
> they were invalid because they had been assigned to a non-existent release
> The data integrity check I run regularly spots that kind of thing.
> I'm not sure how this is happening, they were both changed yesterday
> around lunch time.
> They only thing I can think that happened is that an existing milestone got
> renamed; RC04 to RC04 (1308 ), and after that had happened, people with these
> bugs open in their browsers (with the page loaded before the rename) then
> submitted those bugs, submitting the old names in the form parameters and
> re-assigning them to the old name.
> When I get a minute, I'll check bugzilla's bugzilla to see if this has been
> reported as a bug.
Note, I’m explaining what happened and assuming a problem with the software.
I then received a reply from one of the developers:
> I submitted a bug yesterday and got a mid air
> collision as a result of the milestone changing.
To which I responded:
> And you didn't highlight it to anyone? Look into it?
> Folks, I know we are used to Windows programs having
> random errors for no good reason, but when something says
> "mid-air collision, something went wrong, data may be lost,
> do you want to sort it out?"
> Please THINK about that! If you don't know how to sort it,
> speak to someone who does!"
> David D, I presume this happened to you too. Since you were
> the other culprit!
> From the bugzilla docs (which are online here
> http://cvs01.eunite.co.uk/bugzilla/docs/html/Bugzilla-Guide.html )
> A.4.20. Does Bugzilla provide record locking when there is
> access to the same bug? Does the second person get a notice
> that the bug
> is in use or how are they notified?
> Bugzilla does not lock records. It provides mid-air collision
> and offers the offending user a choice of options to deal
> with the conflict.
> C'mon peeps a bit of common sense.
OK, so now I know what happened. It wasn’t a fault of the software, in fact the software pointed out the problem. At this point I went and spoke to Robin to talk through what had happened. We went through what the message meant and why it was significant. I also explained why data loss like this can be significant. Robin was fine, understood, and I’m sure will have an idea what to do next time it happens.
When I got back to my desk I had received this:
> if there is a problem like this then it is a problem with the
> software !!!! developers should not have to spend there time
> identifying problems in software esp as this mid air
> collision also happens when two people update a bug at the
> same time you would expect that people would just wait an re
> submit the bug not.
> the tone of this mail was totally unacceptable I am not
> expecting a reply !
This was from the senior developer of the team. To say the least it got my back up somewhat. I replied:
> You're gonna get a reply!
> The software detected the problem and informed the user.
> The software CANNOT resolve this dilemma. If two people
> make different changes to the same bug, how can the software
> decide which change it should keep?
> I've already spoken to Robin and he is fine about it. He
> understands what went wrong and how to handle it next time.
> I'll speak to Dave on Monday now, I'm sure he'll not have a
> problem either.
> What is the problem? We are professionals! We shouldn't ignore
> detected errors which actually tell you that changes are going
> to be lost.
Here I pointed out that there was not a problem with the software, and that at least one of the developers involved had learnt from the situation.
Now, this is my philosophy on professionalism. If I make a mistake, I want somebody to point it out to me, so I can learn from it. So I can avoid making the same mistake again. If some software tells me I’ve made a mistake, whether it’s the spell checker, a compiler, or what ever, I want to understand what I did wrong, correct it if I can, and certainly be more careful to not make the same mistake again.
Matt replied again:
> the problem is more with your attitude towards the developmet team not
> specific to the software I dont call these barrage of abuse that you
> constantly dish being professionals. I think we should carry this discussion
> out when aamir is back on moday
Aah! Suddenly it’s not the software’s fault. Now it’s my fault!
Apparently my attitude towards the development team is the problem. My pointing out a problem, my analysis of the problem, and my constructive response to the problem is a problem itself.
Now, call me silly, but I really cannot see any barrage of abuse in any of my emails here. Unless my appeal for professional developers, people who get paid to do a job, to use some common sense is somehow considered abusive. Or maybe it’s me calling Dave a culprit. Funnily enough I’d already said this to him when he first came and talked to me. I didn’t percieve that he thought this was abusive. So where is this barrage of abuse. I certainly can’t see it.
By the way, Aamir is our manager. I’ll have to wait until Monday to see what he thinks of all this. I would hope that after his email earlier this week which declaimed the lack of professionalism (my words) in the developers, but specifically excluding my team, that he will understand my desire to encourage my colleagues to use their common sense and respond sensibly to errors and warnings from software they use. After all they all know they have to deal with compiler errors and warnings. Why is this any different?
It really gets my goat when people decry the desire to better oneself, and to encourage betterment in others.
Anyway, that’s my rant over with.