Sessions2007

ASP.NET and WPF

Building Data Visualization Applications with the Windows Presentation Foundation, Level 200

Tim Huckaby

This session will be heavily demo focused to accentuate how the power of the Windows Presentation Foundation (WPF) can be used to visualize data. WPF is the next-generation presentation sub-system for Windows. It provides developers and designers with a unified programming model for building rich Windows smart client user experiences that incorporate UI, media, and documents. WPF uses vector based graphics rendering, which results in better graphics and presentation for an application. WPF also has other features such as layout, styling, and data binding, which, when you mix with interactivity, enables scenarios such as interactive data visualization. When you put all this together, you have a unified API for various presentation components, such as 2D and 3D documents and declarative programming through XAML, which is a powerful platform for data visualization that can be used to really “light-up” you enterprise applications.

WebControl Data Binding, Level 400

Miguel Castro

The concept of data binding is both a broad and sometimes vague topic. Data binding means different things to different people and even to different applications but everyone seems to agree that it's a concept that many developers used to steer clear of, probably due to a stigma following it through different editions of Visual Basic. Well, in .NET 2.0, data binding has come to age, and more interestingly, it has come to the Web world. In this session I'll cover some data binding fundamentals, get everyone on the same page regarding exactly what it is in the context of .NET, and show you how to embed it into your own custom Web Controls. I'll show you how to make your controls compatible with standard code-based binding as well as with the new Declarative Data Source Controls, then I'll actually show you how to develop your own custom Declarative Data Source Control. We may just be able to eliminate the stigma that has followed data binding for so many years.

Challenging ASP.NET/AJAX for Braveheart Developers, Level 300

Dino Esposito

A deep understanding of the internal mechanics of ASP.NET pages may lead you to do virtually anything. Or, at least, anything that is not strictly prohibited by the internal architecture of the runtime environment. In this talk for braveheart ASP.NET developers, I'll take up some of these challenges. For example, we’ll explore ways to modify Web sites without touching the source code. Useful to inject tracking code in a remote site, the technique requires an advanced familiarity with HTTP modules and handlers. We’ll also see how to declaratively filter and validate the query string and how to add inject AJAX code on the fly.

Scaling Habits of ASP.NET Applications, Level 300

Richard Campbell

As our ASP.NET Web applications become more and more successful we switch our focus from adding features to performance, scale, and management. Richard has 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 we 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.

Why Partial Rendering Is Not AJAX, Level 300

Dino Esposito

The advent of AJAX is radically modifying the user’s perception of a Web application and it is subsequently forcing developers to apply newer and richer models to build modern Web applications. In ASP.NET AJAX Extensions, we find two approaches to AJAX: partial rendering and script services. As dramatic as it may seem, only the second approach is pure AJAX. Partial rendering has little to do with AJAX, but it's an incredibly smart trick that brings with it flicker-free pages. In this talk, I'll give an architectural perspective of partial rendering and unveil some of its inner secrets.

Silverlight, Flash on Steroids, Level 200

Lino Tadros

Lino will be demonstrating the power of Silverlight and its usage in today's development environment to create Flash like web sites with elegance and ease. Several topics will be discussed and demonstrated like the difference between Silverlight 1.0 and 1.1, Expression Blend, XAML, Multi-Media, Event handling and Ajax integration. The concept of developing in JavaScript with Silverlight 1.0 or C# and VB in 1.1 will be demonstrated during the session while building some prototypes that will give the audience a good handle on the best tips and tricks for developing Silverlight applications to run on Windows and Mac OS.

Data Binding in WPF, Level 200

Brian Noyes

Most rich applications present data, often lots of it. To avoid writing lots of code to support the presentation of that data, you should take full advantage of the data binding capabilities of your presentation platform. This session will discuss and demonstrate the data binding capabilities of WPF. It will explain what data contexts are and how they work with the element hierarchy. It will show you what Bindings are, how to declare them, and what optional capabilities they support. It will demonstrate binding to data sets as well as custom objects and collections, and will discuss the considerations for implementing those types. It will also discuss the way you can interact with your bound data programmatically to control the presentation of that data and to make changes to it in code.

Tips & Tricks for Managing ViewState, Level 300

Todd Anglin

