Logo
  HOME
- Event Home
- DevConnections
   Home
- WinConnections
   Home
  ATTEND
- Registration Info
  EXHIBIT
- Why Exhibit?
- Get Space
- Marketing Opportunities
  CONTACT US
- E-mail Us
- Call Us
  800-438-6720 or
  203-268-3204
  OTHER EVENTS
- Microsoft ASP.NET
  Connections
- SharePoint
  Connections
- SQL Server
  Connections
- Visual Studio
  Connections
- Exchange
  Connections
- Windows
  Connections
- Event Archives
Sessions

Sessions and Speakers are subject to change without notice

KEYNOTE SESSION

KEYNOTE: SharePoint Development: Evolved
Arpan Shah
SharePoint continues to evolve as a strong platform for many different users—especially for the developer. Now more than ever the developer is armed with a rich set of out-of-the-box features, a powerful set of services and APIs, and tools support that enable you to build custom applications that span the discrete Web part to the enterprise solution. Come kick off Microsoft Day at SharePoint Connections with a glimpse into not only what SharePoint has to offer you today, but also to catch a glimpse as to what the future holds for the next evolutionary step for the SharePoint developer.

KEYNOTE: SQL Server Next Generation Data Platform
Quentin Clark
SQL Server has evolved to a complete data platform enabling rich services and comprehensive management capabilities for all types of data. From unstructured data to fully structured data models SQL Server provides a variety of data types and technologies to enable next generation applications. In this session Quentin will go over the vision for the data platform, some of the capabilities in SQL Server 2008 and how they’re being used by customers today and will provide some insight into what’s coming next.

KEYNOTE: The Energynet—The Next Boom in Software
Juval Lowy
The ongoing economy unraveling is the defining moment of our time. Many professional developers are fearful for their livelihood, as employers and customers cut and slash development plans, and as economic activity grinds to a halt. But not everywhere. In centers of technical excellence and innovation such as the Silicon Valley, the major players, from investors to industry leaders, are aligning themselves with the next boom in software, a field Juval Lowy calls the Energynet. To avert a depression, Juval believes the government and private industry will invest and promote alternative energy, both for stimulating the economy and to reduce dependency on foreign energy imports. Alternative energy covers a wide range, from new cars, to micro renewal sources energy producers, infrastructure upgrades to charge stations and distribution, new power and transformation grids, and integration of billing systems, let alone commercial building and homes modification. And the key for making all that work is software. We simply cannot make the physics or the chemistry substantially better, but we can profoundly integrate systems, iron out inefficiency, automate and vertically integrate energy trading, production and consumption; and the key to all of that is great software. This massive new software system is the Energynet, and the analogy to the Internet is a good one–instead of packets and request, the Energynet transfers watts and usage data, connecting anything and everything in the energy market. In this unique session, Juval Lowy will present the case for the next boom in software, share personal observation and perspectives, and point out the skills and expertise required of developers that want to not only survive but thrive on the next boom in software.

KEYNOTE: Visual Studio – Your Development Happy Place
Dave Mendlen
For more than 20 years developers have relied on Microsoft for the most powerful and productive tools. Visual Studio 2008 has already been widely adopted by many developers as their platform of choice, and Visual Studio Team System the preferred solution for collaborative teams. Now, Visual Studio 2010 is on the horizon and presents even greater opportunities for the creation of applications that target new platforms such as Windows 7 and innovative technologies like the Cloud and Parallel computing. This talk will take a look at the best features in the Visual Studio 2008 product family as well as preview some of the great innovations coming in Visual Studio 2010.

KEYNOTE: Web Development: The Next Generation
Scott Guthrie
See the latest innovations that you can use today in Visual Studio 2008 and ASP.NET 3.5 that make building great Web applications easier than ever. From built-in AJAX support to new Web and data controls, productivity has never been the same. Then, get a sneak peak at the continued improvements Microsoft is making in its Web platform and tools. We’ll take a look at improvements in ASP.NET shipping later this year, code-focused enhancements in Visual Studio 2010, as well as new features for ASP.NET 4. We also discuss our strategy for application development to help you make informed decisions. We will even take a look at how you can incorporate Silverlight into your ASP.NET applications to create truly compelling Web experiences.

LIVE

VLV200: .NET Rocks! Live
Richard Campbell
Carl Franklin
Come watch Carl Franklin and Richard Campbell interview some of the movers and shakers in the .NET world. Don’t miss this live recording of .NET Rocks! For more episodes online go to www.dotnetrocks.com. Guest: Don Kiely.

LANGUAGE AND TECHNIQUES

