Phil Wright : Component Factory

Thursday, June 09, 2005

microISV, .NET2 vs Avalon

Logo Decision

First of all thanks for leaving comments on the last post about the final set of logos. At the last count the score was 5 for the first cartoon logo and 6 for the second corporate version. I was already leaning towards the second logo anyway but the feedback really confirms my initial preference. So I'm going to use the second logo.

Technology Decision

My first major technical decision is the choice of technology for developing my C# visual components. We need to look into the future and ensure that anything written is not going to be out of date before it is even released. The current released development versions are .NET 1.1 for the Framework and VS.NET 2003 for the IDE.

Visual Studio .NET 2005 and .NET 2.0

Looking ahead the next big change is the release of Visual Studio 2005 and .NET 2.0 on the 7th November 2005. I already have the Beta 2 release of this and have been playing around with it recently. Although a little shaky it is just about stable enough to develop against.

Avalon and Longhorn

Further out is the new Avalon user interface framework that was originally slated to be released with Longhorn. For those not familiar with Avalon its a fundamentally new framework for developing user interfaces in the managed code environment.

Whereas Windows.Forms is based on GDI+ the Avalon framework uses DirectX. There are early releases of Avalon being made in order for developers to play around with it. However these are very much development releases and each update contains fundamental changes to part of the design.

A full stable release of this technology cannot be expected until the release of Longhorn, which is scheduled for the end of 2006.

Comparing the two options

If we develop for .NET 2.0 then we can start development straight away and know that few, if any, changes will be needed when the full release is made. Another advantage is that we only have to wait 5 months until its released and so we can sell components from then onwards. On the negative side the product will have a lifespan limited by the time it takes for Avalon to really take off.

If instead we go for Avalon then we don't have a proper development environment and have to learn this new technology from scratch. That also means we have to wait some time before a commercial market emerges for these components. On the plus side it would mean we can get involved right from the onset of the new technology, and stay at the leading edge of the system as well as enjoying a longer lifetime for any software developed.

The final decision

As a code monkey I am tempted by the idea of getting into Avalon, if only for the excitement of getting into something new and interesting. But from a business point of view I believe the correct decision is to go with .NET 2.0, at least for the time being.

A would rather go with the more certain opportunity even if it has a shorter potential lifetime, than try and go for something way off in the future that is currently vapourware. Plus the release of .NET 2.0 is about the right time frame for writing a first release of a product and having the website and e-commerce ready.

So, time to create a new VS.NET 2005 Beta 2 solution and get cracking!


  • I think it depends on how quickly you want to start selling stuff. If you're itching to get a product out there, then the choice is obvious. Go with what's out now.

    If you can wait, try to be THE FIRST out the door with a .Net 2.0 component set.

    By Blogger Michael Sica, at 11:40 pm  

Post a Comment

<< Home