Thoughts from Dan Miser RSS 2.0
 Tuesday, March 23, 2004
Some posts in the Borland newsgroups have got me thinking about what a professional programmer's responsibility is when a bug occurs in code that is not theirs. The result is this list of guidelines and principles. The main thrust of this list assumes that a programmer is a technical person by nature. They do not need to be coddled and led by the hand.
  • Most bugs that are perceived to be bugs in a vendor's codebase, are usually not the vendor's fault. The first Maxim of Debugging is: The bug is most likely in your code.
  • Make the effort to work with the vendor of the bug to provide a clear, minimized, reproducible test case that demonstrates the bug. Expecting the vendor to fix a bug that they don't know about is just silly. If the bug is important to you, report it in a thorough manner.
  • If the bug is a true show-stopper (a term that is much over-used, in my opinion), then find a work-around. There are always other ways to express what a program should do. Rarely is a bug so serious that you can - in good faith - throw your hands up in the air and claim defeat. A professional programmer looks at this as an opportunity to distinguish themselves. If you code the work-around in a non-intrusive way, you can remove it easily when the vendor does fix the problem.
  • If you have source code for the library, debug it. It will help you understand exactly what the bug is, and hopefully, help you down the road by preventing you from making the same mistake. This can also help in bug reporting and finding a work around.
  • If you don't have source code, you can still make assumptions about what part of the black box isn't working and write a test case to prove that. If your assumptions are wrong, modify the test case.
While bugs are an inevitable fact of life, it's how you deal with them that truly defines what kind of programmer you are. Everyone has deadlines, but taking time out of your schedule to work with your vendors to resolve problems is part of your responsibility as a professional programmer.
Tuesday, March 23, 2004 9:30:00 AM (Central Standard Time, UTC-06:00)  #    Comments [6] -