VLA301: Refactoring Today's .NET Code to Old Good Software Design Principles
Dino Esposito
Just as an architect wouldn’t design a house ignoring the laws of gravity, a software architect shouldn’t design a piece of software ignoring basic principles of software design such as low coupling and high cohesion. Just as an architect wouldn’t design a house ignoring building codes that apply to the context, a software architect wouldn’t design a piece of software ignoring common practices and known solutions that work. Is this what really happens in the real world? Powerful RAD tools and the imponderable weight of the time-to-market variable created in the .NET space a historical delay in the adoption of practices and patterns for good software design. From the developer’s standpoint, there’s a sort of five-year backlog in the understanding of techniques such as dependency injection and composition and design values such as testability, coupling, responsibility, separation of concerns, information hiding, even security. In this session, we’ll go through a number of simple classes and see how to improve the design to achieve low coupling, single responsibility, and testability. You should not expect to hear completely new and revolutionary concepts—everything being discussed in the session refers to concepts and statements made for the first time at least 15 years ago. What’s new, instead, is the applicability of these concepts to the .NET space. As emphatic as it may seem, such fundamental concepts of software engineering are unknown to a large share of .NET developers. Another significant share of .NET developers, instead, forgot them entirely in the heat of writing production code. Finally, yet another share of .NET developers are discovering good principles of software design today under the goad of new tools such as testing products, dynamic proxies, and IoC containers. Whatever share you’re in, this session will rejuvenate your design spirit.

UI DESIGN

VUI301: Understanding Efficient User Interface Design
Markus Egger
The user interface is of tremendous importance as it is the only part of any given application that is visible to the user. Unfortunately, techniques and guidelines for efficient user interfaces remain a subject of mystery for most developers. This session explores user interface design on multiple levels. It discusses user interface design philosophy as well as specific techniques available in Visual Studio. The session presents many examples based on real-life applications.

VENDOR SESSION

VENDOR: Building Business Applications with WPF, Silverlight and the Telerik RadControls
John Kellar
Do you need to build line of business (LOB) applications with WPF and Silverlight in 2009? Do you have the tools you need to be productive? Join Microsoft MVP and Telerik Evangelist John Kellar as he shows you how Telerik is delivering the tools you need to build high performance and visually stunning WPF and Silverlight applications. In this developer-focused session, you will see you how can leverage the RadGridView, RadGauge, and RadChart to build robust applications for both WPF and Silverlight. Since Telerik’s XAML RadControls share a common API, you can easily build an application for WPF and then quickly reuse the same Telerik code in Silverlight. Don’t believe it? Don’t miss this session!
One lucky attendee of this session will win a license for Telerik Premium Collection for .NET.

VENDOR: Dell EqualLogic Solutions for SQL Server in Virtual Machine Deployments
Suresh Jasrasaria
Keith Swindell
The Dell EqualLogic™ PS Series is an ideal storage platform for SQL Server® deployments in dedicated hardware server and hypervisor based virtual machine environments. EqualLogic storage solutions for SQL Server are easy to deploy and manage and provide comprehensive data protection and disaster recovery features. These solutions include advanced software, like Auto-Snapshot Manager/Microsoft® Edition (ASM/ME) and Auto-Snapshot Manager/VMware® Edition (ASM/VE) that provide tight integration with Microsoft® Windows Server® 2008 Hyper-V™ and VMware® ESX™ Server respectively. They take full advantage of EqualLogic’s snapshot functionality to help protect virtual machines while ASM/ME also integrates Volume Shadow Copy Service (VSS) technology to create Smart Copies of SQL Server volumes using snapshots, clones and remote replication to help secure the highest level of protection for SQL server data. In this session we will demonstrate how you can eliminate hours of tedious work to easily create SQL Server data copies for application testing and development and help protect SQL Server data in a hypervisor-based virtual machine environment.

MICROSOFT DAY - MOBILE DEVELOPMENT

VMS05: Distributing and Monetizing Windows Mobile Applications through the Windows Marketplace for Mobile
John Bruno
Daniel Bouie
This session presents developers with a unique opportunity to understand the next generation of Windows Mobile application distribution: Windows Marketplace for Mobile. Windows Marketplace will revolutionize distribution of Windows Mobile applications, games, and content, and is designed to solve the two largest problems of the Windows Mobile consumer-focused developer community: distribution and monetization. This session will provide application developers with the insights, tools, and processes necessary to begin distributing and monetizing their applications on the Windows Mobile platform.
Developers can expect to walk out of this session with a clear understanding of the value proposition of the Windows Marketplace, the knowledge required to architect and build their mobile applications for global distribution, and a clear picture of the processes required to distribute their applications to a global community of Windows Mobile consumers. This session will primarily focus on application distribution model for the Windows Mobile 6.5 platform, and include specific detail around application code signing, Windows Mobile application certification, localization, and monetization.

WINDOWS PRESENTATION FOUNDATION