Ever since ViewState entered the scene and made the process of maintaining state across PostBacks effortless, it seems like ASP.NET developers have been battling its presence. It's definitely a love hate relationship - it makes our development lives easier, but it makes our page sizes swell. Join Telerik Technical Evangelist Todd Anglin as he presents some easy ways to optimize ViewState so that you can enjoy it without feeling guilty. (Not sure if we need to be more detailed here to get peoples' interest. I'd be doing things like showing how to move ViewState to bottom of page, how to build an HttpHandler to extract/insert from page (similar to what I expect StrangeLoop is doing with AppScaler), how to compress, etc.)

Extenders: The New Frontier of Web Gadgets, Level 300

Dino Esposito

Extenders are server controls that extend the behavior of other controls. Although it's not specifically designed for AJAX it has a lot to do with it and with pages that need plenty of script code on the client. In this talk, we'll build a first extender control and then take a quick tour of the extenders defined in the AJAX Control Toolkit.

Load Testing ASP.NET Applications for Performance and Scalability, Level 300

Richard Campbell

Is the first time you’ve really tested your ASP.NET application under load when you put it into production? Don’t do it! This session digs into how you can test your ASP.NET application using Microsoft’s Web Application Stress Tool and Visual Studio 2005 for Software Testers. You’ll see what metrics to measure to determine the real performance of your application and how to effectively benchmark your application. Explore the trade-offs of performance and scalability to serve your entire user base effectively at peak and low load times. Finally, learn about how you can take the information generated from your tests to improve your ASP.NET application performance. The techniques taught in this session will help you keep your ASP.NET application performing its best as your application and users evolve.

SQL

What's New in SQL Server 2008 for Developers, Level 300

Vladi Tchalkov

In this session we will talk about the new features of SQL Server 2008 from a development point of view. We will talk about new data types, T-SQL enhancements and general DB engine changes.

T–SQL Querying: Tips and Techniques (With SQL 2008 features too), Level 300

Stephen Forte

Take your queries to the next level! This interactive session focuses solely on advanced querying techniques to get the most out of your SQL Server. See a series of real-world examples to extract data from your databases in ways you've never seen before. Techniques demonstrated include an ultra-fast way to do crosstab queries in SQL Server, running totals and ranking. Along the way you'll get some insight into how SQL Server works and the new capabilities in SQL Server 2005 and 2008.

Building a forums application using Visual Studio 2008 and LINQ to SQL, Level 200

Todd Anglin

Join Todd Anglin, Telerik Technical Evangelist, as he builds a web-based forum application using Visual Studio 2008 and LINQ to SQL. This session will focus on the new features available in Visual Studio 2008 for web development and will spend extra time looking at LINQ to SQL, Microsoft's new ORM tool. With a LINQ to SQL data layer and a UI powered by Telerik's RadControls, you'll discover how easy it is to build a data driven web application with very little effort.

Lino Does LINQ, Level 300

Lino Tadros

In this exciting session, Lino will be demonstrating the power of LINQ in developing Windows and Web applications to close the gap between Databases and Object Oriented Programming. LINQ to Objects, to Datasets, to SQL, to Entities and to XML will be discussed and demonstrated.
var query = from s in SessionsAtDevReach2007 where s.speaker="Lino" select s.SessionName, s.SessionTime;

The Most Persistent SQL Server Myths (And Why They Are Wrong), Level 300

Maciej Pilecki

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, its full of such misleading statements. During this session we will debunk some of the most popular and dangerous misconceptions around SQL Server Database Engine features.

Dude, Where Is My Memory? Understanding SQL Server Memory Usage And Management, Level 300

Maciej Pilecki

Have you ever wondered why SQL Server seems to be using all the memory on your server? This session seeks to understand why this is, in fact, an expected behavior. The sessions discusses details of SQL Server internal memory usage and management and it's interaction with the operating system. You will understand how SQL Server acquires, uses and releases memory, how to detect memory pressure and bottlenecks and how to properly configure SQL Server memory for different scenarios, especially on servers running other applications or with multiple instances of SQL Servers. You will leave this session with full understanding of SQL Server memory internals and ready to troubleshoot memory problems in the real world.

100 years of transaction solitude…Transactions and isolation levels, Level 300

Ami Levin

In this session we will dive into the sometimes neglected area of the importance of a properly planned isolation strategy. We will cover ANSI definitions for isolation phenomenon, SQL Server implementation of isolation levels up to 2005 version and the new and exciting features that SQL 2005 presented. We will discuss best practices and tips both for development and administration.

LINQ - Deep dive, Level 400

Branimir Giurov

