Last week I had the privilege of speaking in Lisbon, Portugal & Birmingham, England at launch events for Visual Studio 2008. There seemed to be a lot of buzz and excitement in the air at both events — no doubt due to the recent release of Visual Studio.
The TechDays event is similar to TechEd in that it’s a four-day long affair with an ITPro track and a Developer track and tons of exciting sessions, breakouts, Hands-on-Labs, and experts at booths. I only arrived for the last day of the conference and presented my session at 3am my time given jetlag from which I never recovered. (I returned to Seattle just a couple days ago and immediately adjusted back to the local time.)
I presented in a packed, though smallish, room on Visual Basic: Past, Present, and Future. I did my presentation in English — though I believe most of the sessions were presented in Portuguese. Hopefully people followed along. If you didn’t, have no fear, the slides and demos are posted here!
I started the demos with a whirlwind tour of Visual Basic 2008 for gurus. Of course I showed the basics: a vastly improved Intellisense experience, performance enhancements, Language INtegrated Query, and the XML data type. But then I showed the add-ins and secrets that make 2008 even better starting with the newly released DataRepeater control. It’s really easy to highlight how perfectly suited it is for LINQ — by simply writing the following code:
Dim db = New NorthwindDataContext(My.Settings.NORTHWNDConnectionString) Dim empsByCountry = From emp In db.Employees _ Where emp.Country = "USA" _ Select emp Me.DataRepeater1.DataSource = empsByCountry
Then I showed how the free Refactor product makes my life easier, for example, by not having to force me to do any typing in making "db" a global field:
I then went on to show XML Intellisense by using the XML to Schema tool:
Then I moved on to VB past and showed the Interop Forms Toolkit and how much easier it is to extend your VB6 applications with VB.NET and deploy the hybrid solutions.
Lastly, I showed some of the forward looking work — we’re talking the next major release of Visual Basic beyond 2008, or potentially for the release after that. I started with a couple obvious additions which PaulV has mostly covered on his blog: Implicit Line Continuation, Simplified Properties, and Simple Array Declaration. I then showed a demo highlighting integration with the DLR to create a much more interactive developer experience, improve the performance of late binding, and enable new heights of interoperability between languages on the .NET platform.
I got to spend the weekend in Lisbon, which is a gorgeous town. While it has all the charms of a beautiful, European city with Roman, Mediaeval, and Baroque elements to it, as someone who is charmed when old and new combine to create a sum greater than it’s parts, I particularly enjoyed the Graffiti. I also enjoyed the gracious hospitality of some Portuguese hosts that toured me all around the surrounding towns and views. I’ll post some photos here soon.
Heroes Happen Here, England
This was a packed, one-day event with over 2000 attendees. I presented to a full room with a capacity for 800 on language features specific to Visual Basic 2008. Daniel Moth, the track organizer, requested that I present all of the language features on their own, describing how the LINQ API can be authored. Of course, I started with Multitargetting to show that the LINQ API could be authored for the .NET 2.0 framework using the features in 2008… In other words, you could create a LINQ API by targeting .NET 2.0 and assuming that you’re deploying binaries, not source, you could deploy to machines that only have .NET 2.0 installed. Of course, the motivation for presenting the language features this way is to illustrate how they’re used on their own.
So, starting with Multitargetting, I moved into Local Type Inference, Object Initializers, Anonymous Types, Extension Methods, Lambda Expressions, Query Expressions, Nullable, the XML data type, Relaxed Delegates and Partial Methods. During the very detailed discussion, I also covered several features of Refactor! such as Make Type Explicit, Name Anonymous Type, Widen Scope, and Simplified Properties. Check out Dustin Campbell’s blog to see more of this in action. After my session, Mike Taulty did a stand-up job of presenting an overview of LINQ.
Later that day I had an interactive session on interop and migration tips for VB6 applications. There, I demo’d the Interop Forms Toolkit again. We discussed the support policy for the VB6 IDE and I pointed them to the VBRun site which has massive resources for people looking to embrace .NET and extend their VB6 based applications. Of particular note, we discussed deployment options for hybrid COM/.NET applications including Reg-Free COM which is so great, I’m surprised Oprah hasn’t featured it on her annual giftapalooza.
All of my PPTs and demos can be found here:
Next Week: VSLive San Francisco
Next week I’ll be speaking on Monday in San Francisco at VSLive. Looking forward to seeing you there!