VPF305: Build Composite WPF Applications
Brian Noyes
When you build a WPF application of any serious complexity, your code complexity can get out of control pretty quickly, leading to slowdowns in development, poor testability and poor maintainability. Composite Application Guidance for WPF gives you the tools and patterns you need to manage that complexity. This session will cover what Composite Application Guidance for WPF contains, what it does for you and how to use each of its features. You will learn how to build WPF applications that are composed of loosely-coupled, dynamically loaded modules that plug in their functionality to the application using UI composition patterns. You’ll also learn how to leverage the commanding and eventing infrastructure provided by the guidance to allow your handling code for commands and events to stay decoupled from the UI definition itself. You also learn a little bit about dependency injection, testability, and UI patterns along the way.

VPF301: Building Data Visualization Applications with the Windows Presentation Foundation (WPF)
Tim Huckaby
This session will be heavily demo-focused to accentuate how the power of the Windows Presentation Foundation (WPF) can be used to visualize data. WPF is the next-generation presentation sub-system for Windows. It provides developers and designers with a unified programming model for building rich Windows smart client user experiences that incorporate UI, media, and documents. WPF uses vector-based graphics rendering, which results in better graphics and presentation for an application. WPF also has other features such as layout, styling, and data binding, which, when you mix with interactivity, enables scenarios such as interactive data visualization. When you put all this together, you have a unified API for various presentation components, such as 2D and 3D documents and declarative programming through XAML, which is a powerful platform for data visualization that can be used to really “light-up” your enterprise applications.

VPF303: Declarative-based UI Programming: WPF, Silverlight & Surface
Tim Huckaby
XAML has become the de facto declarative language for UI development on the Microsoft platform spanning Windows, Web and the Microsoft Surface. This transformation to a single declarative language for all platforms has enabled Microsoft to deliver on the bold promise of a cross-platform user experience programming model for the future. In this unique session, we take a look at how knowledge of XAML and .NET languages like C# and Visual Basic allow you to develop applications for Windows (WPF), the Web (Silverlight) and the Microsoft Surface using the same coding constructs and idioms. In this demo-packed session, we will take a look at how graphics, animations, data binding, styles and templates are commonly implemented on these platforms and how XAML makes all of this possible.

VPF304: Designing Polished WPF Interfaces with Expression Blend
Markus Egger
WPF (Windows Presentation Foundation) is a powerful UI technology, and XAML represents a fascinating new way of programming WPF. However, without tools, WPF and XAML get tedious quickly, and a good designer is needed. Microsoft offers a whole set of such tools. This session focuses mostly on Microsoft Expression Blend (used in combination with Visual Studio). This session provides an overview of the goals, features, and characteristics of this tool and shows how to create a small next-generation application using it. This session also shows developers how good looking interfaces can be created using a few simple and repeatable tricks.

VPF302: Integrating WPF & WCF into Your Office Business Applications
Tim Huckaby
This session will highlight many of the ways that 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). Visual Studio 2008 introduced an array of new features aimed at a wide range of Office solution types. With Visual Studio 2008, you can build solutions that incorporate the native capabilities of the Office client applications (like Outlook) combined with the sophisticated UI capabilities of WPF that’s connected to remote data and services via WCF and use the RAD features of LINQ to manipulate that data. These new technologies provide opportunities for building powerful solutions with functionality that was previously difficult or impossible to achieve. Now that Office has evolved into a true development platform, Office-based solutions are becoming increasingly sophisticated, less document-focused, and more loosely coupled. This session will show you how easy it is to build robust solutions that leverage the latest technologies. WPF provides developers and designers with a unified programming model for building rich Windows smart client user experiences with Office client applications that incorporate UI, media, and documents. WCF contains a support framework and a design-time toolset for building service-oriented solutions that connect rich Office clients with powerful server-side functionality and remote data access. Visual Studio 2008 provides a simple GUI wizard that lets you consume WCF services without having to worry about service metadata, protocols, or XML configuration.

VPF306: Windows Presentation Foundation: Beyond the Bling
Kathleen Dollard
Have you seen Windows Presentation Foundation (WPF) portrayed as a way to spin photos on cubes and wondered what this had to do with you? WPF is a great tool to create business applications. It raises the bar on organizations and offers amazing tools to create beautiful interfaces. You’ll learn about underlying fundamentals and see some nice interfaces to get you thinking of how to take advantage of WPF in your own business applications. The underlying WPF model separates the definition behavior, layout and appearance of your application. You’ll see how XAML expresses each part of this triad as well as what’s supported by the newest tools. This will be presented in the context of a business application that incorporates a variety of WPF controls, user controls, layout controls, command patterns and graphics. At the end you’ll see the rather ugly programmer-created application drastically transformed by the hands of an artist into a beautiful and functional final product.

