The DSW Group, Ltd.
The DSW Group, Ltd.
DSW HomeDSW AboutResourcesDSW TrainingDSW ConsultingDSW Contact
DESIGN / IMPLEMENT / EDUCATE
Conference Scripts
 
View by Technology:   



Atlanta Java Users Group DevCon 2004


Session 1: Open-source MVC Web Framework Shootout

Speaker: Neal Ford

Description:
Choosing the proper web framework for your next development project can be very mind-numbing and time-consuming. The default answer is often go with Struts or simply roll-your-own. This session will describe the best practices and design patterns associated with web application architecture and demonstrate the creation of the same application in several of the most popular frameworks, such as Struts, WebWork, Tapestry, and Cocoon.
Top



BorCon 2002


Session 1000: Introduction to Java

Speaker: Neal Ford

Description:
This tutorial provides a quick start for experienced developers to get up to speed in Java covering object-oriented programming, event handling, important JDK classes and idioms, the Collections API, threading, and JDBC. Prerequisites: Experience with any high-level language.
Top


Session 1136: Case in Point: Pragmatic J2EE Best Practices

Speaker: Neal Ford

Description:
This session covers best practices and design patterns to improve the design and architecture of enterprise applications in Java. It covers Web applications and EJBs, providing valuable tips and techniques. Prerequisites: Knowledge of Java and familiarity with J2EE.
Top


Session 3118: Configuration Management in Complex Applications

Speaker: Neal Ford

Description:
This session details how best to automate development processes for enterprise Java development projects. It discusses version control strategies, how to automate build management, and how to manage shared code. Prerequisites: Experience with a poorly automated Java project, or you've heard the phrase, "But it works on MY machine!"
Top


Session 4124: Creating Custom Providers and Resolvers in JBuilder

Speaker: Neal Ford

Description:
This session discusses the overall architecture of JBuilder DataExpress and specifically how to create custom providers and resolvers, showing examples for simple text files, Java Properties files, and XML documents. Prerequisites: Knowledge of database development in JBuilder.
Top



BorCon Australia


Session 1: Java Web Development (Pre-conference tutorial)

Speaker: Neal Ford

Description:
One of the most common uses of enterprise level Java today is the building of web applications. This tutorial covers the basics of web development in Java. It starts with a discussion of the servlet architecture and why it is superior to past architectures. Then, the tutorial covers the major points of web development in Java. I cover the basics of servlets, including requests, responses (including multi-media), session tracking, and database connectivity. I also show how to automate web based development projects with make utilities. Then, I cover the basics of JSP and discuss how this builds on the servlet foundation. I cover the different tags types and show how the concepts in the servlet API map to the JSP API. I show how to handle the same basic tasks in JSP as in servlets, such as session tracking, database connectivity, etc. This discussion leads to the concept of Model-View-Controller and how to leverage each of the web API's to build truly maintainable web sites. I talk about MVC by itself then show the Struts application framework and how it enhances the MVC architecture. Throughout the tutorial, I provide concrete examples and discuss important issues such as scalability, maintainability, and other issues. The developers who attend this session will leave with a firm foundation of knowledge on building web applications in Java.
Top


Session 2: Design Patterns for Web Development

Speaker: Neal Ford

Description:
Design patterns are a well-understood and appreciated weapon in the arsenal of most developers today. However, most of the design patterns that are demonstrated are written in either abstract terms or are written with more traditional single tier applications in mind. This session takes some familiar design patterns and puts them in the context of web development, where so much of today's development effort is expended. This session presents a design pattern, using the traditional written format popularized by the Gang of Four book. Typically, this pattern documentation will include fairly abstract examples of how the pattern can be implemented. Then, I will take the pattern and show one or more examples of how that pattern can be utilized for web development. For example, I will show how the Factory pattern can be used to help manage a connection pool of database references for servlets and JSP's. As another example, I show how the Singleton pattern can be utilized to store configuration information, preventing the information from being instantiated more than once. I also discuss the Lava Flow Anti-pattern and how it can be avoided. This session includes numerous examples and highlights how to design web applications with the best design techniques.
Top


