DevWeek 2011® incorporating SQL Server DevCon 2011
14-18 March 2011, London. The UK's Biggest Conference for Developers, DBAs and IT Architects.
Home
The Sessions
The Speakers
Speaking at DevWeek
Sponsors & Exhibitors
Who Should Attend?
The Venue
Accommodation
Request Information
Code Samples
Windows 7 Resources
Join DevWeek Facebook group
Join DevWeek LinkedIn group

DevWeek 2010: Tuesday 16 March

NOTE
The information on this page refers to DevWeek 2010. This site will be updated with information on DevWeek 2011 closer to the event.

  Tracks 1–6
DevWeek
Track 7 & Track 8
SQL Server DevCon
09.30
Technical Keynote – 97 Things Every Programmer Should Know
Kevlin Henney
Modern programmers have a lot on their minds. Programming languages, programming techniques, development environments, tools, development process, deadlines, meetings, software architecture, design patterns, team dynamics, code, requirements, bugs, code quality. And more. A lot more.
The 97 Things Every Programmer Should Know project has collected together the wisdom of many contributors to offer a distilled snapshot of what every programmer should know. This session draws from this collection to present some highlights and useful advice.
11.00
Coffee Break
11.30
TRACK 1
CLR and C# v4.0
Jeffrey Richter
In this talk, we’ll take a look at the changes in CLR 4.0, the base class library, and in C# 4.0. CLR topics include side-by-side support, improvement for interoperating with COM and native code, garbage collector/debugger/profiler improvements, and exception handling. We’ll then discuss new BCL classes including BigInteger, Tuple, code contracts, and improvements made to other classes. Finally, we’ll talk about improvements made to the C# language including dynamic, optional & named parameters, and generic covariance and contravariance.


TRACK 2
Sponsored by Redgate ANTS Memory Profiler
Why Cloud computing?
Aaron Skonnard
A new platform is emerging – one that promises to reduce costs and speed up time to market by building on shared data centers that are widely accessible using open Web protocols. This emerging platform is commonly referred to as “the cloud”. In this introductory session, we’ll explore these new concepts and discuss why businesses are becoming more and more interested in today’s cloud computing platforms with a primary focus on the economics.


TRACK 3
What’s new In Silverlight 4
Jeff Prosise
Silverlight 4 is just around the corner, and it’s chock full of new features including printing support, webcam and microphone support, support for out-of-browser apps with elevated permissions, MVVM commanding support, and much, much more. Join the fun as Jeff leads a guided tour through the next version of Silverlight and peels back the covers to reveal features and enhancements that promise to make Silverlight 4 the most exciting version of Silverlight yet.


TRACK 4
An introduction to Windows Workflow Foundation 4.0
Richard Blewett
.NET 4.0 introduces a new version of Windows Workflow Foundation. This new version is a total rewrite of the version introduced with .NET 3.0. In this talk we look at what Microsoft are trying to achieve with WF 4.0, why they felt it necessary to rewrite rather than modify the codebase, and what new features are available in the new library. Along the way we will be looking at the new designer, declarative workflows, asynchronous processing, sequential and flowchart workflows and how workflow’s automated persistence works.


TRACK 5
Moving from ASP.NET WebForms to MVC
Fritz Onion
Are you considering moving an ASP.NET WebForms application to MVC? This talk will walk through an example of converting an application from WebForms to MVC, pointing out important decision points along the way. Some pages convert easily, but any pages that use server-side controls heavily will require much more effort. We will go over how to deal with post-backs, user controls, and endpoint naming as you convert these tricky pages. The end result, however, is a more testable, compliant, and maintainable site, and is often worth the effort of conversion.


TRACK 6
Objects of Desire
Kevlin Henney
Given that object orientation underpins modern programming languages, it would be expected that anyone using languages such as C# would also know about OO. In one sense this is true, but there is more to effective modern object-oriented development than just creating a few objects and calling a few methods. Many developers have not had the exposure to effective object-oriented practice that would allow them to avoid common pitfalls.
Although OO is far from being a new approach (think Sergeant Pepper), and it’s also far from being obscure, its mainstream adoption by programmers and programming languages alike is not always as effective as it could be. This session puts a number of key concepts on a firmer footing, highlighting common pitfalls in OO practice – such as abuse of inheritance, simplistic getter/setter interfaces, patternitis, use of singleton objects – and emphasising techniques that promote an easier life – such as loose coupling, unit testability, pattern-based design thinking, incremental and sufficient design.

