Brian Benz's Photo
+1 702 940 6572
brianbenz@brianbenz.com

Brian's Quick Links


Home
Weblog
My job at IBM
Resume (HTML)
Resume (Word)
Books
Articles
Presentations
Google Me!

Brian's Presentations

Aside from writing a few books and a few dozen articles, I have presented on several topics at conferences and seminars for Lotus, IBM, idealliance, and others worldwide. Below is a list of those presentations with abstracts and agendas where applicable, in alphabetical order, by title.

Advanced XML for Domino 6

This session, presented by the co-author of the IBM Redbook, "XML: Powered by Domino" and the Domino 6 Programming Bible, will explain how to use Domino 6 applications to work with XML for enterprise integration and Web site solutions. Techniques will include creating XML-based forms, pages, documents, and agents. Demonstrations will include DXL and the New LotusScript Classes for Parsing Documents, and techniques for XL transformations in Domino 6 applications.

All I needed to know about building Knowledge Management systems I learned from Star Trek

Presentation Type: Tutorial with examples and sample code
Domino Version(s): 5
Technical Level: Advanced
Prerequisites: Basic Knowledge Management concepts, HTML and Domino application development. (Actual Star Trek background knowledge unnecessary) ; )

Abstract:
Anyone who has implemented, or attempted to implement, a working Knowledge Management system knows how hard it is to put knowledge management theory and processes into practice. Domino is an excellent platform for the implementation of robust KM systems, however, good working examples knowledge management systems are not always easy to find. In this session we'll use the systems and crew of the Starship Enterprise as a fun metaphor for describing the systems and people issues involved in setting up a successful KM system in the 20th century. We'll also review the built-in KM features of Domino R5 and the new Notes client that make life easier for knowledge workers and simplify application development and maintenance for developers.

Best Practices for Domino Performance and Security

Developing a Web site that runs efficiently - and securely - is more critical than ever.

Take advantage of new R5 directory options for client authentication and server lookups .
Use X.509 certificates to customize your user experience, enforce security and simplify data entry.
Create new session authentication functions in R5 using cookies and realms with timeout settings.
Eliminate performance bottlenecks in your Web app through server caching and by moving more functionality to the client.
Plus, take home the 7 habits of highly-effective Domino Web designers.

Best Practices to put Domino Search Capabilities into Your Web Site

Seeking answers about which Search option is right for you? This session is intended to help outline the differences between Domino Search Options and help attendees choose the correct tool or tools for their application and infrastructure.

Outline
Gain real-world insight into the strengths and weaknesses of the Domino Search Options. Find out which one is right for your application and infrastructure and how to connect them with back-end data sources. This session gives you best practices to implement, configure, and maintain each search option plus: An overview of the differences between each search option - Site Search, Domain Search, and Extended Search.
Learn when and how to implement Search Site.
Find out how to take advantage of Domain Search and the Domain Catalog to search attachments and index your site
Discover how to use Extended Search to integrate with and index back-end data sources
Understand the advantages of the new R5 Index format
Learn to set-up search capability for a multiple database web site
Plus get tips to integrate third party indexing products and much more!

Build Usable Knowledge Management Solutions with R5

Knowledge management makes your organization more efficient, effective, and successful -- if they're used. How do you make your Knowledge management system easy to use and maintain? Domino R5 and the new Notes R5 client have innovative features for knowledge workers, and simplify application development and maintenance for developers. Learn how to develop effective KM solutions in this technical session.

Building Domino Applications for Data Integration

Get real-world techniques to pull critical non-Domino data from other sources to feed your Domino Web Applications. Capture events on the web to trigger Enterprise Integration retrievals and submissions and:

Discover how to capture browser events to trigger queries
Understand how to trigger Real Time Retrievals
Learn to trigger multiple queries from multiple data sources - at the same time!
Discover how to retrieve records by key
Learn to set data entry controls and data entry validation using Domino and JavaScript
Find out how to retrieve and update multiple rows of data in back-end sources
Understand what you can and can’t do with real-time Enterprise Integration
Take home code and sample databases

Consuming Web Services from a Notes Application

Track THREE: Data Integration and Connectivity This session, presented by one of the co-authors of the IBM Redbook, "XML: Powered by Domino", will introduce you to the concepts of Web services, then go under the hood of Web services in a Notes application to show you how they actually work. Examples include calling Web services from Notes clients via HTTP and RPC. Topics covered are XML, XSL, SOAP, WSDL, and UDDI

