Last Thursday OSNews had the opportunity to meet Miguel de Icaza, founder of Gnome, Ximian and among other things leader of the much discussed, Mono project. Miguel is a talented and versatile developer but he is also a very intelligent businessman able to understand the industry on many different levels. Talking to Miguel guarantees that you are very quickly taken away by his enthusiasm and optimism and his thoughtful strategies and vision on how OSS will take over the world.
The patent issue
The discussion quickly got steered into the patent problem. Miguel is very aware of the patent situation in US today and the dangers this [will] mean for Free and Open Source Software (F/OSS). He acknowledges that most patents today should be invalid, as they were filed over trivial technical solutions, but the US patent office seems to be doing a poor job seperating the valid ones from the trivial ones. This situation creates many lawsuits every year in US and according to Miguel, this will only get worse with time. Apparently, for many companies, this is a fast way to make some easy money by suing other companies (over trivial technical matters sometimes). The F/OSS developer community hasn’t had the problem upon them yet, but as F/OSS becomes more and more popular, Miguel believes this will eventually become a real problem.
Regarding Mono and the Microsoft .NET patents, Ximian is now splitting the “non-free” parts of .NET in Mono, and so OS providers can decide if they want to include in their products the “non-free non-ECMA” portions or not. Apparently, even without the non-free portions, Mono is fully usable, complete with the GTK# bindings, database and other free parts. Miguel knows that a completely “clean” Mono will still find resistance from some OS/distro makers for political reasons, rather than legal or technical ones, and he is prepared for it.
Ximian met with Microsoft executives a few months ago — as part of a symposiuym — and it’s not a secret that Microsoft is aware of the Mono developments. Miguel explains: “If there is indeed a new technology that Microsoft holds a patent to and they do not explicitly allow us to use, we will remove that code, or rework the code in a way that does not infringe the patent. We do not like the current patent environment in the US, but we have to play by the rules.” Miguel also gave us a number of technical examples around Corba having technologies for years that Microsoft only now starts to be using in their products. “Longhorn’s Indigo or Avalon, all was done before by us and others”, said Miguel. “Most of the new technologies in Longhorn have existed in the past in one way or another, but they failed to get shipped with a vehicle as Microsoft Windows to users, so they live only on CVS repositories, old research papers, and old systems.” He has so many such examples it that makes him sleep tight at night and not worry about such things. Besides, “it doesn’t make sense to not create something just out of fear that it *might* infringe on some patents somewhere,” he said, meaning that if developers would be driven by this fear, no developer would be able to develop something today with this huge number of patents in US. But software development does go on, if more carefully than in the past.
Taking over the world
Because patents will most probably be the cancer of the tech industry in the near furure in US, Miguel is having an alternative plan on how to ‘take over the world’: starting with the third world. “Poor countries don’t have the money to buy and maintain Windows; this is where open source software is becoming a real and powerful alternative,” he said. More developed countries also use Linux: Miguel mentioned the 200,000 Debian machines in Spain running Gnome and many other smaller projects using Linux and OSS at many levels: schools, government applications, servers, even on home desktops. And long as EU won’t adopt similar patent laws like US currently employs, Miguel sees Linux (and F/OSS in general) becoming a major power in the industry, competing head to head with Microsoft in a few years. “Even the Linux desktop is almost usable today”, he said semi-joking and continued “if the whole world is using Linux in the future, US will have to ‘switch’ eventually too, regardless of patent problems. And when that happens, there’s no stopping”.
But Miguel’s world take over plan doesn’t only go through the third world first, but also through Windows. He believes that what matters are the applications (and the OS as an extension), and if people are using F/OSS applications on any operating system, this is a win-win situation for the F/OSS future. He mentioned the Mozilla, OOo and Gimp examples, applications that thrive on Windows as well as on Unix. Ximian is working on a native port of Evolution 2.0 to Windows using the WIMP engine to make the application look XP-native. Having replaced –with capable alternatives– the browser, the office suite and now the corporate mail client/PIM application on Windows, this situation can drive adoption of F/OSS faster. Miguel realizes that while, for example, OOo doesn’t have all the MS Office features, “it’s good enough” and that’s a great start for the majority of users.
Mono on Gnome and Mac OS X
We asked about Mono getting included with a Gnome of the near-future, but Miguel is not overly occupied by this thought. If the Gnome community would like to use Mono, great; if not, life goes on and Mono will find application on other parts of the industry’s ecosystem.
We asked whether a Mac OS X native version of GTK# or Cocoa# is planned, but the answer was negative. Ximian is not working on OSX native toolkit bindings (and he doesn’t think that Apple is working on something like it either), however all the other parts of Mono 1.0 will be able to work on Mac OS X natively (and with GTK# via X11). Miguel told us that Quark is using Mono for their next major Quark Xpress release! Apparently Quark is working on Obj-C bindings for Mono. However, the graphical toolkit bindings will be minimal (an update on this here), so he hopes that Mac enthusiasts will jump in to complete a full Cocoa# solution, or natively port GTK+ 2.x (“shouldn’t be too difficult,” he said) in order for GTK# to work on top (using the Appearance Manager) and without the use of the awkward (for many Mac users) X11 on top of Aqua.
Not everyone is as enthusiastic to use Mono though. Mr Curtis Sasaki of Sun Microsystems told us last September that there are zero chances of Sun including Mono in their Gnome-based JDS desktop. We asked Miguel what he thinks about this and he replied, “That is good news for the Novell-based Linux desktop! This means that they won’t be able to use the new Evolution, or F-spot or the handy iFolder. This adds more value to our solution at Novell.” He believes that the Glow project (an Evolution-clone based on OOo and Java) started out by Sun exactly because of Sun’s fear that Evolution will be using C# in the future, but Miguel is not concerned about Glow, as Evolution is already 4-5 years ahead in development, and he is confident that the high level language of C# will speed up their development even more. Besides, Ximian is also working to achieve interoperation between Evolution with OpenOffice.org.
We expressed the thought that the purchase of Ximian and SuSE by Novell must have being quite a shock for Red Hat — the number one Linux provider in US –, however Miguel is optimistic. The two companies work together on Gnome, and in fact, he believes that the relationship between the two companies is better now than it was in 2001.
Miguel is actually a Debian fan: “In terms of adoption, Debian is larger than anything else. What we hope to bring to the table ourselves is not direct competition to Debian, but an enterprise/commercially supported version of Linux.” He is aware of how widespread Debian is: “you can find Debian maintainers everywhere else in the world, something that isn’t the case for other distros. If anything, we want to *learn* and work with Debian as much as possible, given that its users are a huge contributor to enhancing open source in general.” “Its community commitment is fantastic, but is a very hard platform to support for an ISV,” he wrote last year on a paper.
We asked Miguel about Mandrake, and he said that Mandrake was kept a bit behind developments the past year because of their financial problems, a problem that happened because “they kept funding every F/OSS application out there that they found ‘interesting,’ without evaluating sensibly if some of that money can come back to the company,” Miguel said.
Gnumeric and desktop plans
The internal co-operation with SuSE and Novell is going great, we were told, with Nat Friedman (co-founder of Ximian) heading and steering the desktop happenings at Novell. Novell itself is moving on deploying SuSE Linux internally to more than 3,000 desktops, and that’s a very exciting moment for the company.
We asked Miguel about the Gnumeric spreadsheet, a project that Miguel started many years ago. “Jody Goldberg, the new maintainer, loves the project,” he said. Miguel is very happy with the developments of Gnumeric, he mentioned
that it is now possible to separate the GUI from the engine part, and to use Gnumeric as a library inside other applications.. When compared it to its KDE counterpart, Miguel said: “Last time I checked KSpread had more subtle problems: the computational engine was behind (no dialog box poping up, but definitely not as advanced as Gnumeric, but its not visually obvious from a screenshot).”
Near the end of our meeting, we asked Miguel to consider developing a home video editor, as part of Novell’s new desktop initiative. Miguel acknowledged the need for such a tool on Linux that is well-designed and usable by normal users, but he mentioned that “in the F/OSS world things are created only if the developer needs them” — a point he believes is one of the shortcomings of the F/OSS system. “Developers should realize that they don’t make applications just for themselves anymore,” he said earlier over our UI/usability discussion too. However, Miguel told us that he has already talked to Nat Friedman about a Ximian video application, and that the idea is under consideration while he asked us enthusiastically “and you do know what language that would be written in, right?”.
“GTK# on Mono, of course,” I replied smiling.