"You can code to the Linux Standards Base, or to Red Hat or SUSE," explained Joseph Cheek, CEO of Lycoris, in a recent IRC conference, "but it's a pain trying to support all these different systems. With AI2, you don't have to. You just ship your standard products and let AI2 do the integration for you."
"Lycoris is making an interesting play with AI2," says James Governor, principal analyst at RedMonk. Governor, who specialises in integration middleware and systems management issues, believes that Lycoris is attempting to create a third platform, one that is distinctly separate from both Windows and Linux. "AI2 is really about replicating Windows user experience for end users," he explains. "This is something that won't necessarily appeal to existing Linux users."
Traditionally, installing and working with commercial off-the-shelf (COTS) applications on Linux has been headache-inducing, especially for new users. Win4Lin Workstation is a good example: its installation routine creates a single desktop icon and no start menu entries, in addition to hard-coding hardware configuration settings without reference to actual hardware on the target computer. Other applications, such as Sun Microsystem's StarOffice, EMC's VMware Workstation and TransGaming Technologies' Cedega, suffer from similar integration problems. Lycoris points out in an AI2 white paper that the fault for these difficulties lies not with the software vendors but with the distribution developers, who have yet to agree on many key standards critical to tight desktop integration.
The AI2 system is designed specifically to address many of the common issues faced by end users when installing third-party applications. According to the white paper, AI2 is more a method of integration than an actual toolkit. The core of the system is standard Linux shell scripting, although AI2 provides a limited API and an automated method for launching these scripts, which in turn provide the actual integration functionality. Vendors can use the AI2 API to manipulate the desktop start menu, the control panel, and Lycoris's custom-designed My Computer equivalent, My Linux System. In addition, the API is able to provide vendors with details of the host computer's hardware configuration.
While the scope of the AI2 API itself is fairly limited, the fact that it uses standard shell scripts means that developers can construct highly complex configuration tasks quickly, without complicated coding. Because most, if not all, Linux applications are configured using standardised configuration files, it is fairly simple to manipulate applications' settings to provide maximum integration with the standards of the target computer. For example, Lycoris's Desktop/LX distribution ships with a Personal Files folder for each user, eliminating the need for applications to create their own document repositories or utilise the user's cluttered home directory. Normally an application would default to the user's home directory when opening and saving files; AI2 makes it possible to reconfigure the application to default to the pre-existing Personal Files area immediately, assuming that such a setting is available within the application's configuration file.
These sorts of finishing touches have always been possible with Linux applications, but only with changes to the underlying code to add the necessary changes for each supported distribution. AI2 offers vendors the ability to ship a product that will be instantly adaptable to its host environment as soon as it has been installed by the end user. Although the method, shell scripting, is hardly new or innovative, the idea that integration difficulties caused by the proliferation of competing Linux platforms could be overcome with a few simple scripts is revolutionary. Even applications with hard-coded defaults and no easily modifiable configuration files could be modified with minimal effort to take advantage of the AI2 concept.
Lycoris's white paper says that there are two main sets of scripts a vendor is required to maintain to allow its applications to be integrated with the AI2 system. Firstly, the AI2 system calls a recognizer script when the user logs in; unfortunately for Lycoris, there is as yet no way to automatically detect and install applications as they are installed. The recognizer script searches for the vendor's application, and returns the result to the AI2 system, which then calls the integration script if required. According to the white paper, the scripts can be easily distributed without reference to Lycoris, although the company says it can integrate third-party application support directly into its Desktop/LX platform on request.
Will it fly?
The key to the success or failure AI2 system may depend on Lycoris' willingness to port the application environment to other distributions. Although much of the integration that is possible with AI2 can be replicated with little difficultly on non-Lycoris platforms, some tasks, such as integration with the desktop start menu and control panel, are highly dependent on the underlying operating system. There are wildly different standards adopted by the various Linux distribution vendors, and the completion of some tasks on multiple platforms is also made more difficult by additional variables, such as the end user's desktop environment. Without a unified API to act as a bridge between third-party applications and the diverse Linux distributions currently available, the benefits of AI2 are minimal for software vendors and non-existent for users who choose a non-Lycoris Linux platform.
"While AI2 apparently provides some good functionality," says Governor, "it's not entirely clear how this new development will affect the market. Software vendors want to write to the platform with the most users, and given Lycoris's current market share, the competitive advantage gained from using the AI2 infrastructure would have to be huge for the API to become popular."
Porting the API to other distributions would allow software vendors to easily adapt whatever platforms their target audiences are currently utilising, as well as potentially unlocking a whole new market of non-technical desktop users. Unfortunately, Lycoris has no plans to commence a porting project. "AI2 is not going to be ported at this point," says Rus Bayne, vice president of sales at Lycoris. "It can't really be ported to other operating systems due to compatibility issues. It doesn't need to be, and it's not going to be."
To be truly revolutionary, the AI2 API needs to be re-implemented on as many major distributions as possible. If a software vendor could build a single set of integration scripts, bound to the AI2 API, and be sure that their software would be tightly integrated with a wide range of major distributions without any additional effort on their part, then AI2 would take the Linux software world by storm. While COTS vendors have already found ways to cope with dependency issues by internalising as many dependencies as possible, desktop integration has been a moving target for many years now, and a solution such as AI2 would go a long way to solving this problem once and for all.
As it stands, however, AI2 is a lock-in technology, although innovative, and unlikely to attract much interest from software vendors. Desktop/LX currently accounts for a very small portion of installed Linux seats, while desktop Linux itself is still a niche market; application vendors are unlikely to spend precious resources working with the AI2 system, however groundbreaking it might be, until Lycoris can provide them with a wider audience to sell their products to. And that means that Lycoris's new technology is in danger of being ignored by everybody except its competitors.
"Lycoris is trying to break out of the pack of desktop Linux companies," says Rob Enderle, principal analyst at the Enderle Group. "This is an interesting way to try and achieve that, but without major vendor backing AI2 is more of a science experiment waiting for someone else, someone with a brand and market share, to pick up their idea and run with it."
"In its current form, major vendors will back AI2 only if Desktop/LX suddenly becomes the number one Linux platform," says RedMonk's Governor. "Given that this is unlikely to happen, Lycoris' unwillingness to port their integration infrastructure raises serious questions about their ability to build a viable developer community around their new technology."
If Lycoris can successfully widen its horizons, the AI2 system has the potential to sweep aside one of the most pressing problems facing commercial Linux application developers, and at the same time increase the choices available to end users by encouraging more companies to consider developing commercial applications for Linux. For the company that controlled the API, the rewards would be great indeed, so for Lycoris, the danger is that a competitor will take its ideas, re-implement them and render AI2 impotent and irrelevant.
In the meantime, a larger vendor on the lookout for innovative startup companies might just snap up Lycoris. "Look out for an acquisition if this technology really works," says Enderle. "If Lycoris is right in claiming that the system isn't portable, it could mean that selling the technology or the company isn't an option, but I truly doubt that. If AI2 works as advertised the intellectual property could be very valuable indeed."
And despite the challenges inherent in its current form, Governor is optimistically droll about Lycoris' AI2 technology. "A Redmond company trying to dominate the market with a new API?" he laughs. "Go figure."