The blog of Eric Sibly; focusing on mountain biking, .NET development for the Desktop, Smartphone and PocketPC.

Saturday, February 25, 2006

User interface technology options...

Following on from a previous post, Browser vs SmartClient, I thought I would also point to this post from Tim Sneath who does a good job of rounding up the various technologies. Partial extract included as follows:

Last question. Windows Forms, ASP.NET/Atlas, DirectX, WPF, Win32 - that's five UI technologies to choose between. How do I decide?

Really the variety of choice isn't such a bad thing - it enables you to pick the best technology for the job rather than having to pick a lowest common denominator that tries to serve all masters and ends up serving none.

  • Building a forms-based application and looking for a mature technology to use with good tools and component support? Check out Windows Forms - it's got everything you'll need to turn out a well-designed, service-orientated client application.
  • Is platform ubiquity or wireless mobile device support the high order bit? ASP.NET with or without the Atlas extensions is a good technology to choose. (Don't forget about the .NET Compact Framework for rich mobile devices, of course.)
  • Want to build a first-person shooter game, a CAD/CAM workstation application or something similar where polygon count is the major technical requirement? DirectX is a natural choice - don't forget that the .NET managed APIs for DirectX are maturing rapidly and starting to be worthy of serious consideration.
  • Looking for complex data visualization, superb text flow content rendering or dynamic interactive experiences? WPF should probably be your top choice. I'll be posting in future entries about a few sweet spots that early adopter customers have been exploiting to great business gain.
  • Lastly, don't let all this talk of managed code convince you that Win32 is anything other than a vibrant general-purpose way to build applications. There are thousands of new API functions in Windows Vista for Win32 developers to do everything from integrating with the Aero Glass theme to implementing live preview icons and ink-enabled applications. Don't write off Win32, or let others convince you that it's no longer core to Microsoft. It's the platform of choice for tens of thousands of applications. Long may it continue!

Tuesday, February 21, 2006

SMS Emulation...

A tip provided to me today by none other than Jarrod “BizTalk will deliver my next baby” Jones - the ability to send an SMS to yourself within the Smartphone emulator – very handy!

Update: It seems there are more magic numbers.

Friday, February 10, 2006

Automated Unit Testing; it works…

I shouldn’t sound so surprised! Previously I have been a casual proponent of Unit Testing in an automated sense, in that I knew it was a good idea, but often did not implement as thoroughly as I should. I was fan, but not quite a convert – this has since changed.

On the current project I am managing I decided that automated Unit Testing (using NUnit) was to be a first class deliverable within the development phase due to the complexity of the solution. I have since personally discovered that bugs are often discovered during the construction of the Unit Tests due to extra thought involved in attempting to test the various logic paths, so these are often corrected before the tests are even executed or constructed – nice outcome! Then of course, there is the constant execution of the tests to verify that new code changes have not since broken existing functions – I am pleasantly surprised at the number of times little errors have been picked up quickly and early – very nice :-)

I am now a *real* believer!