Data Integration with XML and Domino

If you're intrigued by all the buzz surrounding XML but haven't figured out how it fits into your Domino development strategy, this session is for you. You'll see how to use Domino to process XML data for enterprise integration and Web site solutions. After this session, you'll be on your way to creating your own XML-based forms, pages, documents, and agents to import and export XML data from Domino databases. You'll also see how to use Domino integration tools such as DECS and the Lotus XML Toolkit to format enterprise data such as XML. In addition, you'll see how to use eXtensible StyleSheet Language (XSL) in your Domino applications; for example, how to create XSL StyleSheets for Domino-generated XML data transformations.

Designing a Domino R5 Web User Interface

Let our Web development experts show you practical (but powerful!) how-to tactics you can put to work as you build apps in R5 for the Web. Learn to exploit the bounty of new objects available to you in R5 to build browser functionality:

Create embedded views: Use the Single Category View Display instead of creating a view for every category - you see step-by-step how to do it.
Register users using profile documents. See how to make this work quickly and easily in R5, but don’t make a move until you’re aware of the caveats.
Find out how R5 makes R4 development challenges easy as you learn to:
Create a dynamic table of contents using outlines.
Make JavaScript more portable using subforms.
Organize your application using built-in JavaScript containers and events.

Develop with JavaScript in R5

Before R5, JavaScript was available to Domino Web developers for browser clients only, and then only by using passthru HTML. In R5, JavaScript offers the same functionality in Notes clients and Web clients. JavaScript is an integrated part of the Domino R5 development environment, complete with color-coded script formatting and syntax error checking functionality. Find out how to make the most of JavaScript in R5 in this tip-filled session.

Developer Workshop: Notes/Domino 6, Lotus Script, XML

- Introduction to Notes/Domino 6: What'ss in it for the developer?
- Deep-dive: @Formulas in Notes/Domino <
- Deep-dive: @Formulas in Notes/Domino <
- Deep-dive: LotusScript in Notes/Dominoo
- Deep-dive: LotusScript in Notes/Dominoo
- Data Integration with Domino 6 and LEII
- DXL for Domino 6
Introduction to DXL / Working with ReadViewEntries in Domino Web Applications / DTDs and Schemas / The Exporter DXL Utility / Transformer and Viewer DXL Utilities / Generating XML from Domino forms and fields / Applying a DTD to Custom XML Data
- Domino 6 XML Techniques using LotusScrript
- Transforming XML with Domino 6
- Parsing XML Documents with Domino 6 - Domino 6 XML Techniques using LotusScrript
Generating Custom XML using LotusScript / Creating XML Files using LotusScript
Generating DXL using LotusScript
- Transforming XML with Domino 6
Document Object Model (DOM) / Simple API for XML (SAX) / Parsing XML and DXL Documents with LotusScript
- Parsing XML Documents with Domino 6 Introduction to XSL / The DXL Transformer Utility / The LotusScript NotesXSLTransformer Class
DXL Transformation Techniques
- XML Data Islands for Domino

Domino Data Integration - Tools, Options, and Techniques

There are several options available for integrating Domino data with external data sources. So many, in fact, that it’s hard to know when to use which tool. This session will give you an overview of all the available data integration tools, as well as a basic insight into when each tool is appropriate to use, and an understanding of the components required to make each integration option work. Sample code and databases will be included.
Agenda:
Introduction to Data Integration Options
In this section we’ll discuss the inner working of all the available options for integrating external data into your applications, as well at the pieces you need to put each specific option together.
When to use What
There are many options for integrating your data, but some work better than others, depending on your situation and needs. After an introduction to the many tools available for Domino data integration, we’ll discuss when it’s appropriate to use each tool and why.

Topics Covered:
DECS
LS:DO
CORBA
CORBA-Enabled Java Applets via JavaScript using LiveConnect
JDBC
Enterprise Solution Builder
Websphere

Domino, XML, XSL and Web Services

zu Thema XML and Domino im Hannover Congress Centrum durch:

This session, presented by one of the co-authors of the IBM Redbook, "XML: Powered by Domino", will demonstrate how to use Domino servers to process XML data for enterprise integration and web site solutions. Techniques will include creating XML-based forms, pages, documents, and agents that allow for the importing and exporting of XML data from Domino databases. Demonstrations will include using Domino integration tools such as DECS and the Lotus XML Toolkit to format enterprise data as XML. Topics covered will be XML, XSL, SOAP, UDDI and Web Services.

JavaScript Tips for Domino Web Applications

Learn JavaScript techniques to build R5 applications that work as well in a browser as they do in the Notes client. We take you behind the scenes to show you line-by-line how it works. In this session you: Use JavaScript events to do image manipulations, rollovers and more in your Web app. Plus, take home the source code to put the new events to work in your apps.
Build and customize an automatic slide show for your Web site.
Discover how to find royalty-free JavaScript code on the Web and modify it for use in your own application.
Exploit DHTML to enhance the appearance of your Web pages.
Take advantage of Java applets - and discover how to use Java applets with Bean Builder in a browser. (You don’t need to be a Java programmer to exploit some of these benefits.)

JumpStart: XML for Domino

XML is a great way to integrate Domino applications with other data and the Web, and Domino 6 contains many new XML classes, methods, and @Functions for XML. This session introduces you to XML in Domino 6, and shows best practices for using XML in Domino applications. The session starts with an introduction to XML and DXL structure, then shows you how to make the most of the new Domino 6 XML features. You'll also learn about XML parsing, XSL transformations, and integrating XML data with Domino applications. The session will also cover client-side XML using MSXML in Domino Web applications.

In this session, you will:

See examples of XML parsing, transformations, and browser-based applications using Domino 6 and XML
See a Domino-based J2EE XML application in action -- and go under the hood to see how it works
Get an introduction to XML and DXL
Apply a DTD to Custom XML Data
Learn about DTDs and Schemas
Find out all about new features for XML in Domino 6
See how to parse XML
Learn how to transform XML
Discover XML Data Islands
Work with ReadViewEntries in Domino Web Applications
Explore the Exporter, Transformer, and Viewer DXL Utilities
Generate XML from Domino forms and fields

JumpStart: XML for Domino and WebSphere

This session, presented by one of the co-authors of the IBM Redbook "XML: Powered by Domino," introduces you to XML by showing you XML structure, XML parsing via DOM and SAX, XSL transformations using LotusXSL and TRAX, and client-side XML using MSXML. Also included is an update on current J2EE XML initiatives, including Web services, Java Community Process (JCP) API initiatives, and how to work with XML data in Domino.

JumpStart: XML for WebSphere

WebSphere is the premier J2EE application server, and XML is the easiest way to integrate data with J2EE applications. This session provides attendees with an introduction to XML in J2EE applications via practical examples based on real-world applications. The session starts with an introduction to XML structure. Attendees are then introduced to J2EE XML initiatives and JCP (Java Community Process) API initiatives, which form the building blocks of J2EE XML application code. XML APIS are then shown in use in J2EE code and example applications. Examples include J2EE-based XML parsing, XSL transformations, and working with client-side XML in Web browsers.

In this session, you will:
See code for XML parsing, transformations, and browser-based J2EE XML applications.
Discover what XML is -- and is not
Learn about XML standards and the World Wide Web Consortium (W3C)
Get up to speed with elements and attributes
Learn about document structure, document syntax, special characters, and entity references
Find out about Data Source Encoding
Learn about XML Namespaces and XML Data Validation
Find out about the Apache XML Project: Xalan, Xerces, and others
Discover the differences among XML4J, Xerces, and JAXP

Knowledge Management in R5 and Beyond

Presentation Type: Tutorial with examples and sample code
Domino Version(s): 5
Technical Level: Advanced
Prerequisites: Basic Knowledge Management concepts, HTML and Domino application development.
Abstract:
Domino is an excellent platform for the implementation of robust KM systems, however, good working examples knowledge management systems are hard to find. In this session we'll provide hands-on examples of tools and techniques based on the presenter's 5+ years of experience developing Knowledge Management Systems. We'll also review the built-in KM features of Domino R5 and the new Notes client that make life easier for knowledge workers and simplify application development and maintenance for developers.

Leverage XML to Create J2EE-Based Web Services

