I just wrapped up my sessions at DevTeach Ottawa 2011. I gave the following two talks and, as promised, here are my slides and sample code.
Too Slow: Use VS2010 Profiling & Load Testing to Manage Performance Issues
You thought you knew how to write fast code but your app just doesn’t perform. Massive servers and still only 20 concurrent users? What is going wrong? You can find out by using Visual Studio 2010’s code profiling features.
Want to know how many users your app can currently support? Want to know how many users it takes to crush your servers? Or perhaps you want to know why the app breaks under load? Was it memory? Disk usage? Networking? IIS? SQL Server? You can use Visual Studio’s load testing features to figure that out.
In this session, Ben will show you how to use these features to take a poorly performing application and make it fast. He’ll also talk about what you should be doing to find and stop performance problems before they happen by using Team Foundation Server automated builds and reporting.
Design Patterns for Model-View-ViewModel Unit Testing & Testability
MVVM is a great architecture that really lets you write well unit tested applications. In this session, Ben will talk about his experiences over the last year leading the development of a Silverlight MVVM-based application. From the architectural havoc of the async calls to layering your application to de-coupling your ViewModel from your WCF and data access code – you’ll learn from his mistakes and hear how to implement it all using unit tests with great code coverage. The goal of this session is to answer not only just “what should I test and how do I do it?” but also to answer “what’s worth testing?” in your WPF, Silverlight, and WP7 applications. Along the way, you can expect to hear a lot about interface-driven programming, design-for-testability, Dependency Injection, the Adapter and Repository patterns, and ViewModel best practices.