English · Montréal, 05 janvier, 2009 22:31 ET
 
   

Sessions

.NET Rocks (DNR) has recorded a show at the DevTeach Toronto
Carl and Richard will host a panel discussion on The Future of .NET at the DevTeach developer conference in Toronto. Panelists: Ted Neward, Oren Eini, Scott Bellware.


Sujets couverts par la conférence DevTeach et SQLTeach


Agile Track

7 Principles that will change how you work
Joel Semeniuk - AGI272 -> Evaluation Add to my schedule
A Journey from fat to Lean: 7 Principles that will change how you work

In this session we will explore Lean Software Development from end to end. You'll learn the key principles of Lean Software Development as well as some tools and practices you can take away that will translate these principles into agile practices that fit your unique environment.

Achieving Persistence Ignorance with NHibernate
James Kovacs - AGI223 -> Material Evaluation Add to my schedule
Object-relational persistence can be very complex and middle-tier code is often dominated by persistence concerns. Your Customer class probably contains more code related to loading and saving customers to the database than it does actual business rules about customers. Wouldn't it be nice if you could remove all this persistence-related noise? This session examines why the concept of persistence ignorance is important and how to use NHibernate to build persistence ignorant domain models.

Adding automated tests to an existing codebase
Kyle Baley - AGI348 -> Evaluation Add to my schedule
It may seem like heresy but there are actual real-live applications out there in the world that don't have unit tests! No, really! And I know it sounds crazy, but you could be brought on to one of these applications and be tasked with adding automated testing to them.

Rare as these circumstances may be, it'll help to be prepared for them. Because it won't be as fun as you are probably imagining right now. For example, how do you automate a test for a web form that connects to a database, displays a form, then posts that data back to the database?

In this session, we'll look at techniques for integrating tests into an existing codebase that has never had them before. When do you write tests for existing code? How do you test a mammoth method/class? How do you know if you aren't breaking anything else? For answers to all these questions and more, attend this session.

Advance usages of Inversion of Control containers
Oren Eini - AGI441 -> Material Evaluation Add to my schedule
You already understand the concepts of Inversion of Control and Dependency Injection, now is the time to see how far we can make the IoC container works for us. This talk will focus on using an IoC container in complex scenarios. We will talk about generic decorator chains and generic specialization, contextful containers and IoC DSLs. These powerful concepts can greatly enhance your ability to respond to change in your application.

Agile Q&A with James Kovacs & Friends
James Kovacs - AGI169 -> Evaluation Add to my schedule
Join James Kovacs for an Agile talk on Agile. Challenge James and a rolling panel of Agile practitioners speaking at DevTeach to provide actionable answers about eXtreme Programming practices such as TDD/BDD, pair programming, continuous integration, and collective ownership. Have a question about Scrum or release planning? Need to know how to integrate QA into the Agile delivery model? Participants drive content by suggesting a list of topics, prioritizing as a group, and voting covered subjects as done as we fuse a fast-paced and rolling panel discussion with an XP-style planning game.

DevReach Daily Scrum!
Stephen Forte - AGI299 -> Material Evaluation Add to my schedule
One of the most popular Agile project management and development methods, Scrum is starting to be adopted at major corporations and on very large projects. After an introduction to the basics of Scrum like: the Scrum Master, team, product owner, and burn down, and of course the daily Scrum, Stephen shows many real world applications of the methodology drawn from his own experience as a Scrum Master. Negotiating with the business, estimation, and team dynamics are all discussed as well as how to use Scrum in small organizations, large enterprise environments, and consulting environments. Stephen will also discuss using Scrum with virtual teams and even an offshoring environment. The session will finish with a large Q&A on best practices.

Done Done
Erik Renaud - AGI245 -> Evaluation Add to my schedule
Duo with François Tanguay

Come hear Erik & François talk about what it means to be finished. On traditional 3 year projects, everyone knows when it’s done. How do you define this on a agile project, when you never know when the client will stop asking for new functionality ? What do we need to think of on a daily basis ? How about for a sprint ? Maybe for a task ?

Développement piloté par les tests (In French)
Frédéric SCHÄFER - AGI355 -> Material Evaluation Add to my schedule
Développement piloté par les tests (TDD) par l'exemple

Durant cette session nous développerons un Mastermind en se basant sur la méthode TDD (Test Driven Development). Nous aurons ainsi l'occasion de répondre aux questions suivantes par la pratique :

  • Quels sont les avantages de cette méthode ?
  • Quels sont les bonnes pratiques et les aides mémoire qui m'aident à faire du TDD ?
  • Quand mes tests doivent ils évoluer ? Comment ?

