Issue 1-24, May 22, 1996

Be Engineering Insights: BeBox Demo—Take 1

By Steve Horowitz

Although everyone at Be has demonstrated the BeBox at one time or another, it's safe to say that when the score sheet is tallied, the author's name will loom above all others in sheer number of demo performances. This isn't necessarily a statement that I would like to have scrawled on my forehead in green ink, but it does place me at a vantage from which I can offer a few suggestions that you might want to consider when you demonstrate your own BeBox to your friends and colleagues.

We've spent a lot of time writing about and discussing the features and capabilities of the BeBox, with its dual-processor hardware and fresh new operating system. However, by far the best way to truly understand what makes the Be OS™ unique is to see a demo.

I like to start a demo by stroking the magic chicken bone that I hold between the second and third toes on my right foot. Then I turn to the Browser. Besides being an obvious choice on a freshly booted box, the Browser is reasonably self-explanatory; this helps people to relate (and compare) what they're about to see to machines they've already used. A good way to do this is to open and close a few folders. Not only does this demonstrate the hierarchical file system, which is a touchstone for most folks, it also gives people a feel for the general responsiveness of the Be OS.

Next, I like to drag a folder window around the screen, thus demonstrating our "live" windows: As the window moves, its contents move with it—there's no "outline dragging." Resizing a window is next; again, the window's contents are updated as more or less of the window is displayed. As you're doing all this, you can explain that the live windows are implemented without the use of a "backing buffer," that each window is running in a separate thread, that when you resize a window an "update" is automatically generated, and each background window updates its contents asynchronously.

As a sobriety check, mention the database (lock the doors first). Use the Browser's Find panel to easily construct a query—I like to look for all files greater than 900K that contain the letter 'e'. When the query window opens, display the files' path names by choosing the Path item in the window's Fields menu. This demonstrates that the file and folders were collected from all over the hard disk. Double-click a path name to open the named file or folder, and change the name of that file or folder so it no longer meets the query criteria. Like magic—or like a well-crafted integrated database—the file is removed from the query window. This can be inordinately impressive, so do it a few times.

