1998 24.05 2000

Vol.24 n°5 (#299) may 1999

(ddj_1999_05.jpg)

p.8 EDITORIAL

[author : Jonathan Erickson] #Edito

TABLE OF CONTENTS

FEATURES

p.19 OBJECT PERSISTENCE: BEYOND SERIALIZATION

[author : Timo Salo, Justin Hill, Scott Rich, Chuck Bridgham, and Daniel Berg]

Our authors describe techniques and frameworks necessary to successfully implement scalable object persistence for complex database systems. Much of the technology they examine has been incorporated in development tools ranging from VisualAge for Java, to EJB tools for WebSphere.

p.34 JAVA PROXIES FOR DATABASE OBJECTS

[author : Paul Lipton]

Java proxy technology lets you define database object schema using the database ODL. To illustrate how such a technology might be implemented, Paul provides examples based on the Jasmine object-oriented database.

p.40 VBSCRIPT AND SQL CALENDARS

[author : John Donovan Lambert]

John presents the VBScripts he uses for inputting SQL results into a web calendar, and discusses how you can port these scripts to Java, Perl, Cold Fusion, or whatever language you prefer.

p.50 THE CVS DATA FORMAT

[author : Cesar A. Gonzalez Perez]

The CVS data format stores cartographic data for a specific geographic area into a single file. Cesar examines the format, then presents a tool for converting CVS files into DXF format.

p.60 AGENT ITINERARIES

[author : Russell P. Lentini, Goutham P. Rao, and Jon N. Thies]

Instead of examining itineraries in the traditional way as a list of tasks to be performed by agents, our authors treat itineraries as a metaprogram — a way of programming an agent and inadvertently its goal. To illustrate, they'll present an itinerary that performs a database query.

p.72 JAVA AND DIGITAL IMAGES

[author : David H. Martin and Johnny Martin]

Capturing, storing, and retrieving images is an often-overlooked feature that many applications could benefit from. David and Johnny describe "Grabber for Java," an API that encapsulates the functionality necessary for video capture.

EMBEDDED SYSTEMS

p.80 THE SPARK REAL-TIME KERNEL

[author : Anatoly Kotlarsky]

SPARK, short for "Small Portable Adjustable Real-time Kernel," is a royalty-free, fast, tiny, portable real-time kernel. Anatoly describes how he used it to build a video bar-code scanner.

INTERNET PROGRAMMING

p.88 AUTOMATED TESTING FOR WEB APPLICATIONS

[author : M. Selvakumar]

The technique for automated web-user-interface testing presented here is based on HTML, JavaScript, and CGI, and implemented for Netscape Communicator 4.04 and Apache 1.2.

PROGRAMMER'S TOOLCHEST

p.100 THE VERSION CONTROL PROCESS

[author : Aspi Havewala]

Source-code version control is a set of working rules for code sharing that lets developers modify files in an exclusive way. As such, it is one of the most important, yet least understood, areas of software development.

COLUMNS

p.115 C PROGRAMMING

[author : Al Stevens]

Al ponders the question, "What's in an argv?" and speculates on why the answer is different for DOS and UNIX developers.

p.121 JAVA Q&A

[author : Lou Grinzo]

How do you run untrusted classes? Lou takes a look at a couple of different answers to this question.

p.125 ALGORITHM ALLEY

[author : Jon Bentley]

Last month, Jon presented techniques for analyzing the performance of algorithms. This month, he examines how code-tuning techniques speed up the various algorithms.

p.130 DR. ECCO'S OMNIHEURIST CORNER

[author : Dennis E. Shasha]

Dr. Ecco joins forces with the NSA, FBI, and other crime-stoppers to help fight web terrorism.

p.133 PROGRAMMER'S BOOKSHELF

[author : Gregory V. Wilson and William Stallings]

Greg examines Component Software: Beyond Object-Oriented Programming, by Clemens Szyperski, while William takes a look at Neil J. Gunther's The Practical Performance Analyst: Performance-By-Design Techniques for Distributed Systems.

FORUM

p.10 LETTERS

[author : you]

p.16 NEWS & VIEWS

[author : the DDJ staff]

p.142 OF INTEREST

[author : Eugene Eric Kim]

p.144 SWAINE'S FLAMES

[author : Michael Swaine]