May 1998 Java News

Saturday, May 30, 1998
JavaSoft's revised the JDK 1.2 schedule. A fourth beta is now due on June 29th with final release scheduled for September 21, 1998.

Sun's also updated Walrath and Campione's Java Tutorial with a lot more Swing material and a redesigned web site.

Friday, May 29, 1998
Sun's released alpha 3 of Java 3D 1.1 for Windows and Solaris.

Thursday, May 28, 1998
Sun's posted an early access release of an updated Windows Just-In-Time compiler for JDK and JRE 1.1.6 that fixes a number of bugs. Redistribution is permitted.

Sun's released version 1.0.2 of the JavaMail API. This release fixes assorted bugs.

Wednesday, May 27, 1998
Live Software has released JRun 2.1 Pro, a servlet engine for assorted third party web servers including IIS, Netscape Enterprise Server, and Apache. JRun 2.1 Pro costs $295 and adds presentation templates, dynamic taglets, remote administration, and various servlets and source code.

The June issue of the Red Herring has a lot of insightful articles about Java.

Infoworld reports that Sun is reorganizing its Java efforts one more time. As near as I can tell there are now two main divisions, the Java Platform Group and the Java Product Group. The Java Platform Group will be responsible for standards and reference implementations of the Java Development Kit (JDK), the Enterprise JDK, PersonalJava, and EmbeddedJava.

The Java Product Group will be divided into a Tools Group, an Enterprise Software Group, and a Developer Group. The Tools Group will be responsible for Java Workshop and JavaStudio as well as tools acquired with Lighthouse Design and Sun's C++ and Fortran compilers. (How'd that sneak in?) The Enterprise Software group will be responsible for server software, Java WebTop, and the Java Web Server. The Developer Group will create a new Sun Developer Connection along the lines of the Microsoft Developer Network.

Tuesday, May 26, 1998
I've returned from my vacation on Block Island, and am now wading through 400+ email messages. Expect updates throughout the day.

Sun's posted version the specification for version 1.1 of PersonalJava. Version 1.1 optionally includes JDBC and RMI and adds internationalization support.

Sun's also released version 2.0 of JavaCheck which adds support for testing your products for compatibility with PersonalJava.

Sun's also posted version 0.9.1 of the JavaServer Pages Specification for registered members of the Java Developer Connection. The final 1.0 release is expected in June.

Sun's posted an early access release of the Java Internationalization/Localization Toolkit for Solaris and Windows on the Java Developer Connection. The toolkit includes four parts: Internationalization Verifier, GenMessage, MessageTool, and Translator.

David Engberg has released version 1.2 release of the open source Java compiler guavac in C++ source and Linux binary forms. This release fixes assorted bugs and increases Java 1.1 support.

Ron Rivest of RSA fame has published a new scheme he calls Chaffing and Winnowing for using message digest algorithms like SHA to hide data using a secret key without encrypting it. He claims it completely bypasses all U.S. encryption laws. I suspect the Federal government may feel differently.

Peter Bertelsen has posted Issue 9 of the Java Spec Report which updathes the errata in the Java Virtual Machine specification.

Apple posted the first early access release of Macintosh Runtime for Java 2.1 which supports Java 1.1.5. MRJ 2.1EA1 features various bug fixes and performance enhancements (though not all the ones demoed at WWDC). This release requires a PowerMac and QuickTime 3.0.

Monday, May 25, 1998
IBM's alphaworks has updated XML for Java to support SAX 1.0 and UTF-16 as well as various bug fixes and a few API changes.

Sunday, May 24, 1998
Michael Kay has released SAXON, a Java package that provides a layer of services on top of SAX including

Saturday, May 23, 1998
Version 19.69 of Clemens Lahme's Jacob, an Emacs based class browser, fixes various bugs and allows browsing to method callees.

Friday, May 22, 1998
Sun's posted early access documentation for JBUG, the Java Platform Debugger Architecture on the Java Developer Connection (registration required).

Thursday, May 21, 1998
Sun's posted the second early access release of the Java Communications API on the Java Developer Connection (registration required). This API allows you to write applications that require accessing a serial or parallel port. This includes talking to modems and smart cards. Applications include voice mail, fax, terminal emulation, printing, and the like.

