Microsoft release CTP of Task Parallel Library

amd-quad-core.pngOnce upon a time, most computers had one CPU and life was simple. Occasionally one might get adventurous and use separate threads for the GUI and back-end of an application, but – apart from in some specialist fields – that was about it. CPUs got faster, Microsoft eventually noticed that everyone else on the planet had multitasking operating systems, so they did one too (badly of course), but not much else changed. Then physics got in the way…

Apparently (and I do not pretend to understand the details) we have pretty much reached the limit of how fast a single CPU can go. So chip manufacturers have responded by putting more of them in our computers. These days “dual core” (ie two CPUs on one chip) is mainstream and quad cores (yes, that’s four CPUs on one chip, though Intel seem to feel that “quad core” is a bit too obvious and so go for names like Core 2 Xtreme Wibbly Wobbly, but that’s marketing for you) are not far behind. Given the way these things tend to scale, the number of cores will likely grow thus: 8, 16, 32, 64, 128 etc. So in just a decade or so’s time, we might well have over a hundred CPUs inside our computers. “So what?” you might ask. Well the answer is simple: what are they supposed to do exactly?

Continue reading “Microsoft release CTP of Task Parallel Library”

More VS2008 goodies: Silverlight and Visual Studio Shell

VS2008Silverlight 1.1 Tools Alpha for Visual Studio 2008

The VS2008 development tools for Silverlight 1.1 have been re-released and now work with the release version of VS2008. The tools ad-on can be downloaded from here.

Visual Studio 2008 Shell

Do you have a burning desire to develop your own IDE? Perhaps you have an amazing new feature to add to VS200? Either way, Visual Studio 2008 Shell may be just what you need. It comes in two flavours: integrated mode and standalone mode. In the first case, it is effectively a development framework for your amazing new feature that enables it to integrate seamlessly into VS2008. In the second case, it is the skeleton of an IDE that you can customise to your requirements and re-badge to fit your brand image, rather than Microsoft’s.

You can read more about it here.

Microsoft release a whole bundle of developer goodies

microsoft.pngMicrosoft saw fit to release a bunch of new stuff yesterday:

Visual Studio 2008
The express and team editions are available to download from MSDN (if you have a subscription). The express edition is available here (you’ll need Silverlight installed to access it), and a 90 day trial of the team addition can be downloaded from here.

You can read more about this release on Scott Guthrie’s blog and Somasegar’s blog.

.NET Framework 3.5
The .NET Framework 3.5 is bundled in with Visual Studio 2008, but it is also released as a separate download from here. Finally LINQ is let loose upon the great unwashed. Yah!

Sql Server 2008 CTP
The latest Community Technology Preview has been released for Sql Server 2008. More details here.

Microsoft Office Compatibility Pack for Word, Excel, and PowerPoint 2007 File Formats
Version 3 of this package that enables you to read Ofiice 2007 files on Office XP/ 2003 was released a couple of days ago too. It can be downloaded from here. IMPORTANT: read the instructions carefully; you must install all priority updates before installing this support pack.

VLite 1.1 Beta 2
OK this isn’t a Microsoft product, but it’s a great one anyway and a new version was released yesterday, so I’m giving it a mention. VLite is a application that enables one to build a lightweight version of Vista with all the “bloatware” stripped out. The latest version can be downloaded from here.

VS 2008 Beta2 Virtual PC Images Expire on 1st November

VS2008If you are one of the handful of people on the planet that uses beta .NET technologies but doesn’t subscribe to Scott Guthrie’s blog, then he announced some important news today: the virtual PC images for VS2008 (Orcas) Beta 2 are due to expire in a couple of days. You must take action now to salvage your data from the image as it will be irretrievable after 1st November. More at Scot’s blog here.

Apparently according to an article on, things might not be as severe as Scott suggests.

Microsoft: doomed if they don’t; doomed if they do

Scott Guthrie announced yesterday that the final release of VS2008 would have a new feature: access to the .NET framework source code when debugging.


The reaction though from some has been fascinating. In my view it’s a really useful feature that is long overdue and Microsoft deserved to be thanked for providing the feature and chided for taking so long in equal measure. Others go further though. Gavin Clarke, over on the Register, suggests that “Microsoft is continuing its hesitant slide towards open source by releasing .NET code under a look-but-don’t touch license.” Well maybe; but I doubt it as a “look-but-don’t touch license” makes sense as Microsoft keep control of .NET; a true open-source “take-it-and-screw-with-it” license doesn’t make sense as Microsoft could quickly lose control of .NET. At the other end of the scale, Steven J. Vaughan-Nichols in an article argues that “Microsoft’s so-called opening up of .NET Framework is setting a trap for open-source programmers. Open-source developers should avoid this code at all costs.” I personally think that Steven is being downright paranoid in suggesting that Microsoft are seeking to destroy the Mono project with this move.

When we see Microsoft threatening patent action against Linux on the one hand and opening up their source on the other, it is easy to invent conspiracy theories and to fear the worst. I feel the reality is simpler though. The sales and marketing aspects of Microsoft fear anything that they perceive might hurt sales, so they fear Linux and love secrecy. The developer aspects of Microsoft recognise that the software world is too big, with too many opinions, for one company to control it all and that openness leads to bigger and better things for all. Developers will be developers; marketing people will be marketing people and the paranoid will see conspiracies where really there is just normal human behaviour.

