[154] in OS/2_Discussion
no subject (file transmission)
daemon@ATHENA.MIT.EDU (Bernie Thompson)
Fri Mar 18 13:49:56 1994
From: bernie@bjt105.rh.psu.edu (Bernie Thompson)
To: os2www@MIT.EDU
Date: Fri, 18 Mar 1994 13:48:40 -0500 (EST)
Chat Log
CILab Chat
in the Mac Developers Forum
on America Online
December 20, 1993
GUESTS: Jed Harris [JedHarris]: CILab acting Executive Director
Kurt Piersol [KurtP]: Apple OpenDoc Team
HOST: Christopher Allen [AFL MacDev], Forum Leader, Mac Developers Forum
EDITED BY: Christopher Allen [AFL MacDev]
(c) 1993 by the Mac Developers Forum/AOL--All Rights Reserved.
Distribution is allowed provided that this notice and all other
information in this document is left intact.
For a free America Online software for either Mac or Windows, and
a signup kit, call 1-800-827-6364.
The Mac Developers Forum can be found at keyword (command-K) "MDV".
KEYWORDS: component, integration, laboratory, cilab, opendoc,
compound, document, architecture, bento, industry,
alliance, apple, ibm, novell, oracle, sun, taligent,
wordperfect, xerox
12/20/93 7:05:53 PM Opening "CILab Chat Log 12/20/93" for recording.
AFL Allen : Tonight's guests are Jed Harris from
Component Integration Laboratory,
and Kurt Piersol from Apple's OpenDoc team.
After the conference you may wish to
download the "CILab Brief.txt" file in the
new files library.
So before we start with questions, let's let
Jed and Kurt introduct themselves and their
roles with CILab.
JedHarris : Hi, I'm the acting Executive Director of the
CILab. We exist to support component
software on GUI systems
We'll be providing source code for
various technologies to the industry.
KurtP : Hi, I'm Kurt Piersol, and I lead the Apple
design team that is
creating OpenDoc. We're also providing
sources to the other
CIL partner implementation teams. Ask me
technical questions.
JedHarris : If folks are interested in more info on the
technology and/or CILab, you can get it
via anonymous ftp and/or ftpmail to CIL.ORG.
Send mail to ftpmail@cil.org, with "help"
in the body.
AFL Allen : There is also a brief file called "CIL
Brief.txt" in the new files library. More
files will be available later.
Kujira : What does OpenDoc do?
KurtP : OpenDoc is a compound document system. It
lets multiple
applications work on the same document. This
means that
people can assemble documents with many
kinds of live data.
The OpenDoc code lets the applications live
together inside a single document.
JedHarris : The CILab supports OpenDoc because OD
delivers big user benefits from software
components, that is, separately developed pieces of
software that "plug together".
Kujira : Can you giove an example of some far out
usage that you forsee for OD?
JedHarris : Yes, very far out, I see a walk in the
virtual forest, where the birds, the trees,
etc. are all separate software components. We've
checked out the OD architecture to make sure
it will work in 3D environments with 3D
pointing, etc. How could we build virtual
reality if everything had to be coded into one
application?!
KurtP : In a slightly more practical vein, imagine
your system accessing multiple data
sources through multiple client/server connections
from within a single document. An entire
MIS system in a document!
BrianEP : Can the multiple apps simultaneously have
access to the same open doc?
JedHarris : Yes, they access the document through a
storage API that keeps them all in order.
Essentially it is a small object database.
However it doesn't (currently) support
concurrent access from
multiple users (eg. on a file server).
KurtP : It's more like they are running in the same
layer, together, sharing windows and file
storage.
Kodak999 : When will we see info on OD in the
magazines?
KurtP : The timing is not certain, but within a few
months there should be several articles in
various magazines.
AFL Allen : Who are the partners that have announced
support for OpenDoc now? What are they
providing?
JedHarris : Currently Apple, IBM, Novell, Oracle, Sun,
Taligent, WordPerfect, and Xerox are working
together to create CILab. IBM is
contributing SOM (System Object Model) and
doing the OS/2 implementation of
OpenDoc. WordPerfect is doing the Windows
implementation of OD (with help from Novell) and
providing OLE 2 interoperability. Novell
is providing network support for the technologies.
Also other vendors are doing "investigative"
ports of OD to their platforms. I should also
mention that there are a couple of UNIX ports
underway.
KurtP : Apple, of course, is contributing the object
protocols of OpenDoc.
JedHarris : Apple is also contributing the Open
Scripting Architecture, and Bento.
AFL Allen : If OLE2 support is included in OpenDoc, why
does the press keep characterizing OpenDoc
as "vs. OLE2". What is the real story?
JedHarris : We don't want to position it that way, but
the press loves a fight. More adrenaline.
We want to maximize interoperability across the
industry, and provide an open forum for
creating this technology. OLE 2 is a pretty
limited design compared to what people are doing
with their applications today.
KurtP : We've gone pretty far to assure that OLE
interoperability is possible for OpenDoc.
We think OpenDoc is a better technology, but we
don't want to cut OLE adopters out of the
story.
AFC RClark : I've often heard "OpenDoc" and "C++"
mentioned in the same breath. What's the
story for C programmers?
KurtP : There's a good story for C programmers.
OpenDoc is based on the SOM technology,
which is language neutral. This means that it
produces interfaces that can be used from C,
C++, or even languages like Smalltalk. It's very
cool stuff, and it means people can use
many different languages to produce OpenDoc
parts.
BrianEP : When a user double-clicks an OpenDoc doc,
under what process is the doc opened?
Is there a host application, or does one of
the contributing apps open it?
KurtP : This varies from platform to platform. On
the Mac, there's a process for each open
document. This "shell" is really just an
excuse to get a partition and start
getting events. There's
a "root part" at the top of every document
which is really in control. Did that make
sense?
BrianEP : Yes, thanks :)
KurtP : Oh, I see I forgot to mention that any part,
any application, can serve as the "root
part".
AFL Allen : You mentioned SOM. What is it?
KurtP : SOM is really an object messaging facility
which is designed to work with many
langauges. It lets objects written in one
language be subclassed by objects written in
another. Thus, you can have C++ objects
which inherit from Smalltalk objects, and
vice versa. They can all send messages to
one another. Even better, It can work over
a network, using the CORBA
standard for network object messaging.
OpenDoc uses SOM to hook the various parts
together into a single runtime environment.
AFL Allen : Is SOM/CORBA available now for Mac, or must
we wait for OpenDoc?
KurtP : It will appear when OpenDoc arrives.
JedHarris : SOM will be available on the PowerPC at the
same time (as will OpenDoc).
AFA Brian : When will all of this start arriving in a
serious fashion?
KurtP : We expect beta sometime on the early summer,
final as soon after as we can manage.
JedHarris : A lot of the technology is available now
from various vendors: SOM from IBM (not yet
on the Mac.) OSA of course is available
now, so is Bento.
AFA Brian : We hear about things like QuickDraw GX for
the Mac, promised long ago and still not
delivered is this actually going to happen?
Is Taligent going to incorporate these
technologies, or will it have
its own that it will use?
JedHarris : A big question...
OpenDoc has made all its milestones so far.
The spec is under serious change control
Taligent needs OpenDoc to integrate their
content with existing ("legacy") content.
AFA Brian : So Taligent will likely support all of this in
the form of backwards compatability?
KurtP : We're working with them now to assure that.
JedHarris : Taligent will likely support OD etc. in the
form of interoperability for existing
apps since it will run as a "layer" on existing
systems like AIX and OS/2.
KurtP : OpenDoc has been a pretty disciplined
project so far. We've used good design
methodologies, and have practiced good
engineering disciplines. Most folks at Apple
comment on how much progress
we've made. It certainly looks good, though
I say so myself.
AFC RClark : Comment, then a question.
I'll vouch that these guys have been doing
high-quality work.
we've already begun to develop training,
before Alpha, which we don't like to do
(usually) but I'm comfortable enough with
the SW and docs to start work early.
Now for the question.
(and, yes, I'm a bit of a ringer:)
How much interest are you seeing from the
usual commercial developers?
JedHarris : Major developers are very interested --
including the ones that aren't in the CILab
yet.
KurtP : Of course, we aren't yet alpha, so it's a
bit early for announcements.
AFA Brian : Sorry if this was answered earlier, but is
there a solid ANSI standard document to
which this new technology is being applied,
and if so, is the standard document "competing"
with any new standards that are currently
being worked on by ANSI that might
"outdate" this before it gets out the door.
JedHarris : ANSI isn't doing compound docs right now.
We are working closely with the Object
Management Group which is doing work in
this area. We are also working with X/Open
which has a quasi-standards role.
ANSI may get into the act later. We
are trying to use relevant standards
wherever we can such as CORBA, ISO 9070, etc.
AFL Allen : Isn't there something going on with Bento
and Hytime for instance?
JedHarris : HyTime ISO standard based on SGML uses
the Bento TOC. The IMA has adopted Bento
as a multimedia container and we will submit
OD to relevant RFTs in the coming year. So
we are very serious about standards.
AFA Brian : How can small (tiny, poor, no cash)
developers be able to get involved with CIL?
JedHarris : We want small developers on board. You can
joint our email lists now. We'll have a
subscription service for the software as we
ramp up our org. The FTP is free, of course.
We want to encourage membership, but you can
participate in a lot of the discussions, etc.
without being a member.
KurtP : Small developers are the reason we started
OpenDoc! We want to level the playing field
by making sure small developers can
interoperate with the big guys. There are
a lot of barriers to entry that OpenDoc
demolishes. CIL will always be
interested in getting active participation
from smaller developers.
AFA Brian : Jed, you refer to being a member. Does that
also mean that you have to commit some $ to
the cause?
JedHarris : Yes, we're planning to support ourselves by
membership $$, instead of royalties.
However, you don't have to pay to ship
products on OD or to look at the code,
just to vote, etc.
AFA Brian : Does Taligent have a similar
open document standard that they are working
on independent of anybody else (regardless if
they support backwards compatability)?
JedHarris : Taligent has a document *framework*
that should interoperate nicely with OD.
OD is not a framework -- it's an API for
components to interact. Kurt, could you
comment on the difference?
KurtP : The difference is how you go about working
to create a part editor. In a framework,
you write a subclass and fill in the methods.
In OpenDoc, it's more like writing an
independent app.
AFA Brian : If you aren't alpha yet, and you won't hit
beta until this summer or fall at the earliest,
I can forsee that the whole focus is going to
shift from all of this to
Taligent and their upcoming OS. I work at a
fortune 500 company, we have OS/2, Windows,
Mac, Unix, and a host of mainframes that
would make your head spin, but around all
of this talk the focus is
primed and waiting patiently for 1995 when
taligent ships. I can allready tell you that
they love PowerPC, and several from IBM are
already making a lot of talk. How is your
new technology going to fit into this
changing environment as a force to be
delt with rather than a nice option?
JedHarris : We believe that Taligent is great for those
who are writing apps from scratch but many
ISVs have to sustain an existing product
line on existing platforms,
and many customers won't be willing to
migrate right away from their existing apps
and content. So we think there will be a role
for OD to "bridge" between the monolithic
application world and the world of finer
grained object frameworks, possibly for a long
time. One thing we haven't stressed here is
the OD really gives the ISV a whole lot of new
business options, such as incremental upgrade
paths, OEM parts business, etc. This is only
possible because it offers *really* seamless
integration -- you have to see it to believe
it.
KurtP : Brian, OpenDoc will be the only document
architecture that works on ALL of the
desktop machines you mentioned, in a way that's
close enough to existing apps so that they
can be migrated to this new environment.
That makes it a force to be dealt with in a
business environment.
AFA Brian : Aren't you talking about a temporary
solution to a problem which will only exist
for a short period of time (say two years)
and then it is only really useful if everybody
from Sybase, Informix, Microsoft,
and the rest of the software world supports
this technology before the transition? Once
the transition is here, isn't it too late?
KurtP : If 5-10 years counts as temporary, then I
suppose you could say that. People just
don't throw out their existing applications
and OSs at that speed! We expect OD to have
a good long life.
AFA Brian : Fair enough :)
AFC RClark : I've noticed that AppleScript is also billed
as an integral part of OpenDoc. (At least on
the Mac). If I already know how to write a
scriptable application using the OSA, how
much of that knowledge transfers to OpenDoc
(and how much of the work will OpenDoc do
for me)?
KurtP : If you aren't a part that embeds other
parts, your code will basically work.
There's a little more work to do if you are
a container of other parts. Oh, and by the way,
the OSA foundation on which AppleScript rests
is going cross-platform as a part of OpenDoc.
OpenDoc does a lot of work behind the scenes
to make writing scriptable parts as easy
as writing scriptabel apps.
MarkHanrek : With respect to OD, is there any advice for
developers currently writing new
functionality which would help ease its migration
to an OD arrangement/configuration kinda thing?
KurtP : There are a few good ideas. First, don't get
too wedded to owning the event loop.
Second, make sure you've gotten your stuff
scriptable. It cleans up your code
in useful ways, and makes it more
competitive in OpenDoc.
Lastly, make sure you isolate any window
code so that you don't depend on owning the
entire window. Those are the best pointers I have
right now. Drop me a line if you have other
questions.
AFA Brian : Can you tell me how my application(s) that use ANSI C
for file i/o would benifit from OD?
KurtP : Well, we support full stream style I/O in OpenDoc. I
imagine you could quickly adapt your code.
AFA Brian : I am trying to honestly see through the smoke and mirrors
and see the true value of this technology. I have
been burned by Apple too many times with too many
technologies such as QuickDraw GX which was promised
to us two years ago. Sort of takes the fun out
of new stuff since the promise is all you are left
with when all is said and done. The only one that
that hasn't been that way is...well, I dunno ;)
KurtP : I can tell QD GX has annoyed you a lot, Brian.
OSU Stumon : Will OpenDoc be built into Bedrock or another object
framework so that the 1 person developped
app. is practical? Once developped a simple app.
for the mac but wouldn't do it alone again since
there are now appleevents, applescript, and other
concerns to worry about that seem to make the
problems of keeping up with standard app features
impossible. I see the number of things mac
programmers have to deal with mushrooming, and
little becoming simpler.
KurtP : Stumon, we have a bunch of one-person apps underway
right now. OpenDoc does a lot to help with the
"no human could handle all of this technology" problem.
Instead of adopting every new API, you'll often be able to
embed something that does.
AFA Brian : What about Bedrock? Wasn't that supposed to do that
for you as well?
KurtP : Brian, Bedrock will still do some of that. It's a
difference in focus. Bedrock focuses on giving you
basic applications cross-platform, while OpenDoc
is more concerned with allowing you to embed many
kinds of content and editors in your app.
Each has its uses and advantages.
AFA Brian : Then shouldn't the target be getting into the
libraries of cross platform tools and into the
hearts of operating systems rather than expect to have
millions of developers jump in and buy/obtain
the libraries and recompile things to work with them?
An integrated solution is much more favorable,
and in my humble (hehehe) opinion much simpler to
implement and make successful.
KurtP : It depends on your definition of integrated. OS
implementations are becoming more layered as time
passes. OpenDoc is likely to become
one of those layers. Don't imagine that just
because OpenDoc isn't an OS it can't be integrated
with one very well. The design has a million
hooks for the OS developer, and a lot of replaceable
components under its API.
AFA Brian : Hmmm....now, what happens when one application has
a document saved under OD yet the other application
has no idea of what OD is. What happens in this
situation? (ie Newton)
KurtP : We have a published standard file format, so the
other app can read it. OpenDoc's file format is
going to be completely open and specified. It's based
on Bento, which is already published. When OD ships,
we'll talk about the extensions to
Bento that comprise the OD document model.
AFA Brian : Are we talking late 94 or mid 95 for this?
KurtP : Mid to late 94.
AFA Brian : Is OOP required to use this?
KurtP : Sort of. The API is object-oriented. However, there
will be C headers as well as a language neutral
interface definition language (IDL).
AFA Brian : I'm sorry, I just want something real, as I am sure
you can understand :) My name is on the Metrowerks
manual, so it isn't exactly old stuff to me ;)
KurtP : Believe me, no one wants something real more than I.
I've spent the last 4 years building up to.
AFA Brian : How much overhead are you looking at for an
application? For example, there isn't much room on
a newton for an application much less ram (or so it
seems, hehehe) but I am sure things will change,
and metrics will still be important :)
KurtP : OpenDoc technology looks like it will take up
about 250k of space, loaded once on the machine.
Take this number with a grain of salt, since a
lot of things can happen to make the number
larger during implementation.
Every OpenDoc process will share that code.
AFA Brian : So it will be a dll?
KurtP : Oh yes, it will be a "dll", or "code fragment" as the
runtime guys call it.
AFA Brian : hehehe, they do have thier own language, don't they
KurtP : Well, someone's gotta make new words.
Otherwise, we'd run out.
AFA Brian : Are you planning on going to MacHack this year to
evangelize OD and the like?
KurtP : If I can. We'll see how my schedule is running.
AFL Allen : Jed, Kurt, do you have any closing comments?
JedHarris : Thanks for the questions. Remember you can
reach us via email: I'm jed@cil.org
KurtP : Drop me a line on AOL, at KurtP, or
piersol@apple.com, and I can probably
answer any technical questions.
AFL Allen : For information on the CIL mailing lists,
check out "CILab Brief.txt" in the new files
library.
KurtP : Thanks for stopping in to chat, folks!
AFL Allen : Ok, thank you very much Jed and Kurt!
Hopefully you'll come back sometime and
catch us up to date on progress!
MarkHanrek : Thank you.
KurtP : Count on it!
AFL Allen : G'night everyone, and thanks for coming to
our conference tonight.
12/22/93 8:35:45 PM Closing Log file...
..