This session shows you how to work with Web services in J2EE environments, including the WebSphere platform. I'll walk you through an example of a multi-tier J2EE Web service application that accesses Microsoft SQL Server data.

In this session, you will:
Get a brief introduction to SOAP, WSDL, and UDDI
See an example of a three-tier J2EE Web Service application
Learn the prerequisites for developing J2EE Web services
Discover how to deploy a Web service
Dive into WSDL and WSDD files
Find out about consuming services from a Java application

Pre-Conference Session - Choose and Use the Right Domino Language for the Job

The rules have changed with R5. And you’ve got more choices than ever: more @Functions, added LotusScript capabilities, and new JavaScript and Java options. This session gives you tips and tactics to choose between and use each alternative to boost functionality and performance - whether you're developing for the Notes Client, a browser or both. Check out a custom-built conference schedule and registration application that demonstrates all the options and shows you which ones are best for what events.

Agenda
@Functions and @Commands - Discover how to leverage simple, new @Functions and @Commands to tap R5 features and perform tasks that required more custom code in R4. Watch and learn how to:
Verify email addresses for routing.
Identify what client type is accessing your app.
Automatically move documents to folders.
Open a help document and more.
LotusScript - Discover how to take advantage of enhanced LotusScript objects for more control with less code:
Take advantage of PickListStrings for easier directory lookups.
See how to use ArrayReplace to modify array elements using a single line of LotusScript.
Master the 9 new LotusScript classes.
JavaScript - Learn by example the best ways to deploy JavaScript in your R5 applications.
Discover how JavaScript events can be used to Build Notes apps that port easily to a browser.
Handle events in a Notes client (including tips on when to use JavaScript versus LotusScript events).
Reuse code across multiple applications and platforms.
Java - Discover how to unlock the power of Java in your apps without getting over your head and learn what you need to take advantage of Java Toolkit.
Discover secrets to integrate Java applets without coding in Java
Learn to work with the 4 Java applets provided with Bean Builder in R5
Harness the power of Bean Builder to customize Java objects in the Notes UI and more.

Pre-Conference Session: Using Web Services in Domino 6 Applications

This session, presented by the co-author of the IBM Redbook, "XML: Powered by Domino" and the Domino 6 Developer’s Bible, will introduce Web Service architecture, then show some examples of Web Services working with Domino. Working examples include integrating Web Services with Domino applications, as well as enabling Domino agents to provide Web Service requests. Topics covered are XML, XSL, SOAP, WSDL, and UDDI.

Pre-Conference Session: Web Services and Domino 6

This session, presented by the co-author of the IBM RedBook XML: Powered by Domino and the Notes and Domino 6 Programming Bible, will introduce you to the concepts of Web services and how they relate to Domino applications. Web Services are service oriented, component based, self-describing applications based on an architecture of emerging standards. We'll start with the basic concepts of SOAP, WSDL and UDDI. We'll then go under the hood to show you how Web Services actually work in the context of Notes and Domino 6 applications. Attendees will leave this session with a full understanding of options for making Domino applications available as Web Services, and for using Notes as a smart Web Services client. A basic understanding of XML is helpful.

Objectives:
Introduction to Web Services, creating Web Services form Domino applications, accessing Web Services from Notes.


Pre-Conference Session: XML and Domino

This session, presented by one of the co-authors of the IBM Redbook, "XML: Powered by Domino", will demonstrate how to use Domino servers to process XML data for enterprise integration and web site solutions. Techniques will include creating XML-based forms, pages, documents, and agents that allow for the importing and exporting of XML data from Domino databases. Demonstrations will include using Domino integration tools such as DECS and the Lotus XML Toolkit to format enterprise data as XML.

Put JavaScript to Work in R5

R5 makes JavaScript easier to use and much more relevant. This session provides tips on how to write JavaScript that you can use again and again - plus delivers samples you can add to your library to include in your apps. You get:

