| |
Tracks 1–6 DevWeek |
Track 7 & Track 7 SQL Server DevCon |
9.30 |
TRACK 1
Building an end-to-end enterprise application with the .NET Framework 3.5
Klaus Aschenbrenner
The .NET Framework 3.5 provides you different technologies to develop great enterprise applications on the Microsoft platform. Join this session, to learn from Klaus Aschenbrenner, how to build a real world end-to-end enterprise application based on the .NET framework 3.5. Klaus will cover technologies like building interoperable Web Services with the Windows Communication Foundation, how to use Windows Workflow Foundation on the server-side, how to incorporate the WF rules engine for flexible business rules checks in your applications, and how to implement a workflow designer to give your customers the chance to customize their applications.
TRACK 2
C# 3.0 – interesting use cases outside of LINQ
Oliver Sturm
Many of the new language features of C# 3.0 have been integrated for the benefit of LINQ. But Microsoft has been paying attention to the outside world while doing this work and implemented many approaches from other programming languages. As a result there’s a great variety of use cases for many of the new features, even when ignoring LINQ for a moment. This session includes many code examples ranging from simple tips and tricks to the application of patterns.
TRACK 3
What’s new in WCF/WF 4.0
Aaron Skonnard
.NET 4.0 brings several improvements in the areas of WCF and WF, including improved REST capabilities, a new workflow model, seamless integration between WF and WCF, and a new visual designer. It also provides the ability to author completely declarative (XAML-based) workflow services that can be more easily deployed, hosted, and managed. This session walks you through the various new 4.0 features and shows you how to write code using them today.
TRACK 4
Flex, Silverlight or JavaFX – which should you choose?
Simon Brown
Rich Internet Applications are a hot topic at the moment; with Adobe, Microsoft and Sun vying for your attention in a post-AJAX world. But which should you choose? In this session, we’ll look at three major RIA platforms – Flex, Silverlight and JavaFX. A common example will be used to demonstrate each of the platforms, additionally acting as a baseline for an unbiased comparison of the code, development paradigm, flexibility, ease of use and so on. Come along and let the RIA debate begin!
TRACK 5
Attack and defence: securing ASP.NET applications
Keith Brown
Building secure ASP.NET applications involves much more than calling security APIs. It takes careful design that considers threats and applies countermeasures that solve real problems. It takes a development team that knows how to write bulletproof code, with the foresight and funding to review that code and eradicate security flaws before they can be exploited. Ultimately, it takes education and a good process. This talk will introduce you to many resources: guidelines for threat modeling ASP.NET applications, how-tos for eliminating common security vulnerabilities, and many others. You’ll find that even a small shop can afford to build security into the software development lifecycle.
TRACK 6
A practical guide to use cases
Kevlin Henney
Use cases are seen by many as being a useful technique for gathering and organising requirements. However, there are many limitations to the way that they are commonly applied, including the overuse of UML use case diagrams, the use of sequence diagrams to describe use cases, and verbose use case forms. This session focuses on a more streamlined and practical approach to using and documenting use cases.
Use cases also have a great deal more to offer than just requirements capture. In conjunction with an assessment of business priorities, technical complexity and risk, use cases can be used to drive the development process itself. This session also describes how use cases can be used in an agile development lifecycle. |
TRACK 7
SQL Server Data Services
Eric Nelson
SSDS has the potential to completely change how you architect applications in the future. This session will look at what SSDS delivers today, how to take advantage of it in your own applications and what the future may hold.
TRACK 8
Using the HIERARCHYID datatype in SQL Server 2008
Itzik Ben-Gan
This session covers the new HIERARCHYID datatype that was introduced in SQL Server 2008. You will learn how to maintain hierarchies with the new datatype including adding new nodes, moving nodes, and so on. You will also learn how to query hierarchies to answer common requests like returning a subtree, path, sorting, and so on. You will also learn how to normalize your hierarchies, and how to convert existing representation of a hierarchy as an adjacency list to the new representation with the HIERARCHYID datatype. This talk is aimed at SQL Server DBAs and developers with at least one year of experience with T-SQL. |
11.00 |
Coffee Break |
11.30 |
TRACK 1
An introduction to the Java platform for .NET developers
Simon Brown
This session presents an introduction to the Java platform and is aimed at anybody with .NET experience. But wait a minute, this is 2009! Why do this now? More and more enterprise projects are turning away from a single technology stack solution and becoming more heterogeneous in nature. If we as technologists are to survive in this ever-changing industry, we need to put any dogma to one side and expand our horizons. We need to start evaluating technologies on their merits rather than simply writing them off through vendor preferences in order that we can provide real business benefit to the stakeholders. As .NET developers, this is your opportunity to get a jump-start into the world of the Java platform, where we’ll be taking a look at a number of different APIs, libraries and frameworks, drawing parallels to the .NET framework where applicable.
TRACK 2
Concurrency using functional patterns in C#
Oliver Sturm
The multi-core scalability issue is being widely discussed these days, and one solution that is regularly proposed involves the application of patterns from functional programming. One of the paradigms of FP is the immutability of data, which is what makes it appealing when it comes to concurrency. In this session, Oliver uses a practical example to show concurrency in action, based on immutable data and other functional approaches.
TRACK 3
Codename “Dublin”: Windows Application Server
Aaron Skonnard
Microsoft recently announced a set of enhanced Windows Server capabilities codenamed “Dublin” that offer greater scalability and easier manageability around WCF/WF applications. “Dublin” extends IIS/WAS to provide a standard host environment for applications that use these core .NET technologies that will simplify the deployment, configuration, management, and scalability of composite applications, while allowing developers to use their existing skills with Visual Studio, .NET, and IIS. This session introduces you to the new world of “Dublin” and what it provides.
TRACK 4
Web punchlist: making your web applications suck less
Neal Ford
When you buy a new house, you tour the new property with the builder with a punchlist, finding all the fit and finish things that aren’t quite right yet. You’ve built your web site, and it all seems to be working. Where’s the punchlist for your web site? This session gives you just that: a checklist you can use to verify that your web application is ready for occupation. I cover things like where import your JavaScript and CSS, how to handle images so that they are aggressively cached, how much you should care about XHTML, and lots more. This talk will give you a fit and finish check list you can apply to your shiny new web application to see if it’s up to spec.
TRACK 5
Exploiting the ASP.NET adapter architecture
Robert Boedigheimer
ASP.NET provides the ability to override control and page rendering in order to tailor the output for specific browsers or provide new behaviors. A recent example of the power of this architecture is the “ASP.NET CSS Friendly Control Adapters 1.0” provided by Microsoft that can be used to render existing ASP.NET controls with CSS rather than tables (such as the Menu control). Another great use of adapters is to use session storage for viewstate rather than a hidden client field saving bandwidth and improving performance, which can be easily accomplished with a custom page adapter. Discover how to exploit adapters on your web site, and how to use alternative rendering or behavior without abandoning existing controls!
TRACK 6
Design for testing
Kevin Jones
Many developers now recognize 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
You want to put WHAT in the database?
Brian A. Randell
Relational databases have come a long way over the years. In particular, storing binary large objects is not necessary a bad thing. In this session, you’ll learn the pros and cons of storing complex data, including documents, images, and serialized objects, inside SQL Server. We’ll examine the changes made from SQL Server 2000 to 2005 to the newly released SQL Server 2008. We’ll examine how these many enhancements, including the new FILESTREAM, affect your design decisions. You’ll learn how to move BLOB data in and out of the databases using both T-SQL and client-side data APIs.
TRACK 8
The most persistent SQL Server myths (and why they are wrong)
Maciej Pilecki
I wish I had a dime every time someone out there says something like: “table variables are in-memory-only” or “when you do SELECT * FROM XYZ, you receive the rows in clustered index order”. If you look on the Internet, the web sites and the newsgroups are, unfortunately, full of such misleading statements. During this session we debunk some of the most popular and dangerous misconceptions around SQL Server Database Engine features. Come and learn why common wisdom is sometimes not as wise as one may believe. |
13.00 |
Lunch |
14.00 |
TRACK 1
Taking efficiency one step further – F#
Oliver Sturm
Microsoft Research describes F# as “a scripted/functional/imperative/object-oriented programming language”. Combining all those aspects in one language is certainly not an easy task, but they’ve done a good job of it. F# is interesting both as a language to actually consider for your projects and as a source of features that might make it into the mainstream .NET languages tomorrow. The session uses many examples to give you a good general overview of F#.
TRACK 2
Developing and deploying your first Cloud Service
Eric Nelson
In this session you will hear about the key problems that cloud computing is solving and an overview of the Microsoft cloud computing initiatives. We will take a tour of the capabilities of the Microsoft cloud platform by building and running a simple service. The sample service highlights some of the features of the platform including service management, storage, and an integrated developer experience.
TRACK 3
Building activities in Windows Workflow 4.0
Matt Milner
The next version of Windows Workflow Foundation comes with an enhanced base library of activities. Learn how to extend the framework by creating your own custom activities. See how to compose those basic activities into more coarse-grained activities and how to build your own control flow activities to extend beyond state machine, sequence or page flow. You will also learn how to customize the design experience of your activities using the new designer framework.
TRACK 4
So you think you know JavaScript?
Kevin Jones
If you look at the Microsoft AJAX library you will see that Microsoft squeeze JavaScript to get the most out of it. Understanding JavaScript at this level will help you to get the most out of the library and the most out of your own JavaScript code.
In this talk we will examine how to create objects in JavaScript; how to use inheritance; how to call base methods and how this all works in the Microsoft AJAX library.
TRACK 5
Internationalizing WPF and Silverlight applications
Guy Smith-Ferrier
Windows Presentation Foundation (WPF) applications have as many similarities as differences from Windows Forms applications. The same is true for WPF’s localization model. This session illustrates how to localize and globalize WPF and Silverlight applications, and pays particular attention to those issues that are unique to XAML, WPF and Silverlight.
Prerequisites: Knowledge of WPF and/or Silverlight.
TRACK 6
Foundations of Enterprise Design Patterns in .NET
Dave Wheeler
Developers and designers are becoming increasingly familiar with the GoF Design Patterns, and will happily churn out Singletons and Factories to their hearts’ content. But is there a next level in the world of patterns? There certainly is, and in this session you will see be introduced to that next level: Enterprise Design Patterns. Specifically focusing on the origins, intents and thinking behind some of the most important enterprise design patterns, this session will provide you with the foundation knowledge that you need to dive into using them within your own .NET application designs. |
TRACK 7
Choosing the right encryption methodology
Peter DeBetta
SQL Server 2008 now has a feature called Transparent Data Encryption, which can encrypt your data without any application changes required. But is it the ultimate solution for encrypting your data. This session will discuss various options for encryption, including Extensible Key Management, Transparent Data Encryption, and other built-in encryption capabilities.
TRACK 8
T-SQL enhancements in SQL Server 2008
Itzik Ben-Gan
This session provides an overview of T-SQL enhancements in SQL Server 2008. The topics that will be covered include: the MERGE Statement, Grouping Sets, Table-Valued Parameters, Date and Time Enhancements, Goodies & Miscellaneous, and more if time permits. This talk is aimed at SQL Server DBAs and developers with at least one year of experience with T-SQL. |
15.30 |
Coffee Break |
16.00 |
TRACK 1
An Introduction to Live Mesh Development
Mike Ormond
Come along to this session to learn about the new Live Mesh services and how you can take advantage of them in your applications. We’ll explore the Live Mesh architecture by building a simple application that integrates Live Mesh capabilities.
TRACK 2
Effective caching
Brian A. Randell
Most applications, managed and unmanaged, need data. Often this data is stored in relational databases, but it could be in XML files, Active Directory, or Web services. In this session, you’ll learn effective techniques for data caching to increase performance and scalability. You’ll learn about cache coherency and maintenance issues related to maintaining distributed caches in your applications. We’ll look at using various options built-in to the .NET Framework including SQL Server Compact and to new exciting technologies like the Microsoft project code-named “Velocity” – a distributed in-memory application cache platform for developing scalable, high-performance applications.
TRACK 3
Building workflow services in Windows Workflow 4.0
Matt Milner
Windows Workflow Foundation and Windows Communication Foundation have both been enhanced to provide even better integration. In this session we will cover the enhancements to hosting your workflows as WCF services, improvements to the WCF messaging activities and improved message correlation scenarios. In addition, we will cover service definition in XAML to simplify the development and management of workflow services.
TRACK 4
Advanced IIS 7 development & extensibility
Dominick Baier
IIS 7 introduces a full-featured .NET extensibility API. This opens up a lot of interesting possibilities in web server development. In this session we’ll have a closer look at the various extensibility points like handlers, modules, configuration, deployment, hosting, UI integration and remote management. Furthermore we’ll walk through all parts of custom authentication module (a real IIS 7 extension) which involves most of the above mentioned feature areas.
TRACK 5
Jumpstart your web site with ASP.NET Dynamic Data
Robert Boedigheimer
Do you need to get a web site setup quickly? Why code all the pages yourself when you can use the ASP.NET Dynamic Data to build the initial pages based on your data schema? This new feature creates the .aspx pages for you based on your data. The pages can be used directly, or you can customize the pages to add your own look and feel. You can augment the data model for the site to include information that can automatically create the necessary validation controls! Included are a set of Field Template controls that are user controls to edit particular types of data, these can be customized once and apply to all page templates used on the site. Don’t start with nothing when you need to create a new site, take advantage of the ASP.NET Dynamic Data support to have a functional site very quickly and simply customize it to get a great site!
TRACK 6
More Enterprise Design Patterns in .NET
Dave Wheeler
90 minutes is barely enough time to scratch the surface of the Enterprise Design Pattern world, so this session will build on the previous one by introducing some of the more advanced patterns, picking apart their benefits (and their downsides) and making them easy to work with. This session will also examine specific .NET technologies and how they help you to utilise, or in some cases obstruct, a number of the common EDPs. |
TRACK 7
Safe dynamic SQL
Peter DeBetta
As you may or may not know, I believe that you should steer clear of dynamic SQL, although there are times when it cannot be avoided. And when that does happen, there is a multitude of .NET and T-SQL code I have seen that cleans up the incoming data in order to avoid SQL Injection attacks. But as robust as this code may be, it still requires opening security more than desired. This session will not focus on cleaning up that data, but rather, using the built-in abilities of T-SQL to prevent SQL Injection attacks and to validate user requests.
TRACK 8
Geometry and geography 101
Javier Loría
SQL Server 2008 introduces new spatial data types: Geometry and Geography. These data types require new skills from developers and DBAs. In this session you will learn the fundaments of spatial data types: how to create, query, index and manipulate them. |
17.30 |
Close |
|