Black-Belt Virtual Track
If you’re an experienced developer, our Black-Belt Virtual Track is aimed at your needs. It’s called Black-Belt, because we assume both programming experience and familiarity with the tools. It’s called a “virtual track”, because instead of having sessions one after another in one room, you’ll find Black-Belt sessions distributed through all our conference packages.
Check out these sessions. With your Gold Passport registration you can attend them all.
Tuesday, April 1, 2008
Understanding Branching and Merging in TFS, Advanced
Brian Randell
10:15 a.m.
A critical factor in getting the most out of Team Foundation Server is understanding the version control subsystem. In this session you’ll learn how to setup your repository structure for concurrent development. You’ll learn about different branching techniques like branch by feature and branching for release. You’ll learn about the core concepts that every developer should know as well as those that are the domain of the release manager. You’ll learn about the cost of integration and look at techniques to keep your team working in the face of concurrent releases with support for both major releases, as well as service packs and hot fixes. This talk applies to both version 2005 and 2008 of Team Foundation Server.
Demystifying URL Rewriting and HTTP Modules & Handlers, Intermediate
Miguel Castro
11:45 p.m.
By now we’ve all seen blogs with interesting looking URLs. URLs like “…archive/2007/11/9.aspx”. Visually this may look like there is a page for every day of the year, but in fact there is not. URL rewriting allows you to expose friendly URLs while maintaining control of the actual redirection taking place. In fact, you can do this with just about any extension you want, really giving your site some URL customization. But this isn’t just for exposing friendly looking URLs; it is essential for search-engine optimization as well. I’ll show you how easy it is to provide this functionality for your site and how you can wrap it all up in a URL rewriting engine.
Intermediate Silverlight Programming, Intermediate
Jesse Liberty
10:30 a.m.
Moving beyond the basics; using Visual Studio and XAML to create hypervideo, meaningful animation and other relatively advanced topics for Silverlight programmers. Depending on the state of the next generation of Silverlight (1.1?) this talk may be modified to show more advanced topics.
Creating Advanced Custom Windows Forms Controls, Intermediate
Walt Ritscher
4:30 p.m.
Creating your own controls is a great way to augment your UI development. There's more to creating user controls however than dropping a few constituent controls on a designer and crafting a few properties or methods. This session illustrates the techniques you need to elevate your user controls to the next level. Since other developers use your control, you need a firm grasp on how to make your control interact with the Visual Studio Forms designer. Learn how to decorate your control with design time adornments (example: sizing and rotation handles). We'll look at several powerful tools - Property Browser integration, Extender Property Providers, Type Converters, Designer Verbs, Custom Designers and UI Type Editors - that make your control easy to use, work effectively in the Visual Studio IDE and also look professional. In addition you'll see you to support data-binding to your control and learn how to debug your control effectively.
Wednesday, April 2, 2008
Creating Custom WCF Behaviors, Advanced
Rob Daigneau
9:00 a.m.
Custom behaviors provide a mechanism to modify the WCF runtime execution at the proxy (i.e. client) or dispatcher (i.e. service) via attributes, configurations, and even programmatic means. This powerful technique may be used to inject common and “cross-cutting” logic upon Services, Contracts, Endpoints, and Operations, which in turn yields limitless possibilities.
In this session we will explore how WCF custom behaviors might be leveraged to implement a concept similar to Aspects. You'll learn how this powerful feature can be used to apply cross-cutting logic to your services in a manner that is both simple to understand and implement. You'll also see that the concepts of SOA, OOP, and AOP (i.e. Aspect-Oriented Programming) should be thought of as being complementary rather than competing.
Customizing the Microsoft ASP.NET MVC Framework, Advanced
Jonathan Goodyear
12:00 p.m.
Do you like the idea of using the Model-View-Controller (MVC) design pattern for your web applications, but wish you could take more control over the process? Well, you can! This session explores how you can customize the Microsoft
ASP.NET MVC Framework by building custom providers as well as plugging in existing alternatives. Demonstrations will include building a customized view engine, utilizing an alternative Inversion of Control container (Windsor) and using an alternative data provider (NHibernate or SubSonic). By the end of this session, you will feel empowered to take the Microsoft ASP.NET MVC Framework to new levels.
The Joy of Build Providers, Intermediate
Russ Nemhauser
3:00 p.m.
The System.CodeDom namespace, combined with custom build providers, can provide enormous value to rapid application development using Visual Studio. Similar to the magic way that developers get instant intellisense access to new properties they add to the Profile section of a web.config file, creating a custom build provider can make writing code for your business much more intuitive. In this session you'll learn how to create a custom build provider from scratch and you'll learn your way around code generation using System.CodeDom.
Service Development and Integration with BizTalk – VS60
Kent Brown
3:00 p.m.
When you think of integration you may think of clunky old messaging formats (flatfile, EDI, HIPAA, SWIFT, FIX, etc.). Sure BizTalk does all that and it's important stuff. But BizTalk also plays very well in the Service-Oriented space. With the WCF Adapters in R2, BizTalk is perfectly suited to build and host your course-grained business-focused services and broker, or "Orchestrate", to your fine-grained services built in WCF or ASMX. In this session you will learn the capabilities, the How-to, and the Best Practices of using BizTalk to consume and expose web services.
De-mystifying TFS Reporting, Advanced
Benjamin Day
3:00 p.m.
If you’re using Team Foundation Server, it’s capturing a whole lot of data for you about your projects – code coverage, code churn, work item history, etc – and it’s all going into the TFS Data Warehouse. All that data is being captured so that you can easily figure out what’s happening on your project using Excel or SQL Server’s Report Builder. That’s great. Ever tried to actually do it? Ever looked at the TFS Data Warehouse? (Yah. Clear as mud, huh?)
Then there are the SQL Server Reporting Services Reports that come out of the box. “Actual Quality vs. Planned Velocity”? (Whuh?) What do these reports mean? Better yet, how do you fix them after you’ve customized your Team Project’s Work Item Templates? What are these “dimensions” and “measures” all about?
In this session, Ben will answer these questions and more and attempt to eliminate the mystery in the TFS reporting system. We’ll cover the reports mean, how you can access the warehouse with Excel, and then show you how you can customize the TFS SQL Reporting Services reports.
Workflow Services Using WCF and WWF, Intermediate
Michael Stiefel
3:00 p.m.
Using workflow to build services is one of the fundamental building blocks of service-oriented systems. Version 3.5 (”Orcas”) of the .NET Framework simplifies the building of workflow enabled services using Windows Workflow Foundation (WF) and Windows Communication Foundation (WCF). The new framework classes reduce the amount of plumbing code that has to be written as well as providing new templates to help build these kinds of scenarios. This talk will not only illustrate the new features, but demonstrate them with a realistic scenario.
Working with BizTalk Enterprise Service Bus Guidance – VS68
Kent Brown
4:30 p.m.
SOA is all the rage nowadays, and one of the popular terms/concepts/products in the industry is the "ESB", or Enterprise Service Bus. BizTalk fits well in this area because of it's service-oriented nature and pub-sub architecture. However, there are a handful of features that BizTalk lacks out of the box to make it a true "ESB". Coinciding with the release of BizTalk 2006 R2, the Microsoft Patterns and Practices team has released the "Microsoft ESB Guidance", which includes software components and architectural guidance to help customers use BizTalk as an ESB. This is cutting edge stuff! We will go over the architecture, the functionality, and how and why to use it on your SOA projects.
Extreme Database Professionals! Advanced
Jeff Levinson
4:30 p.m.
Do you love the Database Professionals tool but wish it could do more for you? Do you want to generate data from custom data sources that aren’t supported? Have your own algorithms for custom data? Want to add new statistical options? How about unit test – do you want more flexibility than the built in test conditions give you? Or maybe you just want to understand what happens in unit testing behind the scenes. This session will teach you to build custom data generators, including custom data bound generators. In addition you will also learn how to extend unit tests to include your own custom test conditions to simplify complex testing scenarios.
Reflection in .NET: Hacking and Futzing with IL, Advanced
Jason Bock
4:30 p.m.
Reflection is a powerful way to dynamically inspect assembies at run-time to determine the structure of its contents, invoke methods, and change private field values (among other interesting tricks). But it doesn't stop there - .NET gives you the power to create code at run-time via its reflection infrastructure as well.
In this presentation, I'll cover the essentials of the System.Reflection namespace, how to emit code at run-time, and other libraries that go far beyond what .NET can currently provide (FxCop's CCI library for introspection and Mono.Cecil for full assembly reading/writing).