TRACK 7
ADO.NET performance, tips and strategies
William Vaughn
Over the years, ADO.NET has matured into a data access technology that can do everything and anything, a comprehensive API and .NET namespace that can handle your every need. That’s great marketing copy, but it also means that there is almost always many ways to accomplish a particular task, even when accessing just SQL Server rather than any other data stores. And 90% of those ways will destroy application performance. But ADO.NET has been around long enough that there is a healthy body of knowledge about how to make ADO.NET smoke when accessing and using data.
This session explores how to soup up ADO.NET performance when working with SQL Server data. The session is interactive, so come prepared to share your experiences, both good and bad, and to learn from the group.

 
TRACK 8
Sponsored by Redgate SQL Prompt
SQL Server best practices for developers
Davide Mauri
As a developer you’ll surely need to create a database table or write a SQL query for your application. Even if you’re using an ORM tool like the Entity Framework or NHibernate, knowing how to write good SQL code can help you to understand if queries generated by them will perform well, guarantying that you application will perform well in any situation. In this session I’ll show you the best practices that every developer should know, from creating tables to writing query that run faster. I’ve been a developer for many years and I still enjoy writing good .NET OO code, and I’ve learned that a good application needs a good database and good queries to be really successful. Come to this session to learn all the tricks that will help you to avoid performance problems right from the beginning, avoiding common mistakes and performance killer errors.
13.00
Lunch
14.00
TRACK 1
The chaotic world of asynchronous programming with .NET 4
Andrew Clymer
Out of the Parallel Framework Extensions came a new API for doing asynchronous programming. This API has now been adopted by the .NET 4 Base Class Library as a means to write multithreaded applications, replacing the traditional Thread class and QueueUserWorkItem approach. This talk will provide a whirlwind tour of the new API, demonstrating how to implement a variety of asynchronous patterns utilising .NET 4 and Visual Studio 2010, and highlighting various gotchas that are simply inherent in asynchronous programming.


TRACK 2
Sponsored by Redgate ANTS Memory Profiler
Azure Services Platform
Aaron Skonnard
Microsoft has made a powerful entry into the cloud computing market by providing a rich and flexible cloud platform for .NET developers to build on. This cloud platform, also known as the Azure Services Platform, comes with several key offerings today including Windows Azure, .NET Services, SQL Azure, and Live Services. In this session, we’ll explore the Azure Services Platform, what each offering provides, and what makes this platform different from the rest.


TRACK 3
What’s new in WPF 4
Dave Wheeler
The release of .NET Framework 4 brings some much needed improvements to WPF. In this session, we’ll dive into these features, ranging from support for multi-touch applications through to enhancements in animation and beyond.
This session presumes that you are already familiar with WPF 3/3.5, as we will be focusing exclusively on the new features.


TRACK 4
Creating workflow-based WCF services
Richard Blewett
There are very good reasons for using a workflow to implement a WCF service: workflows can provide a clear platform for service composition (using a number of building block services to generate a functionally richer service); workflow can manage long running stateful services without having to write your own plumbing to achieve this. The latest version of Workflow, 4.0, introduces a declarative model for authoring workflows and new activities for message based interaction. In addition we have a framework for flexible message correlation that allows the contents of a message to determine which workflow the message is destined for. In this session we will look at how you can consume services from workflow and expose the resulting workflow itself as a service.


TRACK 5
ASP.NET 4.0 and Visual Studio 2010
Robert Boedigheimer
Are you ready for another version of ASP.NET and Visual Studio? ASP.NET 4 provides some major additions to AJAX with greater client support in the way of templates and the DataView control for data binding. It also remedies several issues that have existed since version 1.0, including control naming and controls that render more standard compliant HTML. Dynamic Data also has changes to make its features available to all ASP.NET web sites. This release also focuses on easing deployment issues with web packages and the ability to transform web.config files for deploying to production servers.


