Tuesday, February 22, 2011

How to use NUnit in Visual Studio 2010

To run NUnit, you need to add the following to the NUnit.exe.config file:

Under C:\Program Files\NUnit 2.5.9\bin\net-2.0\nunit.exe.config (replace version with whatever you have installed) add the following:

 <startup>
   <!-- the below is WRONG! See here for why.
      <requiredruntime version="v4.0.30319">
    -->
   <supportedruntime version="v4.0">
 </startup>

Also add the following in the <runtime> block:

<loadfromremotesources enabled="true">

The reason is that in .NET v3.5 and below, remote assemblies were loaded partially trusted. Starting with .NET v4, unless you add this directive then you will get a runtime exception.

Once you have done this, add another dll project and add a reference to NUnit.Framework.

Tuesday, January 11, 2011

What does Vodafone 3G and the Sydney city bus system have in common?

A note to the NSW government. Adding more buses does not decrease travel times. It actually increases travel times. This is called "bufferbloat" in network systems. Why? Because if you have a limited capacity on a road, and it gets blocked, adding MORE vehicles makes things slower. The only way to fix the issue is to increase the capacity of the roads.

It's the same for train lines. Adding MORE trains won't help anything. You need to add more platforms to stations, and with more platforms you need to lay more rail track. Then you distribute the current number of trains on these tracks and make them go faster than they do. If you then add enough platforms and rail tracks, then you can start adding more trains.

Congestion theory 101. If only the dimwitted politicians would know it. Or perhaps the public? :-)

On that note: Vodafone and 3 - please pay attention! I suspect that this is partly the cause of your incredibly crap service.