Flame on

There’s an interesting post over on “Blogging Considered Harmful” about why flaming someone for incorrect technical spouting is a good thing; I tend to agree. I actually WANT people to shout down my stupidity, if they’re right and I’m wrong then hopefully I’ll learn from the exchange. If I’m right and they’re wrong then perhaps they’ll learn from it. Either way it should make both sides think; though perhaps I’m being a little naive…

Take this recent exchange in the comments for one of my articles over on CodeProject. Someone, ostensibly called Alex Gris, with no other posting history on CodeProject looks at some of my code, does a ‘code review’, decides he’s found bugs and reports them in a slightly aggressive manner. Fair enough, I admit that my first reaction was along the lines of WTF, you’re wrong… However since I’ve been exposing myself to this kind of thing for a long time now and I’ve made plenty of stupid mistakes in the past and I’ve also sometimes defended stupid mistakes without double checking that I am actually right I tend to try and take a more careful line these days… So, the first thing I did was try and ignore the tone and deal with the content. My gut reaction was still “you’re wrong, I’m right” but I loaded up the code in question and took a look at each of the issues… It took a little time and reviewed the areas where Alex had been critical. The end result seems to be one known and fixed bug, one incorrect problem report, one question of a potentially dubious design decision and one suggestion for an improvement that was theoretical and hand-wavy and that wasn’t then followed up with some actual working code. If actual working code IS forthcoming from Alex and it IS a better design than what I have at present then my code will have been improved by placing it on the net in public, and that’s good. If it doesn’t then Alex has just made himself look a little silly and over-eager to shout down my code…

Of course I prefer this kind of critique to be packaged in a reasoned and friendly style (such as the problem report in the comments to this piece) but I realise that sometimes the people that know enough to be able to provide the technical feedback that I need are busy and have seen these kinds of mistakes far to many times before, or they’re just gnarly old curmudgeons who don’t care what I think of them but do want to publically correct technical errors… Either way I want the bug reports and the feedback that makes me think and makes me try and improve what I’m doing more than I want them to be packaged in a nice and fluffy way.

What really bugs me are people who really don’t like to be disagreed with at all… I’ve no time for the blogging fan boys who like to set themselves up as authorities on things and then don’t like to have to defend the positions that they take, some of them even don’t allow comments… I’m sorry but “Don’t you know who I am” just doesn’t cut it ;) If you believe in what you’re saying then argue your corner, don’t just expect that the peons reading it should take it as gospel.

Of course there’s always the danger of not spotting the point when these discussions get to the point where they’re actually becoming circular and neither side is willing to accept that they might be wrong… Sometimes you just have to agree to disagree and move on, but I prefer to try and convince the other side that they’re wrong, and sometimes the extended investigation and documentation required to do that actually proves that they’re right…

So, flame on, it’s good for us.