Wednesday, May 20, 1998
JPython is an implementation of the Python object-oriented scripting language Python, seamlessly integrated with the Java platform. JPython will run flawlessly on any 1.1 compliant Java VM, so it should run on Macintosh with MRJ 2.0. Mizutori Tetsuya's JPython Runner for Macintosh is a launcher program for executing JPython classes or script files using Macintosh Runtime for Java 2.0.

Tuesday, May 19, 1998
IBM's Hursley Research Center has released several new ports of the JDK including:

Monday, May 18, 1998
ORO, Inc. has released version 1.3.7 of their networking class library, NetComponents. This version compresses the JAR file and fixes various bugs.

ORO has also released the third beta of OROMatcher 1.1. This version includes allows you to make substitutions a function of a match and adds thread shareable Perl5Patterns.

Saturday, May 16, 1998
Sun has released the $269 payware JavaSafe 1.0, a GUI, networked, multi-developer source code management and versioning system for Windows and Solaris. This competes in the same space as Microsoft's Visual SourceSafe. Although Sun doesn't say so explicitly, at least parts of this product appear to be written in Java 1.1.

Sun's posted the draft specification 0.9 of the new Java Advanced Imaging API which will become a standard extension to Java. This API provides the capabilities you'd need to write perform various Photoshop-filter like operations like image tiling, deferred execution, regions of interest, and many common point, area, and frequency domain operators.

Friday, May 15, 1998
Sun's posted a number of examples of the new Java 2D API in Java 1.2.

Mcgraw Hill has posted an online beta of Karl Moss's Java Servlets book.

Persimmon MLJ is a ML to Java byte code compiler. The first release is alpha 0.1 which does not yet support functors. Persimmon MLJ is available for Windows 95/NT, Sparc Solaris, and Alpha OSF/1 3.2.

Thursday, May 14, 1998
I'd like to start posting reader responses to various of my rants. However, U.S. law is quite clear that I can't republish private email, at least without permission. Therefore if you'd like to see your comments posted here include some indication in your email that I may post it like "OK to post this" or "publication OK". As usual, I reserve the right to select which letters will and will not be published, and to edit them for clarity, grammar, spelling, and brevity. The more thoughtful and witty your missive, the mbore likely I am to publish it here. For the most part, flame mail ("Die you ignorant, Microsoft running dog bastard! There is no God but Java and McNealy is its prophet!") is ignored unless it's exceptionally witty.

IBM's alphaworks has updated XML for Java to support SAX 1.0 and UTF-16 as well as various bug fixes and a few API changes.

Microsoft's released Internet Explorer 4.0.1 for the Mac.

Wednesday, May 13, 1998
Sun continues to use Java as a proprietary club with which to bash Microsoft. In the latest round of the ongoing bout, Sun has asked U.S. District Judge Ronald Whyte (the same judge who granted a temporary injunction ordering Microsoft not to use the Java compatible logo back in March) to force Microsoft to ship Windows 98 with a fully compatible version of Java. Furthermore, Sun asked asked for a separate injunction preventing Microsoft from shipping Java development tools such as Visual J++ "unless they generate only fully compatible Java software."

To rephrase what Sun is asking for:

  1. Microsoft must ship Java with Windows 98, whether they want to or not.
  2. Unlike every other Java licensee, including Sun, Microsoft may not ship Java that add extra platform dependent features.
In short, Microsoft may only do with Java exactly what Sun wants Microsoft to do with Java. When you put it that way, it becomes obvious just how ridiculous these requests are. They go far beyond anything Microsoft is contractually obligated to. What's going on is that Sun has found a judge they think will let them get away with murder, so they've decided to try murder and see what happens.

The exact details of Sun's request are unknown. Sun filed the motions under seal, which is a fancy way of saying that they're so egregious that Sun is too embarassed to let the world see them. However, going by Sun's press releases, Sun wants Microsoft to cripple its Java tools and implementations. Sun is allowed to add native code to Java Workshop to support Solaris specific features. Inprise can add native code to JBuilder to support Windows specific features. Apple is allowed to add native code to Macintosh Runtime for Java to support Mac specific features. Only Microsoft is to be prevented from supporting its platform of choice, and limited to producing pure Java.