WINDOWS WORKFLOW FOUNDATION

VWF301: Developing Service-Oriented Workflows
Brian Noyes
Windows Workflow Foundation (WF) fits nicely into service-oriented applications for designing the workflows that implement the business processes a service exposes. This session covers how to expose workflows as services, both as encapsulated implementations of portions of service processing, and by exposing a workflow as a service itself. It also covers how to call out services from within a workflow and coordinate the results of those service calls with the rest of the workflow processing. Learn how to integrate workflow processing logic with other service processing logic through the host communications model of WF, as well as how to use the Microsoft .NET Framework 3.5 WF Send and Receive activities and Windows Communication Foundation (WCF) context bindings to a achieve a seamless integration of WF and WCF. Also, learn how this combination allows you to create durable services that add robustness and scalability to your architecture.

VWF302: Introducing Windows Workflow 4.0
Kathleen Dollard
Windows Workflow was rewritten from the ground up for .NET 4.0. If you’re using WF today, this session shows the implication of the new version on your workflow strategy. If you’ve avoided WF because it seemed overly complex for your application, check out the simplicity of the new approach. Development may be ten times faster, while the runtime may be 10 to 100 times faster. Integration with WCF is simple and core to the communications strategy. Composition of multiple workflow styles like state machines and flowchart workflows is seamless. The Visual Studio 2010 workflow designer is brand new. It’s based on WPF and supports a solid rehosting model so you can easily include a workflow designer in your application. New workflows are fully declarative. There is no code activity, no code-beside, no Data Exchange Service, no initialize event, and no dependency properties. Come to this session and learn how to build activities with the new authoring model, how to manage communications with WCF, use the interop activity to preserve your existing WF investments where needed, and how to tweak your 3.0/3.5 workflows today to ease the transition to the new simpler workflow model.

LANGUAGE INTEGRATED QUERY (LINQ)

VLQ301: All That You Can Learn About LINQ in One Hour
Dino Esposito
In nearly all applications, at some point, persistent data gets loaded in one or more container objects to be queried. Depending on the capabilities of the container, a different query API may be in use, be it XPath, SQL, or methods on a super-array class. LINQ was created to unify the query model for a variety of data containers and data formats. As long as a common query model exists, you can use a single query language regardless of storage and internal representation of data. In the .NET Framework 3.5, LINQ makes the query a first-class construct and places it at the same logical level of classes and methods. The query engine is mapped to keywords in C# and VB and allows you to query and update data from a variety of supported data sources, including XML, collections and DataSets. In this session, you’ll learn as much as possible about the LINQ architecture and, more importantly, you’ll make sense of it and get familiar with its essential facts and features.

ARCHITECTURE CONNECTIONS SESSIONS

VAR05: Code Generation in the Enterprise
Kathleen Dollard
Code generation offers one of the most viable options for directly expressing the details of your architecture throughout your enterprise. You’ll retain confidence that the architecture is being used correctly, limit or generate certain types of tests, and allow evolution of the architecture under your control. This session covers an introduction into template styles and then moves on to focus on the big picture of code generation in a tool neutral manner. You’ll see approaches to extracting metadata stores, managing template sets, providing enterprise configuration, protecting handcrafted code and versioning templates. Whether you’re new to code generation or ready to improve its effectiveness in your enterprise, you’ll leave this session with new perspectives and new techniques.

VAR07: Design Testable Client and Service Applications
Brian Noyes
Anyone can write a simple unit test for a calculator Add method once you spend a few minutes figuring out how to set up and run the tools. However, the real trick to keeping unit testing from becoming as much of a burden as it is a benefit is to design for testability. This session will explore the patterns and practices you need to employ when designing both client and service applications so that you can unit test them as easily as possible. Whether you choose a test-first approach to coding, or just write the unit tests as you write the code, you will need to know how to make your classes testable and what the scope of those tests should be. This session will show and demonstrate design patterns for injecting dependencies into your classes so that you limit the scope of the test to just the “unit” under test. You’ll see how to do this manually through constructors or properties, and you will also see how a dependency injection container can make this much easier. You will also learn about several approaches and tools for creating mock and stub objects that you use with your tests. Finally, you will learn some guidance on what your tests should actually test, how many things to do in a test, and how to test things like an asynchronous service call chain in a smart client application.

VAR04: Designing a Domain-Based Data Model
Dino Esposito
For years, layers of .NET applications have been using and exchanging typed DataSets. The DataSet has a number of nice features. It is serializable, can contain persistent and transient data, supports a query model, and manages concurrency and batch updates. Its only significant drawback is the model of data, which is invariably recordset-based. Modern applications, though, often require a different model of data to better express the complexity of the domain space and entities. In a domain-driven design scenario, the data model comes out as completely decoupled from its persistence layer which raises the need for an OR/M tool to serialize and deserialize the model to and from a data store. In this session, you’ll understand the motivation of a domain-based data model and explore patterns that provide guidance on how to effectively design the model for your scenario.

