Conference Report — USENIX Winter 1993
31 January, 1993
This is the conference report that I circulated to my co-workers upon my return from the USENIX Winter 1993 Conference that took place in San Diego, CA, USA. I also submitted this to the USENIX ;login: journal, but I do not recall whether or not it was published therein. At the time I wrote this report I as employed by JetForm Corp., and it was company policy that you wrote a report on the experience in exchange for the company sending you to a conference .
This was my second USENIX conference, my first being the conference that had been held in Baltimore, MD, USA.
--------------------------------------- Conference Report --- Winter USENIX '93 --------------------------------------- Christopher Rath 31 Jan.'93 --------------------------------------- INTRODUCTION This Conference Report contains my notes and thoughts of the Winter USENIX Conference, 1993, which took place recently in San Diego. Because I've taken this report from my hand-written notes, my own thoughts and conclusions are sometimes mixed into the pot. If you don't like that fact then don't read this report. If you have a specific question about something you see here, please give me a call. = * = MISC. NOTES I know that I've arrived in CA: The "fancy-shmancy" restaurant at the Hotel serves butter substitute, and cut up fresh veg. & upscale melba toast before the meal. The promo-card on the table calls these "healthy options." On a travel note, the miracle of time zones and carefully crafted airline schedules strikes again: I was able to spend 11 hours in transit between Ottawa and San Diego, 6.5 of it actually in the air, and only be served a single sandwich. Love those US based air carriers. = * = Monday Tutorial: NFS NETWORKING I learned a couple of interesting points today: 1) If a symbolic link (ln -s) points to a path which doesn't begin with a slash (`/') character then it is evaluated with respect to the current working directory. 2) NFS timeouts and retries are set at the per-mount level. If either of the values is too large then user response time may be compromised when a file-server goes down. These values must be set intelligently for each mount. 3) NFS is built on top of UDP. Many vendors do NOT ship their systems with UDP checksums enabled. Checksums need to be enabled to prevent data errors from creeping in. = * = Tuesday Tutorial: THREADS PROGRAMMING Some threads rules and info: 1) Do NOT use threads asynchronously. POSIX pthreads have been implemented such that ALL standard UNIX's normally asynchronous signaling is accessible synchronously. 2) Threads should be used whenever they would simplify implementation. Many times threads do not result in better performance, but rather result in simpler, easier to maintain applications. The instructor's example was that of a program's GUI User Interface: He suggests that every widget which may possibly receive input should have 2 threads of control. 3) DCE threads implement C++ style exception handling. = * = CONFERENCE OPENING REMARKS The first USENIX lifetime achievement award was given to CSRG (the BSD people). The award is called "The Flame," and is a red glass sculptor depicting a stylized flame. Recipients of the award are called "Keepers of the Flame." = * = KEYNOTE SPEECH --- Robert Carr, Go Corp. Two-thirds of the U.S. workforce do not directly interact with computers as part of their work. + It is interesting to note that even Computer Professionals become disenfranchised when they leave their desks; for example, only a small minority of us here at the conference have a computer we're taking notes on. Where-ever pencil and paper is in use, a potential exists for use of a computer. However the current keyboard paradigm will not work in many situations (for both technical and social reasons). Fax, Email and Cell Phone technologies have experienced exponential growth in recent years. This makes them prime candidates for integration with emerging mobile computing technologies. Go Corp.'s innovations in mobile computing have resulted in what the press has called "Pen Computing." + However, from Go Corp.'s perspective, it is not the pen-on-glass technology which is the key element of Pen Computing; rather, it is the enfranchisement of people that is key; and this is due primarily to the portability and usability of the pen computing environment. One of the keys to the success of mobile computer will be social acceptance. If it's not socially acceptable to pull out your computer and use it then the majority of users will shun the technology. + Pen and paper is already a socially acceptable paradigm. + Anytime-anywhere is also a key enabler. The concept of file systems is one of the most difficult to teach. This paradigm and many others are prominent barriers to the increased use of computing. Mobile devices must be very network robust. That is, connecting-to and disconnecting-from one or more networks must be handles as a normal daily occurrence, not an exception. The mobile device must also manage i/o intelligently --- deferring outgoing data until a network connection is available, and pulling down incoming data at regular intervals. Desktop PC workers comprise 20% of the U.S. workforce. Mobile workers comprise 40% of the U.S. workforce: 20% mobile in the office; 20% mobile in the field. Robert Carr then gave a long demo of PenPoint, Go Corp.'s OS. + PenPoint appears to be a very powerful and easy to use User Interface; implemented in a very orthogonal fashion. + The file system paradigm has been replace with that of a book: Pages, sections, chapters, Table of Contents, etc. + The OCR technology embedded in PenPoint worked much better than I anticipated (on printed text only). = * = Talk: HELLO WORLD, by Rob Pike Rob spoke about the internationalization of Plan 9, a research OS developed by Bell Labs. The most difficult part of supporting non-7 bit character sets (i.e. 16 or 32 bit characters) is simply making the initial transition. Once your software can handle char not being a byte, then it no longer matters exactly which character set or encoding scheme is used. + A good example is the malloc()'ing of space for a buffer. Traditional C programmers would have written `malloc(BUFSIZ)'; but now you must write `malloc(BUFSIZ*sizeof(char))'. Most of the changes required to support the new character sets and encoding schemes can be implemented non-obtrusively. For example, the malloc() in the previous paragraph. If we begin to make these sorts of changes now then there will be less work to do later. = * = Talk: ES --- THE EXTENSIBLE SHELL This shell has been implemented in a very simple and elegant way, much differently from existing shells. The biggest difference is that es allows the user to easily subclass the built-in commands and operators, using es' own commands. This shell looks like is might be worth closer examination. The source for es is available for ftp. Email email@example.com or firstname.lastname@example.org for further info. = * = Talk: INTERNATIONALIZATION The point of this paper was to document just how involved a process it is to fully internationalize an application. To do the job properly you must do more than just handle non-ASCII character sets. Internationalization of an application must take into account cultural as well as language issues. = * = Talk: TCP/IP NETWORK ADMINISTRATION Hostname selection is covered by RFC 1178. We (JetForm) should get a copy of this RFC and follow it. DNS is much simpler to configure and maintain that straight UUCP. We (JetForm) should begin to use it now, not only for the immediate benefits but also for future compatibility with the Internet. = * = BOF: NeXT ADMINISTRATION 20 people attended the BOF; out of the 800 conference attendees. The NeXTSTEP 3.0 release was discussed in some detail. + while some minor problems were reported, only one of the 20 people advocated not upgrading to 3.0; and the one dissenter did not give any specific reasons. The largest installation represented was SwissBank. They have have a worldwide WAN with 800 NeXT's connected. = * = BOF: BSDI BSDI makes a BSD 4.3 derived version of UNIX which comes with source code that is AT&T free. It only runs on 386/486 PC's. BSDI is currently shipping release 0.9.4 on CD-ROM for about $1000. + Over 650 copies have been sold. + Half a dozen distributors exist outside the U.S. Their DOS emulator currently only supports 8086 code. SCO UNIX binary compatibility is under development and will be ready by the summer. While BSDI is not fully POSIX compliant, they are working on it and expect to begin conformance testing later this year. A binary only release of BSDI may be available shortly after release 1.0 goes out. It will cost about $600. A Sun Sparc port of BSDI will begin once release 1.0 is out. One of BSDI's customers has already ported the 0.9 release to a Sparc, so this port is almost guaranteed to happen. An ATI Ultra VGA card, using BSDI's X Windows server clocks 85,000 Xstones. = * = Talk: WAFE WAFE is a replacement for TCL's TK library. TK implements Motif-like widgets, while WAFE uses real Athena or Motif widgets. While WAFE only works with TCL, WAFE has been designed to work with any application. WAFE has been used by the developers along with C and FORTRAN programs, Perl scripts, SQL-Plus, and other applications. WAFE provides an easy way to create an X UI for any program. A UI Builder application is provided with WAFE; it generates either WAFE or Perl scripts. WAFE can be ftp'ed from `ftp.wu-wien.ac.at: pub/src/X11/wafe/*'. = * = Talk: MIME --- MULTI-MEDIA EMAIL The MIME specification was created with the help of the X.400 people. In fact, MIME can be used as an X.400 transport layer. The MIME spec. appears to be very robust, yet not overly complex. We (JetForm) should definitely commit product resources to monitor further MIME developments. + The next stage of mail spec. development is that of Privacy Enhanced Email. I believe we would benefit from participating in the development of this specification. MIME allows new mail types to be registered. It would be invaluable for JetForm to spearhead the creation of a Electronic Form subtype of a more general EDI mail type. = * = Talk: OBJECT DATABASES Two types of Object Database technology are currently being developed and marketed: Extended Relational, and Object Oriented (OO). Since an object consists of Data plus Procedures, there arises a problem of procedure specification. + What language should procedures be written in. + Where can/should procedures execute, the client or the server. + These same issues arise with respect to types (i.e. classes). The Extended Relational DB's side-step (to a great extent) the language and type-evaluation issues. This is because they are NOT tightly bound to either the application or the language. On the other hand, OO DB's ARE generally tightly bound to the application and language: Procedure and Type specification and processing are shared. + Procedures may execute in either the client or the server. + Objects obtain their persistence via inheritance from a DB base-class. The application may then derive new classes which are immediately useable by the DB. + Because the application does not manage object persistence, the application is simpler to write: Write as though you are managing generic objects, and they will simply be persistent. That is, the database is effectively transparent to the application. OO DB's come in two implementations: + Memory-Mapped, pointer-based, implementations which overload the pointer de-reference operator so that they can page in objects from disk, directly into virtual memory. Objects are brought in from disk a memory-page at a time. + Object-Handle implementations which manage objects in a much more traditional manner. Objects are brought in from disk one at a time. Memory-Mapped implementations very quickly exhaust virtual memory, and so they do not scale up very well. Object-Handle implementations run a little slower. However, virtual memory exhaustion is not an issue. = * = EXHIBIT HALL HIGHLIGHTS PageSat Inc.: + They offer a satellite delivered USENET newsfeed. + This is a full newsfeed, over 50 meg/day, including most major regional groups from around the world. + Cost is $1800 US to purchase the necessary hardware; with no additional charges for 2 years. Beginning in the third year there will be a subscription fee of $30 per month. + Users with access to email can request that files be sent to them via the satellite link. This means that if you are now paying connect time to ftp large files from other Internet sites, then you may be able to reduce your connect charges by using this email service. + I believe even a company like JetForm could benefit from this service! + Get info via `email@example.com'. ClariNet: + They are an electronic news & information supplier. They offer: - UPI wireservice - An electronic newspaper published in USENET format - "Library Of Tomorrow," an electronic bookstore where fiction and nonfiction books can be purchased for about $5 per novel length work + Contact `firstname.lastname@example.org' for more info. Walnut Creek CD-ROM: + Offering a selection of CD-ROM titles starting at $25. + Contact (510) 947-5996 for info. O'Rielly Books: + Their latest offering is "Unix Power Tools." This looks like an excellent reference book for both new and experienced users. It's 1100 pages of UNIX tips. The programs and utilities referred to are supplied on CD-ROM (comes with the book), along with Sun3, Sun4, HP700, RS6000, DEC and SCO UNIX binaries. UUPSI: + Offering dialup Internet service (just like UUNET). Their basic email service starts at $25 per month. + Get info from `email@example.com'. Mortice Kern Systems (MKS): + The latest release of the MKS Toolkit includes full UUCP, via a TSR. + Get info from `firstname.lastname@example.org'. Free Software Foundation (FSF): + This is the GNU people. + Their latest printed manuals are available in the same binding as O'Reilly's latest books. The printed manuals make an excellent investment for regular users of FSF tools. + Info via `email@example.com'.