I suspect Judge Whyte isn't as much of a patsy as Sun expects. I doubt he'll go along with this transparent ploy to single out Microsoft for special abuse. At least I hope he won't. Accepting Sun's allegations at face value would set a dangerous precedent, and be a disaster for developers. It would establish Sun's right to prevent shipment of any Java software it doesn't like.

I think pure Java is a good thing, but I think it should be up to developers to decide whether that's what we want or not. I don't think it needs to be legislated by the courts. The simple fact is developers have expressed collective disinterest in most of Microsoft's proprietary extensions. But the fact is, many of us do need to write single-platform applications. Why is it a good thing when Apple exposes the native APIs of Rhapsody (now MacOS X) to Java, but it's a bad thing when Microsoft does the same thing on Windows?

A truly open language like Perl, C, or Basic is not encumbered by any such restrictions. Vendors are free to implement as much or as little of it as they are able or willing to implement. They are free to add to or remove from the language as they see fit. And developers are free to choose the version that best meets their needs. But obviously, this isn't what Java is. Instead, Java is a closed, proprietary product owned by Sun Microsystems; and Sun Microsystems has demonstrated that it will use Java as grounds to sue its competitors if it can.

Today, Sun is suing Microsoft because, let's face it, nobody likes Microsoft. But if Sun wins its battle with Microsoft expect it to turn its sights to other competitors like SGI, HP, IBM, or even a resurgent Apple. Java is too important a language to be controlled by the whims of one for-profit company that sees it as a lever for gaining the proprietary control over APIs and operating systems that it always wanted but could never win in the marketplace. The bottom line is Sun hates Microsoft because Sun wants to be Microsoft. I don't think Sun will win. But if they do, expect them to be every bit as nasty, monopolistic, and unfair a competitor as Microsoft already is.

Tuesday, May 12, 1998
At Apple's World Wide Developer Conference Monday, Steve Jobs promised that Apple will bring Mac Java performance in line with PC Java performance by the third quarter of 1998. They'll also unify the various web browsers and IDEs around Apple's Macintosh Runtime for Java (MRJ).

Personally, I'm skeptical. Although Macintosh Runtime for Java is improving and I expect that Apple might reach the level of todays's Windows VMs by Q398, they're shooting at a moving target. The Windows VMs are improving too, and Apple is too far behind to catch up in a few months. Apple's stated goals for Q398 are Java 1.1.6 and acceptable AWT perfermance. By the time Apple provides that, the rest of the Java community will be working with Java 1.2 and hot spot compilers.

Also, as today's quote of the day alludes, Jobs announced yet another new operating system to be delivered in 1999. As for the previous flavor of the year, Rhapsody, it's scheduled to follow Taligent, Copland, and Gershwin into oblivion after an initial 1.0 release later this year that no one will pay any attention to.

The new flavor of the year is Mac OS X which merges parts of Rhapsody with about three quarters of the MacOS and is scheduled to ship in late 1999. Cynics will note that that's more than enough time for Apple to change its mind again. Apple desperately needs a new, modern OS and has for years. However I find myself wishing they'd just shut up and deliver the software instead of delivering more speeches.

Sun has posted beta 0.7 of the Java Speech API Specification. This release seems to clean up and systematize the API but doesn't add any major new features.

Bruce Eckel's updated the electronic version of Thinking in Java for JDK1.2 Beta 3. This handles changes in the Collections API and Swing.

Monday, May 11, 1998
Guy Brooker's released version 1.1.1 of his free DropMain, a drag and drop wrapper for running Java programs that expect file names to be passed in from the command line on the Mac using Macintosh Runtime for Java.