Guerrilla Refactoring
Kyle Baley - AGI372 -> Material Evaluation Add to my schedule
Greetings, comrades. Welcome to the resistance! Our quarry today is a shamefully designed application that grows fat with duplication and crusty with hard-codedness. It feeds on itself behind a shield of corporate deadlines, each one stricter than the last. The cowardly code mocks us with cries of "We don't have time! We don't have time!" while features are grafted onto the application haphazardly with no thought to future reform!

But fear not! We have studied our enemy and have altered our attack plan accordingly. No more frontal assaults. We must liberate the code in focused skirmishes from its bourgeois oppressors! Patiently, we shall advance, tightening our grip in an ever-widening net of unit tests as we hunt down bugs like the dogs they are!

So join me, brethren and sistren! With our allies, the Design Pattern Legionnaires and the Dependency Liberation Front, we will train you to take your rightful place in the movement toward a better world, where features are not divided into tasks that are meted out to the "database gal" and the "guy that does the UI because he has PhotoShop installed". Rather, they will be fully and utterly DEMOLISHED by fully armed, multi-functional, and domain-inspired programmers full of KNOWLEDGE AND FURY!!!1!!!

Viva La Revolucion!

Implementing a Brownfield Ecosystem
Kyle Baley - AGI395 -> Material Evaluation Add to my schedule
Implementing a Brownfield Ecosystem: A Cultural Extravaganza!

So you missed Folklorama again, eh? Of course, you did. It's in Winnipeg. Well, fear not, coders! In this session, we'll throw so much culture at you, you'll think you're back in high school biology.

A very important aspect of Brownfield applications is shifting the culture of your team. This starts with your project's ecosystem. Many developers in Brownfield applications don't even realize how many hoops they jump through during the course of a day to do simple things like checking in code and building the application.

In this session, we'll implement a full-fledged ecosystem for a Brownfield application. Working from the perspective of a single developer in a team, we'll cover topics such as the structure of your version control system, your check-in process, automated builds, and continuous integration. In the process, we'll talk about common pain points and common areas of friction that we can overcome with a few simple tool choices and a couple of mindset tweaks.

I'll be getting by with a little help from my friends as we simulate a team environment using well-placed and impeccably groomed plants in the audience who will act as other developers in the team, some working with me, others not so much.

Object Relational Mapping
Oren Eini - AGI487 -> Material Evaluation Add to my schedule
Object Relational Mapping += 2: More then just data <-> object

Object relational mapping are becoming only more popular, as people developing complex systems find that they need more than the tabular model to work with in their applications. A sophisticated ORM can do a lot more than merely get the data out of the database in object form, it can be a valuable assest in simplifying development and making things possible. In this session, you will see how you can utilize an ORM in untraditional ways to get an additional, better, approach to solving complex issues. Some of those ways include business rules, localization, state transitions, inversion of control, etc. All done via the ORM layer, and all can be used to drasticly simplify the complexity of the given scenarios.

ORM Fundamentals
Donald Belcham - AGI351 -> Material Evaluation Add to my schedule
What is ORM (Object Relational Mapping) and what does it have to do with your applications? Come to this session to find out! We'll explain what ORM is meant to do, and go over the available tools like Entity Framework and NHibernate. If you've ever wondered what all the buzz is about with ORM, this is the session for you!

Producing Production Quality Software
Oren Eini - AGI266 -> Evaluation Add to my schedule
Working software is no longer the only thing that we need to produce. We need to create a software system that has a chance of surviving in the cruel world of production system, outside the clean room and sterile environment of development and QA. Understanding bottlenecks in the system, preventing cascading failures and recovery strategies have ceased being the problems of the very high end players. With the cost of system downtime being measures in $/second, this is an area we have to consider all the way. In this talk we will cover how we can map common weaknesses in the system design, preemptively protect ourselves from them, and produce software systems that can withstand the real world hostile environment.

Taming Software Dependencies with DI and IoC
James Kovacs - AGI267 -> Material Evaluation Add to my schedule
Software inevitably contains dependencies. Dependencies between classes. Dependencies between layers. Dependencies with third-party libraries. How can concepts like dependency inversion, dependency injection, and inversion of control help you tame your software dependencies? Where does an inversion of control container, such as Castle Windsor, come into the picture and do you need one? Can Binsor help you achieve convention over configuration? This session answers all these questions and more...

TDD in a DbC World
Greg Young - AGI452 -> Evaluation Add to my schedule
Design by Contract is slowly moving its way into the mainstream. Many wrongfully find Test Driven Development and Design by Contract to be in conflict with each other.