VAR08: Designing Applications for Extensibility
Miguel Castro
“Just write the application like this, it will never have to change”. We’ve all heard this one from managers or customers, and we all know it never, ever works out that way. Building extensible applications allow you to handle this all-too-common situation in a more elegant and productive way. I’ll show you three extensibility patterns that you can use when you design your application that will allow you to modify and enhance it in the future with ease. You’ll learn how to design parts of your application to use providers, how to design a plugin scenario, and an even more elegant module pattern that lets you really polish up your application with its own API.

VAR03: Evolution of the DAL: Patterns Behind LINQ to SQL, Entity Framework, and O/RM Tools
Dino Esposito
Conceptually, the data access tools consist of a group of classes and methods for accomplishing read/write operations. A read/write operation generally manipulates some data in input and/or output and targets a data storage system. For years, architects designed applications to work on tabular data (mostly recordset-like structures such as DataSets) and to target relational databases. And for years architects had no impedance mismatch between tabular I/O data and a RDBMS to face. Recently, the advent of object-orientation in the realm of the middle tier changed the scenario quite radically. The data access layer is no longer an appendix to the business layer, but is neatly separated from business logic. Business logic is expressed through an object model and I/O (and only I/O) is delegated to the data access layer. In a recordset world, the business and data access layer were basically the same layer of code; in an object-oriented world, they are distinct entities. The complexity of the data access layer is greater because it now has to deal with the persistence of object graphs into a relational database. In this session, we’ll identify the responsibilities of a data access layer and the right patterns that address them. Finally, we’ll try to find signs of these responsibilities in common-use technologies for a data access layer, including ADO.NET, LINQ to SQL, and Entity Framework.

VAR06: Rethinking Object Orientation
Kathleen Dollard
Decades after object orientation design altered programming, it’s still evolving, and we’re still learning to use it better. Many changes in the tools we use and how we write applications affect the approach we take to OOD. Some of these changes relate to architecture where new approaches like SOA alter the place of traditional OOD within the bigger picture of architecture. Other changes are language improvements that alter the very meaning of the phrase “object” from a design point of view. While touching on architecture, this session focuses primarily on the effect of language features like generics, extension methods, partial classes/methods, reflection, anonymous types, and declarative programming. Basic OOD principles are still valid within a niche, and you’ll come away with a better understanding of that niche and how to design leveraging new features while retaining solid overall design.

VAR01: Service-Oriented Development Process
Juval Lowy
When you develop a service-oriented application, it would be naive of you to expect that the only things you will do differently will be limited to design and technology. The development process itself needs to be service-oriented. You cannot “stare into the fire” of WCF without a mature service- oriented development process supporting your effort. This session presents you with a service- oriented development process that you can apply to your WCF-based products to achieve robust applications, manage requirements and ensure faster time to market.

WINDOWS COMMUNICATION FOUNDATION

VWC302: Durable WCF Services
Juval Lowy
Consider using WCF to implement long-running workflows or execution sequences that lasts days or even weeks, where the clients may connect, do some work and disconnect again. There is obviously little point in keeping proxies and hosts in memory, since it is not robust or scalable enough. You can deign around this by persisting the state of the service between operations, but that implies some ability to connect back to that state in each operation. The session starts by discussing the challenges of writing such a durable service and the design options, and then demonstrates several ways of managing and binding to the service state, using message headers, or the new .NET 3.5 context binding, contrasting and evaluating the alternatives. Through a series of conceptual demos, the session demystifies the WCF-solution of persistence providers, and even how to write a custom provider or use the built-in SQL provider. You will also see some advanced .NET and WCF programming techniques.

VWC305: Federated Security Scenarios with WCF and Geneva Framework
Michele Leroux Bustamante
The WCF security model has always supported a rich, claims-based approach to authorization. Normalized claims are the heart of any federated security model – allowing developers to decouple how tokens are mapped to a set of domain-specific claims, and appropriately decouple how users are authorized based on those claims. In a federated scenario, a Security Token Service (STS) is typically used to issue tokens that carry these domain-specific claims. Geneva Framework is a developer framework that greatly simplifies the process of building a custom STS for token issuance. In addition, Geneva Framework supplies a programming model to simplify interaction with claims at runtime. This session will explore the features of a federated security scenario with WCF and Geneva Framework. You’ll see how Geneva Framework simplifies building a custom STS, learn how to require tokens issued by an STS using WCF federation bindings, and how to interact with claims during authorization.

