|
 |
Agenda NDC 2009To plan your conference, log in here The agenda may change without further warning. Tune in to this page to stay updated as we are moving towards opening day |
Time | Track 1Connected Systems | Track 2Enterprise Applications | Track 3General Development | Track 4Test Driven Development | Track 5Software Engineering | Track 6Parallel Programming | Track 7 | | Ted Neward | Rethinking "Enterprise"
Level 300 Time: 9:00 - 10:00 (Track 1) | Ted Neward | Rethinking "Enterprise"
Level 300 The era of the big, heavy, transactionally–oriented client⁄server topology, as best described by the J2EE Specification and Blueprints document, seems to be over. The era of the lightweight, transactionally–oriented client⁄server topology seems to be at its zenith. Is this really where we want to be when building enterprise systems? And how did we end up here, anyway? What's the new "enterprise" developer supposed to do? |  Ted Neward is a Principal Consultant with ThoughtWorks, an international consulting firm specializsing in project delivery on time, under budget, and feature–complete. | |
| Read more Watch movie |
| Rafal Lukawiecki | Finding Hidden Intelligence with Predictive Analytics of Data Mining
Level 300 Time: 9:00 - 10:00 (Track 2) | Rafal Lukawiecki | Finding Hidden Intelligence with Predictive Analytics of Data Mining
Level 300 This session will overview all of the available Data Mining techniques that come as part of the SQL Server 2008 Analysis Services. In a rapid–fire manner we will show you how they can be used to find intelligence hiding in your data. For example, we will show you a way to spot a relationship between a customer's profitability and their demographic characteristics. In another example, we will show you how to use a neural network to perform a better analysis of a customer's risk, which perhaps you could use to better judge their creditworthiness.
This session aims to show you the breadth of the available technologies enabling you to choose the most appropriate ones for your own tasks. Data Mining is an essential tool for finding intelligence hidden in mountains of data, especially where queries and reports no longer cope. There are many different techniques for extracting this hidden data, some are more suited for certain purposes than others. SQL Server comes with Data Mining components ready in most of its editions for no added cost and using it is easy.
Level: 300 |  In his role as Strategic Consultant at Project Botticelli Ltd, Rafal Lukawiecki is responsible for analyzing and forecasting trends in the field of Information Technology. | |
| Read more Watch movie |
| Peter Provost | The Butterfly Effect
Level 200 Time: 9:00 - 10:00 (Track 3) | Peter Provost | The Butterfly Effect
Level 200 The butterfly effect is a phrase from chaos theory that describes how a dynamic system can be very sensitive to changes in the initial conditions. As the story goes, a butterfly flaps its wings in Maine and causes a hurricane in India that floods millions from their homes. Software systems, and in particular the systems we call "teams" and "processes" are very similar and are also subject to the same kind of unexpected outcomes. How do changes to processes, rules, guidelines and gates impact the work the team does? How does it impact the thing they produce?
Level: 300 |  Peter Provost is a Program Manager for Visual Studio Team System Architecture Edition where he focuses on code–centric modeling and product extensibility. | |
| Read more Watch movie |
| Roy Osherove | Understanding Test Driven Development
Level 100 Time: 9:00 - 10:00 (Track 4) | Roy Osherove | Understanding Test Driven Development
Level 100 In this talk we will introduce Test Driven Development (TDD) and the steps it takes to be successful with it. We will discuss the reasoning behind test–first development and see what its like to do a little feature using TDD. Finally we will talk some numbers and compare two teams with and without TDD.
Level: 200 |  Roy Osherove has been in the software industry for over a decade, working on projects small and large in companies in Israel and Europe. | |
| Read more Watch movie |
| Jeremy D. Miller | Convention over Configuration applied to .NET
Level 300 Time: 9:00 - 10:00 (Track 5) | Jeremy D. Miller | Convention over Configuration applied to .NET
Level 300 At some point in the past year we finally realized that we can really apply the design concepts that make Ruby on Rails so great to .NET development. A plethora of OSS projects in the .NET space are exploiting "Convention over Configuration" to reduce friction in tool usage.
In this talk I would like to discuss some examples of CoC usage, how Conventions are applied, lessons learned, and a bit about creating your own conventions inside your application architecture.
Level: 300 |  Jeremy began his IT career writing "Shadow IT" applications to automate his engineering documentation, then wandered into software development because it looked like more fun. | |
| Read more Watch movie |
| Ian Griffiths | Parallel FX
Level 200 Time: 9:00 - 10:00 (Track 6) | Ian Griffiths | Parallel FX
Level 200 With multi–core machines becoming ubiquitous, and the number of cores steadily increasing, concurrent programming techniques will become increasingly important in the next few years.
This session will show the new parallel programming features that will arrive in .NET 4 and Visual Studio 2010. It will show the new Parallel Framework (PFX), the task–oriented model it embraces, and how to exploit this model both through 'PLINQ', and through the CLR's new concurrency and threading types.
Level: 200 |  Ian Griffiths is a member of the technical staff at Pluralsight, where he focuses on the presentation layer curriculum. Ian is also an independent consultant, developer, speaker, and author. | |
| | Read more |
| Glenn Block | Framework Design Guidelines
Level 300 Time: 9:00 - 10:00 (Track 7) | Glenn Block | Framework Design Guidelines
Level 300 Learn about guidelines that have helped the Microsoft .NET Framework grow into the most popular developer framework Microsoft has ever created. After ten years of use, we have an enormous amount of real customer data about what makes great framework design. Whether you are building your own framework or just want to get the most out of the .NET Framework, this is a must–attend talk!
Level: 300 |  Glenn is a PM for the new Managed Extensibility Framework in .NET 4.0. Previously he was a Product Planner for the patterns & practices client stack including the Composite Application Guidance (Prism). | |
| | Read more |
| | | | Michele Bustamante | A Lap Around Geneva Framework
Level 300 Time: 10:15 - 11:15 (Track 1) | Michele Bustamante | A Lap Around Geneva Framework
Level 300 Federated security and claims–based authorization have become increasingly popular in the past few years. A federated security model makes it possible for applications and services to authorize users belonging to a trusted domain, based on a set of claims. At the heart of this is a Security Token Service (STS) that issues tokens for authenticated users, and a claims–based authorization model implemented at the target application or service.
Geneva Framework is a developer framework for building passive federation scenarios in ASP.NET applications; for implementing claims–based authorization models in both ASP.NET applications and WCF services; for supporting CardSpace login from ASP.NET applications; and for building a custom STS.
This session will provide you with a tour of these features for enabling federated security scenarios for your ASP.NET applications and WCF services.
Level: 200 |  Michele Leroux Bustamante is not only an IDesign Chief Architect, she is also Microsoft Regional Director for San Diego, Microsoft MVP for Connected Systems and a BEA Technical Director. | |
| | Read more |
| Udi Dahan | Asynchronous Systems Architecture for the Web
Level 400 Time: 10:15 - 11:15 (Track 2) | Udi Dahan | Asynchronous Systems Architecture for the Web
Level 400 The main lesson learned from the big sites over the past year has been to step away from the database and do more work in memory. The scalability benefits of asynchronous communication have become better known but many developers are still struggling with taking traditionally synchronous processes like user authentication and making them asynchronous.
In this presentation, developers will be shown, step–by–step the patterns, frameworks, and code needed to implement all user management processes for a web site. We will be dealing with scalability, web farms, long–running workflows, as well as the security implications of our decisions.
Level: 400 |  Udi Dahan is The Software Simplist, recognized by Microsoft Corporation with the coveted Most Valuable Professional award for Solutions Architecture now 4 years running. | |
| Read more Watch movie |
| Peter Provost | NEW SESSION: Extending VSTS 2010 Architect Edition
Level 300 Time: 10:15 - 11:15 (Track 3) | Peter Provost | NEW SESSION: Extending VSTS 2010 Architect Edition
Level 300 VSTS 2010 Architure Edition provides new UML and DSL designers and architectural discovery tools to enable architects and developers to improve their systems and better plan architectural changes to their systems. In addition, we have a breadth of extensibility features that will enable partners, teams and customers to create new features that leverage the power of the modeling capabilities in VSTS 2010 Architecture Edition. In this session you will see first–hand how the extensibility features work under the covers, how to build an extension, and how extensions can add to the overall product experience.
Level 300 (Lots of code:–) |  Peter Provost is a Program Manager for Visual Studio Team System Architecture Edition where he focuses on code–centric modeling and product extensibility. | |
| Read more Watch movie |
| Roy Osherove | Unit Testing Best Practices
Level 200 Time: 10:15 - 11:15 (Track 4) | Roy Osherove | Unit Testing Best Practices
Level 200 In this talk we will explore how to write readable, maintainable and trustworthy tests. We will cover things like naming conventions for tests, working with mock objects and stubs correctly having multiple asserts and many other little bits that will save you lots of time, sweat and tears as you write tests that will help your project, instead of just slowing it down.
Level: 200 |  Roy Osherove has been in the software industry for over a decade, working on projects small and large in companies in Israel and Europe. | |
| Read more Watch movie |
| Ayende Rahien | Building Scalable Systems
Level 300 Time: 10:15 - 11:15 (Track 5) | Ayende Rahien | Building Scalable Systems
Level 300 We are not building single user systems anymore. If fact, we are building systems that needs to handle hundreds of thousands or millions of users. The methods that we used to build low scalability applications are not applicable when we want our applications to scale.
In this session, we will talk about scalability hinderances, designing for scalability and look into some of the constraints that building scalable systems place on us.
Level: 200 |  Ayende Rahien, or Oren Eini which is his real name, is an independent consultant based in Israel. His main focus is on architecture and best practices that promote quality software and zero–friction development. | |
| Read more Watch movie |
| Ian Griffiths | Multithreading and Async Programming in Windows Presentation Foundation
Level 300 Time: 10:15 - 11:15 (Track 6) | Ian Griffiths | Multithreading and Async Programming in Windows Presentation Foundation
Level 300 This session shows how to keep your Windows Presentation Foundation (WPF) applications responsive in the face of slow operations, and illustrates the implications of multi–threading on data binding and User Interface (UI) behaviour.
Level: 300 |  Ian Griffiths is a member of the technical staff at Pluralsight, where he focuses on the presentation layer curriculum. Ian is also an independent consultant, developer, speaker, and author. | |
| | Read more |
| Glenn Block | Building Maintainable Enterprise Applications with Silverlight and WPF
Level 300-400 Time: 10:15 - 11:15 (Track 7) | Glenn Block | Building Maintainable Enterprise Applications with Silverlight and WPF
Level 300-400 Building an app in WPF and Silverlight is easy, building an enterprise app, well, that's a different story. It can be done, but it does not come for free. Fortunately there is a ton of guidance out there to help us make our way which includes the wisdom of the Gang–of–Four, Martin Fowler, and Bob Martin, and more recently Jeremy Miller, as well as new efforts coming from Microsoft. Come to this talk and we will explore various patterns and techniques that you can add to you arsenal.
Level: 300 |  Glenn is a PM for the new Managed Extensibility Framework in .NET 4.0. Previously he was a Product Planner for the patterns & practices client stack including the Composite Application Guidance (Prism). | |
| | Read more |
| | | | Michele Bustamante | Access Control Service: Federated Security in the Cloud
Level 300 Time: 11:30 - 12:30 (Track 1) | Michele Bustamante | Access Control Service: Federated Security in the Cloud
Level 300 Over the past few years, federated security models and claims–based access control have become increasingly popular. In a federated security model authentication can be performed by a Security Token Service (STS), and the STS can issue security tokens carrying claims that describe authenticated users and their access rights. Federation allows users to authenticate in their own domain while being granted access to applications and services that belong to another domain – providing that there is an established trust relationship between those domains. This removes the need to provision and manage duplicate accounts for a single user, and enables Single Sign–On (SSO) scenarios.
Claims–based access is also central to a federated security model whereby applications and services authorize access to features and functionality based on claims from issuers (the STS) in trusted domains. The Access Control Service (ACS), part of .NET Services and the Azure Services Platform, provides a hosted STS and a claims transformation engine – the latter of which brings a unique set of features to the table.
In this session I will introduce you to the ACS, your STS in the cloud, and discuss some practical scenarios that leverage the ACS. You will learn the flow of communication between identity providers, the ACS, and your applications for both active and passive federation scenarios; how to configure trust relationships and set up rules that can transform claims from trusted issuers into claims expected by your applications; and how to leverage Geneva Framework in your applications to enable passive and active federation with the ACS.
Level: 200 |  Michele Leroux Bustamante is not only an IDesign Chief Architect, she is also Microsoft Regional Director for San Diego, Microsoft MVP for Connected Systems and a BEA Technical Director. | |
| | Read more |
| Rafal Lukawiecki | Automatic Recommendation Engine Based on Data Mining
Level 400 Time: 11:30 - 12:30 (Track 2) | Rafal Lukawiecki | Automatic Recommendation Engine Based on Data Mining
Level 400 A common feature of leading online retailers is a recommendation engine that suggests products that other customers bought in similar transactions. This session will show you how to build such an engine using Microsoft SQL Server 2008 Analysis Services. Specifically, we will discuss the Association Rules technique of the Data Mining components.
First, we will show you how to perform a simple Market Basket Analysis using Excel 2007. Subsequently, we will build a data mining model using the AR algorithm. After a brief discussion of DMX (Data Mining Extensions) PREDICTION JOIN, we will use it to return a recommendation that matches the transaction the customer is processing. Finally, we will summarise with a number observations of avoiding common issues that may arise when using this technique.
Recommendation engines are part of web systems of leading retailers and other online concerns. SQL 2008 Analysis Services gives you an easy–to–use component that helps create a recommendation engine system. These techniques are also useful for advanced data exploration, e.g. in Market Basket Analysis.
Level: 400 |  In his role as Strategic Consultant at Project Botticelli Ltd, Rafal Lukawiecki is responsible for analyzing and forecasting trends in the field of Information Technology. | |
| Read more Watch movie |
| Peter Provost | Code First Analysis and Design with Visual Studio Team System 2010 Arch Ed Microsoft Visual
Level 200 Time: 11:30 - 12:30 (Track 3) | Peter Provost | Code First Analysis and Design with Visual Studio Team System 2010 Arch Ed Microsoft Visual
Level 200 Visual Studio Team System (VSTS), code–name "Rosario" Architecture Edition, introduces new UML designers, use cases, activity diagrams, sequence diagrams that can visualize existing code, layering to enforce dependency rules, and physical designers to visualize, analyze, and refactor your software. See how VSTS extends UML logical views into physical views of your code. Learn how to create relationships from these views to work items and project metrics, how to extend these designers, and how to programmatically transform models into patterns for other domains and disciplines.
Level: 300 |  Peter Provost is a Program Manager for Visual Studio Team System Architecture Edition where he focuses on code–centric modeling and product extensibility. | |
| Read more Watch movie |
| Jeremy D. Miller | Software Design and Testability
Level 300 Time: 11:30 - 12:30 (Track 4) | Jeremy D. Miller | Software Design and Testability
Level 300 There is undeniable value in doing automated testing, but the question is whether the benefits of automated testing are worth the time and manpower investment. The benefits and costs of automated testing are greatly affected by design and architecture choices.
In this talk I will examine the real world design issues, patterns, and principles that can enhance or hinder testability.
Level: 300 |  Jeremy began his IT career writing "Shadow IT" applications to automate his engineering documentation, then wandered into software development because it looked like more fun. | |
| Read more Watch movie |
| Ayende Rahien | Inversion of Control & Dependency Injection: Breaking out from the Dependency Hell
Level 300 Time: 11:30 - 12:30 (Track 5) | Ayende Rahien | Inversion of Control & Dependency Injection: Breaking out from the Dependency Hell
Level 300 Responding to change is the holy grail of software development. Inversion of Control (IoC) and Dependency Injection (DI) are two related patterns that allows to make significant changes to an application without having to touch every part of the application. IoC and DI encourage breaking the application into discerete, highly cohesive parts, so a change, when it eventually comes, is very local. A nice benefit is that applications that uses IoC are also very testable applications.
This talk will introduce the concepts of IoC and how to use them in your application.
Level: 200 |  Ayende Rahien, or Oren Eini which is his real name, is an independent consultant based in Israel. His main focus is on architecture and best practices that promote quality software and zero–friction development. | |
| Read more Watch movie |
| Roy Osherove | Beautiful teams
Level 300 Time: 11:30 - 12:30 (Track 6) | Roy Osherove | Beautiful teams
Level 300 In this talk we will explore some techniques, tactics and strategies for building, maintaining and driving a better software team and the people behind it. What does it take to lead people, to drive them? What does it mean to be in a constant state of productivity? How do you create a super effective and creative team,even if you don't have an all–star team to begin with? What tools, best practices and techniques can and should a team use to deliver great software? From automated builds to managing people – we will try to cover some hard lessons, in a fun way.
Level: 200 |  Roy Osherove has been in the software industry for over a decade, working on projects small and large in companies in Israel and Europe. | |
| | Read more |
| Ted Neward | Extend the Customization Possibilities of your .NET App with Script
Level 200 Time: 11:30 - 12:30 (Track 7) | Ted Neward | Extend the Customization Possibilities of your .NET App with Script
Level 200 Ever wished you could just put parts of your program in end–users' hands and let them build the infinite little changes they want? Ever thought about how you might make your application more robust by writing less code, not more? Embed a scripting engine into your application – complete with the safeguards necessary to ensure that users can't do anything they shouldn't be able to – and release yourself from the Principle of Perpetual Enslavement.
This presentation will describe how to embed a scripting engine, discuss the pros and cons of the various ones available, and how to put enough safeguards around the scripts to make sure that your application can't be hijacked by bad users' scripts. |  Ted Neward is a Principal Consultant with ThoughtWorks, an international consulting firm specializsing in project delivery on time, under budget, and feature–complete. | |
| | Read more |
| | | | Scott Hanselman | The magic of 'Astoria' - ADO.NET Data Services
Level 300 Time: 13:30 - 14:30 (Track 1) | Scott Hanselman | The magic of 'Astoria' - ADO.NET Data Services
Level 300 Join Scott Hanselman as he digs into the world of REST. ADO.NET Data Services is the Framework's best kept secret. This highly productive connection systems technology can enable RESTful services against a myriad of data sources. This combine with data technologies in WPF as well as AJAX makes "Astoria" a powerful choice for any client.
Level: 300 |  Scott Hanselman works for Microsoft as a Senior Program Manager in the Developer Division, aiming to spread the good word about developing software, most often on the Microsoft stack. | |
| Read more Watch movie |
| Udi Dahan | Avoid Failed SOA-business & Autonomous Components to the Rescue
Level 300 Time: 13:30 - 14:30 (Track 2) | Udi Dahan | Avoid Failed SOA-business & Autonomous Components to the Rescue
Level 300 Calling everything a service makes the term meaningless. Now, we have got 13 different kinds of services and no clue when to use which one. Is a single operation a service? Is a single endpoint a service? What about cross cutting functions like authorization and data access?
If you have been wondering about these sorts of questions, then this talk is for you. If you have been looking for a top–down analysis and design process, then this talk is for you. If you have been looking for concrete guidance on how to choose technology for SOA, then this talk is for you.
Join Udi as he describes the "missing links" in SOA: Business Components and Autonomous Components. It turns out that components are more important than ever in this new, service–oriented world.
Level: 300 |  Udi Dahan is The Software Simplist, recognized by Microsoft Corporation with the coveted Most Valuable Professional award for Solutions Architecture now 4 years running. | |
| Read more Watch movie |
| Jimmy Nilsson | Is Domain-Driven Design more than Entities and Repositories?
Level 200 Time: 13:30 - 14:30 (Track 3) | Jimmy Nilsson | Is Domain-Driven Design more than Entities and Repositories?
Level 200 Yes, the design language stipulated in Domain–Driven Design (DDD) has many more elements than just Entities and Repositories. But that's just the automatic answer.
In this presentation we will dive out and discuss DDD from some other angles as well and not just the basic building blocks. We will discuss DDD philosophy, the ubiquitous language, strategic design, DDD layering and the value of value objects.
|  Jimmy Nilsson is co–founder and CEO of factor10. He has written two books (Applying Domain–Driven Design and Patterns [ADDDP] and .NET Enterprise Design [NED]). | |
| Read more Watch movie |
| Roy Osherove | Test Driven Development: Using Mock Objects
Level 200 Time: 13:30 - 14:30 (Track 4) | Roy Osherove | Test Driven Development: Using Mock Objects
Level 200 In this talk we will introduce the concept of mock objects, stubs and fakes, and when to use which. We will also talk about best practices for using mocks and stubs in your tests and advanced concepts like automocking containers, recursive fakes and more.
Level: 200 |  Roy Osherove has been in the software industry for over a decade, working on projects small and large in companies in Israel and Europe. | |
| Read more Watch movie |
| Ayende Rahien | Producing Production Quality Software
Level 200 Time: 13:30 - 14:30 (Track 5) | Ayende Rahien | Producing Production Quality Software
Level 200 Working software is no longer the only thing that we need to produce. We need to create a software system that has a chance of surviving in the cruel world of production system, outside the clean room and sterile environment of development and QA. Understanding bottlenecks in the system, preventing cascading failures and recovery strategies have ceased being the problems of the very high end players. With the cost of system downtime being measures in $$$⁄second, this is an area we have to consider all the way.
In this talk we will cover how we can map common weaknesses in the system design, preemptively protect ourselves from them, and produce software systems that can withstand the real world hostile environment.
Level: 200 |  Ayende Rahien, or Oren Eini which is his real name, is an independent consultant based in Israel. His main focus is on architecture and best practices that promote quality software and zero–friction development. | |
| Read more Watch movie |
| Rockford Lhotka | Practical Parallelism
Level 300 Time: 13:30 - 14:30 (Track 6) | Rockford Lhotka | Practical Parallelism
Level 300 With multi–core computers becoming commonplace, and technologies like Silverlight requiring the use of asynchronous programming, and the use of distributed service–based computing spreading, we are entering an era where parallel and concurrent programming is virtually required. Are you
ready to be multi–threaded? Parallel? Concurrent? Are you ready to build applications that are not only parallel, but distributed?
This session will discuss the drivers of this change, the challenges we face, and some of the solutions available today and in the near future on the Microsoft .NET platform.
Level: 300 |  Rockford Lhotka is the creator of the popular CSLA .NET development framework, and is the author of numerous books, including Expert C# 2008 Business Objects and Expert VB 2008 Business Objects. | |
| | Read more |
| Ted Neward | What Every Hardcore Object-Oriented Developer Should Know About Visual Basic
Level 300 Time: 13:30 - 14:30 (Track 7) | Ted Neward | What Every Hardcore Object-Oriented Developer Should Know About Visual Basic
Level 300 Visual Basic and object–orientation... for so long, the Visual Basic language has been the laughingstock of the object–oriented purist, only recently gaining all of the features that for so long have dominated the object–oriented mindspace: implementation inheritance, dynamic method dispatch, and so on. Now, however, with the rise of interest in "dynamic" languages like Ruby and Python, it's time to go back to good ol' VB, and find out what was there all along.
|  Ted Neward is a Principal Consultant with ThoughtWorks, an international consulting firm specializsing in project delivery on time, under budget, and feature–complete. | |
| | Read more |
| | | | Michele Bustamante | Windows Azure - Your Operating System in the Cloud
Level 200 Time: 14:45 - 15:45 (Track 1) | Michele Bustamante | Windows Azure - Your Operating System in the Cloud
Level 200 Windows Azure is an operating system in the cloud hosted in Microsoft data centers. It provides businesses with on–demand hosting, storage and management features in fashion with utility computing.
This session will discuss features of the Windows Azure operating system that enable developers to build and deploy scalable applications in this virtualized hosting environment. You will learn how to build ASP.NET applications and WCF service for the cloud, learn how to leverage storage features, learn about the tools that bring a familiar developer experience and the local developer fabric, and learn how to manage cloud deployments.
Level: 200 |  Michele Leroux Bustamante is not only an IDesign Chief Architect, she is also Microsoft Regional Director for San Diego, Microsoft MVP for Connected Systems and a BEA Technical Director. | |
| | Read more |
| Rafal Lukawiecki | Architectual use of Business Intelligence in Application Design
Level 200 Time: 14:45 - 15:45 (Track 2) | Rafal Lukawiecki | Architectual use of Business Intelligence in Application Design
Level 200 While Business Intelligence (BI) is rapidly becoming the hottest area of Information Technology we are discovering new and innovative uses for it. Embedding BI in your own applications brings a number of useful benefits, starting with richer, interactive and more productive reporting, continuing through use of OLAP as an underlying architecture for information retrieval through to predictive programming.
This highly conceptual (rather than technical) overview session aims to give you an broad look at the possibilities that BI offers when it is used as part of application architecture design. While we will point out specific architectural uses of existing technology such as SQL Server 2008 Analysis Services or PerformancePoint Server we will spend more time on envisioning future uses that fundamentally shift the data–driven model (as in the well known Model–View–Controller paradigm) towards a BI–driver model. At the end of this session we expect you to have been inspired to consider using BI as a platform or perhaps a component of your application architecture.
Embedding BI in applications is a new paradigm. It is possible to replace much "data–tier" in LOB applications with a "BI–tier" with productivity gains BI as an architectural component of applications is visionary.
Level: 200 |  In his role as Strategic Consultant at Project Botticelli Ltd, Rafal Lukawiecki is responsible for analyzing and forecasting trends in the field of Information Technology. | |
| Read more Watch movie |
| Ayende Rahien | Object Relational Mapping + = 2: More than just Data <--> Object
Level 300 Time: 14:45 - 15:45 (Track 3) | Ayende Rahien | Object Relational Mapping + = 2: More than just Data <--> Object
Level 300 Object relational mapping are becoming only more popular, as people developing complex systems find that they need more than the tabular model to work with in their applications. A sophisticated ORM can do a lot more than merely get the data out of the database in object form, it can be a valuable assest in simplifying development and making things possible.
In this session, you will see how you can utilize an ORM in untraditional ways to get an additional, better, approach to solving complex issues. Some of those ways include business rules, localization, state transitions, inversion of control, etc. All done via the ORM layer, and all can be used to drasticly simplify the complexity of the given scenarios.
Level: 300 |  Ayende Rahien, or Oren Eini which is his real name, is an independent consultant based in Israel. His main focus is on architecture and best practices that promote quality software and zero–friction development. | |
| Read more Watch movie |
| Roy Osherove | Mocking on the Edge - Isolation at the System Level
Level 400 Time: 14:45 - 15:45 (Track 4) | Roy Osherove | Mocking on the Edge - Isolation at the System Level
Level 400 In this talk we will explore a different concept of isolation: Isolating a full system under test instead of a unit. Also explored: Always on fakes, transparent stubs, and system boundary simulators. We will also use the open source project CThru to show how these concepts can come to life.
Level: 400 |  Roy Osherove has been in the software industry for over a decade, working on projects small and large in companies in Israel and Europe. | |
| Read more Watch movie |
| Robert C. Martin | Clean Design: SOLID Principles I and II
Level 300 Time: 14:45 - 15:45 (Track 5) | Robert C. Martin | Clean Design: SOLID Principles I and II
Level 300 What happens to software? Why does is rot over time? How does an Agile development team prevent this rot, and prevent good designs from becoming legacy code? How can we be sure our designs are good in the first place?
This class presents the first two of the agile S.O.L.I.D. principles for designing object oriented class structures. These principles govern the structure and interdependencies between classes in large object oriented systems. The principles include: The Open Closed Principle, The Liskov Substitution Principle, and the Dependency Inversion Principle, among others. The Single Responsibility Principle, and the Open Closed Principle.
This class also presents the last three agile S.O.L.I.D. principles for designing object oriented class structures. These principles govern the structure and interdependencies between classes in large object oriented systems. The principles include: The Open Closed Principle, The Liskov Substitution Principle, and the Dependency Inversion Principle, among others.
Level: 300 |  Robert C. Martin has been a software professional since 1970. In the last 35 years, he has worked in various capacities on literally hundreds of software projects. | |
| Read more Watch movie |
| Stephen Blair-chappell | Leaping Over the Parallel Chasm: Using Intel® Parallel Studio to Create Parallel Applications
Level 250-300 Time: 14:45 - 15:45 (Track 6) | Stephen Blair-chappell | Leaping Over the Parallel Chasm: Using Intel® Parallel Studio to Create Parallel Applications
Level 250-300 Despite the abundance of multicore PCs, the software world has yet to catch up with the parallel world. Application developers are under pressure to write applications that make use of the extra processing power available from the latest generation of multicore CPUs. The question is not when but how.
In this session learn how to use Intel® Parallel Studio to introduce parallelism into your applications. The session includes a live 'hands–on' demo of how to use Parallel Studio to analyze where to add parallelism, how to compile and debug parallel programs, how to spot hard–to–find memory and threading errors, and finally how to tune parallel applications for maximum performance.
Intel Parallel Studio consists of four products Intel® Parallel Advisor, Intel® Parallel Composer, Intel® Parallel Inspector and Intel® Parallel Amplifier. This presentation demonstrates how these tools can be used end–to–end in the development cycle.
Level: 250\300 |  Stephen is a Technical Consulting Engineer at Intel, and has worked in the Intel Compiler Lab for the last 10 years. He is a regular speaker at technical conferences in Europe and the US. | |
| | Read more |
| Ian Griffiths | What’s new in Windows Presentation Foundation 4.0?
Level 200 Time: 14:45 - 15:45 (Track 7) | Ian Griffiths | What’s new in Windows Presentation Foundation 4.0?
Level 200 The next version of .NET, shipping with Visual Studio 2010, will include updates to the Windows Presentation Foundation (WPF). There are enhancements graphics, including better text rendering, and performance–oriented improvements. Support for Windows 7 features such as multitouch and taskbar integration will be added. Additional control and theme support is planned. The Xaml parsing infrastructure is enhanced and more open. This session introduce these and other planned WPF improvements.
Level: 200 |  Ian Griffiths is a member of the technical staff at Pluralsight, where he focuses on the presentation layer curriculum. Ian is also an independent consultant, developer, speaker, and author. | |
| | Read more |
| | | | Ted Neward | XML Messaging in .NET using Windows Communication Foundation
Level 200 Time: 16:00 - 17:00 (Track 1) | Ted Neward | XML Messaging in .NET using Windows Communication Foundation
Level 200 Windows Communication Foundation (WCF) is Microsoft's future technology base for all program–to–program communication, and while it provides a convenient RPC–like model, some of the real power behind WCF lies in its messaging–based pipeline under the covers.
This presentation "lifts the hood" on the RPC facade, looks at how to use WCF in a messaging–based fashion, and how it can be tuned to interoperate easily with legacy .NET endpoints, Java endpoints, and even REST–based endpoints. |  Ted Neward is a Principal Consultant with ThoughtWorks, an international consulting firm specializsing in project delivery on time, under budget, and feature–complete. | |
| Read more Watch movie |
| Michele Bustamante | Building a Windows Communication Foundation Router - Today and Tomorrow
Level 300 Time: 16:00 - 17:00 (Track 2) | Michele Bustamante | Building a Windows Communication Foundation Router - Today and Tomorrow
Level 300 Deploying Windows Communication Foundation (WCF) services within an Service–Oriented Architecture (SOA) environment often requires a routing service to provide necessary security boundaries within the architecture; to provide asynchronous logging and message tracking services; for capacity planning or priority routing; for content–based routing and more.
This session will discuss practical architectures for routers and explain the semantics of SOAP addressing that are relevant to the routing process; show you how to configure a router that can seamlessly be inserted into the service stack; and explain the required configuration to support this. In addition, you will learn about the new RouterService to be released with .NET 4.0, and how the workarounds for custom routers still apply to this new feature.
Level: 200 |  Michele Leroux Bustamante is not only an IDesign Chief Architect, she is also Microsoft Regional Director for San Diego, Microsoft MVP for Connected Systems and a BEA Technical Director. | |
| | Read more |
| Jimmy Nilsson | Entity Framework + Domain-Driven Design = true?
Level 200 Time: 16:00 - 17:00 (Track 3) | Jimmy Nilsson | Entity Framework + Domain-Driven Design = true?
Level 200 The interest for Domain–Driven Design (DDD) is growing rapidly, but lots of developers and architects have found that it's hard to use Entity Framework (EF) in the context of DDD. It's also the case that the usage of EF 1.0 might introduce a migration problem for going forward if you don't take care.
In this presentation we will investigate some options and come up with recommendations for how to deal with the situation.
|  Jimmy Nilsson is co–founder and CEO of factor10. He has written two books (Applying Domain–Driven Design and Patterns [ADDDP] and .NET Enterprise Design [NED]). | |
| | Read more |
| Roy Osherove | Unit Testing in Silverlight
Level 300 Time: 16:00 - 17:00 (Track 4) | Roy Osherove | Unit Testing in Silverlight
Level 300 In this talk we will explore the world of silverlight unit testing possibilities. We will show two frameworks that help write tests for silverlight Microsoft – Silverlight test framework and the open source SilverUnit framework, and the big differences between the two framework styles: Integration vs. unit testing. We will show demos of how you can test custom silverlight controls and how you can run these tests as simple, in memory tests, without needing a browser.
Level: 300 |  Roy Osherove has been in the software industry for over a decade, working on projects small and large in companies in Israel and Europe. | |
| Read more Watch movie |
| Robert C. Martin | Clean Design: Components Principles
Level 300 Time: 16:00 - 17:00 (Track 5) | Robert C. Martin | Clean Design: Components Principles
Level 300 How do you manage the structure of large agile and object oriented systems? What is the best way to break that structure into components? What should the components contain, and how should they be interrelated? How can we effectively partition a system into independently deployable components?
This course teaches the 6 principles of object oriented component design. The first three are principles of component cohesion, which discuss the rules for how classes should be allocated to components. The second three are the principle of component coupling, which discuss how components should be related to one another. Principles include “The Common Closure Principle, the Stable Dependencies Principle, and the Acyclic Dependencies Principle, among others. |  Robert C. Martin has been a software professional since 1970. In the last 35 years, he has worked in various capacities on literally hundreds of software projects. | |
| Read more Watch movie |
| Glenn Block | Building openly extensible applications with .NET Framework 4.0
Level 300 Time: 16:00 - 17:00 (Track 7) | Glenn Block | Building openly extensible applications with .NET Framework 4.0
Level 300 Are you tired of building monolithic style apps? Are you tired of hacking your app to bits to meet just one more requirement. Do you want to enable third parties to provide add–on value to your apps? If the answer to any of these is yes, then come learn about the new Managed Extensibility Framework which ships in .NET 4.0. Applications built on MEF dynamically discover and compose available components at runtime. This makes MEF ideal for third–party extensibility scenarios, where the type and number of extensions are undefined. With MEF you can enable customers and third–parties to take your apps where no man has gone before.
Level: 300 |  Glenn is a PM for the new Managed Extensibility Framework in .NET 4.0. Previously he was a Product Planner for the patterns & practices client stack including the Composite Application Guidance (Prism). | |
| | Read more |
| Rockford Lhotka | Achieving Balance
Level 200 Time: 16:00 - 17:00 (Track 7) | Rockford Lhotka | Achieving Balance
Level 200 It is all too easy to become fixated on the latest trend. Even if we know there is no "silver bullet", it is so tempting to become "pure OO" or "pure SOA" or "pure anything". Of course reality is messier. Real applications require a mix of technologies and concepts, including SOA, messaging, OO, client⁄server, workflow and more. At the same time, it is not chaos. Each technology fits perfectly in some cases, acceptably in others and must be coerced into still others. Balance can be achieved by using the right technology to solve the right problems.
The key is to start with a flexible architectural philosophy, and to fit technologies into that technology without being overly affected by marketing hype or developer enthusiasm for the latest fad. Learn about one such architectural philosophy and how it can be used to frame the use of the many Microsoft technology offerings available today.
Level: 200 |  Rockford Lhotka is the creator of the popular CSLA .NET development framework, and is the author of numerous books, including Expert C# 2008 Business Objects and Expert VB 2008 Business Objects. | |
| | Read more |
| | | | Ted Neward | Core Windows Communication Foundation Patterns
Level 200 Time: 17:15 - 18:15 (Track 1) | Ted Neward | Core Windows Communication Foundation Patterns
Level 200 There is a whole other enterprise development world out there, and they have been building enterprise systems for close to a decade now. As a result, the Java community has long had a collection of patterns by which to be guided when building enterprise systems, one of the most popular of which is Crupi, Alur and Malks' "Core J2EE Patterns".
In this talk, we will examine some of the popular J2EE enterprise design patterns, discover what the problem, context and consequences were for each, and discuss how they might relate to the world of Windows Communication Foundation and .NET. |  Ted Neward is a Principal Consultant with ThoughtWorks, an international consulting firm specializsing in project delivery on time, under budget, and feature–complete. | |
| Read more Watch movie |
| Rafal Lukawiecki | Microsoft Solutions Framework 4.0 Core for Solution Delivery Projects
Level 200 Time: 17:15 - 18:15 (Track 2) | Rafal Lukawiecki | Microsoft Solutions Framework 4.0 Core for Solution Delivery Projects
Level 200 Microsoft Solutions Framework (MSF) is now in its 14th year since it was announced to the world in 1995. While agile development approaches became popular over the past decade MSF has evolved to its 4th, present edition. It is, however, the more structured and pre–planned aspects of MSF that makes it so useful for your larger and more critical software development or IT solution delivery projects.
At first, this session will overview MSF including its Application Development family that is supported by Team Foundation Server. We will, however, spend more time looking at the core principles of MSF which help you deliver larger solutions, incorporating customised infrastructure. Examples of such projects include deploying desktop–based system to a thousand or more employees, creating a portal for millions of users, upgrading an older LOB application across an enterprise etc. If you work as a consultant, or your company delivers end–to–end vertical solutions you would benefit from knowing this wider form of MSF than what is more commonly known from its specific form embedded in TFS.
Successful delivery of complex infrastructure⁄software solutions requires a good framework. Project Management skills alone are not enough for success. MSF provides know–how on how to organise project goals and deliverables to meet customer needs and technology constraints.
Level: 200 |  In his role as Strategic Consultant at Project Botticelli Ltd, Rafal Lukawiecki is responsible for analyzing and forecasting trends in the field of Information Technology. | |
| Read more Watch movie |
| Richard Campbell Carl Franklin | .NET Rocks! Live Time: 17:15 - 18:15 (Track 3) | Richard CampbellCarl Franklin | .NET Rocks! Live .NET Rocks! Live from NDC 2009 with Richard Campbell and Carl Franklin!
Join Carl and Richard from .NET Rocks as they talk to Scott Hanselman about life at Microsoft and the new technologies coming out of the ASP.NET team. Bring your questions and be part of a .NET Rocks Episode! |  Richard Campbell is a Microsoft Regional Director, MVP and co–host of .NET Rocks!, the Internet Audio Talkshow for .NET Developers as well as host of RunAs Radio, the podcast for Microsoft IT Professionals.
 | |