This session will familiarize the audience with some some basic concepts of Design by Contract and the use of a theorem prover for the static checking of contracts. Discussion will then look in more depth at how we can maintain a Test First mentality in a Contract First world.

TDD with Microsoft MVC
Kyle Baley - AGI389 -> Evaluation Add to my schedule
So you’re interest is piqued by MVC. And maybe you’ve played with it a little, written some controllers, added some views. In this session, we’ll go deeper into the framework and see how it lends itself to Test-Driven Development. We’ll examine how it allows us to test in isolation much easier than with traditional web forms and implement basic functionality from the view all the way to the database.

Writing Domain Specific Languages in Boo
Oren Eini - AGI369 -> Material Evaluation Add to my schedule
Domain Specific Langauge is not just the DSL SDK from Microsoft. A DSL can make working with the domain much easier, since you are capable of leveraging the domain concepts directly. The other alternative to a DSL is an XML file, and we all know how well declarative model can work when you need imperative concepts, just consider NAnt for a minute and you will see the issue. Usually, writing a DSL in .Net would be a complex issue, requiring writing a parser, interpreter, etc. Boo already handles all of that, and its open architecture means that it is very easy to extend it to express the concepts of the domain. This talk will show you how to build DSLs in Boo and how to utilize this power in your applications.


Web development

Advanced ASP.NET Server Control (In French)
Dominic Sevigny - NET326 -> Material Evaluation Add to my schedule
ASP.NET est maintenant une plateforme de développement Web bien connue et beaucoup utilisée par l’ensemble des développeurs Web .NET de l’industrie. Cependant, mon travail de consultant m’a permis de me rendre compte que la plupart des développeurs ne poussent pas à la limite les fonctionnalités que propose celle-ci. Il est facile d’utiliser les contrôles de base mais qu’advient-il lorsque ceux-ci ne répondre pas à vos besoins? Je vous propose une session avancée sur le développement de contrôle serveur ASP.NET de façon à simplifier vos développements Web et ainsi utiliser cette technique de développement pour standardiser vos applications d’entreprise.

AJAX 4.0: Rich Internet Applications Come of Age
Don Kiely - NET422 -> Material Evaluation Add to my schedule
The ASP.NET team at Microsoft just never sits still. They are enhancing the AJAX features of ASP.NET with great new stuff like client-side template rendering, declarative instantiation of behaviors and controls, a DataView control, markup extensions, and new bindings. Everything is in flux, but there are few parts of ASP.NET as exciting as what is coming down the road. During this session we’ll explore these new features as implemented in the current release and see how you can make your Web applications an even better experience for users. Microsoft’s plans for AJAX will blow your mind!

Ajaxing Your .NET Applications
Rod Paddock - NET342 -> Material Evaluation Add to my schedule
Last Year Microsoft released a set of ASP.NET Ajax extensions. These extensions enable you to add Web 2.0 Style features to your ASP.NET Applications with little or no effort. In this session you will learn how to create new ASP.NET Ajax applications, how to incorporate Ajax into existing ASP.NET applications, what happens when you incorporate Ajax features into your web forms and overall how you can make your web forms smoother and more interactive. You will also learn how to incorporate the controls provided by the ASP.NET Ajax Control Toolkit.

ASP.NET Dynamic Data Web Sites
Don Kiely - NET325 -> Material Evaluation Add to my schedule
Microsoft implemented a bunch of ASP.NET 3.5 enhancements as part of the service pack 1 to Visual Studio 2008 and .NET Framework 3.5. One of the most intriguing is ASP.NET Dynamic Data, a way to quickly build data-driven Web sites that use the LINQ to SQL and LINQ to Entities object models, without building pages manually. A dynamic data project provides the scaffolding views of your project’s data models, with template pages and user controls to let users interact with data, all built at runtime. During this session we’ll explore dynamic data, see how to build a surprisingly capable site almost without effort, and then take the site to higher levels of functionality and customization. This isn’t a technique you’ll use for every new Web site, but it can be amazingly productive for many kinds of sites.

Building Business Focused Silverlight Applications
Rob Zelt - NET387 -> Material Evaluation Add to my schedule
Building Business Focused Silverlight Applications – Today and Tomorrow

Imagine a day where you could develop your Silverlight solutions with the ease pioneered by Microsoft Office Access, deploy them like an Internet application, and take advantage of the power of Microsoft .NET? In this session we’ll take a look at building business applications in Silverlight today and learn about an exciting new technology that is all about making business applications for RIA (Rich Internet Applications) much easier to build with the same .NET platform and tools on both the client and server.