VWC307: Securing Workflow Services
Michele Leroux Bustamante
Workflow Services are a feature of .NET Framework 3.5 that improves communication between WCF and Workflow. You can expose a workflow as a WCF service and you can call WCF services from an executing workflow instance. If you care about security – and most of us do – you will want to know how you can secure calls into the Workflow Service through each ReceiveActivity, and how you can make secure calls to WCF services from a SendActivity. This session will illustrate typical scenarios for Workflow Services and focus on the security features available for those scenarios given the rich nature of WCF security configurations, and any limitations related to security discussing workarounds where applicable.

VWC301: So You’re Just Getting Into WCF
Miguel Castro
Stop using Web services and Remoting! OK, now that I got your attention, let’s get serious. These two technologies are all but dead. You need to start learning WCF if you haven’t already. It’s the platform for all connected applications going forward, and you know what? It’s significantly easier to use than you think. I’ll teach you what you need to know to hit the ground running with Windows Communications Foundation. Don’t miss this session!

VWC303: Transactions for the Common Service
Juval Lowy
Transactional programming has traditionally been the privilege of database-centric applications. Other types of applications did not benefit easily from this superior programming model. In addition, transactional programming has always required per-call objects, which is a non-trivial programming model. But wouldn’t it be great if you could preserve the programming model of regular objects and still benefit from transactions? The session starts by briefly discussing the problem space transactions address and the motivation for using them. It then discuses the WCF approach for instance management in the face of transactions, and how you could leverage the support in .NET 3.5 for the context binding and durable services to enable any common service (or a class) to benefit from transactions, without compromising on either the programming model of state-full objects or on the transactional semantics.

VWC308: WCF the Manual Way... The Right Way
Miguel Castro
Visual Studio 2008 has plenty of templates to get us started with WCF, but with that comes a lot of extra weight that we simply do not need. They also do not encourage property assembly breakdown and reusability. In this session, I’ll teach you how to write WCF services in a completely manual fashion, including both the service side and the client side. You’ll see that it’s not hard, not a lot of work, and results in a much cleaner solution. We’ll keep WCF short, sweet, and to the point, just like this abstract.

VWC304: WS* or REST? Choosing the Right Approach for Your WCF Services
Michele Leroux Bustamante
Service-Oriented Architecture (SOA) is no longer synonymous with WS*. In fact, with the pervasiveness of Web 2.0 client applications that use technologies such as AJAX and Silverlight, alternatives are necessary for exposing business logic and data. Although the architectural model for services defined by Representational State Transfer (REST) has been around almost as long as SOAP protocol, it is increasingly popular not only among Web 2.0 zealots but also in corporate environments designing service-oriented applications. This session will compare the two approaches, WS* and REST, and discuss the features that make each approach popular while illustrating how to implement each with the WCF platform.

MICROSOFT DAY - DATA ACCESS

MDA03: Building Data Service Applications: Developing Solutions in a Software Plus [Data] Services World
Diego Vega
Applications are now being developed using a combination of custom application code and online data-centric services. In this session, we will examine how to use ADO.NET Data Services to build rich applications which access data services both on-premises (e.g., ADO.NET Data Services Framework over on-premises SQL Server) and in the cloud (e.g., SQL Server Data Services and Windows Azure Table Storage). Learn how you can leverage existing know-how related to LINQ (Language Integrated Query), data access API, and more when building applications using online data.

MDA01: Entity Framework Tips and Tricks
Diego Vega
The Entity Framework provides new ways to think about data access and new programming patterns that will help your applications be a success. This session will give advice on how to deal with some of the most common problems we find developers struggling with when they use the Entity Framework including building Web services, adding validation to your entities and splitting large models up into smaller ones. Along the way we may touch upon some additional interesting points like customizing code generation and performance tuning.

MDA02: Microsoft Project Codenamed Velocity: A Distributed In-memory Cache
Marcelo Lopez Ruiz
Advances in cheap processors, memory, and connectivity have paved the way for large scale distributed enterprise applications, Web applications and services. Distributed main memory caching enables developers to meet the extreme scale, throughput, latency and availability requirements of these applications. In this session, you will learn how Microsoft Project “Velocity” will enable developers to build these applications. You will also learn how we provide query capabilities like LINQ support, indexing, concurrency control, and data consistency.

MICROSOFT DAY - VISUAL STUDIO TEAM SYSTEM

VMS03: Better Together: Getting the Most Out of Visual Studio Team System 2008 Development and Database Editions
Graham Barry
Application development in today’s data-rich world requires robust tools that aid productivity and ensure quality. Nearly all modern application development requires bringing together application logic and information stored in one or more databases. In this session, you will see how the pairing of Visual Studio Team System 2008 Development Edition and Database Edition can make you more productive and your code more robust. Through demonstrations you will see how to manage database changes and testing to ensure quality, and how that carries over into the application logic you write with tools to ensure accuracy and efficiency of your code.