Step up the tempo a bit: Open the Mailbox icon and start a movie. While the movie is playing, start a piece of audio mail. (See page 90 of the "Be User's Guide" if you don't have any movies or sounds in your Mailbox.) Once the movie and sound are going, show that the system is still quite responsive by opening a few folders and pulling down some menus. This quick glimpse at multimedia is but a tease. Stop the movie. Stop the music. We'll return to them later.

Moving to the apps folder, the first application I always launch is FontDemo. First resize whatever font comes up (assuming it's not a bitmap) and show how you can resize, shear, and rotate the font interactively. Then click on the "Cycle Fonts" button and show that even as you cycle through all the fonts in the system you can still adjust the font attributes and resize the fonts very quickly.

CDPlayer is the next application I launch. First, play different tracks from a standard audio CD. Next, record some music directly from the audio CD onto your hard disk: Click on the disk icon and use the track's time representation and preview button to isolate the portion of the track you want to record. Point out that the size calculation is computed dynamically as you adjust the length of the piece you're going to save.

The Mandelbrot application is a good example of what two processors can do when they work together. Explain that the Mandelbrot calculation is designed to run in two threads, one for even and one for odd scan lines. These threads are "assigned" to the two processors automatically by the OS. I like to make it clear that this assignation isn't permanent; when it's time for a thread to run, the system runs it on whichever processor is available.

Once you've recalculated the Mandelbrot set a number of times (by repeatedly dragging across portions of the window), bring up the Pulse application. Pulse shows that, indeed, both processors are working simultaneously; and, by turning off one of the processors (by clicking on the processor number in Pulse), you can show the performance difference between a single-processor and a dual-processor machine.

Move to the ImageViewer application. (To show this best you need to be in 32-bit color mode.) The first thing to do is open up a couple of 32-bit TIFF images from the "images" folder (this is one of the optional items from the "Be OS" CD-ROM). Make a selection in one image, and drag it into the other. Drag a selection into a folder window to save the clipping as a file. Drag the file into another image—the saved clipping is automatically overlaid on the target image. All of this is made possible through the BMessage object.

The Flight application is a good demonstration of some simple 3D rendering in a joystick-controlled game. (I prefer the 8-bit version of the demo; the 32-bit version looks better, but it isn't as responsive.) For kicks, try flying with one hand (on the joystick) while dragging and resizing the game window with the other (using the mouse). Try flying, resizing, and singing at the same time. Ask your audience to join in.

Another game worth showing off is Innerstrike from Ex Algebra (look for it in the optional folder on the "Be OS" CD-ROM). You should run through the game ahead of time to figure out the configuration menus. The introduction is pretty impressive, with nice sound and 3D graphics. To get out of the game (at any time), press the Alternate and Escape keys. This will cycle through a couple of screens and then restore the screen to its previous state.

Now comes the grand finale. This is the trickiest part of a good Be demo, but it's also the most impressive. Here's what I suggest:

That's the basic Be demo. By far the most important thing in giving a good demo is to have fun. Joe Palmer, our director of hardware engineering, is a great example of this. Someone once said that "Joe gives demos with the confidence of someone who's never written software!"

If you have a demo version of your application, let us know. We look forward to showing off the machine with all of the great third-party applications that we'll see in the coming months.

(Note: If you're not up to speed on all the Be applications used in this demo, see "Using the Be Applications," which starts on page 65 of the "Be User's Guide." This section describes all of the Be applications in alphabetical order.)


Be Developer Profile: Communic8, Inc.

Like virtually every Be developer, Robert Currey is excited about the ground-floor opportunity the BeBox presents. “Based on what I'd heard and read, I was excited about the BeBox before I saw one. Then I saw a demo and—wow! The responsiveness of the machine while a whole mess of applications was stressing it out really demonstrated its power, and that made the opportunity that much more compelling.

Robert launched Communic8, Inc. a few months ago and is gearing up fast to deliver communications software for the BeBox, as well as for the Macintosh. Currently a two-person shop in Bellevue, Washington, Robert and his partner are having a blast working on the BeBox: “The speed is great, the clean architecture is refreshing, and the chance to get our hands dirty on a new hot rod makes us the envy of all our developer friends...” Robert did his college graduate work in the field of parallel processing and says, “The idea of having a parallel machine of my own is very appealing.

With the Internet becoming the worldwide communications standard, Robert is especially excited about BeBox connectivity. “The BeBox's Internet connectivity could prove to be a rich source of opportunity for both your product and mine.

Robert's first product will be Communic8 Mail, a scriptable e-mail application that will be able to connect to a number of different servers. In addition to standard Internet e-mail transmissions, Communic8 Mail will also know how to send and receive messages through America Online, through a fax, and will even record and send voice mail. Design work is almost done, and coding will begin soon, which puts product availability 12 to 18 months down the road.

Following Communic8 Mail, Robert plans to develop a scriptable PIM (personal information manager) for the BeBox. The PIM program will be tightly integrated with Communic8 mail; for instance, when a customer's e-mail address is updated in the PIM, Communic8 Mail will automatically use the updated e-mail address when sending a message to the customer from the Communic8 Mail address book.

His hopes for the BeBox? “I hope every kid in America wants—and gets —one.

For more information, send Robert e-mail at Communic8 at curreyr@halcyon.com.


Another Good Week

By Jean-Louis Gassée

Going to meet developers is always a source of trepidation for us. They merely hold our future in their hands. At Apple's developers' conference in San Jose, we were going to meet some of them in person for the first time, hear what they had to say about Developer Release 7, show the BeBox to new ones, and schmooze with old friends. At the end of the week we had learned more and done more than we expected.

The bad news is that each such event reminds us of the size and complexity of the engineering, support, and marketing task ahead of us. The good news is that we appear to be on the right track, if we are to believe developer feedback. Also, an intriguing idea came up in several of the many informal discussions that make up most of the value of such conferences. And, to cap the week, the BeBox received FCC Class A approval: This means we can now sell BeBoxes for commercial use. (Class B is for consumer devices. That will come a little later, probably in July.) We can now ship product to professionals almost anywhere, and to consumers in countries where FCC Class A is acceptable.

At the conference, aside from getting ribbed for the choicest bugs in DR7 (updates available on our ftp and web sites), we got very positive feedback regarding the advances made in both the API and the UI. In general, the Be OS is perceived to be easy and fun to program, even by developers for whom C++ wasn't the first choice, or love at first sight. I don't quite know yet how to best market ease of programming and expressive power, and I wouldn't mind getting suggestions, but it seems we'll have to get good at communicating these features of our product. This search for an effective, expressive power/productivity/fun message for Be OS programming has been made even more important by the availability of the CodeWarrior IDE on the BeBox, our first "tractor app" (I prefer the kinetics of the traction metaphor to the "killer" connotations, but I'll bow to usage if necessary.) At our developer meeting Jon Watte, the Metrowerks Be guru, gave a rousing demonstration of the combined power of CodeWarrior and the Be OS. He showed a sound editor he'd written in a couple of days and, on stage, in real time, created a new plug-in filter. Even after figuring in Jon's masterful skills and infectious pleasure with his craft, this demonstration makes a strong case for programming the Be OS. And while we can't ship a Jon Watte clone with each BeBox, we bundle a version of CodeWarrior on the "Be OS" CD-ROM. Actually, it's the full product but for one limitation, it builds executables limited to 64K. 64K is a lot more than we got used to thinking: The Be OS produces much smaller programs than what we see on older platforms. For a reference point, most of the Be demo applications we ship sneak under the 64K limit. Once we've cleaned up the traces of our most embarrassing programming habits, we'll put the source code for these applications on our Web site and on the "Be OS" CD-ROM for your editing and edifying pleasure. And when you're ready for the big time, $149 will get you the "unlimited" CodeWarrior and (if you buy now) four updates.

Another issue came up at the conference. Perhaps because of the concentration of Apple employees and Macintosh developers, one suggestion kept coming up in conversation. The friendly commentators aren't satisfied with the statement that we're committed to the PPCP/CHRP standard and that, as soon as the unified platform materializes, the Be OS will run on it and Be's hardware will evolve to a compliant multiprocessor implementation. Why wait, they say. Port the Be OS to a PowerMac or to a Power Computing Mac clone. Some features such as multiprocessing and richer I/O will get lost in the process, but you'll make more friends and more people will get to see the Be OS. The idea is intriguing, especially coming from friends in the Macintosh community. They note Apple appeared to sanction a port of Linux, why not the Be OS on a PowerMac while the PPCP platform gathers esteem? The technical details require much thought—how to get the information needed to map ourselves to PowerMac hardware. And, assuming the PowerMac port gets done, what are the marketing consequences? Meaning, if we can be forgiven for bringing up such a materialistic issue, how do we best use a PowerMac port to make our developers and ourselves more successful? An intriguing suggestion capping an interesting week.


Be Demo Tour: Be in Europe

Be's European team has been busy. Starting from their base in Paris, Jean Calmon, Christophe Droulers, and Georges-Edouard Beranger have taken the BeBox demo on the road. They have been keeping us informed on the reaction to the road trips, as accounted below:

Helsinki, April 12

Osma Ahvenlampi and Janne Kalliola took us on a tour of the HUT (Helsinki University of Technology) where we were to give the demo. Posters of the Be presentation could be seen everywhere.

The night before the demo, we went for a "sauna evening," a normal way to discuss business in Finland. We spent almost two hours talking about the BeBox, and then decided to have an unplanned demonstration of DR7 just next to the sauna —we powered up the BeBox right there in the hot steam. This was the "hottest" part of our tour in Finland: Twelve geeks, clad only on towels, looking closely at the screen and watching all the changes. A couple of fellows opened up the box and started poking around, already planning their modifications.

The next day, over 170 students crammed into a HUT lecture room for the demo. More than half the audience owned two or more computers —we were in the right place. A lot of them were part of the Amiga and UNIX/Linux communities; and almost all were disappointed (to put it politely) with Windows 95.

After a half-hour slide presentation of Be and the BeBox architecture, Georges-Edouard gave a 20 minute demo of the box. He was met with smiles and great applause at the finale. Then we had a Q and A session with good questions about MPEG, licensing, distribution, pricing, and so on. These folks were clearly serious about developing applications.

We spent another three hours meeting informally with members of the audience, and answered tons of questions regarding hardware (604, parallel processing, GeekPort™, MIDI, and so on) and software (the kits and media synchronization). After being told that the BeBox had the Metrowerks IDE built-in, one fellow started to write and compile an application right there.

Paris, April 16

After our Finnish trip we returned to France for a presentation at the EFREI (French High School of Electronics and Computing), where 800 students are working to get their electrical or computing certificate. The presentation took place in a lecture hall with almost 200 people -- that's a quarter of the school! Again, almost everyone owned a computer, and most were UNIX/Linux users.

After a short discussion of the Be project, structure, and products, Georges-Edouard gave an extended demonstration of the BeBox. The audience jumped to their feet at the end; they loved it! The entire presentation was planned to take two hours ... we stayed there for nearly five, giving side demonstrations of the Be IDE, BeBounce, Flight (which they really appreciated), and everything we could show on DR7.

By the time we got back to our offices, we already had e-mail with praise for the demo, requests for demos at other universities and high schools —and some commitments to buy BeBoxes.

Linkoping, Sweden, May 9

Linkoping is the site of the prestigious Computer Science University in Sweden. The 4500 students use 200 SparcStations, massive parallel computers, and even the most powerful Cray Computer in Northern Europe. (Part of the campus was built during the cold war; the buildings were designed to be used as hangars if necessary!)

There is a 500-member "geek club" there called Lysator (http://www.lysator.liu.se/). As in Finland, the Amiga is their ideal. Daniel Helmers did a great job preparing for our presentation by putting up yellow posters everywhere in the University, and even created a special mailbox to welcome and help visitors to the demo.

The demonstration took place in a lecture hall with 190 seats ... more than 320 people showed up. Again, the demo was met with tremendous applause. They loved the multiple workspaces with their dynamic capabilities (moving the BeLogo movie through different depths and resolutions).

The Q and A session lasted for more than an hour and a half, with questions about multiple user support, remote login, object request brokers, and object models to help support other languages. We then spent another hour talking one-on-one with the students. All the developer forms disappeared in a matter of seconds.

Creative Commons License
Legal Notice
This work is licensed under a Creative Commons Attribution-Non commercial-No Derivative Works 3.0 License.