In the comments to my last post “Users and Non-Users“, a couple of SolidWorks users leveled what I believe to be a pretty serious accusation against SolidWorks. They claim that SolidWorks finds bugs in their software, does not fix them due to lack of time and goes ahead and releases the software. As a software developer I find this pretty hard to believe. But then maybe that’s because I draw a clear distinction between “bugs” and “known issues”.
Known issues are problems in the software that programmers have come to know of and are unable to fix for a variety of reasons, some of which may be beyond their control. For example, the compiler used to create the software may have a bug that prevents a fix. The data being sent to the software for processing may be just too large. In such cases, programmers hard code in a check just before a problem can occur so that the software aborts gracefully and does not crash. This information and the behavior related to it is then passed on to the people writing the documentation and they add it to “Known Issues” section of the product documentation. This is perfectly fine with me and should be fine with any reasonable user as well.
A bug, on the other hand, is something that the programmers have come across or users have reported, the cause of which is yet to be ascertained or the solution to which is yet to be implemented. Personally I consider releasing software with such unfixed bugs, without converting them to known issues, is sacrilege. It is unpardonable. It is like Boeing shipping a plane to a customer comforting itself with the hope that the chance of it crashing is fairly low. OK, maybe I am exaggerating a little here, but I think you get my point.
Earlier I mentioned that programmers may not be able to fix bugs for a variety of reasons. Time should not one of them. That’s why, in principle, I am against this annual release cycle thing that some CAD software vendors have got going. Now we all know that it makes good business sense to do that. But having said that, I would like to share something which an extremely successful businessman, Bob McNeel, said to me at COFES 2009 when I asked him when Rhinoceros 5.0 would be released. He replied, “I don’t know“. I almost spat out the beer that I was drinking. He went on to explain, “Of course, we do have a date in mind, but it all depends upon how the software looks like at that point in time. We have never had an annual release cycle. That would just makes a mess of everything.”
Great minds think alike, eh?