Moonlight gets Microsoft backing

“Big Blue”, the SIlverlight logoMicrosoft is a changing beast and those changes look, on the whole, to be for the best. They are of course still up to their usual tricks, such as their attempts to rig the vote in Sweden for example on their OOXML documentation standard, for which they are seeking ISO approval. However they appear to have realised recently that working with, rather than against, the open source community sometimes makes business sense. A case in point is Silverlight.

Microsoft claim that Silverlight will be cross platform. The problem until recently is that they were only supporting a some browsers on the Windows and OS X operating systems. That of course leaves two gaping holes: other Windows and OS X browsers and Linux (there is a third gaping hole: WinCE, but presumably Microsoft will tackle that at some point). Not so long ago, one might expect Microsoft to go into denial over Linux and to claim that IE on Windows was cross-platform enough for 99% of the people, so tough luck to the other 1%. They couldn’t do that this time around though as they are trying to take on Flash, which is pretty much truly cross-platform already. So perhaps it is not so much of a surprise that they intend to make Silverlight available on Linux.

Mono logoWhat is surprising is the chosen method. Rather than port Silverlight to a binary release for Linux on x86 machines only, they have taken the genuine open source route: they are backing Moonlight! Moonlight is part of the Mono project, which is attempting to create an open source, multi-operating system version of .NET.

Can Silverlight really be a Flash killer? That I do not know, but with the news that Microsoft are going to assist – via Novell – the development of the Silverlight .NET environment for Linux, Silverlight starts to look a very interesting product. And let’s face it, Adobe aren’t exactly a small lilly-white company about to be threatened by a giant (anyone remember the Dmitry Sklyarov saga?) So I at least will not shed any tears if Silverlight does kill off Flash. I predict a more likely outcome though (at least for the short term) is that competition will spur both projects on giving us both a better Flash and a better Silverlight product over coming years. Now that can’t be bad, so well done Microsoft.

Read the official story here

GOA WinForms

Netika TechI came across what, at first glance at least, seems like a really useful product today: GOA WinForms. The idea behind it is simple, but really clever. Rich Internet Applications (RIAs) are applications that are supposed to work well both via a web page and when run directly from the desktop. They suffer from the problem that web applications rarely look, feel or work anything like “real” computer applications as they implement buttons, menus etc differently to operating system user-interface paradigms. The obvious solution is to implement a set of widgets in Flash, Silverlight, AIR etc that look and feel like those on the chosen operating system. This is no simple task though, and even if done well, one is still faced with potentially writing a “real” application and a RIA that do similar things, but that have wholly different widget APIs.

GOA WindForms addresses this problem in a novel way. The developer uses Visual Studio to create a .NET WinForm. That developer then uses GOA WindForms to turn the WinForm into Flash or Silverlight. Thus the developer can create an XP-style interface in their RIA with minimum effort.


I’d previously expressed concern that  the Pro version was in alpha with no price attached, just a vague “The price of the Professional Edition will be close to the prices of the controls libraries that you can find on the market today.” I pleased to report that Jean-Gabriel has now published the prices on his blog. So now you can use the alpha to see if it is a suitable solution without worrying about nasty surprises further down the line.

VS2008, Silverlight and JScript.NET. What went wrong?

VS2008Microsoft have been making much of the new JavaScript intellisence in VS2008 and have been promising it for the beta 2 release.

I am currently developing ActionScript apps, I have been very interested in Silverlight 1.1 with its .NET support and have been keeping a close eye on VS2008.

There is a reasonable chance that you will read the above two statements and not see the connection. The connection is a little publicised product: JScript.NET. Back in the days of .NET 1.0, Microsoft created a range of languages that could work with the Common Language Runtime (CLR): C#, J#, VB.NET, Managed C++ and JScript.NET. For reasons that I do not know, they decided to build support for all these languages, bar JScript.NET, into Visual Studio.NET. So JScript.NET suffered from little interest and fell by the wayside. The along came Silverlight 1.1, or so I feel the story should have gone…

Silverlight is designed to compete with Flash. I do not think that even Microsoft would deny the truth of that. Flash “movies” that do anything non-trivial contain ActionScript. Microsoft have an uphill struggle on their hands to get developers and designers to switch away from Flash in favour of Silverlight and anything they can do to ease the transition will be to their advantage. An obvious route is to promote JScript.NET as being similar to ActionScript. They did this with J# as a way of encouraging Java developers over to .NET. Converting from ActionScript to JScript.NET would be non-trivial, but would be by far the easiest route for porting existing libraries across.

So we come back to my interest in VS2008. With talk of JavaScript support in VS2008, I put 2 and 2 together: Microsoft are going to start supporting JScript.NET in VS2008.

Having downloaded VS2008 Beta2, it now looks like I put 2 and 2 together and got 5: there is no JScript.NET support to be seen. Hopefully I’m just missing the obvious; but I fear I’m not and that Microsoft are going to make it hard to migrate from Flash to SilverLight.