The title says it all! See how it works and what you can do with it. The lecture will cover LINQ to SQL/XML/Entities framework. See how you can work with different sources of data in all the same way. Right from your C# code. Query data structures/reflection/xml/sql/whatever you can think of in just a couple of lines of code. See how it works and what it’s based on.

SQL Server Service Broker - Your gateway to the world of transactional asynchronicity, Level 200

Ami Levin

In this session we will cover SQL Server service broker. The revolutionary infrastructure for building enterprise class asynchronous and transactional applications. We will begin by understanding the need and benefits of asynchronous programming. We will see when it's appropriate and how to avoid common pitfalls. We will cover the theoretical and functional aspects of SSB and see live demos of its uses. We will discuss security and execution context issues, message routing and practical tips.

Visual Studio and .NET

What's new with Team System and Orcas, Level 200

Joel Semeniuk

Orcas is right around the corner and there are plenty of new features in Team System that will help make your teams more productive. In this 100% demo based session you will get a full burndown of all of the new features your teams can leverage in the Orcas release of Team Foundation Server and Team Suite.

Best Practices for Team Based Development, Level 300

Joel Semeniuk

A highly cohesive software development team is critical to a successful project. Microsoft Visual Studio Team System provides a platform allowing all members of your project team to collaborate in new ways which will dramatically change the way they work every day. In this session you will understand how teams can work together using all of the features of Team System along with some simple integration techniques that provide an even greater team cohesion.

Security and .NET, Level 200

Hadi Hariri

Security for many developers is a taboo subject. Security is a good thing, and if used wisely, it can be very productive. The .NET Framework is built with security in mind and provides an extensive framework to help us manage security aspects of our applications, such as user access, code restrictions and encryption. This session explores all the features .NET provides and how it can help us reduce those daunting tasks that every application needs to be reliable and secure. Tips are also provided on how to avoid common pitfalls that are susceptible to attacks, whether it's data or intellectual property.

.NET: Using the Wii Remote to Enhance User Interfaces, Level 200

Chad Hower

The Wii remote (Wiimote) is a major breakthrough in intuitive game controllers. Many people are beginning to discover that it has very useful applications other than just a game controller. Can the Wiimote be useful in business? Surprisingly so, yes. This session demonstrates how the Wiimote is useful in business applications and how to connect to and use the Wiimote from a .NET application.

First Look at Next Version of Visual Studio Team System Code Name "Rosario", Level 200

Martin Kulov

When VSTS 2008 is knocking on the door now, we are going to take a look what are the new cool and exiting features in the next version of Visual Studio Team System code named Rosario. We will see where is Microsoft putting their effort in long term and we are going to discuss what we can expect next. Join us in this session for this first time show of Rosario bits.

Internet Service Bus (BizTalk Services), Level 100

Stephen Forte

With the introduction of the CTP of BizTalk Services Microsoft has changed the rules of development by entering the Software+Services space. BizTalk Services provide authentication, access control and federated identity based on the WS-Trust specification. The new BizTalk Relay Services facilitate the traversal and bridging of physical networks, enabling high-fidelity interconnection between cooperating systems for cross-organizational messaging behind firewalls. In this session, you will get an introduction as to what BizTalk services are, how to use them, and what the heck an Internet Service Bus is.

Developing Excel Services Dashboard Solutions, Level 300

Joel Semeniuk

Microsoft Office SharePoint Server contains some powerful features for helping to provide information where it is needed the most, right in front of decision makers. In this session we will explore the different options you have to create dashboard solutions for your organization and take a close look at how to build and deploy Excel Services and Excel User Defined Functions.

Distributed Performance Testing with VSTS 2008, Level 400

Martin Kulov

In these days of rapid and extreme development we rarely stop and think how our software is performing. Is it using the appropriate libraries and components to do the job, is it making right queries to the database, is it using the correct security authentication mechanism? What is appropriate, right and correct depends on project specifics. However developers should be aware of the impact of making the wrong decision in their code on the overall system productivity. In this session we will measure and investigate such kind of problems using the new and greatly improved performance tools in Visual Studio Team System 2008 and will show different ways to solve them.

Three Kinds of Encryption, Level 200

Carl Franklin

Protecting secrets is an often overlooked part of software development, mostly, I think, because developers think it's too difficult to do any kind of basic encryption that you can trust. In this talk I'll show you how to do one-way hashing for safely storing secrets in a database, encrypt secrets dependent to individual users or machines, and do full symetric encryption to send secrets safely between two parties.

