This is the story of a bug that was hard to reproduce. It is about the investigation and it shows how well intended code can make bugs even harder to reproduce. The bug (and the fix) is trivial. However, a combination of factors make it remarkable.

Continue reading »

There are many ways in which one could violate the rules of Object Oriented Programming in C#. Fortunately, the C# compiler is smart enough to prevent many of them, like the one in the example below. Can you figure out why the compiler doesn’t allow the call in the last method?

Continue reading »

After a long period since I wrote part 2 of this article I decided to add some extra information. There is one thing that was missed by the previous two articles: the design of UAC enabled applications.

Continue reading »

Writing code, comments, variable names, etc., in the manner that they create a pun:

Continue reading »

I was curios how expensive is a cross domain operation so I have made a test.

Continue reading »