Monday: I wake up at 3:15am CA time and get to SFO to make a 6am flight to Toronto. (Note: Air Canada flights do NOT leave from the international terminal, they leave from domestic terminal 3, go figure.) But the flight was pretty nice, TVs on the back of the seats and all that. Of course I spent most of the flight writing code.
I land in Toronto and get through customs about 3pm and arrive at the hotel around 4pm, quickly unpack my wrinkled dress shirts and get down to the lobby to meet Rob Windsor and crew. We take the subway to the Toronto user’s group where I’m speaking with Scott Hanselman who’s meeting us there. I’ve never spoken with Scott so we decide to break it up in half, I go over LINQ to SQL and LINQ to XML and Scott picks up with ADO.NET Data Services (Astoria).
It was a great talk. I created an app from scratch that pulled down RSS feeds (Scott’s, Ted Neward and mine), inferred the schemas, enabled XML IntelliSense, and then stuffed the posts and related categories into a database using LINQ to SQL and XML in one query. Slick. Then I wrote some aggregate queries and showed off some of VB’s expanded query syntax. Then I hooked up some validation rules and showed how to properly save and delete parent/child data. I also spent 2 minutes and dumped all the data into an Excel spreadsheet format using XML literals.
Then Scott showed the ins-and-outs of exposing your database through services and touched on a few of the gotchas. Great discussions!
Next stop was Party with Palermo, two chicken wings for dinner, then bed. (Oh, yea… we released VS08 SP1 Beta too).
Tuesday: I have the first session of the day. “What’s New in VB 9” was the talk and I’ve done it many times before. So I tried something different this time. I tossed out my slides and decided to build another version of the same app I did the night before. But as I wrote the code I explained the language features at the same time. Usually I go over the language features one by one, and then show simple LINQ queries. I decided to do something different this time because, frankly, I think I was getting bored with my own talk. I almost always go out on a limb and build apps from scratch and I think people appreciate that, but sometimes it doesn’t work if people don’t have the fundamentals. I figured people had at least seen LINQ before so hopefully it worked for everyone.
I added the app to the WhatsNewVB CodeGallery project for you all to play with.