September 11
Microsoft-Sponsored Breakfast Session:
Development Opportunities with the New Microsoft Office System KEYNOTE: Microsoft.com Application Framework
OOP with VB .NET
Migrate from ADO to ADO .NET
Exception Handling in .NET
Advanced Development with Objects
Advanced ADO .NET Techniques
Threading with Visual Basic .NET
Lunch Session: Patterns Workshop
Create Rich Clients with Windows Forms
In-Depth Transaction Design
Save Yourself with .NET Serialization
Create Windows Forms Controls
ADO .NET Tips and Tricks
Fill the .NET Gaps with WMI
Optimizing Windows Application Performance
ADO .NET Best Practices
Leverage COM from .NET
Windows Forms Tips and Tricks
Disconnected Datasets and Synchronization
.NET Security Techniques
September 12
KEYNOTE: Data Access with Visual Studio .NET
Validating Data on the Client
Application Design Patterns
Production Debugging for .NET
Zero-Touch Deployment
Enterprise Development in the Real World
Remoting Strategies
Everything You Must Know About Web Services
Design Highly Scalable Distributed Apps with .NET, Part
I
Building in Performance and Scalability
Asynchronous Web Services
Design Highly Scalable Distributed Apps with .NET, Part
II
Build Mobile Apps Quickly
with the .NET Compact Framework
Enhanced Web Services
Strategies for Passing and Caching Data
Best Practices for Deployment
VBITS Sessions — September
11
Microsoft-Sponsored
Breakfast Session: Development Opportunities with the
New Microsoft Office System
Robert Green, Microsoft
Heavy investments in standards-based XML and .NET technologies provide developers
with a host of new development opportunities around the Microsoft Office System.
Come see how XML leads to better solutions for end users and enables information
to be more easily captured, used and repurposed throughout organizations. New
tools and interfaces in the Microsoft Office System give developers greater
control over the use and flow of XML data and allow Visual Studio .NET developers
to extend their skills to Office applications using everything from ASP.NET
to Web services to network deployment.
8 a.m.
KEYNOTE:
Microsoft.com Application Framework
Larry Jordan ,Microsoft.com Development Manager,
Microsoft
This presentation will take a deep look at the .NET adoption on Microsoft.com
that provides a centralized framework for content aggregation ,presentation and
programmability. The presentation will focus on the use of various XML capabilities
in .NET and net- work distribution model of Web Services that make up the architecture
of Microsoft.com.
9 a.m.
Access and
Integrate Host-Based Application Data
Rod Hoffman & Bryon Fevens
The .Net Framework and Windows Server 2003 provide the ideal
platform for building new mid-tier applications especially
for the web. One of the challenges is to leverage existing
legacy host data in these new applications. This presentation
discusses how Visual Studio.NET can be used to create host
transactions, access host-based data, and easily integrate
the information with applications using Web Services or .Net
Assemblies.
10:30 a.m.
Migrate from ADO to ADO .NET
Jackie Goldstein, Renaissance Computer
Systems, LTD.
This session helps you quickly make the transition from
ADO 2.X to ADO.Net. We will look at leveraging existing
knowledge and experience, while also learning the new features
(eg XML, XSL/T support) and how to take advantage of them.
Lots of demo code!
10:30 a.m. Data Access
Exception Handling in .NET
Ken Getz, MCW Technologies, LLC
One of the biggest improvements in VB .NET is managed exceptions.
Exceptions allow you to write integrated error handling
routines and handle errors from third party code. You'll
see how to throw exceptions and how to write exception
handling code, as well as good practices of when and how
to use exceptions. You'll learn how exceptions are used
in distributed applications, with multi-threaded and multi-application
domain processes and how they are handled in GUI applications.
Finally, we will show how to write code to handle uncaught
exceptions in console and GUI applications.
10:30 a.m. .NET Framework
Advanced Development with Objects
Billy Hollis, Guided Design
Going beyond the fundamentals, this session demonstrates
advanced object techniques from real-world projects. We’ll
cover loading classes on the fly, dynamic user interfaces,
and implementing object interfaces. If you have been developing
objects in Visual Studio .NET for the last year, and have
a background in CLR and OOP, this is an hour you won’t
want to miss.
11:45 a.m. Object Development
Advanced ADO .NET Techniques
Jackie Goldstein, Renaissance
Computer Systems, LTD.
This session starts off where "Moving from ADO 2.X
to ADO .NET" leaves off. We will take an in-depth
look and demo more advanced features and programming techniques
in ADO.NET, including strongly-typed Datasets, multi-table
operations, concurrency conflict resolution, and mapping
relational views to XML schemas.
11:45 a.m. Data Access
Threading with Visual Basic .NET
Jon Rauschenberger, Clarity Consulting
The ability to write multi-threaded code can often make
the difference between an application that performs and
scales well and one that can only handle a few users. Using
multiple threads, however, can also result in applications
that are unstable — or worse, provide inaccurate
data. We will present you with best practices for writing
.NET applications that use multiple threads. We’ll
cover topics including: using thread pools, implementing
synchronization, callback delegates and design patterns
for multi-threaded applications.
11:45 a.m. .NET Framework
Lunch Session: Patterns
Workshop
Lars Laakes, Microsoft
In July, Microsoft released version 2 of its patterns catalog
“Enterprise Solution Patterns” and “Data Patterns”
Links: http://msdn.microsoft.com/practices/type/Patterns/Enterprise/default.asp
and http://msdn.microsoft.com/practices/type/Patterns/Data/default.asp
In the first third of this session Lars will present an
overview of the existing program and content, how we expect
the material
to be used, and our future plans for further pattern releases.
The remainder of the presentation will be an open floor
discussion.
We would like to discuss your feedback regarding the existing
content and ways we can make it more relevant to the real
world problems you encounter everyday. We would also like
to discuss ways you would like to be involved in the Microsoft
pattern’s community. If you have not read through the material,
please read (see links) before attending if possible.
12:45 p.m.
Create Rich Clients with Windows Forms
Brian Randell, MCW Technologies,
LLC
Rich Windows apps remain critical to the success of today’s
businesses. We will show you how to take advantage of Visual
Studio’s new features and enhancements to build richer,
better Windows apps — and even connect them to Web
Services. We will explore the world of Windows Forms and
learn how to use the power of .NET Framework and the Win32
API to create Windows applications for the next generation,
too.
2 p.m. Smart Client
In-Depth Transaction Design
Jimmy Nilsson
No matter which programming model you use for transactions
(ADO .NET, T-SQL or COM+), it's crucial that you master
transaction design. This presentation goes into detail
about how to choose transaction isolation level, how to
reduce the risk of deadlocks, how to shorten transactions
and more. The focus of the presentation is the creation
of correct programs and maintaining good performance.
2 p.m. Data Access
Save Yourself with .NET Serialization
Ken Getz, MCW Technologies, LLC
Almost every application needs to save data for later use,
or for transport to another application. Every developer
has crafted a one-off solution to the problem, and no one
will argue that this is a waste of time. Shouldn't the
operating system provide some standard technique for serializing
data for persistent storage and transport? Of course, the
.NET Framework does. And, in typical .NET Framework style,
you have lots of choices to make when deciding on a serialization.
In this session, you'll learn about both formatters provided
by the .NET Framework, and see how to decide which works
best for you.
2 p.m. .NET Framework
Create Windows Forms Controls
Brian Randell, MCW Technologies,
LLC
Every developer working with Windows Forms will sooner
or later need to create their own controls. Even if you're
not a control vendor, the techniques involved in creating
your own controls are vital in most Windows applications.
The .NET Windows Forms package allows you to create your
own controls in several different ways. Depending on the
class you inherit from, you get different behaviors, and
different features. This session introduces you to three
different ways in which to create your own controls for
Windows Forms and demonstrates why you might want to take
on this important task.
3:15 p.m. Smart Client
ADO .NET Tips and Tricks
Shawn Wildermuth
Don't believe the rumors. ADO .NET does not have to be
that difficult. Shawn Wildermuth will be teaching you the
secrets for getting the most out of ADO .NET in the fewest
keystrokes possible. You’ll learn everything from
how to correctly use connection pooling to the magic tricks
of the Data Designers, and much more.
3:15 p.m. Data Access
Fill the .NET Gaps with WMI
Ken Getz, MCW Technologies, LLC
WMI (Windows Management Instrumentation) makes it possible
for the .NET Framework to expose details of your operating
system, hardware, and devices without needing to write
specific-case code. In addition, WMI provides an open door
for you to investigate and manipulate hardware and operating
system details that aren't otherwise available to you through
the .NET Framework. Want to rid yourself of unwanted API
calls? WMI can often supply the answer, using a managed
wrapper around the Windows infrastructure. In this session,
you'll learn how to take advantage of WMI to solve many
common problems facing .NET developers.
3:15 p.m. .NET Framework
Optimizing Windows Application Performance
Billy Hollis, Guided Design
Windows Forms applications will typically be more distributed
than VB 6 forms apps. This introduces new challenges for
making Windows Forms applications fast and scalable. Attend
this session for a look at techniques for making Windows
Forms fit into a distributed application environment while
marinating the crisp performance users desire.
4:30 p.m. Smart Client
ADO .NET Best Practices
Shawn Wildermuth
As the newness of .NET wears off, application developers
must move past the “how to” of data access
development and start considering the best ways to get
things done. In this session, we’ll do just that,
starting with an intelligent approach to the DataSet vs.
DataReader question followed by discussion of more specialized
issues like connection pooling, transactions, handling
multiple result sets, and the finer points of typed datasets.
4:30 p.m. Data Access
Leverage COM from .NET
Brian Randell, MCW Technologies,
LLC
For VB developers, productivity has come through wiring
client/server COM components. Using services such as MTS
and COM+ has made for better, more robust systems. And
the new Common Language Runtime (CLR) promises to make
this even better — or does it? We will show you how
to make migration from COM programming simple, using the
’s GUID-less model.
4:30 p.m. .NET Framework
.
Windows Forms Tips and Tricks
Keith Pleas and Billy Hollis,
Guided Design
With end users continuing to demand the rich interface
of Windows, thin clients haven’t yet pushed fat clients
off the desktop. Get an hour of tips and tricks on implementing
Windows Forms, including control creation, custom painting,
application updating, control emitting and embedding, and
building a complete control collection. You’ll also
learn tips for visual inheritance, handling resources for
globalization, and the top 10 obscure yet useful properties.
5:45 p.m. Smart Client
Disconnected Datasets and Synchronization
Josef Finsel
With ADO .NET, disconnected datasets have come of age.
No longer do database administrators need to open up rights
on tables to allow unrestricted inserts, updates and deletes.
Instead, you can specify stored procedures that handle
all of those changes but that opens up a whole new can
of worms related to transactional updates and handling
synchronization issues. Correctly handling these issues
requires work in both ADO .NET and SQL Server. Attend this
session and you’ll learn how to put the two together
to make disconnected datasets work effectively with your
data.
5:45 p.m. Data Access
.NET Security Techniques
Juval Lowy, Idesign
.NET allows you to configure permissions for components,
and provide an evidence to prove that it has the right
credentials to access a resource or perform some sensitive
work. We'll show you how to manage application security
using the .NET admin tool and how to do so programmatically.
We'll also discuss .NET's way of dealing with what users
are allowed to do using .NET role-based security.
5:45 p.m. .NET Framework
VBITS Sessions — September
12
KEYNOTE: Data
Access with Visual Studio .NET
Most mission-critical applications created with Visual Studio start with data
access - from Oracle SQL Server,DB2,legacy data stores, From the impact of XML
to the move from ADO to ADO how Visual Studio developers approach data access
is being redefined. With native CLR-support promised in the Yukon release of
SQL Server, more changes are afoot. Get a new perspective on where data access
is today and how to architect your applications so they
won ’t be made obsolete by the substantial changes on the horizon.
9 a.m.
Validating Data on the Client
Billy Hollis, Guided Design
Reducing data transfer by doing client-side data validation
makes your application’s perceived performance crisper,
and reducing the load on the server. It also saves time and
coding effort and improves encapsulation. Learn some smart
techniques for how to do client-side validation, and their
trade-offs to help you judge when to do it. This session
will detail a set of Windows Forms validation controls that
replicate
and extend the capabilities of the popular ASP.NET validator
controls.
10:30 a.m. Smart Client
Application Design Patterns
Keith Pleas, Guided Design
Maintainability and cost controls dictate IT standards. A key
tool for implementing standards and enabling reusability of
code are design patterns — reusable solutions that solve
specific design problems. Join us this hour and learn how to
create design patterns, and how to use them most effectively.
You’ll see how proven patterns can be put to use when
designing .NET applications and how to harvest patterns from
your own codebase.
10:30 a.m. Architecture & Design
Production
Debugging for .NET
Ron Jacobs, Microsoft
Learn how to troubleshoot those pesky problems that occur on
production systems every now and then. Learn the tips and tricks
for narrowing the problem scope, isolating the bug and squashing
it with minimal impact on the production system.
10:30 a.m. .NET Framework
Zero-Touch Deployment
Andrew Brust, Progressive Systems Consulting
The trend toward browser-based applications has been, in large
part, driven by their ease of deployment. But now, .NET's Zero-Touch
Deployment (ZTD) model allows Windows Forms applications to
deploy gracefully over the Internet/intranet and Code Access
Security (CAS) makes it safe. We'll cover the nooks and crannies
of ZTD and CAS so you can make these technologies work for
you.
11:45 a.m. Smart Client
Enterprise Development in the Real World
Rockford Lhotka, Magenic Technologies
Enterprise development is more than just application design
and coding. We need to deal with issues such as configuration
management, unit testing, run-time logging, exception handling,
security integration and many other issues. In this session
we'll see how we can use various Microsoft Application Blocks,
open-source software and other tools and processes to help
address many of these key issues
11:45 a.m. Architecture & Design
Remoting Strategies
Juval Lowy, Idesign
Distributed application gives you scalability, fault tolerance,
security, throughput and better performance if proximity to
resources is crucial. .NET remoting is the general term refering
to when making cross context, app domain (process) or machine
calls. .NET has native support for invoking calls on remote
objects, but it has much more to it than just remote calls.
This talk describes the .NET remoting architecture, remote
objects types, programmatic and administrative configuration
of remote objects, and the steps required to build and deploy
a distributed .NET application.
11:45 a.m. .NET Framework
Everything You Must Know About Web Services
Bill Evjen
This session will take an in-depth look at the XML Web services
model and what it means for connecting disparate systems. In
addition, this session will go beyond the "Hello World" introduction
and will also show you how to construct your own SOAP headers,
apply caching and test your XML Web services before they go
into production. We will take a look at some of the tips-and-tricks
of the .NET Web services world, too.
2 p.m. Internet
Design Highly Scalable Distributed Apps
with .NET, Part I & II
Rockford Lhotka, Magenic Technologies
The Microsoft .NET Framework provides extensive support for
creating highly scaleable distributed applications. You will
learn how to design Windows and Web-based applications based
on distributed business objects, achieving high levels of reuse,
scalability, long-term maintainability and other benefits.
You will also learn how Web Services, Remoting, object serialization,
Enterprise Services, autodeployment and other .NET technologies
come together to create these applications.
2 p.m. & 3:15 p.m. Architecture & Design
Building in Performance and Scalability
Ron Jacobs, Microsoft
Learn how to define performance targets, measure to insure
that you are meeting them and the tips to create high performance,
highly scalable distributed applications with .NET.
2 p.m. .NET Framework
Asynchronous Web Services
Ron Jacobs, Microsoft
Building loosely coupled systems isn't easy but with Web services
loose coupling is critical to building highly scalable and
available systems. In this session you will lean how you can
take advantage of three reference building blocks from Microsoft
to support asynchronous invocation, aggregation and caching
with web services.
3:15 p.m. Internet
Build Mobile
Apps Quickly with the .NET Compact Framework
Andrew Wigley
The next version of Visual Studio .NET includes what was formerly
known as Smart Device Extensions, which allows you to build
applications for Mobile Devices using the .NET Compact Framework.
Now you can build applications for Pocket PCs using the same
programming model and the same developer tools you use to develop
desktop applications! We'll use Visual Studio .NET 2003 to
build a mobile application live, end-to-end, using the .NET
Compact Framework implementations of Windows Forms, XML Web
Services and ADO .NET.
3:15 p.m. .NET Framework
Enhanced Web Services
Bill Evjen
Microsoft has provided developers news ways to build secure
Web service with the release of the Web Services Enhancements.
This session will cover how to use the WSE to sign and encrypt
SOAP messages, how to route messages over multiple intermediaries,
how to send attachments with SOAP messages, as finally explain
the underlying WSE architecture and how you can benefit from
it.
4:30 p.m. Internet
Strategies for Passing and Caching Data
Ron Jacobs
Squeeze the utmost performance out of your data access applications
through smart caching and data passing strategies. Check out
this session from one of our top data access speakers.
4:30 p.m. Architecture & Design
Best Practices for Deployment
Keith Pleas, Guided Design
“
It runs on my machine!” is never a valid excuse. This
session shows you how to design and build applications that
will not roll over and die when deployed. You’ll learn
how to componentized, minimize dependencies, and package for
smooth deployments.
4:30 p.m. .NET Framework