Session 3: J2EE Best Practices

Speaker: Neal Ford

Description:
Java is not a complicated language, and many developers understand the syntax and at least one way to get a particular job done. However, as the types of projects get more complex (web-based, distributed objects, etc), developers find that there are dozens of ways to solve problems. About 75% of their solutions will be disastrous, leading to projects that have serious design problems. Another 20% of their home-grown solutions will work marginally well, but not allow the application to be gracefully maintained and updated. Only 5% of the potential solutions will allow fast development, scalability, maintainability, and usability. This session is designed to show developers how to achieve that narrow margin of victory. It highlights design patterns and best practices developed over years of designing, building, and maintaining complex Java projects. It covers design patterns and best practices from an entirely pragmatic and practical approach, showing working code and examples of well designed J2EE projects and frameworks. It also shows some examples of worst practices and anti-patterns, and shows how these mistakes can be rectified. I cover best practices for web development, including how to create singleton servlets, propagating session information across the https barrier, Model-View-Controller to separate business logic from presentation, and several others. Additionally, I show best practices for EJB development, including such topics as fine-grained vs. coarse-grained components, value objects, how to create effective equals() and hashCode() methods, when and how to use Message-driven beans, and others. This session is designed to help experienced Java developers reap the most benefit from enterprise Java.
Top



BorCon London

   Sessions are not currently available...

Comdex Atlanta


Session 1: Builder Web Services with Java

Speaker: Neal Ford

Description:
View PDF version from Comdex site.
Top



Comdex Fall (Las Vegas)

   Sessions are not currently available...

Entwickler Konferenz 2002


Session D53: Multi-Tier Delphi Development for the Internet

Speaker: Terry Dietzler

Description:
This session will present techniques and considerations for creating multi-tiered applications which can be deployed over the Internet, including concepts of multi-tier development and creating data-aware Active Forms.
Top


Session D54: Web Services in Delphi

Speaker: Terry Dietzler

Description:
This session will begin with an overview of web services and their potential in the future of computing. It will then look at how to locate and take advantage of existing web services created by other vendors. During this will be discussion of the importance and use of WSDL documents. The next portion of the session will demonstrate how to create your own web services and then how to publish them.
Top


Session JB12: Ant Integration in JBuilder

Speaker: Terry Dietzler

Description:
One of the most exciting new features of JBuilder 7, is its integration with additional development tools including Ant. This session will start with a brief overview of the features of Ant and how to fully integrate this into JBuilder?s build process. This sessions will show how to launch Ant, detect compiler errors generated from Ant and other techniques.
Top


Session JB13: Refactoring with JBuilder

Speaker: Terry Dietzler

Description:
One of the best new features in JBuilder 7, is its support for Agile programming including refactoring. This session will show how to use the refactoring techniques including, extract method, introduce variable, wrap code with try? catch and others. This session will give you exponential knowledge growth in this new feature.
Top



JAX 2002


Session E32: Team Development Using CVS Version Control System

Speaker: Terry Dietzler

Description:
This session will examine Concurrent Versions System (CVS), an open-source, cross-platform version control system. See how to setup and configure CVS and how to access to project files across the Internet. Learn how changes are made, committed and merged from multiple developers. See how to review the change log and review revision histories.
Top


Session E33: Making a Mountain Out of an Anthill – Working with Ant

Speaker: Neal Ford

Description:
This session will first describe how to install and use Apaches Ant, including the syntax of the XML build file and some of the more important built-in tags. Both the Ant optional tasks and tool integration are also shown. In this session, Ant is discussed primarily as a way to automate complex Java projects, and numerous real-world examples will be shown.
Top


Session E34: Working with XML in Java