VMS04: Build it Right: Testing and Validation with Visual Studio Team System 2008 Test Edition
Dan Massey
Quality is paramount. In any software development project, ensuring quality is one of the top priorities of everyone involved. Quality comes from skilled masters of their craft working diligently to ensure the best possible workmanship. But let’s face it, their output can’t be trusted without some level of validation. Visual Studio Team System 2008 Test Edition provides a set of tools designed to help you validate the correctness of your software development projects (even if you’re the one who wrote the code). From Web tests to load test, and test automation to defect tracking, the Test Edition will help you ensure the quality of your software from the time you write the first line of code until the time it ships.

VMS01: Dispelling the Myths: Visual Studio Professional vs. Visual Studio Team System
Graham Barry
Ever wondered what the difference is between Visual Studio Professional and Visual Studio Team System? Trying to figure out when you need one or the other? Are there simply too many choices to navigate? In this session, you will learn the key differences between the two products…well, six products actually-- see why you need to go to this session? We will cover everything from the basic differences between Visual Studio Professional and Visual Studio Team System to what Team Foundation Server can provide you. You will learn about the various Editions of Visual Studio Team System and when to choose one of them or Visual Studio Professional.

VMS02: Looking Good with Team Foundation Server Version Control
Brian Johnson
Whether you’re writing C# for Windows or Java for Linux, any developer can use Microsoft’s Team Foundation Server (TFS) as a world-class source code control repository. In this session, developers move beyond the check-in dialog and go deep into TFS version control functionality. Among the many individual productivity tips you’ll learn are: using shelve sets effectively for code review and delivering fixes among your development colleagues, working with advanced tools to inspect and validate source code changes, and crafting your own tools with the TFS object models.

MICROSOFT DAY - ARCHITECTURE SESSIONS

VMA02: Agile Development with Visual Studio Team System
Brian Johnson
Have you heard the phrase “Agile Development” and wondered what it is? Are you interested in learning how to use Visual Studio Team System to support your agile interests? In this session you will learn how to perform common “agile” tasks using Visual Studio Team System 2008, including unit testing, continuous integration, and sprint planning. You will also get an early look at the improvements for agile development coming in Visual Studio Team System 2010.

VMA03: Agile Planning with Visual Studio Team System 2010
Dan Massey
Agile methodologies, such as Extreme Programming (XP) and Scrum, have taken hold in mainstream application development. What was once only for the elite has now become common practice. In Visual Studio Team System 2010 there are a number of advancements to support agile planning and development, including new agile planning workbooks, changes to work item tracking, better integration with Excel and Project, and new reporting capabilities that make status reporting, retrospectives and planning easier. In this session you will see how you will be able to leverage these advancements in your own application planning efforts.

VMA01: Exploring Architectures and Modeling with Visual Studio Team System 2010 Architecture
Dan Massey
How can you more quickly understand and evolve an application that you’ve never seen? How do you manipulate the existing architecture in light of new business requirements? How do you validate the logical architecture against existing patterns and design rules? Visual Studio Team System 2010 Architecture integrates logical modeling using UML-compliant diagrams and physical modeling using DSL diagrams with first class support for .NET. Armed with the ability to see into the system’s code to quickly understand the context of necessary change, developers and architects can quickly identify the impact of a change. The ability to overlay metrics generated from other application lifecycle activities such as code analysis, profiling, testing etc., into these model diagrams will make these artifacts first class citizens that are valued by both architects and developers.

CLOUD COMPUTING

VCL301: Connecting Smart Clients Through the Service Bus
Brian Noyes
Building a distributed application is tough enough, but standing up a full back-end services infrastructure to support them can be too much for many applications and companies. Even if you have a back end services infrastructure, establishing the connectivity to all your client applications wherever they are running may be even more challenging. By leveraging .NET Services, Azure Services, or other forms of cloud services, you can build out a robust smart client architecture with minimal infrastructure requirements. This session will look in detail at several common connectivity scenarios for smart client applications, including peer-topeer communications, sharing documents and files, and publish-subscribe communications with other services, all leveraging the cloud services model. You’ll see what you can achieve on your own through .NET Services, and will also see where Azure and Live Services can add capabilities that would be extremely costly and challenging to add on your own. The session will walk you through the concerns of connecting from smart client and Silverlight clients, and you will see how to switch your connections from your own back end services to cloud services with ease. You’ll also get and see how to use some great helper classes for working with cloud services.