Sunday, May 10, 1998
Everyone who asked to meet me at JavaOne (which I didn't attend) might want to try getting together with me at PC Expo in New York next month. (June 16-18) An exhibits only registration is free with the code "YW98".

Saturday, May 9, 1998
U.S. District Judge Leonie Brinkema has dismissed Microsoft ally Wang's patent infringement suit against Netscape on the grounds that the Videotex system covered by the Wang patents is "generically and fundamentally different" Web browsers. This is very good news for the large community working on extending and improving Mozilla.

ComputerWorld reports that Microsoft's Visual J++ conference flopped with only about 225 total attendees. In a similar vein Mike Loukides of O'Reilly reports that developers at JavaOne expressed almost no interest in Microsoft Java tools. Despite all the hype in the press and online about Microsoft balkanizing Java, both pro and con, there seems to be little chance of it actually happening. Microsoft's efforts seem likely to fail for the same reason ActiveX failed: developers just aren't interested, and they aren't using the technology.

Friday, May 8, 1998
A new version IBM's graphical Jikes Debugger is compatible with the JDK 1.1.6 debugging API, and provides source code for programmers who wish to customize it.

Apple plans to release Macintosh Runtime for Java 2.1 Early Access 1 sometime next week. This version is supposed to be compatible with JDK 1.1.5, Swing, and features optimized java.awt.Graphics and threading. The AWT won't be much faster, but that's scheduled for EA 2 along with faster, asynchronous networking.

Several readers wrote in to tell me that JDK switching is included in the $799 professional version of JBuilder, not just the $2495 client-server version.

Thursday, May 7, 1998
Borland (excuse me, Inprise) has announced version 2.0 of the JBuilder Java IDE. This release supports Java 1.1.6 and Swing. However, it won't ship for several weeks yet, and no upgrade pricing has yet been published. Most of the new features Borland is hyping like JDK switching will apparently only be available in the $2,495 client server edition.

Wednesday, May 6, 1998
Sun's posted the a revised beta implementation of the Java Communications API for Solaris and Windows on the Java Developer Connection. The Java Communications API lets your Java programs talk to serial and parallel port devices like printers and modems.

Luca Lutterotti has posted a revised 1.0.2 swingall.jar file that includes work arounds for some Swing bugs encountered on the Mac.

Mark Fardal is compiling a new FAQ list about Java on the Macintosh.

Tuesday, May 5, 1998
Sun's posted version 1.2 of the Java Shared Data Toolkit on the Java Developer Connection.

Sun's released the first beta of Personal WebAccess 2.0, a web browser for the Personal Java platform.

Sun's posted the first early access release of JavaHelp on the Java Developer Connection. JavaHelp is a standard extension to Java 1.2 for online help that supports the navigating, searching, and displaying of help files.

Monday, May 4, 1998
Sun's posted a new release of JFC 1.1/Swing 1.0.2 for JDK 1.1. This release adds a "small amount of API" to Swing 1.0 and includes better documentation and various bug fixes and performance enhancements.

Sun reports that copies of the JDK 1.1.6 and JRE 1.1.6 downloaded before April 30 had an outdated installer and an incorrect README file. The correct versions are available now. JDK users do not need to download it again, but anyone who's redistributing the JRE should download the new version.

Sunday, May 3, 1998
James Gosling is thinking about high performance numerical computing in Java. If you're intersested in throwing away your Fortran compiler, you should read this.

Paul Philion is collecting votes for the top ten bugs in Apple's Macintosh Runtime for Java with the hope that Apple will fix them in short order.

Saturday, May 2, 1998
Sun's released version 1.0 of the Java Internationalization Resource Manager (JIRM) to registered members of the Java Developer Connection. JIRM looks for strings in Java source files. Strings found are either converted into a form that can be accessed from localizable resource bundle file, or marked as non-translatable. Java 1.1 or later is required.

Friday, May 1, 1998
Sun's released JavaMail 1.0.1 via web and ftp. JavaMail is a standard extension to Java 1.1.4 and higher that supports client side IMAP and SMTP. This release prevents JavaMail from sending unencoded binary data may across email transports. This is also the first release available to users outside the US and Canada.

Mozilla source code is now available through Concurrent Versions System (CVS).

You can also read the news from April or March if you like.

[ Cafe au Lait | Books | Trade Shows | Links | FAQ | Tutorial | User Groups ]

Copyright 1998 Elliotte Rusty Harold
Last Modified May 26, 1998