Speaker: Neal Ford

Description:
This session provides an overview of several important XML topics and some of the more popular APIs and techniques developed to work with XML in Java. I cover the SAX and DOM APIs, XSLT transformations, JDOM, and DTD/XMLSchema. Throughout the session, I also provide very short primers on the related XML technology that I am talking about.
Top


Session E35: Using XSLT and Cocoon to Target Wireless Devices

Speaker: Neal Ford

Description:
This session discusses the architecture of wireless applications, shows details of important APIs for wireless development, and shows how to leverage XSLT transformations and Cocoon to target these platforms. It shows examples of both WSL and XHTML transformations and how Cocoon can be configured to target the platforms that support these formats.
Top


Session M03: Storing Data on Micro Devices

Speaker: Terry Dietzler

Description:
This session will demonstrate how to create and manage persistent storage on micro devices using the database defined by J2ME MIDP referred to as record management system (RMS). Also examined will be the rms package that provides classes, interfaces and exceptions used for data manipulation activities such as adding and deleting records.
Top


Session M04: GUI Development on Micro Devices

Speaker: Terry Dietzler

Description:
This session will show how to create user interfaces and graphical applications for micro devices. Among the areas examined will be the high-level and low-level APIs specifically designed for these limited memory devices along with their available user interface elements. The issues of portability, control, and flexibility will also be addressed.
Top


Session Powerworkshop: Java Web Development Using JSP and Servlets

Speaker: Neal Ford

Description:
This tutorial covers the basics of web development in Java. The tutorial starts with a discussion of the servlet architecture and why it is superior to past architectures. Then, the session covers the major points of web development in Java. I cover the basics of servlets, including requests, responses (including multi-media), session tracking, and database connectivity. I also show how to automate web based development projects with make utilities. Then, I cover the basics of JSP and discuss how this builds on the servlet foundation. I cover the different tag types and show how the concepts in the servlet API map to the JSP API. I show how to handle the same basic tasks in JSP as in servlets, such as session tracking, database connectivity, etc. This discussion leads to the concept of Model-View-Controller and how to leverage each of the web APIs to build truly maintainable web sites. I talk about MVC by itself then show the Struts application framework and how it enhances the MVC-architecture. Throughout the tutorial, I provide concrete examples and discuss important issues such as scalability, maintainability, and other issues. The developers who attend this session will leave with a firm foundation of knowledge on building web applications in Java.
Top


Session S15: Collections API for Manipulating Data

Speaker: Terry Dietzler

Description:
This session will look at Collection, the API of various structures that Java provides to organize and manipulate data. Included will be a discussion with a decision tree on choosing the best collection for the job at hand. The session will examine how the Collections API is structured and examples will be presented demonstrating their usage.
Top


Session WA04: Working with Custom Tags in JSP

Speaker: Terry Dietzler

Description:
This session will begin by examining the roles of custom tags and provide an overview of how they work. Next we’ll take a look at the set of Java classes and interfaces provided by JSP for developing custom tags and demonstrate their features. New tags will be created during the session and combined to create a customer tag library.
Top


Session WA09: Working with the Struts Framework

Speaker: Neal Ford

Description:
This session demonstrates how the Struts project grew from the MVC design pattern, how to install and use Struts, and details on its use. It shows the Struts libraries, Actions and ActionMappings, FormBeans, validations, command mappings, custom Struts tags, and internationalization. Numerous examples of Struts are shown throughout the session.
Top


Session WA11: Design Patterns for Web Development

Speaker: Neal Ford

Description:
This session takes design patterns and puts them in the context of web development. The session presents a design pattern, using the format popularized by the Gang of Four (GoF) book, but the examples all pertain to web development. It shows the Abstract Factory, Command, Model-View-Controller, and Memento patterns and the Lava flow antipattern.
Top



BorCon Europe 2001


Session 3114: Working with XML in Java

