Thoughts from one of my last projects. It is difficult to create a well-isolated component that uses a WCF client under the covers. WCF reads end-point configuration settings from the […]

One of my friends said that he admires Microsoft marketing genius for creating a Java clone and bringing it to commercial success. But is .NET really a Java clone? On […]

It looks like subtracting dates in .NET is done purely mechanically, ignoring such subtleties as time zones or daylight savings time. In particular, the UTC flag is ignored when subtracting […]

I wanted to create a logger that writes either to a file, or to the System.Diagnostics.Trace. To my astonishment, I found that .NET class library does not have a TextWriter […]

I was playing with .NET 2.0 unmanaged hosting API. I am trying to customize assembly loading and “fix” some assemblies on the fly. I found an interesting gotcha, that I […]

I am playing with the binary format of .NET assemblies, described here. .NET metadata is stored inside regular Windows executable PE file. I explored PE file format in detail when […]

The Mysterious Hang article has been updated. Prompted by an e-mail from a reader, I added a paragraph on how to solve the problem.