Consuming REST-based data services
Elisa Flasko - NET354 -> Material Evaluation Add to my schedule
Building and consuming REST-based data services for the Web

Data has become a first-class element of the web. It drives mashups and makes data-driven AJAX and Silverlight applications possible. The ADO.NET Data Services Framework enables developers to create services that expose data over a REST interface using industry standard formats and semantics such as JSON and AtomPub. This demo-centric session will delve into the ADO.NET Data Services Framework by example, explore the value proposition for this new technology and describe how the framework integrates with hosted services (Windows Live) in the cloud.

Effective Web Farm Session State Management
Joel Hébert - NET359 -> Evaluation Add to my schedule
The pragmatics of Effective Web Farm Session State Management in ASP.NET

Handling ASP.NET session state effectively can become a challenge. There exists scalability, performance and architectural bottlenecks associated with the various options that are available. This said there are numerous techniques and topologies that have; been evolved, been developed, been adapted to best suit the web garden and web farm scenarios. Determining which option is best for your scenario is key as no technique is better than another ; rather it is simply best suited. In order to determine suitability we will converse and demonstrate the various elements each option and showcase the coding implementation of each of the options.

Enabling Partial Trust in ASP.NET applications
David Woods - NET344 -> Material Evaluation Add to my schedule
It is very easy to minimize the attack surface of your application and therefore reducing what an attacker can do if they exploit a web application. This is done using code access security built-in to the .NET framework and is easier than one might think!

Exploring the AJAX Control Toolkit
Robert Boedigheimer - NET375 -> Material Evaluation Add to my schedule
Discover how to add great new functionality to ASP.NET web sites using the AJAX Control Toolkit. Review the masked edit extender which allows the developer to specify a specific pattern that the input must match. This extends the TextBox control to display the mask to the user for better feedback about what is required for entry. See how the AlwaysVisibleControl extender can keep a control pinned to a specific area of the browser so that even when the user scrolls the content will be visible. Learn how the Accordian control can allow multiple areas with content with only one displayed at a particular time. These are just a handful of the controls available from the toolkit. Why live with dated user experiences in your ASP.NET web sites when these can enhance the site experience so easily?

IE 8 and its Impact on Your Web Sites
Robert Boedigheimer - NET357 -> Material Evaluation Add to my schedule
Internet Explorer 8 and its Impact on Your Web Sites

Internet Explorer 8 will ship in a new "standards" mode by default, which has the potential to impact many sites that have been crafted around various "features" in past versions. Learn which current practices will need to change and how this will affect your development techniques and your existing sites. Review tools that will be built into the browser to help developers debug and create web pages. Web Slices are a new feature that allow developers to mark areas of web pages that users can subscribe to like RSS feeds to wach for updates to those slices. Don't be surprised the day IE 8 ships and your sites break, be prepared!

Implementing Virtual Earth in Your ASP.NET App.
Jim Duffy - NET312 -> Material Evaluation Add to my schedule
Implementing Microsoft Virtual Earth in Your ASP.NET Applications

In this session attendees will learn how to add mapping capabilities to their ASP.NET applications utilizing Microsoft Virtual Earth. This demo intensive session will explain how to integrate and programmatically control the Microsoft Virtual Earth service. Topics covered include displaying a default map, displaying a specific map, how to zoom and pan, working with the navigation controls, adding custom controls, adding shapes and plotting specific points, importing data, finding locations, retrieve and display driving directions, working with 2D and 3D maps, selecting road, aerial or hybrid displays, working with map events, and working with bird's eye view images. From displaying sales hotspots to providing driving directions, if you've ever wanted to know how to add interactive mapping features and capabilities to your web applications this session is for you.

Intro to the ASP.NET MVC Framework
Markus Egger - NET278 -> Material Evaluation Add to my schedule
In the past, “ASP.NET” and “Web Forms” were synonymous. ASP.NET developers lived in a web environment that mimicked windows development as much as possible. This approach made web development accessible, and this approach will remain important going forward. However, Web Forms do not cater to everyone’s needs. Web Forms are notoriously hard to test for instance. The ASP.NET MVC Framework provides an alternative to the Web Forms approach within the ASP.NET environment. It represents another tool in a web developer’s toolbox that should be brought out for certain scenarios. This session explores what the MVC Framework is, and when it should be used.

Protecting web applications against injection atta
Nicole Calinoiu - NET369 -> Material Evaluation Add to my schedule
With the recent increase in automated attacks against web applications, it is becoming increasingly important that web developers understand how to protect their applications against some of the most common attack types. This session is intended to equip ASP.NET developers with an understanding of common injection attacks (SQL injection, site defacement, and cross-site scripting) and the specific techniques that can be used in ASP.NET to protect web applications from injection attacks.