Speaker: Neal Ford

Description:
XML has become the common language used by companies to build portable content and when engaging in business-to-business communication. Because it is an open standard, it avoids locking companies into proprietary solutions. As the use of XML is becoming more widespread, tools that can understand this format are becoming more and more important. This trend has not gone unnoticed in the Java community. In fact, several different API's have been developed to assist developers working with XML. This session will provide an overview of Java's abilities with XML and show some practical examples of XML manipulation using Java. I'll also provide primers on the related XML technology that I am talking about.
Top


Session 3144: Using XSLT to Extend the Functionality to the Wireless Platform

Speaker: Neal Ford

Description:
One of the most powerful aspects of database development in JBuilder is the ability to create custom dataset providers and resolvers. This session delves into the details of how data is delivered from a data source of some kind through a database component, via a provider, into a dataset's MemoryStore or DataStore. After the overall architecture is discussed, this session will go into great depth on the details of how custom providers and resolvers work. This session shows JBuilder's data persistence architecture can be leveraged for a variety of file formats and shows the power and flexibility of JBuilder.
Top


Session 4102: Creating Custom Providers and Resolvers in JBuilder

Speaker: Neal Ford

Description:
One of the most powerful aspects of database development in JBuilder is the ability to create custom dataset providers and resolvers. This session delves into the details of how data is delivered from a data source of some kind through a database component, via a provider, into a dataset's MemoryStore or DataStore. After the overall architecture is discussed, this session will go into great depth on the details of how custom providers and resolvers work. This session shows JBuilder's data persistence architecture can be leveraged for a variety of file formats and shows the power and flexibility of JBuilder.
Top



Entwickler Konferenz 2001


Session JB06: JBuilder for VCL Developers

Speaker: Neal Ford

Description:
Many VCL (both Delphi and C++Builder) developers have seen the good press that JBuilder has garnered and wonder what all the fuss is about. They may also be interested in how to do cross platform development in Java. This session is designed to take experienced VCL programmers and show them how to leverage their existing knowledge in JBuilder.
Top


Session JB07: Automating Enterprise Development with Java

Speaker: Neal Ford

Description:
This session covers techniques for automating complex enterprise applications in Java. It covers version control and how to use it effectively for source code control, configuration management, and remedial bug fixes. It also covers build management including how to automate the build process across multiple developer machines. It includes many proven tips and pointers.
Top


Session JB08: Design Patterns for Web Development

Speaker: Neal Ford

Description:
This session takes some familiar design patterns and puts them in the context of web development, where so much of today's development effort is expended. This session presents a design pattern, using the traditional written format popularized by the Gang of Four book, and presents examples taken from web development.
Top


Session JB09: Creating Custom Providers and Resolvers in JBuilder

Speaker: Neal Ford

Description:
This session delves into the details of how data is delivered through a database component, via a provider, into a dataset's MemoryStore or DataStore. After the overall architecture is discussed, this session will go into great depth on the details of how custom providers and resolvers work, including numerous examples of custom providers and resolvers, from flat files to XML documents.
Top


Session JB10: Advanced JBuilder Deployment Techniques

Speaker: Neal Ford

Description:
This session covers many different aspects of deploying Java applications with JBuilder. It covers deployment techniques for applications (including shared libraries and other resources) and applet deployment, including the use of the Java Plug-in. Java WebStart is also discussed.
Top


Session JB21: Working with XML in Java

Speaker: Neal Ford

Description:
This session provides an overview of several important XML topics and some of the more popular APIs and techniques developed to work with XML documents in Java. It will cover the SAX and DOM API's and show the best time to use each of them. Then, this session covers validation, XSL, and XSLT. The session also shows some common idioms that are wide spread in the use of XML in Java.
Top


Session Powerworkshop: Java Web Development

Speaker: Neal Ford

