Fast, cheap and good — Java speeds TreeFrog’s development
Storage expert Spectra Logic pounces on an opportunity impossible without Java
TreeFrog is Spectra Logic’s new line of low-cost tape libraries for small enterprises or cheap servers. The Boulder, CO, manufacturer of tape drive products needed a user interface for its new line, and it needed it in a hurry. Not surprisingly, the company turned to Java.
“We chose Java for its portability and ability to run multiple platforms,” says Britt Terry, library product manager at Spectra Logic.
Low-cost servers are among the hottest trends in networking today. They supplement rather than supplant the regular file servers, and they are usually spread throughout the enterprise. With costs ranging from 500 to 500, the price is right, and the servers have enough power, memory, and storage to support a department or specialized function such as acting as a Lotus Notes server.
Of course, just because the server is cheap doesn’t mean the information on it isn’t important. That information has to be backed up and Spectra Logic saw a marketing opportunity in the new trend — if the company could come up with a low-cost solution.
The traditional method of handling backup of remote servers is either to back up centrally over the network, or supply each server with a backup device to be run by users. Neither solution matches the needs of the new servers. Backing up multiple remote servers, each with several gigabytes of data, can bog down the network. Relying on users invites problems of its own; backups might never be done or won’t be done right.
That leaves an automatic backup device, such as a tape library, attached to each inexpensive server. But because the servers were inexpensive, the backup devices had to be inexpensive as well, certainly no more than the hardware cost of the server.
To meet the demand, Spectra Logic needed a completely new product, one with a lower selling price that was optimized for backing up distributed servers. One thing Spectra Logic quickly realized was that its existing product line was going to be of no help. Tape libraries like the Spectra Logic 10000 are fine for the enterprise, but they were much too expensive for the new market. For example the model 10000 featured the popular touch-screen GUI for management functions, but the user interface itself cost more than the 000 target price for the entire new library.
There’s more to replacing the user interface than just economics. The 10000’s touch-screen-based user interface was innovative when it debuted, but that was several years ago. Spectra Logic’s competitors had picked up most of the older innovations, and browser-based management was the new industry darling. Simply put: the interface needed an overhaul. What’s more, the highly distributed nature of the new backup systems means that remote management is much more important than ever before; users must be able to monitor backups remotely, and tasks like upgrading the firmware must move to the forefront.
And, finally, there’s the matter of portability. Much of Spectra Logic’s sales are to Unix-based systems. While designing the Web-based GUI to run under, say, Windows NT would be easy, designing and supporting a different version for each supported flavor of Unix promised to be a nightmare.
The result was the TreeFrog line of inexpensive tape libraries. To keep the cost down, Spectra Logic used a number of strategies, including:
- Inexpensive hardware design
- Travan tape technology (usually found in desktop backup tape drives)
- Java to write the new user interface
The TreeFrog interface, called the Virtual Control Panel (VCP), was developed in about eight months entirely by GUI Development Manager John Kranz and his team of five programmers.
Java has proven a plus for the Spectra Logic program. “If you’re looking at a multiplatform application, with all the supporting and testing issues, I certainly think we have paid off our investment [in Java],” Kranz says. “We’re poised now to release VCP on a lot of platforms. That just would not have been [possible with] C++. Development was quite a bit faster because of the multiplatform aspect.”
Spectra Logic’s programming staff is fairly typical. They range from those with previous object-oriented programming experience to “a bithead, an old assembler guy” to a woman fresh out of college who Kranz says is almost a specialist in Java. “Some made the jump [to object-oriented programming in Java] and some didn’t,” Kranz says of the team. “Those that did made it quickly and well. I know that all the developers on my team love Java. Myself, coming from C++ I’m 50-50 on Java because I really enjoyed having the tools on C++.”
While Kranz likes Java, he is less complementary about the available Java development tools. “The tools are so immature,” he says. “I would have like to have a better integrated development environment, especially on Unix. The debugger with the JDK is command-line oriented. That’s very tedious.” Kranz also criticized the available Java tools for a lack of robustness compared to what’s available for C++. “When you’re writing for Windows using Microsoft C++ 5, you’re using a tool that’s got four or five years of improvements,” he says. “It’s very robust, very full-featured.”
Part of this is a matter of how long the languages have been around. “I think when C++ first came out the tools were probably horrible also,” he says. “Since then you’ve had pretty good tools come along.”
“I’d say [Java tools] are getting better, faster,” he adds. But the future improvements don’t help you when you’re working on software today. It was particularly frustrating from Spectra Logic’s point of view that the better tools often weren’t available for Unix. “It’s a joy to use a product like Symantec Visual Café where you can walk through the code one line at a time and see what’s going on,” Kranz says. “The trouble with Café is that it’s not available on Unix.”