The Scaling Habits of ASP.NET Applications
Richard Campbell - NET332 -> Material Evaluation Add to my schedule
As our ASP.NET Web applications become more and more successful we switch our focus from adding features to performance, scale, and management. Richard has been in the lab studying the scaling habits of the average domestic ASP.NET solution and has emerged to discuss his findings. (No applications were actually harmed during the capture of this data.) Come and learn where ASP.NET stumbles and how to get it back on its feet. In this session we will learn about the web acceleration equation, identify common ASP.NET bottlenecks, explore solution alternatives, uncover the secret sauce, and determine a reasonable strategy for scaling ASP.NET applications.

The Scaling IQ Test: When Dev. and Admin, Collide
Richard Campbell - NET361 -> Material Evaluation Add to my schedule
The Scaling IQ Test: When Development and Administration Collide

There comes a time in every web application’s life where it must pass from the nest of development to the skies of operations. Once a web application grows to a certain size most of the effort around the application focuses on keeping it operating properly, rather than building it. When that time comes, there is a meeting – between the development team and the network administration team. At that meeting (if it’s a good one), key information is passed between the two teams: Everything that developers need to know about the network, and everything that the network administrators need to know about the application. It’s a test – and if you fail it, your application will too. This session explores exactly what each team needs to know to pass.

The Silverlight Toolkit
Rob Zelt - NET388 -> Material Evaluation Add to my schedule
The Silverlight Toolkit – A RIA Developer’s Best Friend

The Silverlight Toolkit is a collection of Silverlight controls, components and utilities made available by Microsoft outside the normal Silverlight release cycle. Learn how to increase your productivity by leveraging this rich set of tools, quickly adding new functionality and a professional look and feel to your Silverlight 2 projects.

Using the Microsoft AJAX Library
Robert Boedigheimer - NET371 -> Material Evaluation Add to my schedule
Did you know Microsoft has provided a client library that abstracts away differences in client Javascript libraries in browsers? The library extends Javascript to appear to support features like inheritance, provides additional, functionality for existing types, and provides a consistent event model. Learn how the library simplifies client development and shields the developer from browser idiosyncrasies. See how to invoke AJAX Page Methods and Web Services to contact the server from the client, and techniques to increase the security of such calls. Review how the AJAX Control Toolkit uses the AJAX Library, and how it can be used by non-ASP.NET web sites.


.NET Track

Appli. Order Tracking - 1/4 (In French)
Frédéric SCHÄFER - NET391 -> Material Evaluation Add to my schedule
Créer un modèle métier (couche affaire) testé avec Entity Framework et manipuler des données avec LINQ

Note: Duo avec Fabrice Marguerie

Dans le cadre du développement en direct d'une application de suivi de commandes, venez découvrir la création d'un modèle métier avec règles et tests via ADO.NET Entity Framework et son modèle conceptuel de données (EDM). Nous vous montrerons également comment LINQ simplifie grandement la manipulation de collections d'objets en mémoire (LINQ to Objects) et de documents XML (LINQ to XML).

Appli. Order Tracking - 2/4 (In French)
Frédéric SCHÄFER - NET392 -> Material Evaluation Add to my schedule
Note:Duo avec Fabrice Marguerie

Développer une interface usager riche et testable avec WPF en utilisant des design patterns

Dans le cadre du développement en direct d'une application de suivi de commandes, venez découvrir l'utilisation de WPF (Windows Presentation Foundation) pour développer des interfaces utilisateurs attrayantes. Nous vous montrerons comment mettre en œuvre les design patterns Model-View-ViewModel, Command et Application Controller pour structurer vos développements et rendre l'ensemble de vos applications testables.
Note : pas besoin d’avoir assisté à la 1ere partie.

Appli. Order Tracking - 3/4 (In French)
Fabrice MARGUERIE - NET393 -> Material Evaluation Add to my schedule
Note: Duo avec Frédéric Schäfer

Persister ses objets avec Entity Framework et adapter l'interface usager en conséquence

Dans le cadre du développement en direct d'une application de suivi de commandes, venez découvrir l'utilisation d'ADO.NET Entity Framework comme outil de mapping objet-relationnel pour persister un modèle métier. Ce sera l'occasion de voir LINQ utilisé pour requêter une base de données (LINQ to Entities). Nous vous montrerons également comment le passage d'un prototype utilisant des données locales à une application utilisant une base de données nécessite des adaptations sur l’interface usager.
Note : pas besoin d’avoir assisté aux parties précédentes

