Advanced Topics Workshop
Hotel & Travel Information
Student Grant Information
Registration Information and Fees
The COOTS conference showcases advanced R&D work in object-oriented technologies and software systems. The conference focuses on experimental research and experience that is gained by using object-oriented techniques and languages to build sophisticated software systems that meet real-world needs. Particular emphasis will be on software architectures, tools, and programming languages that support distributed object computing.
COOTS includes two days of in-depth tutorials on object-oriented languages and systems. Register early for the best tutorial selections. Two days of technical sessions covering original work in the design, implementation, and use of object-oriented technologies will follow.
On Friday, June 21 there will be a post-conference Advanced Topics Workshop on Distributed Object Computing on the Internet. For details on attending, refer to write-up following the preliminary technical program.
WHAT YOU WILL LEARN
Technical Sessions Program Chair
Douglas C. Schmidt, Washington University
Tutorial Program Chair
Doug Lea, SUNY Oswego
Don Box, DevelopMentor
Kraig Brockschmidt, Microsoft
David Chappell, Chappell and Associates
Andrew Chien, University of Illinois, Urbana-Champaign
David Cohn, University of Notre Dame
Jim Coplien, Bell Laboratories
Murthy Devarokonda, IBM Watson Research Labs
Peter Druschel, Rice University
Daniel Edelson, IA Corporation
Nayeem Islam, IBM Watson Research Labs
Dennis Kafura, Virginia Tech University
Doug Lea, SUNY Oswego
Dmitry Lenkov, Hewlett-Packard
Mark Linton, Vitria Technology
Calton Pu, Oregon Graduate Institute
Vince Russo, Purdue University
Jerry Schwarz, Declarative Systems
Kevin Shank, Rochester Institute of Technology
Michael Stal, Siemens AG
Bjarne Stroustrup, AT&T Research
Steve Vinoski, Hewlett-Packard
Jim Waldo, Sun Microsystems, Inc. and JavaSoft
PROGRAM AT A GLANCE AND IMPORTANT DATES TO REMEMBER
Hotel Reservation Deadline: May 28, 1996
Pre-registration Deadline: May 31, 1996
On-Site Registration Hours:
Sunday, June 16 6:00pm - 9:00pm (Welcome Reception)
Mon-Wed, June 17-19 7:30am - 5:00pm
Thursday, June 20 7:30am - 12:00pm
Monday and Tuesday, June 17-18 9:00am - 5:00pm
Wednesday, June 19 8:45 am - 5:30 pm
Thursday, June 20 9:00 am - 5:30 pm
Tuesday, June 18 6:00pm - 10:00pm
Wednesday, June 19 8:00pm - 11:00pm
Wednesday, June 19 6:00pm - 8:00pm
Advanced Topics Workshop 9:00am - 5:00pm
Friday, June 21 (by invitation only)
See details following the Technical Program schedule.
TUTORIAL PROGRAM, Monday and Tuesday, June 17-18, 1996
USENIX tutorials are intensive, informative, practical, and essential to your professional development. They are delivered by experts with hands-on experience.
Attend these tutorials and benefit from the opportunity for in-depth exploration and skill development in essential areas of object-oriented technology.
Seating in limited, so register now to guarantee your first choice.
Tutorial fees include:
M1am (9:00 am - 12:30 pm)
Introduction to CORBA and CORBA Services
Bruce Martin, SunSoft, Inc.
Intended Audience: Developers who want an introduction to applying basic object-oriented techniques to distributed applications using CORBA technology.
The Object Management Group's (OMG) Common Object Request Broker Architecture (CORBA) defines a standard architecture for distributed object-oriented communication. This course will describe the CORBA technology. Topics will include:
Additionally, the CORBA Services standard defines a set of distributed object services that integrate distributed objects into distributed applications. CORBA Services to be covered include:
Use of the distributed object technology will be illustrated using a simple distributed stock-trading application. The application is constructed by integrating re-usable distributed objects using CORBA and CORBA Services technology.
Dr. Bruce Martin is a senior staff engineer at SunSoft where he works on distributed object services and distributed application models for SunSoft's NEO system. He was the primary author of several of the OMG's CORBA Services specifications and has authored several papers in the areas of distributed object-oriented systems, interface languages, and transaction models.
Intended Audience: Experienced programmers and technical contributors. Participants should be familiar with the C and C++ programming languages, the basics of object-oriented programming, and the basics of how the World Wide Web operates and is organized.
The first part of this course will introduce Java, an object-oriented language designed to enable live content on the Internet. This "live content" consists of full programs that can be placed into HTML documents. When such a document is loaded into a Java-enabled HTML viewer such as HotJava, the program is run, creating a page with active or even interactive elements.
While designed for creating interactive web content, Java is a general purpose, object-oriented language with such features as garbage collection, exceptions, strong typing, and a clean separation between classes and interfaces. Built around a C-style syntax, Java allows the writing of secure, robust programs that can be relied upon to run in a finite amount of space without crashing into a pile of bits. Language, as well as the set of class and interface libraries which are defined as part of any compliant Java implementation, will be discussed.
How one uses Java to create "applets", programs that can be included as part of a standard HTML document, will be discussed, as well as how to write such applets, what resources are available to these applets, and what features of the language and runtime environment allow these applets to be run securely by anyone on the Internet.
If time permits, the day will end in wild speculation and discussion of the possible technological and social impacts of the kind of computing that Java allows.
After this course, attendees will understand the structure and features of Java and should be able to write programs in it. Attendees should understand how to write applets, how to include those applets in an HTML page, and understand the security features of the language and runtime environment that allow such applets to be run with confidence over the Internet.
Jim Waldo is a senior staff engineer with Sun Microsystems, Inc. where he does research in the area of reliable distributed computing. A long-time advocate of object-oriented programming and the architect of one of the first distributed object request brokers, he has written and spoken extensively on object-oriented programming techniques, distributed computing concepts, and techniques for building robust, reusable software.
Intended Audience: Individuals familiar with C++, but not with the C++ standards committee's work.
The C++ draft standard is based on the C++ Annotated Reference Manual (ARM) by Margaret Ellis and Bjarne Stroustrup. The C++ standards committee has adopted two major language extensions that were not described in the ARM: namespaces and runtime type identification (RTTI). The committee also clarified the template chapter which appeared as a commentary chapter in the ARM. This course will introduce namespaces and RTTI language features, and present the clarifications affecting templates.
Topics will include:
Intended audience: Designers and implementors of distributed systems interested in developing CORBA-based applications in C++. Participants should be comfortable programming in C++, and have some knowledge of basic distributed computing issues.
Attendees will benefit from the presentation of actual, working C++ code that illustrates how Object Request Brokers (ORBs) and CORBA services can be used to deploy working distributed systems.
Version 2.0 of the Common Object Request Broker Architecture (CORBA) Specification provides a standard base on which distributed object computing systems and applications can be built. Part of CORBA 2.0 describes the C++ language mapping which details how applications can be developed and implemented using the Object Management Group (OMG) Interface Definition Language (IDL) and the standard CORBA interfaces with C++.
This course will show how CORBA applications can be written using
the standard OMG IDL C++ Language Mapping. In the first half, the
basics of CORBA will be presented. Then, examples will show:
The second half will show how standard OMG CORBA services such as Naming, Events, and Lifecycle can be used to support distributed applications.
Steve Vinoski is a software architect in Hewlett-Packard's Chelmsford System Software Laboratory. He is currently the technical leader for the development of HP ORB Plus 2.0, HP's CORBA-conformant ORB product. He chaired the OMG C++ Mapping Revision Task Force and currently represents Hewlett-Packard on the OMG Architectural Board. Together with Doug Schmidt he writes the "Object Interconnections" column for the C++ Report .
Intended audience: Attendees should be knowledgeable about object design and have some familiarity with Java.
This course will present selected advanced modeling techniques that exploit Java as the implementation vehicle.
The course will cover:
Collaborations and Mutual Models
Views and Pattern Composition
Separation of Concerns
Other topics will include:
Desmond D'Souza is the president of ICON Computing, Inc. and a faculty member at the Software Quality Institute at the University of Texas at Austin. He is the author of the Education and Training column in the Journal of Object-Oriented Programming and in Report on Object Analysis and Design.
Petter Graff is the director of technology and applications at ICON Computing. He has worked with object technology since 1989. Petter has presented tutorials on advanced modeling and design techniques at conferences, and has published articles on model integration.
Intended audience: C++ programmers
This course focuses on the new ANSI C++ Standard Template Library (STL), a set of reusable containers and algorithms.
The STL design is different from that of traditional container libraries, and maintains a clean separation between algorithms and containers. This philosophy can be applied to many other library domains, and may change the way that C++ libraries are designed and implemented.
STL users in the C++ community seem to enjoy their new-found power, but some programmers are concerned that STL can be accidentally misused and cannot be used effectively in a multi-threaded environment. The course addresses these issues and also shows how STL can be enhanced in a non-intrusive way.
The course is comprised of the following sections:
Graham Glass is the president and co-founder of ObjectSpace, Inc, specialists in object technology, where he heads up the product division. His goal is to predict the next paradigm shift and to create the technology that supports it.
Intended audience: Developers interested in developing interactive, animated GUI Java applications by exploiting the capabilities of the Java Abstract Window Toolkit (AWT). Participants should be familiar with Java.
This course will describe the applet construction using the Java AWT.
This course will include in-depth treatment of:
Participants will be able to start developing applets, and design and implement their graphical user interface applets using the AWT package.
Nataraj Nagaratnam is a PhD candidate in Computer Engineering at Syracuse University. He is the lead author of the upcoming book "Waite Group's Java Networking and Windowing API SuperBible". He is a part of the Diamonds research group, working in the areas of object-oriented languages and systems.
Intended audience: Developers and system architects who are considering using OLE and COM as an object model for building distributed applications. The course assumes a working knowledge of C++.
Network OLE (formerly known as Distributed COM or DCOM) is a lightweight object model that allows objects to be transparently distributed across heterogeneous platforms and networks. While the initial release is bundled with Windows NT, support for most major platforms, including most UNIX variants, is currently in development.
This course gives a detailed look at the programming techniques used to implement COM objects that support transparent distribution and language-independent interoperability. The topics covered are:
Don Box has been working in networking and distributed object systems since 1989. He is currently chronicling the COM lifestyle in book form and writes a regular column on OLE in both the C++ Report and Microsoft Systems Journal. He is active as a consultant on COM-related projects and regularly gives seminars on OLE and COM.
Intended Audience: Software developers and technical managers. The level of this course is intermediate to advanced; no previous exposure to patterns is necessary.
A pattern gives a solution schema to a recurring design problem in software development. While patterns have been gaining considerable attention during the last few years, previous efforts concentrated on low-level patterns (idioms) and mid-level patterns (design patterns).
The course will discuss patterns at the level of overall software architectures. It will present a system of patterns for software architecture that combines the high level patterns with an enriched set of lower-level patterns, and organizes them into a cross-referenced catalog.
The course will provide in-depth explanation of the notion of patterns,
presenting several patterns at different levels of granularity.
Example patterns are:
Participants will be provided with preprints of full pattern descriptions using a system of interrelated patterns in a practical example.
Dr. Hans Rohnert works for the Siemens Corporate R&D labs in Munich, Germany. He is co-author of an upcoming book, Pattern-Oriented Software-Architecture - A System of Patterns. He studied at the University of Saarland and the International Computer Science Institute at UC Berkeley. His research interests include patterns, object-oriented programming, combinatorial algorithms, and data structures.
Intended Audience: System analysts, architects, and programmers involved in management of networks, systems, and services. Participants should know either CMIP or SNMP. Knowledge about CORBA architecture and OMG Interface Definition Language (IDL) will be helpful.
After this course, participants will be able to apply CORBA and object services for network and system management applications.
This course is based on current draft specification of Joint Inter-Domain Management Task Force (XoJIDM) sponspored by X/Open and Network Management Forum. The Inter-Domain Management specification is divided into two parts: specification translation and interaction translation.
This course will cover:
After this course, participants will be able to apply CORBA and object services for network and system management applications.
Subrata Mazumdar currently works at Bell Laboratories, Lucent Techonologies. Previously, he was with IBM T.J. Watson Research Center where he developed the architecture and prototype of a protocol-independent network management agent, a CORBA-based OSI system management agent, and designed and implemented the prototype of a CORBA-based TINA-C Distributed Processing Environment for multi-media services.
Intended Audience: Participants with some programming experience who would benefit from a powerful, easy-to-use, very high level object-oriented programming language.
Python is an interpreted high level object-oriented programming language, combining remarkable power with very clear syntax. It has modules, classes, exceptions, very high level dynamic data types, and dynamic typing.
A large collection of existing modules is available for system programming, GUI development, database management, scientific computing, building WWW applications, distributed computing, and more. New modules are easily written in Python, C, C++, or other languages that can interface with C. Python may also be used as an extension language for applications that need a programmable interface. Python is highly portable: it runs on UNIX, DOS, Windows, Macintosh, OS/2, Amiga, and other platforms.
This course will provide a basic introduction to Python, including:
Jim Fulton is a consultant and software engineer with several years experience building systems using a variety of object-oriented languages. He has served on the ANSI Smalltalk committee and is currently a member of the Python Software Activity steering committee. Mr. Fulton holds a BS and MS from Case Western Reserve University, and an MS from George Mason University.
Intended audience: Software developers familiar with general object-oriented design and programming techniques (design patterns, modularity, and information hiding), fundamental OO programming language features (classes, inheritance, dynamic binding, and parameterized types), basic systems programming concepts (process/thread management, synchronization, and interprocess communication), and networking terminology (client/server architectures and TCP/IP).
This course examines and evaluates a suite of OO design patterns that help to alleviate the complexity of developing concurrrent, parallel, and distributed object-oriented software. These patterns (and the framework components that implement them) have been used successfully on major OO communication software projects to build telecommunication switch management applications, network management for large-scale global personal communication systems, and electronic medical imaging systems.
The course illustrates by example how to significantly simplify and enhance the development of software that effectively utilizes concurrency and network services via the use of:
The course examines patterns and C++ code abstracted from production distributed electronic medical imaging and telecommunication systems to illustrate key points in the examples.
Doug Schmidt is an assistant professor of Computer Science at Washington University in St. Louis, Missouri. His research focuses on design patterns, implementation, and experimental analysis of object-oriented techniques for developing high-performance, distributed communication systems on parallel processing platforms that run over high-speed networks.
Continuing Education Units (CEUs)
USENIX provides CEUs for a small administrative fee. Established
by the International Association for Continuing Education and
Training, the CEU is a nationally recognized standard unit of
measure for continuing education and training, and is used by
thousands of organizations across the United States.
Completion of one full day of the tutorial program qualifies for 0.6 CEUs. You can request CEU credit by checking the appropriate box on the registration form. USENIX provides a certificate and maintains transcripts for each attendee who chooses CEU credits. CEUs are not the same as college credits. Consult your employer or school to determine their applicability.
Wednesday & Thursday, June 19-20
9:00 -10:00 KEYNOTE ADDRESS:
Experiences on the Road to Object Utopia: An Industrial Research and Development Perspective
Dave Thomas, Object Technology International
Mr.Thomas will offer a critical look at where we have been and where we are going with object technology research and practices. Dave Thomas is founder and CEO of Object Technology International, Inc. (OTI), an advanced software technology company and leader in object- oriented technology, specializing in joint product development and technology licensing.
Session Chair: Daniel Edelson, IA Corporation
Compiler Optimization of C++ Virtual Function Calls
Sara Porat, David Bernstein, Yaroslav Fedorov, Joseph Rodrigue, and Eran Yahav, IBM Haifa Research Laboratory
Composing Special Memory Allocators in C++
Keith Loepere, Open Software Foundation
Building Independent Black Box Components in C++
Mark Addesso, Software AG
1:30 - 3:30 CORBA AND DISTRIBUTED OBJECTS
Session Chair: Steve Vinoski, Hewlett-Packard
Interlanguage Object Sharing with SOM
Jennifer Hamilton, IBM Toronto Laboratory
Extending a Traditional OS Using Object-Oriented Techniques
Jose Bernabeu, Vlada Matena, and Yousef Khalidi, Sun Microsystems Laboratories
Object Caching in a CORBA Compliant System
R. Kordale and M. Ahamad, Georgia Tech; M. Devarakonda, IBM T.J. Watson Research
Asynchonrous Notifications Among Distributed Objects
Yeturu Aahlad, Bruce E. Martin, Mod Marathe, and Chung Lee, SunSoft, Inc.
4:00 - 5:30 TOOLS
Session Chair: Doug Lea, SUNY Oswego
Preliminary Design of ADL/C++ -- A Specification Language for C++
Sreenivasa Rao Viswanadha, SUNY Albany
Software Composition with Extended Entity-Relationship Diagrams
Pornsiri Muenchaisri and Toshimi Minoura, Oregon State University
A Measure of Testing Effort
John McGregor and S. Srinivas, Clemson University
9:00 -10:30: PATTERNS
Session Chair: Doug Schmidt, Washington University
Design Patterns for Dealing with Dual Inheritance Hierarchies in C++
Robert Martin, Object Mentor
The Object Group Design Pattern
Silvano Maffeis, Olsen & Associates, Zurich
Pattern Languages for Handing C++ Resources in an Exception-Safe Way
Harald Mueller, SIEMENS
11:00 - 12:30 OBJECT-ORIENTED FRAMEWORKS AND COMPONENTS
Session Chair: Jim Waldo, Sun Microsystems Labs and JavaSoft
The Any Framework: A Pragmatic Approach to Flexibility
Kai-Uwe Maetzel and Walter Bischofberger, UBILAB
Design and Performance of an Object-Oriented Framework for High-
Performance Electronic Medical Imaging
I. Pyarali, T. Harrison, and D. Schmidt, Washington University
Class Relationships and User Extensibility in Solid Geometric Modeling
James R. Miller, University of Kansas
2:00 - 4:00 DISTRIBUTION LANGUAGES
Session Chair: Vince Russo, Purdue University
A Distributed Object Model for the Java(tm) System
Ann Wollrath, Roger Riggs, and Jim Waldo, Sun Microsystems, Inc.
Smart Messages: An Object-Oriented Communication Mechanism
Eshrat Arjomandi, York University, Toronto; William G. O'Farrell, Gregory V. Wilson, IBM Canada Ltd.
Pickling State in the Java(tm) System
Roger Riggs, Jim Waldo, and Ann Wollrath, Sun Microsystems, Inc.
Highly Concurrent Distributed Knowledge Objects
K.L. Clark and T.I. Wang, Imperial College
4:30 - 5:30 WRITER'S WORKSHOP
This session will focus on three to four of the technical papers presented in "writer's workshop" form. The goal is to focus on the papers selected for the USENIX Computing Systems Journal special issue on Distributed Objects in order to make them more solid before publication.
ADVANCED TOPICS WORKSHOP, Friday, June 21
9:00 - 5:00 Distributed Object Computing on the Internet
This one-day post-conference workshop will focus on the development of methods, tools, and services supporting distributed object computing on the Internet. The topics include, but are not limited to, the performance, scalability, reliability, management and security issues surrounding:
*Java and content-oriented languages for the WWW
*CORBA and Network OLE in large-scale distributed applications
Attendance is limited and based on acceptance of a position paper. Potential workshop attendees are invited to submit a position paper of at most three (3) pages (ASCII) via electronic mail to David Cohn (email@example.com) no later than May 1st, 1996. Acceptance notices to all participants will be issued by May 20th, 1996. Position papers should briefly describe experiences, interests, works in progress, and/or ongoing research and development. A representative subset of authors of position papers will be invited to make informal presentations at the workshop.
Do you have a topic that you'd like to discuss with others? Our Birds-of-a-Feather Sessions may be perfect for you. BoFs are very interactive and informal gatherings for attendees interested in a particular topic. Schedule your BoF in advance by telephoning the USENIX Conference Office at 714.588.8649, or email to: firstname.lastname@example.org
HOTEL AND TRAVEL INFORMATION
The Conference headquarters will be:
Toronto Marriott Eaton Centre
525 Bay Street
Toronto, Ontario, Canada M5G 2L2
Toll Free: 800.228.9290 (U.S. and Canada)
Local Telephone: 416.597.9200
Reservation Fax: 416.674.7011
Note: Current bank exchange rate is approximately 35%, making your U.S. dollar hotel room rate approximately $91. The exchange rate can fluctuate.
To Make Your Reservation: Call the hotel directly and ask for the Reservations Desk. You must mention USENIX to get this special rate. To guarantee your arrival after 6:00 pm, a one night's deposit is required. To cancel your reservation, you must notify the hotel at least 24 hours prior to your scheduled arrival.
JNR, Inc. Toll Free 800.343.4546 (USA)
A Taxi cab takes approximately 35 minutes to the hotel and costs approximately $35 Canadian, one way.
WELCOME TO CANADA
The Goods and Services Tax is a seven percent tax charged on most goods and services sold or provided in Canada. In Canada you will pay this tax on most of your purchases. Under the VISITOR Rebate Program, you may get a refund of the tax you paid on goods you take home and on hotel accommodations in Canada, provided your stay for less than one month per lodging establishment.
As noted above, you may receive a refund for the tax you pay for hotel accommodations. There is no refund for tax paid on meals, wine, liquor, beer, and other alcoholic beverages. For a more complete list of what qualifies, see the "Tax Refund for Visitors Pamphlet."
You may apply for your rebate by mail by completing the Visitor Application for Refund form located in the "Tax Refund for Visitors Pamphlet". You must send your original sales receipts. Credit card slips and photocopies are not acceptable! (Your original receipts will be returned to you.) Receipt of your refund will take approximately 8-10 weeks. If you wish to file your claim while in Canada, you may do so at a participating Canadian Duty Free Shop. A list of these shops can be found in the above mentioned pamphlet.
Electrical current is 115 volts; 60Hz
Money system in Canada is based on dollars and cents. Because of current exchange rates, there will be a difference in value between Canadian and the U.S. Attendees are advised to change some of their currency before coming to Canada if they expect to arrive late in the evening or on the weekend. Of course, traveler's cheques, ideally in Canadian funds and credit cards are readily accepted.
Royal Ontario Museum - Canada's largest museum offering collections in art, archeology and natural history. Favorite galleries include Dinosaurs, Ancient Egypt, world renowned Chinese collections and a Canadian Heritage Floor.
Ontario Science Centre - Over 650 exhibits and programs to get your hands on and bodies into. Make discoveries about the sports you play, the foods you eat, the ways you communicate and the technology you use.
Ford Centre for the Performing Arts - Metropolitan Toronto's newest performing arts centre. Its spectacular 1,850 seat Main Stage Theatre is home to one of the hottest tickets in town.
Skydome - The World's Greatest Entertainment Centre, under the world's largest retractable roof. Over 250 events a year including baseball games, indoor carnivals, concerts, circuses and consumer shows.
Casa Loma - Experience Toronto's majestic castle estate. Explore elegantly furnished rooms, secret passages, towers, and 800 foot tunnel and stables.
Art Gallery of Ontario - The AGO is one of the largest and finest art museums in North America, with 50 new and renovated galleries celebrating 600 years of creativity.
USENIX is the original, not-for-profit membership organization for individuals and institutions interested in UNIX and related technologies. Evolving with technology, USENIX has broadened its activities to include open systems and the globally interconnected and interoperable computing environment.
The USENIX Association and its members are dedicated to:
Please complete the form below and return with full payment to: USENIX Conference Office 22672 Lambert St., Suite 613, Lake Forest, CA 92630 Phone: 714.588.8649 / Fax: 714.588.9706 Email: email@example.com Office Hours: 8:30am - 5:00pm Pacific Time NAME________________________________________________________________ (first) (last) FIRST NAME FOR BADGE____________________________Member Number_______ COMPANY OR INSTITUTION______________________________________________ MAILING ADDRESS_____________________________________________________ (mail stop) ____________________________________________________________________ CITY___________________________STATE____ZIP___________COUNTRY________ TELEPHONE NO:_________________________FAX NO._________________________ NETWORK ADDRESS______________________________________________________ (one only please) The address you provide will be used for all future USENIX mailings unless you notify us in writing. ATTENDEE PROFILE Please help us serve you better. By answering the following questions, you help us plan our activities to meet members' needs. All information is confidential. [ ] I do not want to be on the attendee list [ ] I do not want my address made available for other than USENIX mailings [ ] I do not want USENIX to email me notices of Association activities. What is your affiliation? [ ]academic [ ]commercial [ ]gov't [ ]R&D What is your role in purchase decision? 1. final 2. specify 3. recommend 4. influence 5. no role What is your job function? (check one) 1. system/network administrator 2. consultant 3. academic/research 4. developer/programmer/architect 5. system engineer 6. technical manager 7. student How did you hear about this meeting: 1. USENIX mailing 2. newsgroup/bulletin board 3. ;login: 4. World Wide Web 5. from a colleague 6. magazine What publications or newsgroups do you read on object-oriented technologies? _____________________________________________ ================================================================= TUTORIAL PROGRAM Select one AM and one PM tutorial per day. Please, no partial or split-day registration allowed. Monday, June 17, 1996 ======================== [ ] M1am: CORBA and CORBA Services [ ] M2am: Java Overview [ ] M3am: New ANSI C++ Features [ ] M4pm: Distributed Apps with CORBA and C++ [ ] M5pm: Modeling and Design for Java [ ] M6pm: Standard Template Library (STL) Second Choice of first is filled:____________________________ Tuesday, June 18, 1996 ========================= [ ] T1am: Java Applets and the AWT [ ] T2am: Network OLE and C++ [ ] T3am: Pattern-Oriented Software Architecture [ ] T4pm: Inter-Domain Management [ ] T5pm: Introduction to Python [ ] T6pm: OO Design Patterns Second Choice of first is filled:____________________________ TUTORIAL PROGRAM FEES - Monday & Tuesday, June 17-18 Tutorial Program for two days..........$590 $_________ CEU credit (optional)..................$ 30 $_________ Tutorial Program for one day...........$320 $_________ CEU credit (optional)..................$ 15 $_________ Late fee applies if postmarked after Friday, May 31, 1996...............Add $ 50 $_________ TECHNICAL SESSION FEES - Wednesday & Thursday, June 19-20 Current Member Fee.....................$310 $________ (Applies to current USENIX, EurOpen, JUS and AUUG members) Non-Member or Renewing Member Fee*.....$380 $________ *Join or renew your USENIX membership and attend the conference for same low price -Check here [ ] Late fee applies if postmarked after Friday, May 31, 1996..........Add $ 50 $_________ Full-Time Student Fee: pre-registered or on-site......$ 75 $_________ (Students must include photocopy of current student I.D.) Full-time student, including USENIX membership fee....................................$100 $_________ TOTAL ENCLOSED...................$_________ PAYMENT MUST ACCOMPANY THIS FORM. Payment in US Dollars must accompany this form. Purchase orders, vouchers, telephone or email registrations cannot be accepted. [ ] Payment Enclosed (Make check payable to USENIX Conference) CHARGE TO MY: ___VISA ___MASTERCARD ___AMERICAN EXPRESS ___DINERS CLUB ACCOUNT NO.______________________________________ EXP. DATE___________ _______________________________________/___________________________ Print Cardholder's Name Cardholder's Signature You may fax your registration form if paying by credit card to USENIX Conference Office, fax: 714 588 9706. (To avoid duplicate billing, please DO NOT mail an additional copy.) REFUND/CANCELLATION POLICY If you must CANCEL, all refund requests must be in writing and postmarked no later than June 7, 1996. Cancellations cannot be taken over the telephone. If you have registered but are unable to attend, you may call to substitute another person in your place.