Path: gmdzi!unido!mcsun!ukc!acorn!ixi!ixi!pd From: p...@x.co.uk (Paul Davey) Newsgroups: comp.windows.x Subject: X conference SUMMARY [LONG] Message-ID: <PD.91Feb14165208@powys.x.co.uk> Date: 14 Feb 91 16:52:08 GMT Sender: p...@x.co.uk (Paul Davey) Distribution: comp Organization: IXI Ltd. Lines: 312 This article was written for the European Unix User Group Newsletter and is posted here for the benefit of those who could not attend. It was/is aimed at X literate, unix users/developers and does not cover all presentations at the conference. 5th Annual X Technical Conference. Paul Davey IXI Ltd. The 5th annual X technical conference was held again in Boston from Jan 13th to 15th. People from all over the world joined the MIT X consortium to exchange information and ideas at the premier technical X event. Three days of activity comprising formal presentation of papers, slightly more informal tutorials and informal Birds of a Feather sessions (BOFS) packed a large amount of knowledge into a small amount of time. Many topics of interest to application developers were covered, including Interactive User Interface Builders (seen by many as the next logical stage after current toolkits), PEX (The PHIGS extension to X), and the use of toolkits (including both Open Look and Motif). The opening talk of the conference was made by Aaron Marcus on `Future Developments in Advance Graphical User Interface Technology'. In his thought provoking presentation he covered such topics as Objectives, Metaphors, Design Factors and Cognitive and Navigation Models. Predicting future developments of HCI service centres, faster prototyping tools, and systematic design conventions. Among particularly interesting challenges for the 90's he included: Agents, automated synthesised personalities aiding users to access data in a familiar form, for example a TV weatherman. Complexity, beating the video recorder problem of bad and non standard interface design. Audio, use of `earcons' and other feedback Video, usage with computer graphics, difficulty of use and control INTERACTIVE APPLICATION BUILDERS A full day tutorial on Interactive Application Builders (IABs) gave 12 developers (by no means all of those working in this field) the chance to present a paper on their tools. UIMX made two showings under its own name and Hewlett-Packard's Interface Architect. IAB's were a key part of this years conference. It was pointed out that this will be probably the last year in which developers are likely to be as open in sharing their design aims and methods. By next year many more of these products will have emerged fully into the market place. Sun's OpenWindows Developer's Guide was the only dedicated Open Look UIB presented. This tool can produce PostScript code for Sun's proprietary graphics systems, or XView code, for the Sunview like custom X based toolkit, or OLIT code for the AT&T sourced Open Look Intrinsics Toolkit. Developer's Guide is already being used with Kanji text in Japan with other Asian languages soon to follow. Most commercial IABs produce standard Intrinsics based toolkit code for either Open Look or Motif. These normally produce stand alone `pure' MIT intrinsics toolkit code, though sometimes extra libraries are also required. Some toolkits do not use the standard intrinsics (they may still have widgets) and these must be seen as less standard than the OLIT and Motif based applications. European involvement is IAB's included interactive graphical user interface builders such as XFaceMaker, from DEC's Paris Research Labs, XBUILD, from Siemens Nixdorf and Ingrid, from Esprit funded INSEC in Portugal. Sadly Imperial College's XDesigner and Sweden's TeleUSE were not represented. Many people find that even the best of these tools still require at least an understanding of the basic toolkit principles underlaying them. Many tools only provide a framework for creating the initial user interface, without addressing the dynamic issues. SIMPLE TOOLKITS Several approaches for simpler forms of X toolkits were described. Among these were SUIT, a subroutine library of about 10 thousand lines of C allowing a GUI to be compiled transparently on Unix/X, Macintosh and DOS machines. Described as being designed to be quick and dirty the non intrinsics based toolkit is taught initially in 2 hours to undergraduate students with no widget programming experience at the University of Virginia. SUIT is available free to non profit and academic organisations. Another small and easy to use toolkit has been implemented by John Ousterhout from UCB. Taking an existing development tool TCL, a standard command language intended to be embedded in applications, he has added a custom toolkit called Tk. Tk is Motif like but is driven from the shell like command language. The first application so far is a windowing shell called wish in which a directory browser was constructed with 20 lines of TCL commands. An alternative approach was described by David Smythe of JPL in Pasadena. Carrying on a challenge suggested at last year's conference the X resource mechanism is used to describe not just resources (options) to widgets, but also the widget tree and the bindings to application code callback functions. The Widget Creation Library (WCL) is a lightweight (small) package of C code which allows interfaces using standard Athena, Motif (and soon Open Look) widgets to be constructed rapidly without writing any C or even compiling. WCL code to produce a Motif periodic table showing all the motif widgets is 20% of the length of the original program in OSF's UIL(User interface language). WCL has an important advantage over the other simple toolkits in that it can be easily expanded to use any widgets based on the MIT intrinsics. SUBCLASSING AND WIDGET INTERNALS Ralph Swick and Mark Ackerman gave a tutorial session on widget internals covering understanding and writing simple widgets and also discussed subclassing widgets in a talk to the whole conference. (Subclassing is the use of the object orientated features of the MIT intrinsics to reuse existing binary widget code by replacing or extending its component functions.) Since both are heavily involved with the development and support of the Athena widget set they set out to subclass Motif and Open Look widgets using only what is available to standard developers. With nothing but the documentation and header files they were confident that this would prove an easy demonstration since the MIT intrinsics were intended to support subclassing. However to quote their paper directly `... the minimal documentation was, alas, not sufficiently common to support this assertion.' To subclass effectively they found that sight of source code is required due to undocumented internal functions. This lack of even basic widget internals documentation was also raised at a BOF session of Motif developers. Vania Joloboff of the OSF explained that this was not a priority among OSF members, who are mainly hardware vendors not application developers. MOTIF Vania did however outline the benefits of the latest version of Motif (1.1). New features include a full validation test suite and caches gadgets for performance enhancement. UIL gains a Widget Meta Language used for generating the UIL compiler extending it to handle new widgets. UIL will also enter the core Application Environment Specification. New widgets include an improved file selection box simpler menu functionality and a single line text field widget. Another welcome change is the rewriting of the Motif style guide and documentation for the toolkit has been improved. Mwm will also handle multiple screen displays. Forthcoming attractions for version 1.2 include the promise of smaller dynamic data sections and to improve the response of Mwm on Xterminals. The major change will be in greatly increased support for internationalisation. X11R5 will provide an input method for compound character entry and this and other relevant standards will be used. An international text widget will be provided and source code should then be codeset independent. (The term Codeset rather than character set is used since for example, in Japan, three character sets are used at one time.) CUSTOMISATION Customisation of X toolkit programs via the resource database has been was discussed by Jim Gettys of DEC. Reaffirming the original intentions he pointed out that although customisation can be a nuisance, software is rarely perfect. Resources allow an application to be fine tuned to particular situations. Although support can be difficult, due to the extra permutations possible, resource using applications can be rapidly modified for unusual environments. Certain users of even ordinary software may need special treatment. For example some hardware may well have different keyboard layouts to that used while developing. Visually handicapped users and persons demonstrating software may need a larger font than was anticipated for normal use. Andrew Peebles of MIPS took customisation to a new level by presenting the concept of an application toolkit. Unlike a widget toolkit the application toolkit comprises modules useful to application users, not developers. The user is invited to take the application apart and assemble it in the manner that suits him or her best. Using WCL Andrew's team provided five high level objects with their own resources in an application toolkit called the visual debugger. This interface to debuggers can be used as a front end to any text driven debugger and can change its appearance from an xdbx clone to a video recorder metaphor. About 10% of the internal users have extensively customised the visual debugger and it has just been released as a MIPS product. Another issue of customisation was addressed by Chris Peterson, formerly of MIT. The resource database is a powerful tool, but is not a user friendly system. The large quantity of possible options and syntax of the database make it too complex for the average user. As a step towards solving this problem Chris described `editres', a graphical resource editor. Editres can display a tree of the widgets in a program, and can highlight them in the application and tree when a widget or widgets are selected. Resources can then be selected and changes made immediately before being committed to a file. Besides the graphical resource editor editres comprises a small library linked into the application and a protocol to transfer requests to the running application. A single line needs to be added to the source code to set up editres and it is expected to be released with X11R5. SERVER EXTENSIONS Jim Fulton of X terminal manufacturers NCD (Network Computing Devices) presented another proposal for R5. Since X terminals have no local disc space they currently obtain their fonts over the network via FTP or NFS. Different server font formats impede inter-operation and make new font formats (such as outlines) hard to install. The solution is a font server which supplies fonts to X servers. Intended to be simple but powerful the font server will be able to scale fonts further reducing disc space. Benefits include an increased ability to share fonts, and to make new fonts easier to support. John Weber from DEC described work on an extension to handle digitised documents under X. The extension allows compression (via G3 and G4 fax and JPEG standards) of images passed from client to server saving network bandwidth. Image storage is device independent and special display hardware can be accessed via the protocol extension. Low resolution browsing and interactive enhancement are supported for such applications as catalogues and X-ray or satellite picture enhancement. From England, Tim Glauert presented a paper on a synchronisation extension to X. This extension provides millisecond accuracy between applications allowing two or more clients to be run in step or for an X application to be synchronised with external multi media controls. PEX Three presentations on PEX were made this year, as well as a tutorial and BOF sessions. PEX stands for PHIGS Extensions to X, where PHIGS is Programmer's Heirarchical Graphics System. An ISO standard since 1988 PHIGS is an API (Application Programmer's Interface) for 3-D graphics. PHIGS is one of many possible API's that could be supported under PEX but the PEX-SI (Sample Implementation) has been coded to provide a PHIGS environment under X. Members of a team from Sun contracted to the X consortium have produced the PEX-SI server and API library. This has established that the PEX requires a few minor modifications but can supply support for a conforming and efficient PHIGS implementation. Presentations on both the API and server were followed the next day by an extension to PEX, PEXIM or PEX Immediate Mode by Jim Hardenbergh of Stardent. PEXIM gives an alternative to the display list approach of PEX, providing a closer system to established proprietary graphics such as Apollo's GMR3D, Hewlett Packard's Starbase and Stardent's Dore`. THE FUTURE It has long been frustrating that a high speed, high resolution graphics workstation can make one sound by going `beep'. Even under X, assuming the hardware supports it it may go beep at a different volumes or pitch. High quality audio is beginning to appear on workstations and a team from DEC in association with the MIT Media Lab have been applying lessons learned in X to an Audio server. Their view is that audio should be handled in a separate server, which requires multi-threading and support for audio abstractions hiding such details as encoding and sampling rates. Following X they are concentrating on `mechanism not policy' and hope to be able to provide an audio toolkit layer with which to build tools such as telephone answering machines, voice mail, speech recognition and synthesis and digitization From Japan, Hidyea Ichihara of NTT described research into multi-media applications with full motion video in multiple windows on an X display. A video recording of an experimental desktop conference terminal was shown comprising a general purpose workstation, audio video controller and video multiwindow controller, linked to the workstation by a SCSI bus. Sound is in stereo of course and moves with the location of the associated window. Hand written entry of data is also supported. Hand written interaction was also demonstrated by a group from IBM's Thomas J. Watson Research Labs. Investigating pocket book computers they are working towards the concept of a `fat clipboard', with input by stylus which writes an ink trail onto the screen. Besides a productivity increase advantages seen include easy drawing or sketching and the unobtrusiveness of the interface. A version of Lotus 123 adapted for hand written input proved 1.5 to 4 times faster to use. The team hope to produce a prototype X based portable this year. Once again the X technical conference provided a wide ranging forum for the discussion of the X window system. As someone lucky enough to have attended again I hope I have shared some of the benefits with you. X gathers more flexibility and power as time goes on. In the words of X consortium director Bob Scheifler, `It's been a long hard year'. -- Regards, p...@x.co.uk IXI Limited Paul Davey p...@ixi.uucp 62-74 Burleigh St. ...!uunet!ixi!pd Cambridge U.K. "These are interesting times" +44 223 462 131 CB1 1OJ