Appli. Order Tracking - 4/4 (In French)
Fabrice MARGUERIE - NET394 -> Material Evaluation Add to my schedule
Note: Duo avec Frédéric Schäfer

Développer une application Silverlight distribuée avec WCF

Dans le cadre du développement en direct d'une application de suivi de commandes, venez découvrir l'utilisation de WCF (Windows Communication Foundation) pour distribuer les couches applicatives. Nous vous montrerons également comment l'utilisation de Silverlight permet de créer des interfaces graphiques riches et proches de WPF mais pour le web.
Note : pas besoin d’avoir assisté aux parties précédentes

Building Powerful Office Applications with VSTO
Tim Huckaby - NET265 -> Material Evaluation Add to my schedule
Building Powerful Office Applications the Easy Way with Visual Studio Tools for Office (VSTO)

This session focuses on the power and developer productivity of Visual Studio Tools for the Office System (VSTO). VSTO is a .NET Smart Client technology and this session will delve into the tips and tricks, positives and negatives when designing and building smart client applications with VSTO.

C# and F# in perfect harmony
Amanda Laucher - NET395 -> Evaluation Add to my schedule
F# is Microsoft's attempt at going Functional. You've probably heard bits and pieces about it and determined that you will never be able to convince your company to make the switch. We'll walk through using F# in conjunction with the C# apps you are using now. One of the benefits of the CLR - easy interoperability. This session walks you through how to make that happen seamlessly.

Customizing the Entity Data Model
Julia Lerman - NET455 -> Material Evaluation Add to my schedule
The Entity Data Model's real power is in its ability to be customized to provide a data schema that YOU want to code and query against, not a schema that is fine tuned by a DBA for performance. If you've only looked at the initial model created by the EDM Wizard, you're bound to be surprised at how dramatically you can impact model. This session will teach you how to implement various types of inheritence, Entity Splitting, Abstract entities, complex types. You will also learn how to do some advanced mapping such as mapping associations as well as digging into the XML to take advantage of QueryViews and Defining Queries. Finally we'll take a look at mapping Stored Procedures in the Entity Data Model.

Data Sources and Data Binding in WPF Business App.
Beth Massi - NET374 -> Material Evaluation Add to my schedule
In this session we'll go over the major classes and interfaces involved in data binding in Windows Presentation Foundation (WPF) clients using a variety of data sources including DataSets and custom object collections. This session will demonstrate the differences in Winforms and the WPF data binding architectures and how you can design your business entities to work well with any Windows smart client. Well also take a look as some of the new WPF drag-drop data binding tooling that will be available in Visual Studio 2010.

Deep Dive Into Entity Framework Object Services
Julia Lerman - NET466 -> Material Evaluation Add to my schedule
The Entity Framework is much more than a drag and drop solution that you may see in Introductory session. There is a set of APIs that you can tap into to have very granular control of the entity objects in your applications. Object Services, which is encapsulated in the System.Data.Objects API is responsible for query processing, materializing objects from query results, managing the state and relationships of those objects, performing updates and so much more. This session drills into how the Object Services’ ObjectContext manages relationships and how you can control its behavior. We also look closely at change tracking, focusing on the challenges and solutions for dealing with data concurrency when moving objects across tiers in your enterprise applications. Knowing what to expect from these features and how to take control of them will empower you in your use of the Entity Framework and Entity Data Models in your applications.

Developing and Deploying Your First Cloud Service
Yair Alan Griver - NET373 -> Material Evaluation Add to my schedule
This session will give an overview of the Windows Azure platform and will focus on making concrete what it’s like to develop on the platform. In this talk, we’ll cover:
  • Developing a service
  • Scalability
  • Storage
  • Services architecture and roles
  • Testing and debugging
  • Deploying to the cloud
  • Maintaining a running service
The session will be based on the currently available bits, so that if you decide to join the preview, you can use the sample developed in the session.

Effective Use of System.AddIn
Kathleen Dollard - NET319 -> Material Evaluation Add to my schedule
Your Application in Pieces – Effective Use of System.AddIn

