Caves Travel Diving Graphics Mizar Texts Cuisine Lemkov Contact Map RSS Polski
Trybiks' Dive Texts Programming YAC Software












Rhino Mocks



UI Testing




  • TFS - The underlying connection was closed: an unexpected error occurred on a receive.
    Trying to connect to a TFS server and you're getting this error? "The underlying connection was closed: an unexpected error occurred on a receive." And you have an Internet proxy server between you and TFS? Perhaps this will help you.

  • WCF - The underlying connection was closed: an unexpected error occurred on a receive.
    Using WCF over HTTP through a Squid proxy server? And you're getting the "The underlying connection was closed: an unexpected error occurred on a receive." error? Perhaps this will help you.

  • Saving / restoring window placements in .NET
    It seems that saving window positions and sizes (including the application's main window location) should be easy enough. But even now, after so many years of Windows programming, people get it wrong. But we need to remember about changing screen resolutions, switching from multiple to single monitors, connecting to a projector, etc. Saving the current window's location just ain't gonna do the trick...

  • Meaningful identifiers
    Meaningful identifiers in code - that's the standard mantra you hear for tech leads, no? But what does this actually mean? Here's a real world example where changing just the names of a couple of identifiers makes the code much more readable, and makes comments wholly unnecessary.

  • Public fields vs. properties
    Why define properties that directly access private fields? Does that really make our code better?

  • A Case for FreeAndNIL
    Allen Bauer, Embarcadero Chief Scientist, wrote an interesting blog entry - A Case Against FreeAndNIL. Though I agree with the general gist of that article (when fixing a defect, don't fix the symptoms, but find out what the root cause of the problem is and fix that), I don't agree at all that the problem here is in FreeAndNIL usage. IMO, FreeAndNIL can help in tracking defects down and should be considered a mandatory coding guideline.

  • Random()'s Determinism
    The determinism of (pseudo)random number generators is usually described in pejorative terms. :-)
    In this text we describe an application of random number generators, where their determinism plays a key role.

  • Rounding and precision on the 8087 FPU
    After moving my testing to a virtual machine it turned out that newly generated results of statistical calculations differ from reference results (calculated and saved earlier). Although the differences appear on the least significant digits of floating-point values, the root cause of the problem was unknown to me, thus to serious to be ignored. It turns out that results of calculations may depend on the Intel's numerical coprocessor's control word. The issue is discussed in more detailed in the text.

  • Controlling Conditional Defines and Compilation Switches
    An idea on how to augment software build / release processes by automatically checking compilation settings and combinations of conditional defines during compilation.

  • Registering Extensions
    Delphi code for registering application-specific file extensions in Windows.

  • Accessing Protected Members
    The text describes a simple trick for accessing protected members of instantiated classes without instantiating descendants of those classes - descendants that would make these protected members public.