Tracked by:
http://bbbbbbbbbbbbc.com [Pingback]
http://fbbbbbbbbbbbb.com [Pingback]
http://ebbbbbbbbbbbb.com [Pingback]
http://bbbbbbbbbbcc.com [Pingback]
http://dbbbbbbbbbbbb.com [Pingback]
http://www.dogs.com [Pingback]
http://www.cats.de [Pingback]
http://9nq-information.info/64175960/index.html [Pingback]
http://9nc-information.info/56516915/index.html [Pingback]
http://9ns-information.info/86965552/index.html [Pingback]
http://9nj-information.info/47950569/index.html [Pingback]
http://9na-information.info/56395493/index.html [Pingback]
http://9nl-information.info/06103270/coloring-truck-pics.html [Pingback]
http://9nh-information.info/39665435/humourous-games.html [Pingback]
http://9nv-information.info/22029222/index.html [Pingback]
http://9nk-information.info/72150424/us-dept-of-interior-fish-and-wildlife.html [Pingback]
http://9nl-information.info/66339657/index.html [Pingback]
http://9ne-information.info/07779335/index.html [Pingback]
http://9nh-information.info/49559707/index.html [Pingback]
http://9oa-information.info/89446718/business-travelers-company-policies.html [Pingback]
http://9or-information.info/41174610/design-template-with-multiple-scrolling-pag... [Pingback]
http://9qo-information.info/05786414/los-angeles-planet-ocean.html [Pingback]
http://9oo-information.info/64665923/index.html [Pingback]
http://9on-information.info/79257589/index.html [Pingback]
http://9on-information.info/99156352/yoga-exercise-for-constipation.html [Pingback]
http://9ou-information.info/40178846/index.html [Pingback]
http://9ok-information.info/81223283/index.html [Pingback]
http://9og-information.info/88795862/indymack-bank.html [Pingback]
http://9sh-information.info/47238614/index.html [Pingback]
http://9rk-information.info/22503701/index.html [Pingback]
http://9sb-information.info/42502349/index.html [Pingback]
http://9rg-information.info/43713474/index.html [Pingback]
http://9rs-information.info/64128585/city-planner-training.html [Pingback]
http://9rp-information.info/66517848/hunting-dog-training.html [Pingback]
http://9ry-information.info/58485850/index.html [Pingback]
http://9rq-information.info/72714732/tac-automotive-group.html [Pingback]
http://9rl-information.info/33318348/coupons-enterprise-car-rental.html [Pingback]
http://9sl-information.info/66166200/index.html [Pingback]
http://9si-information.info/72707089/index.html [Pingback]
http://9sm-information.info/79610785/index.html [Pingback]
http://9rh-information.info/68720515/index.html [Pingback]
http://9rt-information.info/05567137/marriage-or-dating.html [Pingback]
http://9uaes-le-informazioni.info/66815986/index.html [Pingback]
http://9uaec-le-informazioni.info/28174554/fotocamera-premier.html [Pingback]
http://9uaer-le-informazioni.info/11171611/index.html [Pingback]
http://9uafo-le-informazioni.info/58742692/viva-radio-rai.html [Pingback]
http://9uafs-le-informazioni.info/47105784/cap-di-brescia.html [Pingback]
http://9uaem-le-informazioni.info/11941798/inglese-a-italiano.html [Pingback]
http://9uaee-le-informazioni.info/08832230/maag-event-hall.html [Pingback]
http://9uaes-le-informazioni.info/84989905/index.html [Pingback]
http://9uaep-le-informazioni.info/77555460/index.html [Pingback]
http://9uaeh-le-informazioni.info/70378527/index.html [Pingback]
http://9uaff-le-informazioni.info/32054396/blowing-the-wind-wav.html [Pingback]
http://9uafo-le-informazioni.info/77367245/2n3904-datasheet.html [Pingback]
http://9uafs-le-informazioni.info/01436408/associazione-medici-dentisti-italiani... [Pingback]
http://9uafe-le-informazioni.info/37987069/index.html [Pingback]
http://9uaea-le-informazioni.info/66074705/index.html [Pingback]
http://9uafj-le-informazioni.info/83225223/logica-naturale.html [Pingback]
http://9uafe-le-informazioni.info/73542180/index.html [Pingback]
http://9uafm-le-informazioni.info/63164804/luca-bellandi-pittore.html [Pingback]
http://9uahm-le-informazioni.info/37003824/ramazzotti-tabs.html [Pingback]
http://9uagj-le-informazioni.info/77817235/index.html [Pingback]
http://9uahg-le-informazioni.info/10980816/index.html [Pingback]
http://9uagi-le-informazioni.info/89352665/index.html [Pingback]
http://9uahb-le-informazioni.info/92429843/index.html [Pingback]
http://9uahf-le-informazioni.info/91413794/index.html [Pingback]
http://9uagj-le-informazioni.info/05280363/index.html [Pingback]
http://9uaha-le-informazioni.info/17951201/index.html [Pingback]
http://9uagi-le-informazioni.info/26880881/index.html [Pingback]
http://9uaht-le-informazioni.info/99643679/svezzamento-frequenza-poppate-latte-a... [Pingback]
http://9uagp-le-informazioni.info/85519868/index.html [Pingback]
http://9uahi-le-informazioni.info/07655189/fiat-panorama.html [Pingback]
http://9uahl-le-informazioni.info/36875596/index.html [Pingback]
http://9uahr-le-informazioni.info/74139576/scrubs-quinta-serie-titolo.html [Pingback]
http://9uaha-le-informazioni.info/04019938/index.html [Pingback]
http://9uagl-le-informazioni.info/77163565/harrison-ford-fanpage.html [Pingback]
http://9uagm-le-informazioni.info/06072043/index.html [Pingback]
http://9uagk-le-informazioni.info/06562028/index.html [Pingback]
http://www.google.com/search?q=axzeoxzi [Pingback]
Wednesday, March 24, 2004 10:39:00 AM (Central Standard Time, UTC-06:00)
Dan --



You are right on. It's my view that if you aren't willing to take the time to report a bug that you've found, then you forfeit the right to complain about it.



