Showing posts from February, 2012

Default parameters are evil!!!

I just finished reading about how someone is trying to shoehorn a C++ feature into C again:

This is actually a feature I hate. With that and automatic casting of int's to bool's it means that bugs can be hidden and hard to track down. As developers we should be letting our tools do the work for us not trying to hide problems.

Also without default parameters you actually have to think about what you're coding.

To daily build or not to daily build

So yesterday I updated my buildbots to upload the completed program files to the internet and the auto update site.

This means when I release software I am just committing it to a specific branch and overnight it will be deployed. Nothing unusual about that (not that many people do that I expect).

However the interesting question is that I coded up an option into the software so the users can pick:

Why not give users the chance to have the latest and greatest? Yes there is risk, but really every commit to the source code repository should be solid and this will make us all think twice.

IPv6 Ready!


One of the customers I look after has several support websites which I am responsible for. I recently convinced those with the money to switch all of the sites to a cloud server from Rackspace.

Whilst Rackspace's dedicated servers are expensive, you are paying for the best technical support in the business. Their cloud servers are definitely more cost effective and with a great team behind them I am very pleased.

The bonus was that the new cloud server was IPv6 enabled, so are future proofed! I just needed to setup the IP addresses in the DNS and bind the IIS web server to all IP addresses and it was job done.

I did false start with putting the Microsoft's fe80 address into the DNS. But when I corrected that all the IPv6 test sites reported success.

Next challenge will be migrating all my other sites to IPv6.

Wireshark and the xbox

I have an Xbox 360 and a Linux workstation running minidlna on. I backup my films to the computer and minidlna allows me to stream them to the xbox.

The bit that's missing is the DVD covers. Other than the Windows Media Center I haven't found a UPnP server that will show the cover art.

I decided to use wireshark to see whats happening on the wire.

My forum post

What I think I need is an add-on to wireshark that allows me to see the UPnP conversation without the other protocol data.

COM+ via .NET

So I am going to make this blog more code focused so that other developers can learn from what I've found during my working day.

Right now one of my tasks is migrating VB6 code to .NET4. This is kind of a major challenge with over 200,000 line of code (loc). Starting simple I am just wanting to create a .net assembly with a COM+ interface. Allowing me to replace the existing COM+ objects with .net.

Today I got this error:

8004E024" error code when you run a COM+ application that creates instances of COM+ services in the .NET
Tracked it down to the Component Services and that my COM+ object was in there twice. Probably from me running:

regsvcs /fc EmailServer.dll
Too many times. Deleting all the instances of that object from the Component Services and then re-registering it cured the problem.

Yes, I hope the migration moves from COM+ to pure .net4