Archives / 2004 / July
  • Since when opening bugs becomes a counterproductive?

    Here’s one everlasting problem from real life what I and my colleagues are constantly trying to solve efficiently. The problem statement is very simple - when is the right time to stop looking for bugs in specific component if we know that the component will be obsolete in a small number of months? Yes, I know that all the software becomes obsolete after some period of time, but also not all the releases are ground-up rewrites i.e., the noticeable amount of the code base stays the same. Also, please note that this is different from the classical question about when it's the right time to stop testing at all ;-)

  • Basic sources to get answers about Speech Server related issues

    Suddenly the realization came to me that I’ve been composing posts for this blog for last 6 months, but I haven’t been mentioned Speech Server much. The main reason for this is that we’re brand new product and just now appearing in the price lists. Therefore compared to other servers we don’t have books written about us, knowledge base entries, tons of traffic in newsgroups, user groups established etc. Being a new product means also that we don’t have any security vulnerabilities which are/were discovered outside Microsoft. Yet ;-)

  • New resolution type for bugs – "Not a bug"

    [GK, 07/10/2004] Please apply 's/Not a bug/Invalid/g' while reading this post. The resolution type is meant to describe the bug quality not the correctness of application's behavior (Thanks, Larry Osterman!) Lesson learned: read and reread the stuff you post ;-)

  • Software Entropy: Don't Live with Broken Windows

    When it comes to the books then IMHO "The Pragmatic Programmer: From Journeyman to Master" by Andrew Hunt and David Thomas is one of the masterpieces anyone taking software development seriously must read. I’m pretty sure that every one of us has personal mandatory reading lists somewhere, but this one is definitely in mine. Hunt and Thomas describe the "Don't Live with Broken Windows" attitude. You can read the entire article, so I don’t need to retell the contents. Believe me, it’s worth reading.

  • Hunting down the missing calls to Dispose()

    Today I had five different meetings. Yes, that’s how my average day looks like. Between these meetings there are slots of time I use to read and write e-mail and do something I call "real work" ;-) The interesting discovery for today was that I found a pattern in our code base where we create number of different objects implementing IDisposable interface and we accidentally forgot to call Dispose()  method on them. As almost anyone traveling in the managed world knows, this means that the objects won’t be properly cleaned up till garbage collection kicks in at some point which because of the nondeterministic nature of garbage collection may happen whenever CLR decides it’s necessary.