Presentation Layer
ASP.NET AJAX, Silverlight, and the Future of Web Development, Level 300
Understanding the future is critical for web developers. Decisions you make today need to be aware of what's coming if you're going to be successful on web. In this session, we'll examine ASP.NET AJAX and Silverlight to gain a deep understanding of how these technologies can help us solve the problems of a rich, ajaxified Internet. From the rich client-side library in ASP.NETAJAX that changes the way you write JavaScript to the power of .NET in the browser with Silverlight, understanding how to leverage these technologies is key for future ASP.NET applications. We'll also examine the future of web browsers and seek to understand how they will affect the applications we build.
To AJAX or Not to AJAX, Level 200
This session shows the power of AJAX in ASP.NET applications and how it could be used the wrong way.
Scaling Habits of ASP.NET Applications, Level 200
As our ASP.NET Web applications become more and more successful we switch our focus from adding features to performance, scale, and management. Richard and Kent have 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 you 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.
Silverlight 2.0 Made Easy, Level 200
This session will introduce people to Silverlight 2.0 with coding in C# and VB.NET to build high quality, robust and elegant web sites.
Fun with HTTP Handlers (and Security), Level 300
Ever wish you can track what people download from your site? Or even worse, prevent people from downloading files for which they need to first pay. Well once someone figures out the web folder where you store files for download, they may just be able to browse to them. Let's put a stop to this now! While I give away a lot of software, I also make you pay for some of it, and by golly you're not breaking through the techniques for file protection that I'll teach you here.
Control Customization in Silverlight 2, Level 300
Silverlight 2 provides a rich set of options for customizing your controls. Unlike other technologies, creating user and custom controls is not necessary to get the customized control you want. In this talk I will cover Compositing, Styling, Templating and Custom Controls to help attendees understand when and how to customize their controls.
Annotation in Silverlight 2.0, Level 200
This session will show how to implement Silverlight's InkPresenter control to let users markup images, annotate photos and videos or just draw. We'll work in Expression Blend for the design and .NET code for event handling and other interaction with the user's drawings. In addition to all that you can do in Silverlight, you will also see how ASMX or WCF services can be used to provide functionality not included in Silverlight such as hand writing recognition.
ASP.NET MVC: Red Pill or Blue Pill?, Level 300
There is an emerging technology in the ASP.NET world that is going to radically change the way you think of ASP.NET development, and it's called ASP.NET MVC. In this session, we'll introduce ASP.NET MVC and explore this new way to think about web application development. We'll look at how you build a basic ASP.NET MVC application, how ASP.NET MVC enables TDD for the web, and discuss the pros and cons of switching to MVC. Attend this session and you'll know everything you need know to get started with ASP.NET MVC- or know enough to decide to stay with Web Forms. The choice is yours.
Blend 2.5 for Silverlight Developers, Level 200
In this session, we will dig into how developers can use Blend 2.5 for their Silverlight 2.5 applications. This includes tips and tricks for common graphic tasks like shiny buttons, clipping regions and grouping/layers. Common programmer tasks like event handling, data binding and stying is also covered.
From Web Server to Two: Making the Leap, Level 300
Every web application starts out on a single web server. And while we've been told over and over again that you can always move to multiple web servers, it's not as simple as that! This session digs into the details of what it takes to make that leap - all the changes needed to let your application function properly with more than one server. You'll learn about replicating your web application between two servers and how to keep the content in sync. The techniques and challenges of load balancing are explored. And you'll explore the critical challenge of moving to multiple servers - getting rid of affinity. There's more affinity than just the session object, but that is a key starting point. Moving to multiple servers isn't easy, but this session will give you the check list of what to do to be successful.
Data Layer
Introducing the Entity Framework, Level 200
The Entity Framework is the core of Microsoft's evolving data platform and has many layers of abstraction to give developers access to data, client-side views and schemas, as well as mapping of data to objects. This session will give you an understanding of what the Entity Framework is all about. You will learn how to build a basic Entity Data Model and inspect it's most important parts and learn basics of querying with Entity SQL and LINQ to Entities. You will also learn how to easily access it's highest level of abstraction in common databinding scenarios. Lastly the session will tempt you with the potential of building and using highly customized models as well as what lays beneath the surface of the Entity Framework APIs.The Entity Framework is the core of Microsoft's evolving data platform and has many layers of abstraction to give developers access to data, client-side views and schemas, as well as mapping of data to objects. This session will give you an understanding of what the Entity Framework is all about. You will learn how to build a basic Entity Data Model and inspect it's most important parts and learn basics of querying with Entity SQL and LINQ to Entities. You will also learn how to easily access it's highest level of abstraction in common databinding scenarios. Lastly the session will tempt you with the potential of building and using highly customized models as well as what lays beneath the surface of the Entity Framework APIs.
TSQL for 2005 and 2008, Level 300
Take your queries to the next level! This highly technical, yet entertaining session focuses solely on advanced querying techniques to get the most out of your SQL Server 2005 & 2008 database. See a series of real-world examples to extract data from your databases in ways you've never seen before. 2005 techniques demonstrated include an ultra-fast way to do crosstab queries in SQL Server, XQuery and ranking. 2008 techniques demonstrated include, merge, SPATIAL data type, and Table-valued parameters. Along the way you'll get some insight into how SQL Server works.
Consuming Data with Silverlight 2, Level 200
In this session, we will explore the different methods for dealing with data in your Silverlight 2 applications including LINQ, ASMX, WCF, REST, Astoria and WebClient calls. The session covers both how to consume data as well as how to expose data to Silverlight 2.
Performance optimizations of TSQL code in SQL Server 2005/2008, Level 300
In this session we will go through the typical steps that should be done when TSQL statements do not perform as efficient as possible. The new features of SQL Server 2008 related to performance tuning will be covered.
Deep Dive into Entity Framework Object Services, Level 300
The Entity Framework combined with the Entity Data Model (EDM) bring data access to a new level in Enterprise Applications. Entity Framework Object Services APIs, while providing a lot of automated functionality, are filled with features that give developers much more control over how objects are handled. The most important jobs of the ObjectContext are relationship management and change tracking. This session drills into how the ObjectContext manages relationships and how you can control its behavior. This is especially important in SOA scenarios where you may need to transport ObjectGraphs. 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 EDMs in your Web sites, SOA applications, and smart clients, as well as other applications that share the EDM.
SQL Reporting Services 2005 and What's New in 2008, Level 200
SQL Server 2005 Reporting Services delivers enterprise, Web-enabled reporting functionality so you can create reports that draw content from a variety of data sources, publish reports in various formats.SQL-Reporting services is a very power full tool and has come a long way since the first version of it. Although there is room for improvement it is really worth looking at.I will address the following aspects of Reporting services: Report Server, Report Builder, Report Viewer both win32 and web. Besides the named functionality I will also address the whats new in 2008 for Reporting Services.
Business Data Catalog of Office Sharepoint Server 2007 and SQL Server 2005, Level 200
Business Data Catalog is a new business integration feature in Microsoft Office SharePoint Server 2007 to surface business data from back-end server applications without any coding. Business Data Catalog bridges the gap between the portal site and your business applications and enables you to bring in key data from various business applications to Office SharePoint Server 2007 lists, Web Parts, search, user profiles, and custom applications. To achieve this goal, Business Data Catalog provides homogeneous access to the underlying data sources with a metadata model that provides a consistent and simplified client object model. Business Data Catalog is the key infrastructural component around which the other Business Data features of Office SharePoint Server 2007 are built. We will explore how to expose SQL-Server 2005 data in a SP 2007 portal.
Business Layer
Introduction to Windows Workflow Foundation, Level 200
With the .NET 3.0 Framework, developers were given the plumbing to create business process management solutions graphically. In this session, Mark will introduce the basics of working with Workflow Foundation. This is a 100 level talk for developers that are new to WF. We will spend some time talking about the architecture and when best to use a tool like WF for the greatest return. We'll also compare WF to BizTalk and learn that they are completely different worlds.
Developing Applications with WCF and XOML Powered WF, Level 300
WCF and WF are parts of the .NET framework 3.x. In this session we will concentrate on XOML workflows to enable services such as data exchange which store and carry workflows to host applications. Using WCF we will be exposing XOML Workflows to services and build workflow enabled services that use WCF for service messaging and WF for service logic. The 3 workflows will also be investigated (state machine, sequential and XOML activated). Custom ServiceHosts and custom behaviors will be used for integration. We will also go into the markup and modify XOML and compile workflows for further customization.
Window Workflow Rules and Policy, Level 300
Windows Workflow includes a powerful rules engine similar to the one found in BizTalk Server. In this session, Mark will dig into how the rules engine does it's job and how forward chaining works. You'll also see how best to debug WF policy problems and the best way to take control of rule evaluation with code.
WCF the Manual Way... The Right Way, Level 200
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. 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.
Building Telerik Trainer in WPF and LINQ, Level 300
This session is a technical case study on how Falafel built the main Telerik Video Trainer application.
Building Powerful Office Applications the Easy Way with VSTO, Level 200
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. VSTO allows you to build managed code applications with .NET languages like VB.NET and C# and have the functionality of those applications manifest in the rich user interfaces of Microsoft Excel, Word, PowerPoint, Visio, Outlook and others from the Office stack. You will learn just how easy it is to build powerful VSTO applications in this session and how to deploy those applications. This session will cover all versions of VSTO (versions 1.0 through 3.0) targeting both Office 2003 and Office 2007. VSTO addresses some of the biggest challenges that Office solution developers are facing today, including separation of data and view elements, server-side and offline scenarios, seamless integration with the Visual Studio tools, deployment and updating. Lastly, this session will delve into the future of VSTO and its potential coverage of document-centric and add-in solutions for the entire Office System stack.
Windows Workflow Scalability, Level 300
WF is a compelling new tool available to every developer working with the latest version of the .NET Framework. Many processes take time to complete and holding them is memory prevents scaling. The answer to scaling workflows is the ability to persist them. Fortunately, the architects of WF gave us a mechanism to accomplish this task in the form of Peristence Services. In this session, Mark will explain how this works, what comes in the box and how you can write you own persistence service when needed.
Integrating WPF and WCF into Your Office Business Applications, Level 300
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 owerful 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.
Architecture and Practices
Stephen Forte, Joel Semeniuk and Remi Caron
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 quick introduction to the basics of Scrum like: the Scrum Master, team, product owner, and burn down, and of course the daily Scrum, Stephen, Remi, and Joel show 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. The speakers 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.
Be a Good Host and Fetch me a Service will you?, Level 200
Unlike Web Services, WCF Services offer us several hosting solutions in order to serve our services (say that 5 times real fast). We are no longer locked into IIS, and in fact it probably is no longer the preferred solution anyway. In this session, I’ll show you how to host WCF services in IIS as well as console apps, Windows Services, WAS, and even straight Windows Forms applications. Oh well, since I’m on a roll, how about WPF as well as even a Workflow Service Host. You might have heard some say that “every class should be a service”, so I think I’ll add, “Every application can be a host”.
Introduction to Test-Driven Development, Level 200
Test driven development (TDD) is a new way to code. It is an Agile method that consists of short iterations where new test cases covering the new functionality are written first, then the production code necessary to pass the tests is implemented, and finally the software is refactored to accommodate changes. This session will go over what TDD is, how to use it in Visual Studio Team System 2008 and 2005, and how it relates to Agile development methodologies such as XP and Scrum. We will see how TDD and the new MVC framework for ASP .NET makes testing web user interfaces very easy as well as data driven tests.
Applying Feature Driven Development Techniques, Level 200
WF includes a bunch of advanced capabilities you will need to tackle to create enterprise scale workflow applications. This session will cover exception handling, events, transactions, security, and developing custom activities in a quick tour of these advanced features. You will learn how to throw and handle exceptions in various scopes of your workflow, and define event handling scopes that allow your workflow to react to asynchronous inputs. You'll learn how to define atomic and long-running transactional scopes in your workflows, and how to define compensation logic if something goes wrong in a long-running transaction. You'll learn how to restrict input to a workflow to authorized roles, and how to develop custom activities to encapsulate repeating patterns in your workflows or to implement domain specific activity logic.
Best Practices for Managing Projects with Team System, Level 200
Based on his book "Managing Projects with Microsoft Visual Studio Team System" Joel will provide a deeper look into the challenges and exciting opportunities of managing projects using Team System. This session explores some best practices and tools that you must have when managing virtually any size team.
Design for testability, Level ###
Applications that are tightly coupled are not flexible or easy to extend, and worse yet, are not testable. Creating a robust testable application involves a series of design decisions that need to be made up front and that can drastically improve the overall outcome of the project. This session delves into advanced object orientated principles such as separation of concerns, dependency injection, inversion of control and other principles that allow you to create robust and testable applications. Concepts such as unit testing and mocking are also covered.
How to Bet on the Right Technology, Level 200
A lot of technology is coming out of Microsoft these days, making it very challenging for a developer to choose what to follow and become an expert in. This session explores how to choose and bet on the winning horse of technology.
Fun with Programming, Level 300
Looking for something fun and inspirational? Let Carl Franklin show you some of the fun you can have with Visual Studio .NET and a few cool ideas, from artificial intelligence to practical joke software.
So I want to unit test, which framework should I use?, Level ###
With the rising popularity of unit testing, a whole slew of frameworks exist. It’s not just NUnit anymore. Microsoft provides its built-in version of called MSTest that provides tight integration with Visual Studio. However there are other alternatives such as MbUnit and the recent xUnit which provide substantial improvements and different approaches to similar things. This session will delve into the different frameworks, examine the differences and let you decide which one suits you best. Comparisons are made with examples.
Software+Services, Software-As-A-Service, Web 2.0 - What, When and How?, Level 200
This session explores the diversity of concepts and technologies around Software + Services and other related models. You’ll explore the issues and advantages to develop a roadmap of the trends toward these technologies. Confused about these technologies? Come and get some clarity!
Q&A Panel
.NET Rocks Talks Windows Presentation Foundation: Today and Tomorrow
Join Carl and Richard from .NET Rocks as they talk with Tim Huckaby, Brian Noyes and Todd Anglin about Windows Presentation Foundation (WPF). The discussion will dig into both the current state of WPF, what tools work and how best to use them. Also, they will look into the future, how Visual Studio 2008 improves the development experience of WPF and what other resources we should expect in the future.