A Busy Developer's Guide to Building Windows PowerShell Cmdlets, Level 200

Hristo Deshev

Windows PowerShell is a lot more than a cmd.exe replacement that can help you get more done in less time! It revolutionizes Windows automation and administration by introducing a new scripting model with a strong emphasis on object-oriented programming. The focus of this session is to plug into the PowerShell architecture by creating cmdlets that expose our application functionality to the end user. We will go on and show how we can use those cmdlets both from the command line and from within PowerShell scripts. Our ultimate goal is to provide cheap scriptability and extensibility to advanced users and system administrators that already know their way around PowerShell.

Architecture and Practices

Developers are from Mars, Managers are from Venus, Level 200

Chad Z. Hower aka Kudzu

Developers and managers do speak different languages! What can be done to bridge this gap and improve communication? What effects will it have on your team and projects? Learn some simple techniques through real and practical examples of how to improve this vital communication conduit.

Creating a billion dollar ERP system - case study of the Velocity system, Level 300

John Waters

Join John Waters of Falafel Software Inc, in this session that demonstrates Telerik's RadControls for ASP.NET running in a billion dollar ERP system, and learn how to build performance data entry screens using AJAX and Web Services. John will be showing live examples of the Velocity ERP system, which has already handled a billion dollars of business in two years, and hundreds of thousands of orders, with over a hundred simultaneous users, all in an ASP.NET 2.0 application that uses most of Telerik's ASP.NET UI components. He will also show you how to use the RadServiceManager to create order entry screens with complex business logic and a large amount of controls, but with WinForms like performance.

Improving Teamwork and Developer Habits, Level 200

Chad Z. Hower aka Kudzu

Too many teams operate simply as a group of developers with relationships formed only by task, friendships, or attempts by project managers. In addition there are large impedences between management and developers. What kind of practical steps can be taken to work out common problems? Come see in this interactive thought provoking session how developers and managers can work better together, and team members can become more cohesive.

Advanced WF, Level 300

Brian Noyes

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.

DevReach Daily Scrum, Level 200

Stephen Forte

Come see Stephen Forte talk about Scrum, after a fast introduction, Stephen will share some real world examples and then take your questions on how to best implement Scrum.

Enabling Organizations for User Experience, Level 100

Zhivko Dimitrov

While the User Experience concept has gained strong momentum among IT businesses, most companies consider UX know-how and dedicated personnel to be a guarantee for usable products. In reality, it takes a lot more – businesses need to change corporate culture and sometimes even values to reap the full benefits of User Experience practices. Even if you’ve convinced top management to invest in UX, you need to win middle management on your side and sell the idea to developers. This talk will highlight the Telerik experience with instilling the UX spirit within the organization and suggest practical advice for nurturing and directing change in a corporation.

Sexy Extensibility Patterns, Level 400

Miguel Castro

Let's face it, like everything else in software development, some patterns are cool and some are just plain boring. So let's turn up the heat and go over some exciting patterns that will allow you to enhance and extended an application without affecting the original design or code. In this session, I will teach you to design your applications using providers, plug-ins, and modules; in the end making an application as robust and full-flavored as a good beer.

RSS, Podcasting, and Syndication, Level 200

CarlFranklin

Real Simple Syndication (RSS) is a great way to publish news items, blog posts, calendars, audio, video, and any other type of data. In this session I'll show you how to easily consume and publish RSS feeds using a variety of technologies and techniques. I'll also show you some of the tools you can download and purchase for consuming RSS.

Integrating User Experience Strategies in the Software Development Lifecycle, Level 100

Zhivko Dimitrov

Hundreds of User Experience methods promise the Holy Grail of easy to use, emotional software solutions. This talk will outline some of the most common and effective UX methods and position them on the software development cycle. We will go through ethnography methods, personas, sitemaps, wireframes, and usability studies among others and match each technique with the most appropriate stage of the development process. We will also consider the fit of UX methods within an agile development environment to restate the benefits of implementing an iterative approach to software design.

MSBuild Internals, Level 300

Hadi Hariri

MS Build is Microsoft's automated build tool. Although present in the .NET 2.0 framework, and used internally by Visual Studio, the true power of MS Build comes from its extensibility. This session explains what MSBuild is, how it works and shows how to extend it to implement custom tasks such as file operations, check-ins and check-outs of VCS system and other steps required to manage a successful automated build process.

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.