I've been running Orcas quite a bit since Beta 1 was released in April and overall I'm pretty damn happy with this update to Visual Studio 2008. You may have noticed that I HAVEN'T posted a lot about Orcas issues and that's because overall Visual Studio Orcas and the feature set is working rather well for me. Microsoft has really done a much, much better job this time around to provide a sane set of updates to the framework as well as what amounts to an incremental update in Visual Studio.
Visual Studio 2008 is interesting on several levels. First and I think this is very significant is that it works with .NET 2.0 and you can build applications that run on .NET 2.0. This means it's possible to take advantage of many of the new features in Visual Studio - especially the new designer and the somewhat improved JavaScript support - even for today's projects. That makes the new tool very palatable to try and play with immediately. I've moved several of my internal applications to Orcas and it's been a pleasure working in VS 2008.
Second although there are some major changes in the editors, overall the Visual Studio shell isn't completely changed. In fact, most of my add-ins, Intellisense scripts, templates etc. all work in Visual Studio 2008 which gives me my base toolset I work with and helps with productivity. I'm really glad that there wasn't another complete overhaul of the system that required everything to be at least recompiled if not to be redesigned.
One of the biggest advantages in VS 2008 is the new HTML editor both for markup and design view. It's based on the same editor that's in Microsoft Web Expression (which is a great tool BTW and which I use daily!) and provides a ton of improved functionality and much better rendering. However, the biggest bonus that you'll notice immediately with the new editor is that it is much, much faster than the VS 2005 editor. You know the feeling in VS 2005 as you open a markup or worse a designer page and you wait and wait and wait some more. With VS 2008 that is no longer the case - activating markup or design view happens in a second or two even for complex pages. Not only that but because there's split view for design and markup you rarely switch views and because both panes stay in sync the whole experience is much more expressive. The editor and speed alone is a big productivity improvement at least for me.
That isn't to say that that there aren't problems with VS 2008. Yes some things are broken and Orcas will crash occasionally (although not any more than VS 2005 <s>) but overall the experience for a Beta 1 product is very good! Good enough to be productive with it.
ASP.NET 3.x
I've also spent a bit of time working with .NET 3.5 mostly for back end related framework stuff. There's a lot of interesting stuff but most of the really cool features of .NET 3.5 are related to LINQ and the language enhancements in C# and VB.NET many of which are very useful productivity enhancers. I'll post more on some of this in the coming weeks.
But what's interesting is that there's not a lot of new stuff for ASP.NET 3.5. In fact looking through the System.Web.Ui namespace with Reflector there's only a couple of new controls - the ListView and DataPager. ListView is a new control that's sort of a mix between a repeater and a GridView. It provides the rich templating of a Repeater combined with the grid's advanced features like Paging, Sorting and Editing. It's interesting but hardly something to jump up and down about. There's also a LINQDataSource which makes it easy to create and consume LINQ data. That's about all that I could find that was obvious. I spent a bit of time looking around trying to find more information on what's new in ASP.NET but couldn't really find anything else of note. It's clear that the core of new features that will impact ASP.NET 3.5 are going to be related to the language enhancements and LINQ.
Disappointing? Not at all!
It's important to remember that the ASP.NET team has already delivered very important support features prior to the Orcas release cycle. Specifically I'm thinking of ASP.NET AJAX and full support for the IIS 7 integrated pipeline, which in my opinion really counts as the ASP.NET 3.0! <s> IIS 7 and the integrated pipeline opens up many new possibilities for deep Web server integration and it's great to see that this whole new pipeline model was able to integrate with ASP.NET so seamlessly that as a developer you never actually know the difference.
Futures
Then there's also the ASP.NET Futures features, which at this point are still up in the air. Some of the Futures features have been getting kind of stale like the AJAX features that were originally introduced in the ATLAS days. The advanced libraries like effects, drag and drop, basic control features, databinding and JsonConverters haven't been updated since ASP.NET AJAX 1.0 was released which is a bummer. I maintain that ASP.NET AJAX's client library is what amounts to an incomplete product and Microsoft should really finish that part of the framework. The Futures features at least bring the library on par with some much smaller JavaScript libraries. Effects functionality and more high level DOM support are supported by just about all JS libraries to date but the ASP.NET AJAX Client library is very light on any sort of client support. Unfortunately it looks like there won't be much of a change for the Orcas release <shrug>.
The Futures release also contains a bunch of new functionality that relates to Silverlight and embedding Silverlight and XAML content into pages. Silverlight is getting all the dibs these days and it's likely that this stuff will find its way into the new runtimes. There are a few other odds and ends in the Futures release such as Rails like dynamic framework that provides rough scaffolding for a database.
It's unclear at this point what Futures features will make it into the final runtimes as Microsoft is still working out the details of these items at this time. I
Not Enough or Just Right?
So as far as ASP.NET's core is concerned the changes that are brand spanking new are fairly minor.
But I actually think that this is a good thing! After the upheaval that ASP.NET 2.0 brought it's good to see that ASP.NET 3.5 (or whatever MS will call it) is going to be mostly an incremental update that can be managed with a high degree of sanity.
I think the last thing that ASP.NET needs right now is a whole new set of controls and new providers and new this and that. I don't know about you but there are still quite a few parts of ASP.NET 2.0 that I'm discovering and many more that I've never have (and may never) used. Further I think there's plenty in the box of ASP.NET 2.0 right now to act as the core framework for building Web applications.
I think Microsoft struck the right balance with the feature set and advances.
When?
A few days ago it was announced that Visual Studio 2008 and .NET 3.5 as well as Windows Server 2008 will be officially launched on February 27th, 2008 with RTM releases a bit earlier, so it looks like we may see all of this stuff in final release by the end of the year or very shortly thereafter. It's not that long away and given what stage things are at at this point it looks like this will be a final date!
If you haven't played with Orcas yet and haven't installed it yet you might want to hold off a little bit longer - Beta 2 is not long off and from what's been rumored from various sources Beta 2 will include a go-live license so you can take .NET 3.5 live for real applications.