Description:
This tutorial covers the basics of web development in Java. The tutorial starts with a discussion of the servlet architecture and why it is superior to past architectures. Then, the session covers the major points of web development in Java. I cover the basics of servlets, including requests, responses (including multi-media), session tracking, and database connectivity. I also show how to automate web based development projects with make utilities. Then, I cover the basics of JSP and discuss how this builds on the servlet foundation. I cover the different tags types and show how the concepts in the servlet API map to the JSP API. I show how to handle the same basic tasks in JSP as in servlets, such as session tracking, database connectivity, etc. This discussion leads to the concept of Model-View-Controller and how to leverage each of the web API's to build truly maintainable web sites. I talk about MVC by itself then show the Struts application framework and how it enhances the MVC architecture. Throughout the tutorial, I provide concrete examples and discuss important issues such as scalability, maintainability, and other issues. The developers who attend this session will leave with a firm foundation of knowledge on building web applications in Java.
Top


Session Powerworkshop: Survey of Enterprise Java

Speaker: Neal Ford

Description:
Enterprise Java development has rightfully garnered a lot of attention lately. Java has turned out to be an excellent language and platform for highly scaleable, maintainable, portable enterprise applications. This session provides a highly technical overview of the important enterprise API's in Java J2EE. The tutorial starts with a discussion of how to install the J2EE libraries into JBuilder and a short discussion of application servers, notably Inprise Application Server and WebLogic. The samples for this session are designed to work in a variety of different application servers, and that is one of the benefits of the architecture that I will espouse. Next, I will discuss the web development aspects of J2EE, starting with servlets and JSP. I show examples of the common types of functionality required by common web sites, such as session tracking, database connectivity, error handling, threading, etc. I will also show how to use "regular" database connections and also how to use application server connection pools. I also introduce the Model-View-Controller architecture as it applies to servlets and JSP's to highlight the design considerations that must be made to create truly robust and scaleable enterprise applications. Next, I will introduce Enterprise Java Beans. I will first show the general architecture of the EJB container. Then, I will show examples of stateless and stateful session beans. As part of this discussion, I will also talk about JNDI and how client applications can connect to the application server to utilize its services -- I have client applications that exercise each EJB as it is introduced. Next, I show bean-managed entity beans and talk about what code must be written to handle persistence. Then, I show container managed entity beans and how to create the relational mappings with the deployment descriptor. At this point, I also discuss the automatic transactional capabilities of the architecture and show examples of transactions automatically being propagated across beans. Next, I talk about JMS and how asynchronous messaging can be used. I will also talk about the marriage of JMS and EJB with the new bean types that support asynchronous method calls. Finally, I tie all these concepts together with a web based application, hosted by the application server, that uses the Model-View-Controller architecture to create session EJB's within servlets (which in turn create entity references) and produce output through JSP. This example ties together the essence of the tutorial and shows an example of real world application of these technologies. While this session is an overview of these technologies, the technical content will be very high. It is designed for experienced developers and architects who are interested in seeing the true potential of these important enterprise technologies.
Top



JAX 2001


Session A1: Using CVS

Speaker: Terry Dietzler

Description:
This session will examine CVS, the most famous open-source, cross-platform version control system. One of CVSs unique features allows access to project files across the Internet. Also different from typical version control systems is allowing multiple developers to work on the same file at the same time and automatically merge both sets of changes. After setup, learn how changes are made, committed into CVS and then when needed, manually merging changes from multiple developers.
Top


Session A3: Making a Mountain out of an anthill

Speaker: Neal Ford

Description:
In large scale enterprise Java applications, two logistical tasks can mean the difference between a successful project and a late, buggy project. The first is the ability to correctly reproduce the same project artifacts on every developer?s computer. The second is to make sure that all the files are deployed correctly. For Java Ant is the solution of these problems. This session will first describe how to install and use Ant, including the syntax of the XML build file and some of the more important built-in tags. Furthermore it will be shown how to use Ant to cleanly automate the build process between any number of developers using Ant.
Top


