Is Silverlight overtaking both Flex and AIR?
Reading the feature list of the upcoming Silverlight 4 release (now in beta), I am more than a bit impressed. Up to now, there has been a few glaring features by which Silverlight was trailing behind Flex - camera/mic input; printing; clipboard access; and right-to-left text being ones that spring to mind. Admittedly, all of these are fairly niche features which most applications wouldn't require.
Silverlight 4 not only brings in all these features, but also a pile of others. Interestingly, they seem to be making a direct pitch against Adobe AIR with many of the features. The new Elevated Trust Applications feature (for out-of-browser apps), enables a host of features typically reserved for desktop applications: Local file access; Notifications API; Full-screen full-keyboard access; Cross-domain policy-free networking; and Drop targets. Of course, features aside, the huge advantage of the Silverlight desktop approach over AIR is that there is only one runtime plugin required.
At the speed Microsoft is moving forward with Silverlight, Adobe is going to have to start seriously upping their commitment to the Flash platform if they want to stay at the top of the game. Up to now, they could always give the argument of Flex being more feature-rich, and the ease of adaptation to the desktop with AIR - with both of these arguments now void, and Microsoft firmly remaining miles ahead in the developer tooling scene, Adobe's work is cut out. They still have greater marketplace penetration with Flash player, but that lead is only going to narrow also.
You've got to love competition!
.NET Development on a Mac – Fusion or Parallels?
I've been recently issued with my first Mac for work, and have been in the process of setting it up as my dev machine. I'm familiar with using Mac's in several roles over the years, but resisted using one day-to-day until now. I've got the base level Macbook Pro (2.26mhz, upgraded to 4gb ram).
Among other apps, I need to run Visual Studio 2008 and SQL Server 2008. Using Bootcamp crossed my mind, but I didn't like the the idea of rebooting into Windows every time I wanted to look at something dev-related.
So, I downloaded the trial of VMWare Fusion 2.05, installed a shiny new copy of Windows 7 Pro, installed VS2008 Pro, SQL2008, ReSharper, etc, and prepared to be amazed by my new efficient setup.
In short, it was pretty painful - everything just seemed to lag. I was expecting it to be a bit slower than running natively, but after 20 minutes I realised it just wasn't going to work. I googled to see if this was a common experience, and came across this fairly comprehensive comparison between Fusion and Parallels which concludes "Parallels Desktop is the clear winner running 14-20% faster than VMware Fusion". That's an impressive difference on any benchmark!
One very nice feature of both Fusion and Parallels is that you can import the competitor's virtual image into the other. So after reading this comparison, I figured I had nothing to lose - the next option was to just set up in Bootcamp which still wasn't appealing. I downloaded and installed Parallels 4, imported my Fusion virtual image, and 20 mins later I booted up the new Parallels image.
This was exactly what I was hoping for - the experience was vastly superior. No obvious lag when opening/closing programs, responsive, didn't slow down my other Mac programs at all, and just slicker. Build times of existing VS projects may be a bit slower than running natively (understandable given only one cpu core is allocated to the virtual OS - I think), but overall it feels pretty snappy, and definitely not slow to the point I'd bother rebooting into Bootcamp. It's worth pointing out that I allocated 2gb memory (of 4gb total) to running each Fusion and Parallels - so they were on a fairly level playing field.
Parallels: 1 - Fusion: 0