| Read more Watch movie |
| Ayende Rahien | Interaction Based Testing with Rhino Mocks
Level 300 Time: 17:15 - 18:15 (Track 4) | Ayende Rahien | Interaction Based Testing with Rhino Mocks
Level 300 Beyond the simplest scenarios, all objects had collaborators that they work with. This flies in the face of testing objects in isolation. This is the problem that mock objects were created to solve.
In this talk you will learn what mock objects are, how to utilize them and best practices on when ⁄ how to utilize them. Rhino Mocks is a mock objects framework for .NET whose core goals are to let the developer rely on the compiler work well with refactoring tools.
Level: 100 |  Ayende Rahien, or Oren Eini which is his real name, is an independent consultant based in Israel. His main focus is on architecture and best practices that promote quality software and zero–friction development. | |
| | Read more |
| Robert C. Martin | Clean Practice: Agility and Craftsmanship
Level 200 Time: 17:15 - 18:15 (Track 5) | Robert C. Martin | Clean Practice: Agility and Craftsmanship
Level 200 What does it mean to be a professional software developer? What rules do we follow? What attitudes do we hold? And how can we maintain our professionalism in the face of schedule pressure?
In this talk Robert C. Martin outlines the practices used by software craftsmen to maintain their professional ethics. He resolves the dilemma of speed vs. quality, and mess vs schedule. He provides a set of principles and simple Dos and Don’ts for teams who want to be counted as professional craftsmen.
|  Robert C. Martin has been a software professional since 1970. In the last 35 years, he has worked in various capacities on literally hundreds of software projects. | |
| Read more Watch movie |
| Michele Bustamante | Choosing the Right Data Access Technology
Level 200 Time: 17:15 - 18:15 (Track 6) | Michele Bustamante | Choosing the Right Data Access Technology
Level 200 Thanks to recent innovations from Microsoft including LINQ to SQL, the Entity Framework and ADO.NET Data Services, choosing a technology for data access architecture has become a subject for debate. Among other things developers must balance productivity, elegance and performance. Some common questions include: Are data readers and data sets still useful? How should I choose between LINQ to SQL and Entity Framework? Should I design custom entities or use types that follow the database schema? Should I use ADO.NET Data Services to expose my data model or control access via WCF business services?
This session will look at data access architecture for each of these technologies, illustrate common practices when employing each, discuss pros and cons, and help you better understand how to choose the right technology for your scenario.
Level: 200 |  Michele Leroux Bustamante is not only an IDesign Chief Architect, she is also Microsoft Regional Director for San Diego, Microsoft MVP for Connected Systems and a BEA Technical Director. | |
| | Read more |
| Rockford Lhotka | CSLA .NET for Silverlight
Level 300 Time: 17:15 - 18:15 (Track 7) | Rockford Lhotka | CSLA .NET for Silverlight
Level 300 Silverlight is a powerful technology for building smart client applications that deploy and run in a cross–platform, cross–browser environment. CSLA .NET is one of the most widely used software development frameworks for the .NET platform.
In this session you will learn how to build rich, scalable and highly interactive business applications in Silverlight. By using CSLA .NET, these applications can share most code for the business logic between your application server and the client, providing incredible levels of reuse, and leveraging the power of the client and the server.
Level: 300 |  Rockford Lhotka is the creator of the popular CSLA .NET development framework, and is the author of numerous books, including Expert C# 2008 Business Objects and Expert VB 2008 Business Objects. | |
| | Read more |
|
|
|  |
|
|
|