I have just spent the last few days playing with Visual Studio 2010 Beta 1. If you haven't done so, download and install it now. It's a pretty good deal being that it's free and that it lets you play with most, if not all, of the .NET Framework 4.0. There's even an instructional video at the download site to help you install.
I have blogged about some of the new features. I had to present some of these features to a customer this morning, so for the past few days I've been trying to dive as deep as I can. I've written numerous blog entries that chronicled my journey, but they are only scratching the surface about what is possible.
The one new feature that seems to resonate well with my audiences is the new concurrency story. I'm talking about parallel programming - taking advantage of multi-core architectures. Valuable developers know how to leverage the available power of modern CPUs to make their software more responsive and scalable. It's all about performance.
Multithreaded programming is notoriously difficult. Microsoft offers two compelling technologies to help developers leverage multi-core architectures. The first is PLINQ, which allows your LINQ queries to transparently take advantage of your CPU's cores. The customer on my call this morning tried adding that to the "AsParallel" construct, and some of his long queries ran in 10% of the time it took to run his ordinary LINQ queries.
Many of you have already been reading about the task-oriented approach Microsoft is taking in the context of threads (pun intended - if you don't know the pun, you don't know threads). The idea is that typical threaded programs are difficult to write, debug, and maintain. Furthermore, a higher level of abstraction is needed. That is what the task parallel library is about - freeing the developer from the low-level details of thread management, like thread creation and destruction.
My blog contains a lot of source code to help get you started playing with this technology (Concurrency Blog, VS 2010 Training Kit & Parallelism Blog). At my blog you can also find resources about learning WPF, Silverlight, Azure, and XAML - to name a few.
There is also an entire training kit available for download, called the "Visual Studio 2010 and .NET Framework 4 Training Kit - May Preview." It includes materials about WCF, F#, Parallel Extensions, Workflow, ASP.NET 4.0, Entity Framework, ADO.NET Data Services, and more.
A Unique WCF Learning Opportunity
October 5 - 9, San Jose CA
I took Juval's Master Architect class. Juval's understanding of WCF is world-renowned. He's worked directly with the product teams at Microsoft. Read the class outline and register.