Yesterday Microsoft released the first service pack 1 for Visual Studio 2008 and also a service pack for the .NET framework version 3.5. There are some much needed improvements to both the development tools and the runtime but there are still some big issues with the .NET framework (like the 231 MB download) that will put a lot of users off getting up to date.
For those new to the idea of the .NET Framework; the .NET Framework is a software technology that is present on many Microsoft Windows operating systems. It is basically a library of code and a platform on which software developers can run their software. The .NET Framework is key to Microsoft’s strategy for software developers to create software for Microsoft Windows. The .NET Framework has had five major releases, 1.0, 1.1, 2.0, 3.0 and 3.5. Each version can run software that was written for any of the previous versions. The .NET Framework version 3.0 is included with Windows Vista and Server 2008. There is also a smaller “compact” version of the framework for Windows Mobile devices.
What I like
For end-users…
Microsoft have just released an update to the 3.5 version and for the first time are calling the update, “SP1” rather than giving it a new version number. The new version can improve the loading time and performance of .NET applications by 20-35%, and as such I highly recommend our customers install the latest version of the .NET framework on their machines.
This service pack will also improve the hardware acceleration of your .NET applications that support using Microsoft’s “WPF” technology. We don’t yet, but we are looking into incorporating this technology in our future desktop software releases.
For developers…
It will also come with a set of new WPF controls such as a WPF-enabled DataGrid; I’m looking forward to investigating that. Also ASP.NET gets an MVC Framework and RESTful API; if you’ve used Java EE or PHP or Ruby you’ll notice the improvements.
The downside
Most of our users are still running the .NET Framework version 2.0 (released in November 2005) and we still get a lot of users who try to run our software on machines without any .NET Framework version at all. For some reason Microsoft do not seem to care about pushing the framework updates out to their users. Often the .NET Framework will appear to a user as an “optional” Windows Update (if it appears at all).
To get around this issue, I have been testing various .NET linkers. These are tools which take your software, identify the connecting calls between your application and the framework and then strip the components out of the .NET framework and “link” the two together. I’m also able to slipstream the full .NET Framework installer into our software so that the framework will be added to a user’s machine in the case that they don’t already have it. The problem here is that the full installer for the .NET Framework 2.0 is 23 MB. Microsoft should not expect independent software vendors to be distributing their operating system updates in this way, but it is understandable that a lot of our customers and computer users in general will be confused by the need for the “.NET Framework”. The .NET Framework 3.5 is 231 MB. That’s a lot of overhead to add to your installer when your own application might only be 1-10 MB.
My suggestion to independent software developers
The .NET Framework 2.0 has finally reached a point where most users have it. There are a few who don’t, however and your software installers need to either bootstrap .NET 2.0 (23 MB) or point the user at downloading and installing it. If you’re feeling clever, you may even wish to try downloading the framework components as part of your installation process or using a “linker” to cut out .NET framework dependency altogether.
Unless your needs strongly dictate you need to use WCF, WPF, Cardspace, Workflow, or Linq, don’t use the .NET Framework 3.0 or 3.5 yet. Update Visual Studio 2008 to SP1, but use 2008’s new “Target” feature to target the .NET Framework 2.0.
Alternatively to be sure all your users will have the .NET 3.5 pre-requisite for your software, wait for Vista SP2 and then label your software as “Vista only” 🙂
My suggestion to corporate “developers! developers! developers!” software developers
Go ahead and download and install the .NET Framework 3.5. Visit your users around the office and ensure that they have the latest .NET 3.5 service pack 1 applied. If your organisation has already migrated to SQL Server 2008, platforms running that database server will already have .NET 3.5 SP1.
My suggestion to ASP.NET web software developers
You probably already have the .NET Framework 3.5. If you don’t, you’re missing out on all the latest AJAX-enabled web goodness. Assuming you have 3.5 already, get the service pack today. Lots of performance improvements and bug fixes as well as Microsoft’s new RESTful style API, which has finally made it into ASP.NET and levels the playing field with Ruby on Rails a little.
Further resources:
- Visual Studio 2008 Service Pack 1
- Download: http://www.microsoft.com/downloads/details.aspx?FamilyId=FBEE1648-7106-44A7-9649-6D9F6D58056E&displaylang=en
- Read the release notes: http://support.microsoft.com/kb/945140
- Microsoft .NET Framework 3.5 Service Pack 1
- Download & release notes: http://www.microsoft.com/downloads/details.aspx?FamilyID=ab99342f-5d1a-413d-8319-81da479ab0d7&DisplayLang=en (2.8 MB bootstrapper)
- Download full redistributable package: .NET Framework 3.5 Service Pack 1 (Full Package) (231 MB)
I hope this helps. Are you a software developer? Please leave a comment.
G’day Mike,
As you know I still develop for Win32 being a confirmed Delphi nut. But having said that I’m very interested in what’s happening with .net (especially seeing the architect was also the architect of Delphi, C# is very much like Object Pascal). I’m also looking serioulsy at Oxygene (formerly Chrome) which is a .Net Object Pascal that uses the MS VisualStudio as the IDE. It’s a little immature right now, IMHO, but it’s pretty easy to port most of my code over to it (though not my VCL collection which is a huge PITA for me). Given the uncertainty of the CodeGear sale to Embarcado it’s likely such a move will become invevitabe (sad to say as I’m not happy with what I’m seeing over there at the moment *at all*). So any news on .Net and it’s installed base is always welcome.
Hi Scott,
Have you heard of MIchael Lehman (spelling?), a technical evangelist from Microsoft to Micro-ISV’s?
I, along with some other .NET developers posed him “the big question” a couple of years ago. Why doesn’t Microsoft push the framework out to end users via automatic update?
I believe he put effort into finding an answer but was either unsuccessful or the answer wouldn’t tie in with his message. As far as I am aware (and I follow this closely) there was no response on why the .NET framework had such a low take-up rate amongst end-users desktop machines. I suspect political reasons may be halting the framework updates and this is yet more evidence that Microsoft developers are synonymous with “Enterprise platform” developers; rather than innovative “micro” style ISV or open source developers.
Michael Lehman (sp?). also ran a hugely brilliant podcast with Bob Walsh, “The Micro ISV Show” on Channel 9. It hasn’t been updated in a long while but the show archives are still there and the interviews with software developers on their businesses are excellent and thought provoking.