VCL303: Introducing the .NET Service Bus
Juval Lowy
The .NET services bus is part of the new Microsoft Cloud Computing Windows Azure initiative, and arguably, it is the most accessible, ready to use, powerful, and needed piece. The service bus allows clients to connects to services across any machine, network, firewall, NAT, routers, load balancers, virtualization, IP and DNS as if they were part of the same local network, and doing all that without compromising on the programming model or security. The service bus also supports callbacks, event publishing, authentication and authorization and doing all that in a WCF-friendly manner. This session will present the service bus programming model, how to configure and administer service bus solutions, working with the dedicated relay bindings including the available communication modes, relying on authentication in the cloud for local services and the various authentication options, and how to provide for end-to-end security through the relay service. You will also see some advanced WCF programming techniques, original helper classes, productivity-enhancing utilities and tools, as well as discussion of design best practices and pitfalls.

TOOLS AND LANGUAGES

VLG301: .NET 4.0 Language and IDE Features
Kathleen Dollard
Unveiling the next version of .NET lays out new language features building on the trend increasing the dynamic characteristics of C# and Visual Basic. New language features will fall into categories of new features to support the current drivers, cross-over of features between the languages, and IDE improvements to ease your programming experiences. The current drivers for the languages are declarative coding, dynamic programming and concurrency. You’ll see how a vision of the languages is evolving from these driving forces – building on the dynamic features separately developed for LINQ and in the DLR. You’ll also see how the combined language team is balancing distinction and parity in areas such as late binding, XML and lambda expressions. The next release will present a major overhaul of Visual Studio itself. This offers exciting possibilities for improving your coding and debugging experience, including changes to document mapping and visualizing the structure of your object models and code dependencies. You’ll leave knowing what you can look forward to in the next version, as well as a better feel for the overall direction of the languages.

VTL306: .NET Synchronization Techniques for Today's Applications
Michele Leroux Bustamante
Multithreading is a staple in today’s applications whether you are building WPF clients, ASP.NET applications or WCF services. Rich and interesting WPF applications are likely to rely on multithreading to optimize concurrent UI updates resulting from remote calls to services–which means that the application must manage threads it creates and synchronize access to the UI. By nature, ASP.NET and WCF applications execute on the server and service multiple concurrent threads–which means that any shared resources across threads must be synchronized. This session will discuss necessary .NET multithreading concepts useful for these application scenarios. Discussions will include techniques for creating and managing threads; using thread pool threads versus custom worker threads; and compare synchronization techniques such as Monitor, Mutex, Semaphore, ReadWriterLock, Interlocked and MethodImplAttribute.

VTL303: How Team Foundation Server Works in the Real World
Jeff Levinson
Team Foundation Server solves problems—all sorts of problems. In this session, you will learn some of the real-world situations in which Team Foundation Server helped companies and development teams in need. Some of the areas include SOX, PCI and HIPAA, change management, requirements traceability, reducing defects (catching them early and often), release management and communication issues.

VTL302: Life after VSS: Team Foundation Server Version Control
Jeff Levinson
Ready to move to a more scalable, secure, and reliable version control tool? Learn how to set up Team Foundation Server Version Control to take advantage of all of its features. Learn the differences between the two and take advantage of the power of work items to help keep track of your work. This session will also cover converting your code from VSS to Team Foundation Server Version Control using the VSS Converter tool.

VTL301: Managing Parallel Development: Branching and Merging with Visual Studio Team System
Jeff Levinson
Are too many branches leaving you tired and overworked? Not quite sure where your code is? Does your teammate keep overwriting your code? In this session you will learn how to set up solid branching structures and perform merges to help avoid things like code freeze, losing your code, and how to avoid the dreaded cherry-pick merge. Learn the standard branching patterns and when to use them as well as when not use them.

VTL308: Memory Management in .NET
Carl Franklin
What? I thought the .NET Framework was all about taking memory management off the table That’s true, but you can still shoot yourself in the foot while working with certain types of objects. The .NET Garbage Collector is a very sophisticated piece of software, but in order to harness its power you need to know what to do, when to do it, and more importantly, why. In this session I’ll talk about IDisposable, memory pressure, using COM objects and unmanaged wrappers, generations, and everything you need to know to make sure your applications don’t leak.

VTL309: Reflect on .NET Reflection
Dino Esposito
In the .NET Framework, reflection is the API to access and inspect metadata programmatically. Visual Studio uses reflection for IntelliSense and a lot of framework classes make a large use of it. Reflection enables you to read characteristics of assemblies including compiled modules and exposed types. You can read information added by custom attributes and perform late binding by dynamically instantiating and invoking methods on types. Reflection is a pillar of most extensibility features and factories you see around in many products and technologies. Reflection, for example, is at the foundation of testing tools. This session reviews aspects of reflection in the .NET Framework and suggests some interesting applications.

© Copyright 2001-2009, Penton Media. Privacy policy.