System.AddIn is new feature in .NET 3.5 that lets you create local granules of your application (it has nothing to do with Visual Studio automation). These granules let you, or others with less trust, customize your application. For example, if some clients prefer to alter a set of calculations, you can offer that capability. Since add-ins run in a separate AppDomain, you offer this functionality without compromising the security and robustness of your application. A major challenge for add-ins is allowing for independent evolution of all parts of the system. System.AddIn supplies this flexibility through a relatively complex pipeline. You’ll learn how this pipeline works and how to shortcut the tedious process of creating the first version of your add-in by using the Microsoft supplied PipelineBuilder tool. You’ll walk through several versioning scenarios. Add-in systems can be prone to performance issues, and you’ll see many scenarios where System.AddIn is blazingly fast, as well as how to improve performance in a handful of difficult scenarios. With this firm understanding of System.AddIn, the talk returns to design – making pieces of your applications granular and designs that lend themselves to WCF wrappers should you later need to remote this functionality.

Fun with Programming
Carl Franklin - NET297 -> Evaluation Add to my schedule
In this session the inimitable Carl Franklin demonstrates what happens when programmers have too much time on their hands. He plays his baby grand piano, in Connecticut, through the Internet using a home-made MIDI library and Sockets. You'll also see how some surprisingly odd devices can be used as input controllers for your applications. It's a guaranteed good time!

Implementing the Entity Framework in Existing App.
Kevin McNeish - NET347 -> Material Evaluation Add to my schedule
Implementing the Entity Framework in Existing Applications

Many .NET developers have existing .NET applications with an ADO.NET 2.0 data access layer. This session shows how you can best leverage Microsoft’s Entity Framework without completely rewriting your data access layer or deeply impacting your existing applications.

Integrating WPF & WCF into Your Office App.
Tim Huckaby - NET258 -> Material Evaluation Add to my schedule
Integrating WPF & WCF into Your Office Business Applications

This session will highlight how the Windows Presentation Foundation (WPF) and the Windows Communications Foundation (WCF) can be leveraged in applications built with Visual Studio Tools for the Office System (VSTO).

Learning the Entity Framework
Carl Perry - NET286 -> Evaluation Add to my schedule
Most .NET database applications out there use ADO.NET to access and manipulate data, and most of them have a data-access layer built on top of ADO.NET to abstract out many of the details related to data-access that can get in the way of business logic. In this session we’ll introduce the ADO.NET Entity Framework, a high-level data library that pushes up the level of abstraction application developers need to work at when dealing with data in databases. We’ll discuss how the system supports conceptual modeling, the use of the object services layer to do object-relational mapping, and how great integration with LINQ (Language Integrated Query) brings new levels of productivity to the data-access development space.

LINQ to SQL Sucks!
Guy Barrette - NET299 -> Material Evaluation Add to my schedule
LINQ to SQL Sucks! Now that I have you attention, the real session’s title is “The challenges of using LINQ to SQL in layered apps” and no, LINQ to SQL doesn’t suck. With the release of the .NET Framework 3.5, Microsoft has introduced LINQ to SQL, a data access technique for relational data stored in SQL Server databases. However, using this new API in layered applications or service applications (WCF) can be a problem since LINQ to SQL creates strong bonds between the presentation layer and the data access layer. In this presentation, you’ll see how to overcome these problems and how to use LINQ to SQL in enterprise applications.

Nouveautés des langages C#3.0 & VB9.0 (In French)
Fabrice MARGUERIE - NET397 -> Material Evaluation Add to my schedule
De .NET 2.0 à LINQ, les nouveautés des langages C# 3.0 et VB 9.0

LINQ apporte une petite révolution dans les développements d'applications .NET. La principale force de cette technologie est qu'elle permet d'accéder à plusieurs types de données grâce à un langage de requêtage unifié, et ce, directement en C# ou VB. Mais au delà de cet avantage, LINQ représente une vraie évolution des langages C# et VB.

Venez découvrir et comprendre, dans une session à but pédagogique et très dynamique, basée sur un exemple de code, comment passer à C# 3.0, VB 9.0 et LINQ, et comment passer d'un code impératif à un code déclaratif, plus concis, et plus expressif.

Refactoring with Generics
Kathleen Dollard - NET341 -> Material Evaluation Add to my schedule
Generics open up new opportunities to increase the robustness of your code, improve its performance, and significantly reduce the total amount of code you write. After a brief introduction to generic syntax, Kathleen will show you how using generics improves the quality of your code. You’ll see how easy it is to shift your current collections to generic collections and learn about new features such as robust sorts, finds, and filters across collections. You’ll learn how to write your own generic methods and classes. Finally you’ll see how to leverage the spectrum of generic possibilities in a business object hierarchy that reduces the total lines of code by about 50%! You’ll walk out of this talk understanding how to use generics to improve your own applications.