How you deal with the bugs you find in Delphi speaks volumes about your professionalism. Whining doesn't speak well -- just in case anyone is wondering. ;-)
Wednesday, March 24, 2004 12:42:00 PM (Central Standard Time, UTC-06:00)
It would be great if we all had time to research and report every bug we find in the vendor's codebase, but in the real world, developers have better things to do. When I run into an issue with Delphi, I google for a solution, and if I don't find one, I attempt a workaround. I just can't take the time to properly diagnose and report every bug that I find when a workaround is possible.



In an ideal world, the vendor shouldn't have to rely on customers to find and report bugs other than extreme corner cases. I do realize that the software industry just isn't mature enough to where it is possible for the vendor to test for all cases, especially with development products. However I would say that the ratio of problems due to bugs in Delphi versus bugs in our own code is too high. Working around problems in the vendor's tool is often very time consuming.

Anonymous
Wednesday, March 24, 2004 12:55:00 PM (Central Standard Time, UTC-06:00)
You know, last time I checked, I live in the real world, too. Yet I find time to provide clear and concise bug reports to all of my vendors. Feel free not to report bugs if you wish, but the entire thrust of my article addresses exactly why I choose to do it.
Saturday, March 27, 2004 4:37:00 PM (Central Standard Time, UTC-06:00)
Nothing is new under the moon.

History teaches us, that it teaches no one.



http://www.catb.org/~esr/faqs/smart-questions.html
Arioch
Monday, March 29, 2004 4:46:00 PM (Central Standard Time, UTC-06:00)
Interesting. I believe there is a balance somewhere on looking into, and reporting bugs. We all know through experience that many software products are released with known defects, and unknown ones that only show up under use. There is sometimes no way possible to test for every given usage of a tool.

This doesn't bother me if there is a support system in place. If I can go to, report it, and get assistance I feel much better about a product and the vendor.

For me, there is a sense of frustration in the newgroups that gets aimed at a vendor. This is unfortunate, but I've felt it. I install the new version of a tool. I try to do something in it, and get what appears to be a defect. What now? Some vendors only have newsgroup support. This is slow from my viewpoint, and leaves me with a sense that nothing is really happening because I can't see behind the scenes. In many cases, my only view of support is if there is an answer to my post. Others, Support on a pay per incident level. If your company doesn't purchase support, what then?

I am willing to work with a vendor, to a point. My overall time management responsibility though is to my company(the one handing me my paycheck). If working with/on/assisting with a defect then support must bear in mind they don't pay me to debug problems within their products. I think most understand this, but I've had some that don't seem to understand. Keeping in mind that my company pays me to develop software with given tools for them is what is going to drive my decisions, and efforts.

Please don't misunderstand that I am saying that we should not try to be objective, and assist a vendor with needed information to help resolve issues. I just suggest that this is a mutually beneficial relationship for both vendor, and developer. We need each other to help make things better for both of us.

Also, unfortunately, there are just different skill levels in this business. Many of you are quite adept, and quickly understand the problem due to many different factors. Others just are not at your same technical level. Would I be a better developer in the long run if I dig deep into understanding and analyzing a defect? I wholeheartedly believe I would. Would my manager be happy with me for spending hours on trying to dig into a defect? Maybe, or maybe not. This is definitely a judgement call per each person and vendors must understand this, too.

Maybe we can sum this up as both the vendor and the developer camps need to be a little more tolerant and look at both sides points of view. "Help me, help you."

Bill K
Bill
Tuesday, November 07, 2006 9:32:00 AM (Central Standard Time, UTC-06:00)
I think some programmers get this bad habit from their Java experience where the insanely awkward exception-specification system often triggers this kind of dirty "solution".



Comments are closed.
Navigation
Archive
<May 2008>
SunMonTueWedThuFriSat
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567
About the author/Disclaimer

Disclaimer
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.

© Copyright 2008
Dan Miser
Sign In
Statistics
Total Posts: 305
This Year: 20
This Month: 1
This Week: 0
Comments: 601
All Content © 2008, Dan Miser
DasBlog theme 'Business' created by Christoph De Baene (delarou)