

Wednesday, February 12, 2003
Best Approach to Software Development Management:
A Discussion
VB .NET OOP for the VB 6 Developer
Migrating from ADO to ADO .NET
Fill the .NET Gaps with WMI
Objects in the Real World
Accessing the Oracle Database from .NET
Threading with Visual Basic .NET
Special Lunchtime Session: Practical .NET Architecture:
A Discussion
Creating Rich Clients with Windows Forms
Accessing, Caching and Updating Data
Strategies for Web Applications
The .NET Framework for VB Developers
Designing Highly Scalable Distributed
Apps with .NET, Part I
The DataSet Unplugged
Leveraging the .NET Framework Using Visual
Basic .NET
Optimizing Windows Application Performance
Data Containers for .NET
Visual Basic .NET and the Win32 API
Zero-Touch Deployment
Disconnected Datasets and Synchronization
Save Yourself with .NET Serilization
Thursday, February 13, 2003
Database of the Future: A Preview of
Yukon and Other Technical Advancements
Debugging with Visual Basic .NET
Implementing .NET Remoting
Building Mobile Apps Quickly
Tracing and Logging in .NET
.NET Security Techniques
Smart Device Extensions
ADO .NET and XML
Upgrading VB 6 Apps to Visual Basic
.NET
Designing Highly Scalable Distributed
Apps with .NET, Part II
ASP.NET Globalization
Migrating from COM to the CLR
Ultra Compressed Design
Advanced Web Services Development
Exception Handling in .NET
In-Depth Transaction Design
Best Approach
to Software Management: A Discussion
Point/Counter-point Discussion, Featuring Interaction
Design Guru Alan Cooper, and Rational Software's Alan Brown
Looking for practical techniques to optimize your development
projects? Join our two distinguished experts as they discuss
a wide range of topics that will help you choose the right
way to deliver the right software, on time. Based around key
process areas our software management experts will examine
various ways to implement best practices.
9 a.m.
VB .NET OOP
for the VB 6 Developer
Deborah Kurata, InStep Technologies
OOP in .NET means more than a new syntax. With Visual Basic
.NET, VB becomes a true object-oriented language. Attend this
session and get the newest, key object-oriented concepts,
including parameterized constructors, function overloading,
static class data, and inheritance-based polymorphism. Learn
how to take advantage of these techniques so you can leverage
the benefits of true OOP in your apps!
10:30 a.m. Visual
Basic Advancements
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.
10:30 a.m. .NET
Framework
Migrating
from ADO to ADO .NET
Jackie Goldstein, Renaissance Computer Systems LTD.
Learn before you do. This walk through of a typical conversion
process, showing what ADO code can port, what needs rewriting,
and what needs to go, will arm you with the techniques that
can enable the smoothest possible transition. We'll discuss
what current VB 6 coding practices are easiest to convert
without hurting your current app's performance and address
both the benefits and potential gotchas of the ADO .NET paradigm
and .NET data access technology.
10:30 a.m. Data
Access
Objects
in the Real World
Billy Hollis, Guided Design
We’ll get beyond the “big three” (inheritance,
encapsulation, polymorphism), and discuss objects in a real-world
context. Topics will include when to use and when not to use
inheritance based architectures and how to make them more
flexible, stateless vs. stateful objects, when to use interfaces
for polymorphism as an alternative to inheritance, and integrating
objects into multi-tiered and messaging-based architectures.
11:45 a.m. Visual
Basic Advancements
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
Accessing
the Oracle Database from .NET
Alex Keh, Oracle Corporation
Find out how out how to efficiently access the Oracle database
from .NET applications using the Oracle Data Provider for
.NET (ODP.NET). Attend this session and you’ll learn
how to take advantage of advanced Oracle database functionality,
such as XML DB, and how to improve performance by using numerous
code samples and best practices recommendations. Additionally,
you’ll learn about the different .NET data access methods
available to the Oracle database.
11:45 a.m. Data
Access
Special Lunchtime Presentation: Practical .NET Architecture: A Discussion
Deborah Kurata, InStep Technologies
There are many great technologies in .NET, but to build a successful .NET solution you need to know how to combine these technologies and identify the appropriate architecture for your application. Deborah Kurata will discuss several architectural choices and how to determine what is right for your project. Expected topics include dumb data vs. smart data, WinForms architecture versus WebForms architecture, and partitioning of .NET applications. Bring your questions and ideas to participate in this intriguing discussion.
12:45 p.m.
Creating
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
The .NET
Framework for VB Developers
Keith Pleas, Guided Design
Get ready for an exclusive tour of the .NET Framework. You
will learn how familiar VB concepts translate to the world
of .NET, the services provided by the Common Language Runtime
and Base Class Library, and how to apply some fundamental
.NET concepts including namespaces, attributes, and interfaces.
2 p.m. Framework
Accessing,
Caching and Updating Data Strategies for Web Applications
Bill Vaughn, Beta V Corporation
We'll discuss the benefits and issues involved in fetching
data in a Web application and which technique makes the most
sense. We'll also cover using the DataReader and the DataAdapter
and DataSet to run queries and expose in text and bound controls.
Since Web bound controls are not updatable, we'll show you
how to save data in the Session cache and post changes to
the database or DataSet and get those updates sent to the
database.
2 p.m. Data Access
Designing
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.
3:15 p.m. Smart
Client
The
DataSet Unplugged
Jackie Goldstein, Renaissance Computer Systems LTD.
Get ready for a demo-only session! After a 2-3 slide review
of the DataSet, DataAdapter, and associated objects, we’ll
focus exclusively on going beyond the DataSet overview and
basic demos in order to see a large variety of code samples
centering around the DataSet. The demos will include examples
of configuring and using the DataAdapter to load and update
the database data, as well as examples of defining and manipulating
the data without a DataAdpater—using Tables, Relations,
and Constraints. You’ll get both designer and code-based
techniques, too.
3:15 p.m. Data
Access
Leveraging
the .NET Framework Using Visual Basic .NET
Keith Pleas, Guided Design
Take a close look at some of the powerful things you can do
with the .NET Framework such as multi-threading, Windows services,
diagnostics (performance counters and event logs), inheritance,
delegates, attributes, and structured exception handling.
In this session we’ll discuss how you can utilize each
of these framework features while demonstrating code, and
leave you with a clear understanding of the capabilities of
the .NET Framework and how to exploit its features using Visual
Basic .NET.
3:15 p.m. 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 maintaining
the crisp performance users desire.
4:30 p.m. Smart
Client
Data
Containers for .NET
Jimmy Nilsson, JNSK
There is a heated debate on which data container to use when
carrying data between layers. Some propose DataReaders (which
really isn't a container), others untyped DataSets or strongly
typed DataSets and so on. We'll discuss the different containers
and compare them in regards to maintainability, performance
and productivity. The out-of-the-box containers are also compared
with the upcoming ObjectSpaces and with the use of a more
purely object oriented solution where custom classes and collections
are used.
4:30 p.m. Data
Access
Visual Basic
.NET and the Win32 API
Dan Appleman, Desaware
You'll learn how to migrate VB 6 API calls to Visual Basic
.NET. More importantly, you'll learn why you should avoid
using Win32 API calls when possible, and how an understanding
of code access security is essential for correctly calling
Win32 API functions from Visual Basic .NET when you have no
other alternative. Though intended for programmers migrating
from VB 6, this talk will be applicable to those moving to
C# as well as Visual Basic .NET.
4:30 p.m. 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.
5:45 p.m. Smart
Client
Disconnected
Datasets and Synchronization
Josef Finsel, G.A. Sullivan
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
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.
5:45 p.m. Framework
Midnight Madness
Here's a chance to unwind while you get the latest on cutting-edge development technologies. Hammer out programming issues and problems with attendees, speakers and industry leaders in a wide-ranging, open-ended chat. We plan to shock you, dare you, and prepare you for the other extreme topics and previews that we can't reveal... yet. Vie with other developers to get your share of thousands of dollars worth of cool prizes and hear top-notch speakers, including sponsors Rational Software, Microsoft and Wise Solutions.
8 p.m.
VBITS Sessions—Thursday,
February 13
Database of
the Future: A Preview of Yukon and Other Technical Advancements
David Campbell, Product Unit Manager, SQL Server Engine,
Microsoft
The next major release of SQL Server, code named
Yukon, promises airtight security and fast, scalable data
access at your finger tips. David Campbell has been working
on the development of Microsoft SQL Server for over 7 years
and he wants to share his vision of the future of data access
with you. You will hear about technical advancements in the
areas of programmability, manageability, scalability, availability,
and business intelligence. Come see what's looming in the
horizon in the fast-changing landscape of data access development.
9 a.m.
Debugging
with Visual Basic .NET
John Robbins, Wintellect
With .NET ’s advent the rules for debugging have completely
changed. We ’ll help you get up to speed on the core
concepts you need to understand in order to debug effectively
with Visual Basic .NET, taking you through the transitioning
to .NET debugging, and taking advantage of the new debuggers
and debugging techniques, including the new diagnostic code.
10:30 a.m. Debugging
Implementing
.NET Remoting
Richard Grimes, Author
.NET remotng allows you to access objects running in their
own execution contexts in another domain, process or even
on another machine. We'll cover the details of the types of
objects that can be accessed remotely, and the VB.NET code
that you must write. We'll explain the architecture of .NET
remoting and look at channels, proxy objects, marshal by value
and by reference, configuration through API calls and through
configuration files. You'll also see how objects are activated
and how to control the lifetime of long lived objects.
10:30 a.m. Framework
Building
Mobile Apps Quickly
Andy Wigley, Content Master
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.
10:30 a.m. Mobile
Applications
Tracing and
Logging in .NET
Dan Appleman, Desaware
Properly instrumenting .NET applications and components can
simplify detection and understanding of program errors both
during development and after deployment. Learn how the .NET
Tracing and diagnostic classes can be used to build sophisticated
logging and tracing solutions into any application.
11:45 a.m. Debugging
.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.
11:45 a.m. Framework
Smart
Device Extensions
Dan Fergus, Wintellect
One of the new features of .NET is the Smart Device
Extensions, which includes the Compact Framework. The
CF allows you to use your knowledge of C# or VB to target
your applications at the PocketPC.
11:45 a.m. Mobile
Applications
ADO .NET
and XML
Andrew Brust, Progressive Systems Consulting
ADO .NET, rather than merely offering the ability to persist
to an XML file, actually uses XML as the native format for
representing its multi-table Datasets. We’ll look at
how the ADO .NET objects map to various elements in the Dataset’s
XML schema and how to use XML from any platform to create,
read, and modify ADO .NET Datasets.
2 p.m. Web
Upgrading
VB 6 Apps to Visual Basic .NET
Keith Pleas, Guided Design
Come hear the real world details of moving your various VB
6 apps and components into the .NET Framework by a fellow
developer who’s been working closely with the product
for more than two years. You won’t want to miss these
tales from the trenches, including how to migrate from ADO
to ADO .NET and from VB 6 “Ruby” forms to Windows
Forms; dealing with orphaned project types; DLL calls to Framework
objects; and Interop with classic COM where necessary.
2 p.m. Migration
Designing
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. Application
Design
ASP.NET
Globalization
Michele Leroux Bustamante, IDesign Inc.
Designing applications for global markets continues
to be a critical success factor for businesses today.
The .NET platform provides excellent facilities to support
this process. This session will take you through the
critical steps in preparing for application globalization,
then demonstrate how to
prepare your ASP.NET applications accordingly. You’ll
learn best practices for building and deploying .NET
resources in various architectural configurations. You’ll
also learn how Internet browsers, and your Web application
communicate to support the presentation and input of
different
languages.
3:15 p.m. Web
Migrating
from COM to the CLR
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 CLR’s GUID-less model.
3:15 p.m. Migration
Ultra
Compressed Design
Christopher Duncan, Show Programming of Atlanta
We're never given the luxury of telling management how long
we want for a complete system design phase. The typical reality
is that we're given a project in the same breath as the deadline
and we're lucky to get much time for design at all. Join us
to see our approach to compressed design by discussing not
only the lower levels of software design, but also how to
gain a complete and extremely accurate time estimate in the
process.
3:15 p.m. Application
Design
Advanced
Web Services Development
Aaron Skonnard, DevelopMentor
Although ASP.NET WebMethods support the baseline Web
Service specifications, there are still many open issues
that must be addressed in order to build successful
distributed systems. In this session we'll discuss how
to maximize and extend ASP.NET's Web services framework
through SoapExtension classes. We'll also introduce
you to Microsoft's GXA specifications that address such
concerns (e.g., WS-Security, WS-Routing, DIME, etc.)
and we'll show you how to begin working with these new
layers through Microsoft's recently released Web Services
Enhancements for Microsoft .NET.
4:30 p.m. Web
Exception
Handling in .NET
Richard Grimes, Author
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.
4:30 p.m. Migration
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.
4:30 p.m. Application
Design
|