Bump And grind
Beans don't just mean Heinz. As far as Java is concerned, they meanfurther opportunities for developers keen to capitalise on the language
Java is on everybody's lips these days. Everybody's got to have a taste of it - especially since Microsoft decided to license the technology and gave it an instant boost of credibility overnight. As one programmer who develops graphics databases on the Web says: 'Before that, people weren't too sure about Java, but now everyone's getting into it.'
As a Mac-loving Windows-hating developer, he adds with a bitter twist: 'Java is going to save Microsoft's bacon. I think Sun will come to regret the decision to let them get their grubby paws on it.'
Microsoft has certainly gone Java mad. 'Java is a great language,' says UK Internet tools product manager Mike Pryke-Smith. 'We knew a lot of developers were getting interested in it, and we have a good history of developing the best implementations of the most popular languages - such as Visual Basic and C++. We intend to do the same for Java.'
Some may quibble whether Microsoft does the 'best implementations', but there is no doubting the company's enthusiasm to engulf Java, and make it come to be perceived as its own wee baby. 'What Microsoft wants to do is create a situation where, two or three years from now, people say "Thank God for Bill Gates. Without him we wouldn't have Java",' says the embittered programmer.
In many respects, Microsoft has to succeed in making Java its own, and succeed in getting the majority of Java developers on its side. It wants to absorb Java into a redefined OS strategy based on Active X technologies, which will give the Windows OLE component model a new lease of life on the Net. Sun, meanwhile, is peddling a purist view of Java that offers platform independence - a proposition many developers find attractive - and a platform-neutral, portable Java component API called Java Beans.
That's why Microsoft is putting such energy into its Java products - particularly its just-released Visual J++ development tool, which has been given an introductory price of u79. The survival of Windows as a serious programming environment depends on the uptake. Redmond can't afford to see three million Visual Basic programmers and nearly one million Visual C programmers being lured away by graphical Java tools from the likes of Borland and Sun.
'Anyone who is working with Java owes it to themselves to try this product,' says Pryke-Smith about Visual J++. 'It has development wizards, debug facilities in the browser, and fast design time compilation. And because it's within the Developer Studio framework, existing programmers can go straight in and get familiar with it quickly.'
Time is of the essence in the Java tools market. After all the hot air of the past six months, getting things out and adopted is now the strategy of most of the leading players - all except Borland, which is taking a longer term view. Expect at least another three to six months before Latte is finally brewed - and expect a lot of hoopla when it arrives. It's being written from the ground up entirely in Java and, according to Borland internet tools product manager Jeremy McGee 'it will be the easiest-to-use and the fastest development environment on the market.' But that's still manana.
Symantec is currently the Java tools market leader with an estimated 67 per cent for its u99 Cafe product. It offers a straightforward text-based implementation of Java class programming - something that will appeal to C programmers, but not to those looking for the easier to use object-oriented environments. Symantec expects to release a Visual Cafe product this month which will appeal more to the masses.
Paul White, product manager for internet tools at Symantec, says: 'There's a lot of C++ being developed, especially in the big corporations. Everybody wants to get into Java and see what it can do. Visual Cafe will also be a lot easier for the uninitiated to get into and the big take-up will come with that.'
White is unfazed by the release of Visual J++. 'Microsoft optimises everything for Internet Explorer, and people don't want to be tied into that,' he argues. 'We're browser and platform independent. That's what developers want.'
Sun and others have also put out initial offerings (see box) that distance themselves from Visual J++. The Sunsoft Java Workshop development tool, released just a few weeks ago, aims to dramatically speed up Java programming.
'Ours is a browser-based product that lets you develop graphically within the browser, thereby speeding up development of interactive applications on the Web,' says Paul Bellchambers, product marketing manager for development tools at Sun. 'Programmers don't want the hassle of developing within one environment and then switching to the browser to view the results.'
Microsoft's big problem is getting developers to commit to Active X, the environment that uses a slimmed down version of OLE specifically for the Internet. It has promised to make the Active X specification an open standard, but has seemed to drag its heels by delaying until October an open meeting to establish the standards body to administer it.
IBM has said it may commit to Active X, once Microsoft is seen to deliver on that promise. But Microsoft has reported that legal difficulties have delayed a final decision on what will be included in the standard. Pryke-Smith says: 'The delay was purely accidental. It proved harder than we thought to get everyone together to create this standards committee.'
Why not offer to have it administered by an existing standards committee, then? 'We've decided not to use an existing committee, because there could be members who might attempt to stifle the development of Active X,' he says. Sentiments such as these suggest Microsoft wants to put itself in the paradoxical position of making Active X an 'open standard' governed by a committee that it at least approves of, and possibly controls.
In the end, Microsoft may have to risk giving up control, if Active X is to be widely adopted. And that's the current goal. 'We want to accelerate the adoption of components on the Web, and make Active X the component standard,' says Pryke-Smith.
But not so fast, say the detractors, there is an alternative. Sun's Java Beans proposal, incorporating Borland's Baja component model, is Sun's alternative component API for the Web. Bellchambers says: 'Active X is a redressing of the COM and OLE model, so that Microsoft can tie people into the past. But Java Beans will embrace OLE, COM and Corba (a client-server object model supported by the likes of IBM, HP, Sun and Digital).
A lot of companies now see Corba as the backplane and Java as the front-end on the Web.'
Essentially, Java Beans will let developers write Java applets and applications from reusable components that can interact with other Java code.
'Java Beans is primed to provide developers with a foundation for creating platform-independent components that are simple and lightweight enough to run not only on PCs, but on network computers as well,' says Paul Gross, Borland vice president for R&D. 'Java Beans opens up a whole new hardware category.'
White thinks that most developers will turn away from Active X. 'If you want inter-platformability you don't choose Active X. That inevitably leads you down a one-way street,' he says. 'Symantec is maintaining complete platform independence. Why should developers develop for just one platform when one piece of code will be useful across a multitude of platforms?
It's more cost-effective to develop for one customer and sell to many.'
Microsoft appeared to concede that this line of argument was persuading a lot of developers when it announced plans to deliver Active X for the Mac and Unix platforms. Both are due by Christmas, and both will need to be winners. If they're anything like turkeys, Microsoft and Active X will lose a lot of credibility. As an Active X briefing document frankly acknowledged: 'Many in the industry will be sceptical about this until we deliver.'
The company's internal Mac development team is working with Metrowerks, a leading provider of development tools for the Mac, and multimedia specialist Macromedia to take Active X on to Apple's platform. But the work on moving COM and OLE to Unix is not given as much strategic prominence as the Mac operation. That work is being done in conjunction with two companies, Bristol and Mainsoft.
Meanwhile, Microsoft and Sun continue to trade blows over their respective strategies, with neither of them really delivering a knock-out punch.
One side's perceived shortcoming is turned back against the other as a perceived weakness.
This is particularly true over the security issue. Microsoft has had to devise a code verification standard for 'anonymously authorised applets, DLLs and other objects distributed over the Internet' which could do destructive things to a PC. Sites are springing up all over the Internet with applets that serve as warnings to the uninitiated. One site, Xplode, downloads an Active X applet that switches off your PC.
'Active X is executable files that interact with the OS,' says White.
'Java is just bytecode. The Java Virtual machine provides a "sandbox" in which Java applets can play. They don't interact with the OS.'
But that, argues Microsoft, is precisely Java's shortcoming today. 'Because of that sandbox nature it is isolated from interacting with the system,' says Pryke-Smith. 'It has no way of accessing a database on the hard disk and so on.'
For many Vars and developers, database support is a key Web issue. 'A lot of Internet/ intranet development is about taking data and shoving it out on the Net,' says White. 'That's where it will take off. Online holiday as well as flight bookings, for instance, are ripe for Java developers, and database connectivity is the key to that.'
While Microsoft refers Web developers back to its tried and tested ODBC connections with Backoffice, Sun is developing proprietary database interfaces for Java called JDBC.
Ultimately, Sun's whole 'brave new world' strategy for Java may be its Achilles' heel. At least Microsoft hopes that developers will opt for evolution rather than revolution and go with Active X. Pryke-Smith says: 'Active X lets developers integrate existing code with Java applets. Most developers in the programming market use more than one tool. They will buy Visual J++ to use alongside others - like Visual Basic and Delphi - and Active X lets them integrate the code from all these programming tools.' Active X is the 'glue' that binds everything together.
Perhaps the most salutary warning of all is the message currently coming out of Borland - definitely the tortoise in the race against the Microsoft and Sun hares. McGee emphasises Java's current immaturity and instability, and suggests that the really powerful Java tools won't be with us until well into next year.
'The technology has a little way to go till it matures,' he says. 'Release 1.1 of Java will give better performance and robustness. Java is not yet suited to the kind of applications that are mission-critical, right now.
Developers will need to be sure of it first, before they do a lot of the stuff they want to do with it.' Choosing to travel down one path or the other today may be highly premature.