Tips on how to use all 18 R5 JavaScript events including powerful tactics to exploit onBlur, onClick and onHelp in your applications.
Essential techniques to perform field validations on-the-fly - we drill down so you can see how to take full advantage of JavaScript in R5.
Key insights into displaying context-sensitive help in a browser (see how to emulate the R5 client's new onHelprequest in your own apps).
A review of JavaScript tools you can use to streamline your applications.
The best ways to use DOMpeek to write error-free code.
Plus 5 JavaScript tips for working with JavaScript for Notes apps.

Relational XML - MS SQL Server, DB2 and Oracle

This session will discuss how the "big three" relational database vendors have implemented XML access to relational data. Each vendor's approach will be compared, and tips will be provided for securing and integrating XML data in RDBMS systems.

Understanding Programmability Options in R5: When to Use What and Where

The rules have changed with R5. And you’ve got more choices than ever: more @Functions, added LotusScript capabilities, and new JavaScript and Java options. This session gives you tips and tactics to choose between and use each alternative to boost functionality and performance - whether you're developing for the Notes Client, a browser or both. Check out a custom-built conference schedule and registration application that demonstrates all the options and shows you which ones are best for what events.

Agenda
@Functions and @Commands - Discover how to leverage simple, new @Functions and @Commands to tap R5 features and perform tasks that required more custom code in R4. Watch and learn how to:
Verify email addresses for routing.
Identify what client type is accessing your app.
Automatically move documents to folders.
Open a help document and more.
LotusScript - Discover how to take advantage of enhanced LotusScript objects for more control with less code:
Take advantage of PickListStrings for easier directory lookups.
See how to use ArrayReplace to modify array elements using a single line of LotusScript.
Master the 9 new LotusScript classes.
JavaScript - Learn by example the best ways to deploy JavaScript in your R5 applications.
Discover how JavaScript events can be used to Build Notes apps that port easily to a browser.
Handle events in a Notes client (including tips on when to use JavaScript versus LotusScript events).
Reuse code across multiple applications and platforms.
Java - Discover how to unlock the power of Java in your apps without getting over your head and learn what you need to take advantage of Java Toolkit.
Discover secrets to integrate Java applets without coding in Java
Learn to work with the 4 Java applets provided with Bean Builder in R5
Harness the power of Bean Builder to customize Java objects in the Notes UI and more.

Using XSL in your Domino 5 Applications

One of the co-authors of the IBM Redbook, "XML: Powered by Domino", will demonstrate where and when to use XSL in your Domino applications. Techniques will include producing flexible user display using XSL and Domino in forms, writing Domino WebQueryOpen agents that create dynamic HTML pages via XSL from a view, and tips on creating XSL StyleSheets for Domino-generated XML data transformations. Illustrations will include working code and examples from the authors' hands-on experience.

What attendees will learn:
1. Fundamental XSL Concepts
2. Writing Java Agents that perform XSL transformations
3. Tips for writing XSL StyleSheets for Domino-generated data
4. Integrating CSS into XSL transformations for added display flexibility

Using XSL in your Domino 6 Applications

This session, presented by the co-author of the IBM Redbook, "XML: Powered by Domino" and the Domino 6 Developer’s Bible, will demonstrate where and when to use XSL in your Domino 6 applications. Illustrations will include working code and examples, including include writing Java and LotusScript Agents that perform XSL parsing and transformation, writing XSL Style Sheets for Domino-generated data, and manipulating XML data Islands using Domino Web techniques.

Web Development with Domino and XSL

The co-author of the IBM Redbook, "XML: Powered by Domino", will demonstrate where and when to use XSL in your Domino applications. Illustrations will include working code and examples from the authors. Examples include writing Java Agents that perform XSL transformations, tips for writing XSL StyleSheets for Domino-generated data, how to integrate CSS into XSL transformations for added display flexibility, and manipulating XML data islands using Domino Web techniques.

Web Security for Domino

In a Web world, server security is only half the puzzle - the client side can be just as critical. But there are several dimensions to consider. This session is four applications and/or Web sites (Internet or Intranet) that need robust client-level security. Get the lowdown on the benefits and drawbacks of added security, as well as what it means in terms of associated administration. Understand the differences between implementing security for internal and external users. Discover how to determine whether you really need client authentication and learn how to implement it.

Securing Web Client-to-Domino Server Connections
Client Authentication via SSL and X.509 Certificates
Session Persistence
Extranet and Business-to-Business Strategies and Configurations

Web Services and Domino 6

This session will introduce Web Service architecture, then show some examples of Web Services working with Domino. Working examples include integrating Web Services with Domino applications, as well as enabling Domino agents to provide Web Service requests. These topics can be covered from LotusScript, Java, or both, depending on the time allotted. Topics covered are XML, XSL, SOAP, WSDL, and UDDI.

WebSphere and Domino: The e-business killer app builder

Presentation Type: Tutorial with examples and sample code
Domino Version(s): 5
Technical Level: Advanced
Prerequisites: A little Java knowledge, HTML and Domino application development skills.
Abstract: The biggest challenge for Domino Web application developers has been to enable business transactions on a platform that was specifically designed to not be a transaction-processing environment. Skilled Domino developers have managed moderate success in adapting Notes and Domino to handle large volumes of business transactions, however, even the best transaction processing capabilities can't measure up to even basic capabilities on other platforms.

Lotus and IBM have addresses this shortcoming by bundling the IBM WebSphere application server with every copy of the Domino Server. The IBM WebSphere application server is a tool developed by IBM to handle transaction intensive applications through Web Browsers to back-end data repositories, Leaving Notes and Domino to do the knowledge management, human collaboration and workflow operations that it does best.

WebSphere does come with a price for developers, though, and for the time being, this price is time. Notes and Domino developers will have to spend some time mastering a few more development tool skills and learning about some of the more sticky parts of developing Web sites designed for high volume transactions.

Outline:
Introduction
The WebSphere Server family
Interaction with Domino Servers
The WebSphere Application Development tools family
Tools and techniques
What's included
What you have to build
Domino and WebSphere: Complements and Overlap
Setting up a WebSphere Server
Integrating WebSphere with Domino
Scalability of a WebSphere/Domino site
Security considerations
Recommended procedures
Caveats

XML and Domino 5

This session, presented by one of the co-authors of the IBM Redbook, "XML: Powered by Domino", will demonstrate how to use Domino servers to process XML data for enterprise integration and web site solutions. Techniques will include creating XML-based forms, pages, documents, and agents that allow for the importing and exporting of XML data from Domino databases. Demonstrations will include using Domino integration tools such as DECS and the Lotus XML Toolkit to format enterprise data as XML.
What attendees will learn:
1. Fundamental XML Concepts
2. How Domino and XML work together
3. Tools for creating XML from Enterprise Data using Domino
4. How to develop Domino XML Applications with the Lotus XML Toolkit

XML and Domino 6

XML is a great way to integrate Domino applications with other data and the Web, and Domino 6 contains many new XML classes, methods, and @Functions for XML. This session introduces you to XML in Domino 6, and shows best practices for using XML in Domino applications. The session starts with an introduction to XML and DXL structure, then shows you how to make the most of the new Domino 6 XML features. You'll also learn about XML parsing, XSL transformations, and integrating XML data with Domino applications. The session will also cover client-side XML using MSXML in Domino Web applications.

XML and Domino JumpStart 1.0

This session, presented by one of the co-authors of the IBM Redbook, "XML: Powered by Domino", will demonstrate how to use Domino servers to process XML data for enterprise integration and web site solutions. Techniques will include creating XML-based forms, pages, documents, and agents that allow for the importing and exporting of XML data from Domino databases. Demonstrations will include using Domino integration tools such as DECS and the Lotus XML Toolkit to format enterprise data as XML.

XML Data Integration with Domino

If you're intrigued by the XML buzz but haven't figured out how it fits into your Domino development strategy, this session is for you. Presented by one of the co-authors of the IBM Redbook, "XML: Powered by Domino," you'll learn how to use Domino servers to process XML data for enterprise integration and Web site solutions. Techniques discussed will include creating XML-based forms, pages, documents, and agents that allow for the importing and exporting of XML data from Domino databases. See demonstrations of the Lotus XML Toolkit, and techniques for transforming Web data via XSLT in Domino applications.

Buy my Books!


Brian Benz: XML Programming Bible
Brian Benz: XML Programming Bible
(Downloadable PDF Version)

Brian  Benz: XML Programming Bible
Brian Benz: XML Programming Bible
(Print Version)

Brian  Benz: Lotus Notes and Domino 6 Programming Bible
Brian Benz: Lotus Notes and Domino 6 Programming Bible

IBM Redbooks: XML Powered by Domino How to use XML with Lotus Domino (IBM Redbook)
IBM Redbooks: XML Powered by Domino How to use XML with Lotus Domino (IBM Redbook)
Still very relevant for R5 Developers!