On The Insider: Mew Moon Pulls $140.7 Million
BNET Business Network:
BNET
TechRepublic
ZDNet

By Stephan Somogyi
Posted on ZDNet News: Feb 12, 2002 12:30:00 PM

COMMENTARY--When Sun first announced Java in the mid-1990s, it promised software could be developed once and then executed on any underlying hardware and operating-system combination for which a Java Virtual Machine (JVM) had been developed. Since then, the grand "write once, run anywhere" promise hasn't really been delivered, but Java has become successful in niches that Sun didn't originally envision, for example, building server-based Web applications.

Microsoft's .Net distinctly reminds me of Java in its early days, since there's a lot of buzz surrounding it, but it's unclear how it will evolve once it's out in the real world. What's more, .Net appears to be a far-reaching endeavor; the likelihood of some of its pieces failing and others succeeding is quite high.

MICROSOFT'S MAIN competitor in the PC OS business is without question Apple. And while Microsoft has been exhorting its Windows developers to transition to .Net as quickly as possible, Apple's in the thick of its own transition from the Classic Mac OS to Mac OS X. However, Mac OS X doesn't address the same types of developer issues that .Net appears to.

If Apple remains too focused on Mac OS X as an end rather than a means, and if .Net gets as much traction as it's likely to (given that Microsoft is throwing all of its considerable oomph behind it), Apple may discover a hole in its developer strategy.

Consequently, my ears pricked up last week when I read that the Mono Project was "exploring" bringing the fruits of its labors to Mac OS X. Mono is a software effort underway at open source developer Ximian that aims to produce a portable, open source incarnation of various critical .Net building blocks. Mono's basic idea is to provide this .Net-compatible plumbing for Linux, allowing .Net applications to run on non-Microsoft, open source OSes. Since Mac OS X is based on BSD Unix, there's no good reason why Mono's efforts couldn't benefit OS X as well.

In a message posted to several GNOME lists last Wednesday, Mono project leader Miguel de Icaza answered many questions that had been flying his way from within the open source community about why he was working on a technology that some feel is aiding and abetting Microsoft. Tucked away within his long reply, de Icaza mentioned that Mono might come to OS X.

I CONTACTED de Icaza to get more details. It turns out that parts of Mono are already running under OS X, but the larger engineering effort that would allow .Net applications to use Mac OS X's native Aqua user interface hasn't even started. In addition, the only processor architecture for which Mono has a speedy Just-In-Time compiler (JIT) is x86; Mono for PowerPC currently has only an interpreter, which runs much more slowly. At present, no one is working on a PowerPC JIT.

De Icaza appeared quite optimistic about delivering Mono on OS X. He guesstimates Mono will be running with a native UI--but probably sans JIT--on Mac OS X by this fall.

When I asked Apple about its attitude toward .Net, the company responded that Java is its platform of choice both for cross-platform development as well as Web applications, which need not necessarily be developed with Apple's own Java-based WebObjects frameworks. Apple also sees many developers coming over from the Unix side because of OS X's Unix-based underpinnings, a phenomenon confirmed by de Icaza, who described the growing proliferation of PowerBooks and iBooks in open source circles. Indeed, Apple's and Genentech's collaborative development of a G4-optimized version of the bioinformatics tool BLAST highlights the benefits of being able to take advantage of the wide availability of Unix-based software.

To be fair, Mono isn't the only .Net compatibility game in town. DotGNU shares many of the same goals as Mono, though the two projects are taking different philosophical and technical approaches to common problems. A quick search through various DotGNU lists archives yielded no substantive hits on Mac OS X, so it seems that Apple's new OS isn't a popular topic there. However, one feature the DotGNU toolset has that Mono lacks, and which is particularly pertinent to OS X, is a compiler that emits Java bytecode, which runs in a JVM.

This is another path to .Net compatibility for Apple's new OS, and one that may well lead to better performance in the short term, since Apple appears committed to the quality and performance of OS X's JVM. If the Mono project winds up producing a JIT for PowerPC processors, the competition between the two approaches will be interesting to watch.

WHILE APPLE has had notable success in attracting new developers to Mac OS X, Apple's long-term developer strategy doesn't appear to have a direct response to .Net's potential threat. Assuming that a UI-native Mono for OS X reaches completion, Apple would get .Net compatibility handed over on a silver platter, without having expended any time or effort of its own.

But Apple could significantly enhance its position by actively supporting Mono's development on Mac OS X--something which both Ximian and Apple are quick to point out hasn't happened to date--and offering an optimized version of Mono for OS X, just as it already does with many existing open source technologies.

It's been nearly a year since Mac OS X 10.0's release, and the OS continues to show great promise. Yet while OS X remains a work in progress, and Apple's engineers work hard to fill its remaining functional gaps, Apple should not lose sight of the bigger picture and pass up an obvious opportunity like this.

SponsoredWhite Papers, Webcasts, and Downloads

Talkback

Add your opinion
advertisement
Premier Vendor Content Whitepapers, webcasts & resources from our Power Center Sponsors
Learn more about tools to grow your business
The Business Essentials Guide provides you useful tools and templates to help grow your business and save you time with automated shipping solutions.
Save time with the UPS Business Essentials Guide
Reduce risk. Reduce complexity. Increase reliability.
A simplified IT environment isn't just less complex. It's also more reliable. Standardize on a single Linux platform with SUSE Linux Enterprise from Novell, and get the world's most interoperable Linux
Learn more >>
Keep Up With The Latest In Document Management with The DocuMentor.
Doc delivers the scoop on today's enterprise content management, printer maintenance, and all other issues related to document management. It's the DocuMentor Blog.
Learn more >>
The best support in the Linux business
If Linux is going to power your mission-critical applications, you'd better have the best support known to business. Novell was rated the top provider of Linux technical support.
Learn more >>
The more you simplify, the more you save
When you transition from your existing Red Hat environment to SUSE Linux Enterprise from Novell, you can recognize dramatic cost savings, perhaps as much 50%
Learn more >>
Microsoft Dynamics CRM Online - Free Six-Month Trial for Eligible Organizations
Microsoft Dynamics CRM Online provides fast online access, simple contact management and better sales performance for a low monthly cost - the best value on the market today.
Learn more about the free, six-month trial offer>>

White Papers, Webcasts, and Downloads

SmartPlanet

Click Here