.Net-To-Java Porting Made Easy
For most ISVs, the name of the game is market reach. In practice, however, the task is anything but simple. And if you ask any small to midsize ISV what stands most in his way, he will no doubt cite the demands of cross-platform support. It's a major roadblock to nabbing a more voluminous customer base.
Here's why: Customers today have disparate IT operating environments--many run Windows, while millions of others sport Java-based infrastructures. A fair number runs both. For the ISV, that means developing and maintaining different versions of their applications for each platform. Porting software from one to the other (not to mention building upgrades) is such a labor-intensive proposition that nearly all but the largest of the global ISVs out there find it untenable.
"Most commercial vendors do one or the other [.Net or Java] because they can't afford the engineering for two separate product lines," says Mark Driver, distinguished analyst at Gartner. "It's a full-time job doing one or the other."
Mainsoft, an 11-year-old firm known for enabling ISVs to translate Windows applications easily to run on Unix and Linux, hopes to alleviate this predicament by branching out to do the same for .Net- and Java-based applications. Mainsoft's tool, called Visual MainWin for J2EE, is a plug-in for Microsoft's Visual Studio.Net that allows developers building applications natively in that environment to translate them quickly into Java. Essentially, MainWin for J2EE cross-compiles a .Net application automatically into a Java application in a fraction of the time a real port would take and without forcing a rewrite of any code.
What's key, says Mainsoft president and CEO Yakov Cohen, is that all the source code stays in .Net form, so any changes that need to be made to applications over their life cycles do not have to be done once in .Net and once again in Java. Instead, the ISV can work inside the Visual Studio.Net environment, which a vast majority favor for development work. Any alterations made to the code will manifest in the Java version of its application as well.
From an ISV's perspective, that means not needing both .Net and J2EE developers on staff. Perhaps more significant is the time to market saved. Rather than the typical 12 to 18 months a requisite port might take, ISVs can use the Mainsoft tool to brew up a Java app in three to six months, Cohen says.
Ask Noam Fogel, vice president of research and development at InfoGate Online in Tel Aviv. InfoGate Online sells a suite of software applications for managing IP-TV services, such as video-on-demand for cable. Its applications are written in .Net, but the company began getting customer requests for a Java version of the software.
"One option we evaluated was writing [the app over] in Java ourselves, but that would have taken too long, and we'd have lost the project we were up for," Fogel says. Using the Mainsoft tool, the suite ported in 90 days, he says.
But Visual MainWin for J2EE has its limitations. For one, ISVs will see some degradation in the performance of the Java versions of their apps; in Fogel's case, it was akin to 10 percent. Additionally, Mainsoft's tool doesn't port every .Net application. It only works to translate ASP.Net applications.
The other huge elephant looming on the horizon is Longhorn, Microsoft's next-generation version of Windows, which effectively changes the development landscape with respect to .Net. Today, the .Net framework lives as a container on top of Windows; in Longhorn, .Net is a fully integrated piece of the operating system.
"Longhorn is a major inflection point," Gartner's Driver says. "So we tell ISVs to take a tactical approach to their .Net base now, because, in all likelihood, they'll have to revisit it all in three years [when Longhorn comes out]."