Session E19: Java Web Start

Speaker: Terry Dietzler

Description:
This session will demonstrate the various features of Java Web Start which assists in Java application deployment. Highlighted features include how to allow users to download and launch applications from their browser or desktop by a single click. Find out how Web Start makes sure that the user always gets the latest version of an application. Learn what it takes to set up a Web Server to support launching applications via a JNLP file. Also explored will be some of the commonly used elements of a JNLP file as well as the special services provided via the JNLP API.
Top


Session S10: Java Collections API

Speaker: Terry Dietzler

Description:
This session will take an in-depth look at the various structures that Java provides for organizing data known as Collections. Included will be a discussion on choosing the best collection for the job at hand. Will the data need to be accessed quickly? Does the structure need to be optimized for frequent addition and removal of items? A decision tree will be presented to assist the developer in making this selection. Conceptually the session will examine how the Collections API is structured in terms of interface and implementation. Examples will be presented demonstrating the usage of the collections.
Top


Session S13: Working with XML in Java

Speaker: Neal Ford

Description:
First, this session will show how to obtain parsers and install them as libraries into JBuilder. This session will then provide an overview of several important XML topics and some of the more popular API?s and techniques developed to work with XML documents in Java. I will cover the SAX API and show when an event driven parser is the best solution. Then, I will show how the DOM API works and compare and contrast its behavior with SAX. Throughout the session, I also provide very short primers on the related XML technology that I am talking about.
Top


Session S5: Overview on J2ME

Speaker: Terry Dietzler

Description:
This session will look at the features that make up the Java 2 Platform?s Micro Edition and what they do to allow developers to create Java applications for handheld computers as well as other devices with limited storage and memory. Find out how to setup the environment for developing applications under J2ME. Included in this session will be how to setup and work with Configurations and Profiles as well as their roles in J2ME. Also investigated will be toolkits and APIs that extend the J2ME for specific purposes such as for cellular phones and pagers.
Top


Session W11: Working with Apache Struts Framework

Speaker: Neal Ford

Description:
Most Java web developers have come to realize that the Model-View-Controller and Command design patterns allow them to create web sites that are both flexible and maintainable. The Apaches Struts framework encompasses these two ideas through providing common base classes and design details to automate the common elements of all web projects. In the session the Command pattern and how it can be incorporated into the above paradigm will be the topic. At the end the components of Struts and how they embody the previous concepts will be shown.
Top


Session W12: Design Patterns for Web Development

Speaker: Neal Ford

Description:
Design patterns are a well-understood and appreciated weapon in the arsenal of most developers today. This session takes some familiar design patterns and puts them in the context of web development, where so much of today?s development effort is expended. The session presents a design pattern, using the traditional written format popularized by the Gang of Four book. As example it will be shown how the Factory pattern can be used to help manage a connection pool of database references for servlets and JSP?s.
Top


Session W8: Creating Custom Tag Libs

Speaker: Terry Dietzler

Description:
This session will begin by examining the roles of custom tags and their capabilities, and provide an overview of how they work. Next we?ll take a look at the set of Java classes and interfaces provided by JSP for developing custom tags, and then demonstrate their features by applying them to the implementation of basic custom tags. Then we will describe how data can be transferred between the tags on a page in order to spread functionality across two or more interacting custom actions. Finally we will create a custom tag library.
Top


Session X13: Advanced XML For Java Web Development

Speaker: Neal Ford

Description:
XML and Java together are a great combination: XML=portable data, Java=portable code. This session shows how to utilize these concepts in Web development, using both the facilities built into the XML standard and some interesting synergies that are now possible. First, this session talks about how to create an application that appears to be a standard client/server application. However, the data is kept behind a firewall and is being transmitted over the Internet. This session should provide the attendees with a good feel for how Java and XML together allows a wide variety of application architectures.
Top