Sockets are Fundamental
Carl Franklin - NET292 -> Evaluation Add to my schedule
Learn how to take full advantage of the TCP/IP stack in Windows using the Sockets support in the .NET Framework. Sockets are the lowest-level tool for sending and receiving data over a network. In this talk Carl shows you how to develop simple and powerful client applets and server applets that handle multiple clients using the .NET Asynchronous Model. Carl shares some great demos and great code for when the high-level communications frameworks are just too much.

Strategies for Moving Your VB6 App. to .NET
Beth Massi - NET294 -> Material Evaluation Add to my schedule
Strategies for Moving Your VB6 Applications to .NET

Visual Basic (VB) 6 was used by millions of developers world-wide to build applications ranging from thousands to millions of lines of code representing significant organizational investments. The path from VB 6 to .NET has not always been clear, there is no one size fits all approach. We’ll cut to the chase, exploring the pros and cons of each option using real world examples. You will leave this session with the framework and tools to develop the right strategy for your organization to leverage your existing investments while taking advantage of the power and productivity the .NET Framework provides today and will provide going forward.

Taking Advantage of LINQ and XML in Office 2007
Beth Massi - NET364 -> Material Evaluation Add to my schedule
Taking Advantage of LINQ and Open XML in Office 2007

The Microsoft Office 2007 suite of products are based on an open XML format called Open XML. In this session we’ll demonstrate how to use the Open XML SDK to make it easy to work with these new formats as well as show how to easily manipulate these document parts with LINQ.

Top 10 NET Open Source tools
Rod Paddock - NET300 -> Material Evaluation Add to my schedule
The title says it all. This session will cover some of the best open source project for .NET developers. Unit testing, version control, control kits, AJAX tools and so on. This session will cover a plethora of open source .NET projects.

Top 10 Umbrellas
Francois Tanguay - NET493 -> Evaluation Add to my schedule
Duo with Erik Renaud

Umbrella is an open source framework that fills the gap when using different .net technologies. We would like to show you 10 tricks that Umbrella uses in order for you to write less code and be more productive. It`s more than just code though, it`s also new patterns and new paradigms that will make you rethink the way you create software. Even if you are not using Umbrella on your current project, you will be able to take some ideas home with you. How far have you pushed the decorator pattern ? Have you ever used composites ? What about those things Umbrella calls “Extensions Points” ? We guarantee this session will inspire you.

What is Application Virtualization?
Daniel Nerenberg - NET222 -> Evaluation Add to my schedule
What is Application Virtualization and how will it affect my apps?

Microsoft App-V (formerly Softgrid) is the latest paradigm in virtualization. IT provides an new way to manage the application lifecycle. This session will examine the application sequencing process, and provide insight for application developers who might see their application “virtualized” in the near future.

Workflow activities can be tested
Robert Angers - NET349 -> Material Evaluation Add to my schedule
Workflows and workflow activities can be tested in a test harness

On of the many callenges of all programs is to properly test code before it reaches productions. While testing manually can work, it's usually not feasible if many iterations are necessary. In this session you will learn how to bring together the power of unit testing to the Workflow world. First we'll cover how setup your test harness and workflow runtime in order to test single activities. Then we'll see how to plugin or mock external events using the some of the built in features of the runtime and some mocking framework. Finally we'll examine a demo how to execute a full workflow in automated mode in order to test all execution paths.

WPF Development with Microsoft Expression Blend
Kevin McNeish - NET351 -> Material Evaluation Add to my schedule
Visual Studio 2008 is missing important capabilities for developers creating WPF applications. If you are serious about WPF development, you do not want to miss this session which gives you a huge jump start on using the advanced features of Expression Blend that allow you to easily perform visual data binding, creation of control templates, resources and styles, implement animations, sound and video, and much more. You will learn how best to leverage the functionality of Visual Studio 2008 in conjunction with Expression Blend for the best designer/developer experience.

Writing Better Visual Basic Code With Refactor!
Jim Duffy - NET315 -> Material Evaluation Add to my schedule
Refactoring is the process of revising complex, code making it easier to read and less costly to maintain, without changing its underlying behavior. Regardless of the type of application you're working on, whether Windows Forms, ASP.NET, WPF, WCF, web services, WF, or building Office plug-ins, writing clear and easily manageable code goes a long way toward the ultimate success of the project. In this session Visual Basic developers will learn how to use Refactor!, the free plug-in from Developer Express Inc. (in partnership with Microsoft) that enables Visual Basic developers and team members to quickly and easily restructure their code within Visual Studio 2005 and Visual Studio 2008. Attend this session and walk away with the knowledge and skills to lift your productivity to new heights while creating better, more manageable and less costly code.


Silverlight 2.0 Track

Building Silverlight Controls
David J Kelley - SLV467 -> Material Evaluation Add to my schedule