The following is transcript of a forum that took place on Dec. 2nd '91 on
Center Stage, America Online. I have removed conversations between audience
members, mostly developers. At the end you will find a discussion that
appeared in the GW forum with Dasher, one of GW engineers.
It is important to note that Dasher's statements do not represent the
official policies of GW.
Following transcript was prepared by Jan C. Zawadzki (YahnZ)
GW JimI thought that I would start by providing some basic info
GW Jimabout who I am and about GeoWorks' SDK plans, which should
GW Jimanswer question that I'm sure you all have. After that we
GW Jimcan continue with your specific questions
GW JimMy name is Jim DeFrisco. I'm a Director of Engineering at GeoWorks,
GW Jimresponsible for the Software Development Kit project, which I assumed
GW Jimresponsibility for a couple of months ago. My other areas of responsibility
GW Jimhave been the graphics and printing portions of the system software,
GW Jimwhich I architected and partly implemented
GW JimSo, let's get right to it. Why isn't there an SDK available yet ?
GW JimThe 1.0 system software is a great platform for developing applications,the features we planned back in 1988. And
GW Jimwhile developing 1.0, we found a few rough edges in the design that
GW Jimwe are smoothing out for 2.0. We decided that it would be best to
GW Jimfocus on developing 2.0 and orient the SDK to develop 2.0 applications.
GW JimOur SDK will support application and library development in C with
GW Jimtools running on a 386. Version 1.0 of Ensemble was written on Sun
GW JimSparcStations in Object Assembly language, so part of the work for
GW Jim2.0 is to add a C interface to the system software and orient the tools
GW Jimto support development in C. We are also porting the tools from Unix to DOS.
GW JimWhat will the SDK include ?
GW JimThe primary components will be: complete system documentation, an
GW Jimextensive set of sample code in both C and Object Assembly, all the
GW Jimnecessary header/definition files, a programmable debugger, a linker,
GW Jiman assembler for Object Assembly, and various other utilities.
GW JimWhat will I need to run the SDK ?
GW JimThe development environment consists of two PCs, one to run the tools
GW Jimand another to test. The tools machine will need to be a 386, the other
GW Jimcan be any machine that can run Ensemble. We don't have specific specs
GW Jimlike hard disk size and memory requirements for the tools machine, but
GW Jimmy guess is that it will be about what you need to run Windows... The
GW Jimmachines are connected with a serial cable. To develop in C, you'll need
GW Jima compiler -- we'll support Borland and Microsoft initially
GW JimWhat about the beta test for the SDK ?
GW JimWe are planning to run a large beta group for the SDK. We will start theDK well before 2.0 ships, so that third part application
GW Jimdevelopment will be underway then. If you'd like to be considered for the
GW Jimbeta test program, either send some mail to "GW James" on PCAO or contact
GW JimJim Kirkpatrick or Mike Vargas at GeoWorks
GW JimAnd now the big question, WHEN ?
GW JimI'm not going to give any specific dates, since that often seems to backfire.
GW JimWe plan to contact potential beta test sites next month, and will start
GW Jimsending certain components of the SDK for review in early spring. I expect
GW Jimthe beta test to be in full swing by the summer.
GW JimWell, that's enough to start with -- let's continue with your questions...
KarenFOkay, Jim! Here's tonight's first question(s):
Question What is in the SDK? Is is compatible with current compliers? Which ones? Is it in a
Question form of a libary with source code or precomplied object files? The overview speaks of several
Question tools, what tools are now included in the SDK?
GW JimI think I covered part of this in my opening statement, but
GW Jimto review quickly we'll start by supporting Borland and MS C
GW Jimcompilers, then add more support later...
GW JimThe SDK will provide the necc. header files to access the
GW Jimsystem functions and objects,
GW Jimall the libraries are dynamically loaded, so there are no
GW Jimobject files to link with...
GW JimAs for the tools with the SDK...\
GW Jimthis is a very sophisticated tool, being completely programmable.
GW JimBy that I mean that it has an interpreted Tool Command Language
GW Jimincorporated, with which the user can extend the command set of the
GW Jimdebugger. We've used this to add special commands to examine
GW Jimcomplex data structures , for example.
GW JimAlso included are an assembler and linker, which support our
GW JimObject Assembly and executable formats. The linker imports
GW Jimthe symbol information from Borland and MS object files for use
GW Jimwith the debugger...
Question What level is the SDK designed for? Are we talking super-human
intellegence is required,
Question like the Windows SDK? Or is designed for the normal professional
GW JimOne of the parts of the SDK that is somewhat overlooked
GW Jimin this context is the system software itself...
GW JimIt has many high level features built in to make programmingunder the environment much easier than with Windows.
GW JimFor example, there are some common elements of many apps,
GW Jimlike a file selector box, which is completely implemented as part
GW Jimof the system. As a user of the SDK, you merely have to reference
GW Jimthis object in your source code, and you have its full
GW JimThere is a lot of documentation that will be covering
GW Jimall these objects and other libraries that will be accessible from
GW Jimany program..
Question What documentation will be included with the SDK (beta)
GW JimThe docs are one of the largest tasks we have to complete
GW Jimfor the SDK. There will be extensive documentation, with lots
GW Jimof examples, for the kernel, the 20 or so common libraries, and the
GW Jimobjects that are built in to the system. Of course, there will
GW Jimalso be docs on the tools provided, as well as tons of sample
YahnZ (1) I liked the "tons of sample code" part...
LuisFpr (1) Pratice for code breakers.
[Question here was about compatibility with current version 1.2 of system
GW JimIf you mean the GeoWorks Pro product that we recently
GW Jimannounced, then no. The SDK will be geared toward building
GW Jimapplications for version 2.0 of the system software, due next
GW JimIf you mean GeoProgrammer for the Commodore (a product we
GW Jimshipped 5 or 6 years ago), then no. The system is completely
GW Jimdifferent than the Commodore version of GEOS.
Question Will there be a "simple" SDK for Shareware people to use? Example
idea: A program to
Question allow running programs without shutting down GEOS.
GW JimNo, the SDK that we provide will be entirely to support
GW JimPC/GEOS applications.
Question does the sdk allow some kind of database devl.
does it work with any?
GW JimThere is nothing in the SDK that is specifically geared
GW Jimtowards database work. The system software has some support
GW Jimfor the syncronization that needs to go on for database work,
GW Jimlike file locking across networks, but nothing like an SQL library...
Question Any thoughts on supporting other languages, like Pascal? other
GW JimThe first SDK will support only C and Object Assembly, however...
GW JimWe plan to be here for a long time, so our plans for improving
GW Jimthe SDK incorporate quite a few additions over the next few years
Question What support will be available to programers on America Online?
Will it just be a
Question message board or will we get our own section?
GW JimWe plan on opening a new section specifically for the beta test
GW Jimgroup that will be developing using the SDK. That will be
GW Jimexpanded to include all PC/GEOS developers once the SDK is
GW Jimavailable for sale.
Question Borland has 2 C compilers now. One is Turbo C++ and the other is Borland C++. Which one
Question are you going to support?
GW JimThey both produce the same object file format...
GW Jimso we will be supporting both. One thing to point out is that
GW Jimsince our object system is incompatible with (and better, in
GW Jimour opinion) than how C++ is architected, we will not be
GW Jimsupporting the "++" part of those compilers...
Question Can you get away with creating GW apps w/o a second PC?????
GW JimNope, sorry. Do you really want your source code on the
GW Jimsame machine that is running code you haven't debugged ?
Question how well will it run under os/2, the sdk?
GW JimSince OS/2 2.0 supports DPMI, and the DOS extender that we
GW Jimare using also supports DPMI, it *should* work. We'll certainly
GW Jimtry it out before we send the SDK to beta...
Question Could you comment on the relative complexity of programming the
GeoWorks interface as
Question compared with programming MS Windows?would say that ...
[Point of explanation here. Many questions are submitted to the stage.
The selection criteria for questions actually answered seem questionable
at best. This question is not representative of the general audiance.]
GW JimI already mentioned the additional objects that our system
GW Jimprovides -- you won't find most of them under Windows.
GW JimThere are also a number of common libraries that provide a
GW Jimgreat deal of canned functionality for apps, including import/export
GW Jima graphic object library that supports interacting with objects (polygons,
GW Jimsplines) on screen, a bitmap edit object, an astounding text edit
GW Jimobject, a spell checker library, etc. etc. etc etc.
Question what is the aprox. # of alpha's and beta's being considered?
GW JimThe beta test will probably include in the neighborhood of
GW Jim100 or so beta sites. We want to have a large number, many of
GW Jimwhich we believe will be able to ship applications reasonably
GW Jimsoon after our 2.0 product is available.
Question Will file layouts of current programs such as GeoWrite and GeoDraw
be included with the SDK?
GW JimYes, we are planning to document those formats as part of
GW Jimthe system documentation.
Question So are we to understand that SDK created apps will only work with
GW JimYes, that is the plan. Version 1.0 was missing some of the features
GW Jimthat we felt were important, and we didn't want to ship an
GW JimSDK, have a developer create a 1.0 app, only to revise the
GW Jimsoftware to an version of the system software that their
GW Jimapp would then be incompatible with.
Question Will the SDK permit the develop. of a front-end or shell to
existind DOS programs?
GW JimThere is a DosExec function in our kernel that shuts PC/GEOS
GW Jimdown and executes the specified program. Writing something
GW Jimthat would remain in the GEOS environment and run the DOS
GW Jimprogram in a window (for example) would be a bit difficult
GW Jimwith a real-mode operating system. Maybe with 3.0....
GW JimThanks for the chance to be here, Karen. It's been fun...
GW JimI'm looking forward to many PC/GEOS apps from all of you
GW Jimin the audience ...
GW JimGoodnight, all.
KarenFThank you very much for coming, Jim! Goodnight!
OnlineHostYou are now in room "GeoWorks Chat Room."
YahnZHow can we get around that [email protected]#$ 2 PC req....?
YahnZGotta be SOME way..
YahnZDasher, WHY do we need 2 PCs? (I mean REALLY why..)
LuisFprI don't see why Windows can be dev. on 1 PC and GW can't.
GW Dashe Yahnnie, because debugging a multithreaded, multitasking system
GW Dashe that's running on a system that wasn't really designed for it required
GW Dashe more resources than we'd like.
YahnZ Dasher: Yes, but You ARE running a mutlitasking system...
Why not use it?
GW Dashe Y: plus, it's incredibly cool to debug using Swat,
which requires a lot of
GW Dasheresources on its own.
Ghost1Dasher: I was asking can you create your own UI's w/ the Kit
YahnZWhat resources do you mean: RAM?
GW DasheIn a real-mode system that's not in protected mode, an errant
GW Dasheprogram can VERY easily trash the debugger.
GW DasheBy resources, I mean having an entire other computer :(.
YahnZSo if you do not use the debugger you COULD use a single PC
(I know, I know...)
GW DasheYahn: right.
YahnZI mean you can compile and run on the single PC...?
YahnZHow much RAM does it need>
GW DasheSure... but no debugging.
Ghost1Ahh Jan, could you not protect sesstion if you used 32-bit DOS-extender?
YahnZOr if you ran everything in real mode with 8M RAM..?
Ghost1Because they are looking at the low common demonitaor
YahnZPearl: you WILL need Swat. Trust me.
GW DasheSend mail to GW Jim (I think) to request a beta test kit.
GW DasheThe answer is, since PC/GEOS runs in real mode, there's no way
GW Dasheto debug it on the same machine. The debugger can get
GW DasheBut, of course, the best possible solution would use
one machine. I don't think
GW Dasheanyone's delighted (except hardware manufacturers 😉
that 2 machines
GW Dasheare required. BUT: Swat is an incredibly powerful
GW Dashetool. You'll love it.
Ghost1I don't doubt it Dashe, but the low end market it will require a
one tools system