Last week I had the pleasure of speaking at DevTeach in Montreal. Last time I was in Montreal it was in the Spring so the weather was quite different. However, it was pretty nice nonetheless — no hard rain or snow, just really really cold. (Normally I would have posted this while I was there, but I was having connectivity issues and trouble posting to my blog anytime I did get online –so here’s a recap instead.)
First of all I want to thank the organizers, JR and Maryse, for putting this conference together. They rotate cities in Canada — Toronto, Vancouver and Montreal — every 6 months and the level of speakers they bring in is top notch, making this the best Canadian conference around. Next one will be in Vancouver, June 8-12. so I encourage you to come on out!
One thing that I was bummed about this year is that I missed Rob Windsor, especially since I was doing the VB6 to .NET Migration talk again that we usually do together (check out the webcast). Hope to see you in Vancouver, Rob!
VB6 to .NET Migration
I’ve done this talk many times before and usually the turnout is pretty big — I think we had at least 50 people at TechEd this year. There have been about 15-20 people attending this session at previous DevTeach conferences. I did this one as the last session on Tuesday afternoon and only a few people showed up this time. So I tried to make the discussion more interactive and I let the audience explain their particular applications which we brainstormed on ways to migrate/integrate. Everyone that spoke up stated that the main reason for migrating to .NET was because they were experiencing performance issues in their applications and wanted to target those pieces to migrate to .NET. Most were the typical "monolithic" exe’s but one gentleman had an n-tier application with VB6 COM components.
The session went really well according to the evaluations. Here are some important resources, including a webcast version of this session.
- Webcast: Migrating Your Visual Basic 6 Investments to .NET
- Visual Basic 6 Developer Center
- VB6 to .NET Migration Learning Resources
- Interop Forms Toolkit
- Visual Basic Power Packs
- Visual Basic 6.0 Upgrade Guidance
Data Sources and Data Binding in WPF
This talk was a lot of fun because it’s what I’ve been doing or the past few months or so. I’ve been blogging on data binding in WPF as well as doing How Do I videos. I also showed a sneak peak at the drag-drop data binding in Visual Studio 2010 building a form similar to what Milind showed in the Channel 9 interview.
I did this talk at 8am in the morning (UGH!) after the attendee party that was thrown the night before. I was a good girl that night so I was fine, but there were a couple stragglers coming in a bit late ;-). The room was full for this one. I started off by explaining data binding in general because most people indicated that they were familiar with Winforms data binding. However only a couple people had ever done WPF development so I showed the basics and progressed slowly. When I asked what type of data sources people were using in their apps it was split almost in half among DataSets and custom business objects so I showed a lot of examples of binding to both.
I started off building a WPF form bound to a DataTable from scratch, laying out the form to display three fields from a customer database table. I used stack panels to lay out the controls and the formatting was very basic. I then wrote the code to load the data and the XAML to bind it. It took about 10 minutes and I only had three fields from a single table. Then I opened the Visual Studio 2010 CTP and created a one-to-many form of customers and orders against an Entity Data Model and showed how the data sources window "lit up" when the WPF designer was open. I then dragged the customer details and the order grid onto the form and viola — much less time and many more fields displayed as a master-detail form. People seemed excited and the evaluations of the session were excellent. People are really looking forward to this.
The rest of the talk focused on the interfaces necessary for data binding to work, how to hook up validation and formatting and how to design your business objects so that they wok well with Winforms and WPF clients. Although I did point out WPF specific interfaces that can make it easier on you if you aren’t worried about Winforms interoperability. It was basically a shorter version of the Redmond User’s group talk I did in September.
Here are the resources from that session:
- Data Sources and Data Binding in WPF
- WPF Forms over Data Videos
- Channel 9 Interview: WPF Drag-Drop Data Binding in Visual Studio 2010
- Visual Studio 2010 CTP
Taking Advantage of LINQ and XML with Office 2007
This talk was the same one I did at SDC in October which walks through the Open XML SDK and LINQ to XML in order to create, query and manipulate Office 2007 PowerPoint presentations, Excel spreadsheets and Word documents. This talk was also a packed room so there’s a lot of interest here.
I was surprised that even though the majority of people have used LINQ they were not familiar with LINQ to XML specifically so I did an overview of LINQ to XML and focused on Visual Basic’s implementation of it. Not one person in the room had ever seen XML Literals or axis properties in VB, and this counts the VB devs that were there. When I showed how to write a simple "mail merge" using XML Literals and embedded expressions, there were people actually laughing as I typed. I asked "what are you guys giggling about?" (I thought I had made a mistake) and one person replied "I’m laughing at how easy it is!". I showed XML InteliSense and XML namespace imports as well and people were very excited (maybe awestruck is better term).
Of course the point was to get people familiar with the Open XML SDK and how to use it to manipulate documents using LINQ and XML. Again the evaluations were excellent and the comments indicated that there were some very usable techniques presented. Here are resources from that session:
- Session materials online
- VSTO Power Tools
- Office Open XML Overview
- Open XML SDK version 2.0
- Microsoft Office Compatibility Pack
- LINQ to XML Overview
- LINQ How Do I videos
- Webcast: Working with XML in Visual Basic
- LINQ Learning Resources
Other Sessions worth mentioning..
I attended mostly data and Entity Framework sessions because this is an area that most interests me as part of business applications and I’m still learning EF myself. Plus, members from the SQL Data team were there including Elisa Flasko. Expert Julie Lerman was there as well so it was my chance to ask some questions. Julie did a post-Con on EF and it was well attended so people (like me) are starting to dive into it.
I also attended a really entertaining session that Steven Forte did called "Data Access Smack-down" where he walked us down memory lane starting in the early days of Microsoft data access and ending with demos of the latest developments like Entity Framework and ADO.NET Data Services (Astoria). Steven, who works for Telerik, is a loud-mouth New Yorker and I love his style and sense of humor. I asked him which Data Access technology his company used and currently they are using ADO.NET directly but are actively evaluating other data access technologies like EF.
Other Fun Stuff
As always, DevTeach is a lot of fun. This year a group of speakers got tickets to see a hockey game, Montreal vs. Atlanta, and it turned out to be a pretty exciting 3rd period. I’m a Sharks fan but it was a lot of fun rooting for the Habs and the arena is awesome. We won 5 to 4! Here’s some pictures of the game…
And to my left was Tim Huckaby and Richard Campbell, to my right was Alan Griver, Steven Forte and Barry Gervin.
I had a great time the rest of the week as well hanging out with everyone and drinking good Canadian beer. Hope to see you in Vancouver!