TRACK 6
Visual Studio Team System 101 – a beginner’s guide
Brian Randell
Have you gotten yourself a team system? Can you build software solutions with no issues? Do you know where you’re going and where you’ve been? Do you wonder if Microsoft’s Team System can help you and your team, but didn’t know who to ask? Come to this session to hear Brian give you the straight details about what’s in Team System 2010 and why you should care. You’ll get a demo-filled talk with just the facts, so you’ll be able to decide if you too should have a Team System.
TRACK 7
ADO.NET 3.5 best practices
William Vaughn
Stored procedures form the core functionality in most SQL Server implementations worldwide – or they should. It’s important that developers know how to design-in stored procedures to help productivity, security and overall system (and developer) performance.
This talk walks developers through the process of designing, deploying and debugging stored procedures using established best-practice techniques. We’ll show how to design stored procedures to de-reference and protect underlying tables as well as how to build stored procedures that perform consistently-regardless of the parameters passed. We’ll see how the query plan is built and what factors can make stored procedures perform well or abysmally. We’ll also talk about invoking stored procedures from code and how to handle multiple resultsets as well as how to manage OUTPUT and other responses from procedures.


 
TRACK 8
Sponsored by Redgate SQL Prompt
Understanding SQL Server indexing
Greg Low
Correct indexing is critical for great performance of database applications. In this session, Greg will provide detailed coverage of available indexing options in SQL Server, dispel a number of common myths about indexing, provide advice on good indexing strategies to optimize query performance, and advice ongoing maintenance of indexes.
15.30
Coffee Break
16.00
TRACK 1
The performance of everyday things
Jeffrey Richter
There are many constructs that programmers use every day: arrays, mathematical operations, field access, finalization, string concatenation and interop, manipulating collections, calling methods (instance, static, virtual, interface, methods, via delegates, via reflection), just to name a few. The CLR and C# provide numerous techniques of working with these constructs and few programmers are familiar with the various techniques as well as the performance of one technique versus another. In this talk, Jeffrey will examine these commonly-used programming constructs, discuss how the CLR implements them internally, and how the CLR’s implementation affects their performance.


TRACK 2
Sponsored by Redgate ANTS Memory Profiler
Advanced debugging with Visual Studio
Ingo Rammer
Basically every .NET developer knows the Visual Studio debugger, but only few know its little secrets. In this session, we’ll examine what you can achieve with this tool beyond the setting of simple breakpoints. You will learn how advanced breakpoints, debugger macros and visualizers, interactive breakpoints, tracepoints and interactive object instantiation at development time can support your hunt for bugs in your applications.


TRACK 3
Power Silverlight programming: 10 tips for writing great apps
Jeff Prosise
If you think Silverlight is the greatest thing since sliced bread, you’re not alone; other developers are jumping on the bandwagon, too. As such, it is increasingly difficult to build Silverlight apps that stand out from the competition. In this action-packed session, Jeff presents ten ways to use Silverlight to build the better mousetrap. Don’t come if you’re happy writing mediocre applications!


TRACK 4
WCF tips & tricks: from the field
Christian Weyer
The Windows Communication Foundation (WCF) is here and it is hip. But: the more generic a framework like WCF is, the more complex it gets. The more features a framework offers, the more likely it is we miss important and powerful options. Christian Weyer tries to present his personal favorite list of WCF tips and tricks – all gathered from years of experience in customer projects. If you need to apply WCF in your projects or try to get more out of WCF, you may not want to miss this session. Be sure to know your basics, though.


TRACK 5
ASP.NET Ajax 4.0
Fritz Onion
This talk looks at the next version of ASP.NET Ajax (4.0) and how it improves your client-side development experience. Specifically, it will cover the new client-side template and data binding model, declarative control instantiation, the new DataView control, markup extensions, and bindings.


TRACK 6
Design for testing
Kevin Jones
Many developers now recognise the importance of unit testing, and either use Test First or Test Driven development. However, many developers and architects are still struggling to come up with designs that enable easier testing of their applications. This talk will examine some common unit testing problems and use various unit testing patterns to solve those problems.
TRACK 7
Agile database techniques using Visual Studio 2010
Giles Davies
To many teams, agile database development is a contradiction in terms. Agile practices have not traditionally applied to SQL Server development. By leveraging database projects and the powerful tools found in Visual Studio 2010, database developers can participate in the same agile practices as the rest of the development team: Test Driven Development, Continuous Integration, and refactoring. In this session, we will set up an automated build and deploy environment to enable proper refactoring and testing of our database schema.


 
TRACK 8
Sponsored by Redgate SQL Prompt
SQL Server Management Studio tips and tricks
Greg Low
Many DBAs and developers have used SQL Server Management Studio for some time without understanding its full capabilities. SQL Server 2008 has greatly improved tooling. In this session, Greg will present details of a number of tips and tricks for working with SSMS.
17.30
Drinks Reception in the Exhibition Hall


Return to Sessions introduction

Bearpark
VSJ