Mono and Wikipedia

by Miguel de Icaza

As of last Friday, Wikipedia started using Mono for indexing and searching the Wikipedia, it was tested first on one server and it is now being used on all three servers.

Wikipedia's search backend uses Mono and dotLucense, the same search backend that is used by Beagle Desktop Search. Previously, Wikipedia had been using GCJ and Lucene to do the searches but after some tuning, Mono became the new engine.

Mono 1.1.6 which was the originally tested configuration was slow, but version 1.1.7 introduced our simplified IO layer which improved IO performance significantly (2x-3x) and upcoming versions will an extra boost on IO, but most importantly the regular expression library (which MediaWiki uses) will also get a performance boost.

Mono: Debian and Ubuntu.

Mono is now on Debian/Unstable.

The details about this adoption are here.

Mark Shuttleworth announced today at his keynote in Guadec that Mono had been integrated into Ubuntu. He is looking forward to integrate IronPython into the distribution as well.

Usability in Gnome

Calum, I think I mentioned that Sun did usability studies, but I should probably stressed that more. I was refering mostly to the fact that we sometimes argue about usability, but do not have the data to back it up.

I will be eternally grateful to Sun's work on Gnome usability testing and of course its code contributions.

Posted on 30 May 2005

Best Guadec Ever

by Miguel de Icaza

This year's Guadec conference has been amazing. The organization has been fantastic, the volunteers great and the talks superb. All of the rooms are packed. Non-stop talking with people all day. Best demos ever.

Immendio, Fluendo and Movil (sp) are significant players at this conference. And the Nokia devices are very cute.

Am exhausted, going to sleep.

Posted on 29 May 2005

Ulrich Drepper

by Miguel de Icaza

Duncan today pointed me to Ulrich Drepper's blog (Libc and binutils hacker).

McVoy and Innovation

Just last night I was writing a response to his quote on MIT Tech Review but decided to finish it another day just to find this morning that he now has a longer rant in Forbes magazine, as incorrect and as naive as the Tech Review quote.

Will post from Germany my reply.

Posted on 26 May 2005

Nokia and Gnome

by Miguel de Icaza

The big news of the day is that Nokia has released their internet tablet. Effectively a tiny handheld computer based on Linux, Gtk+, an Opera/Gtk+ and GStreamer (I previously stated that they used WebCore/Gtk+, but I was wrong).

The developer site is very interesting:

This is the first mass-market use of Gnome technologies, this is *very* exciting.

Of course, its only missing Mono for extended productivity.

Posted on 25 May 2005

Lame Blog Gets 20 Lines of Changes

by Miguel de Icaza

LameBlog is 5% better today. It now supports multiple-posts per day, and uses the file time for the timestamp, includes prev/next navigation and it sucks 1% less.

Posted on 24 May 2005

New home

by Miguel de Icaza

I moved my blog to a new domain, it is now on a spicy new domain.

Posted on 24 May 2005

Dissent like its 2005

by Miguel de Icaza

Check ChomskyTorrents for your dissenting needs in torrent form.

Update: Fixed the previous link.

Nina Simone

Maria Laura just introduced me to Nina Simone, wonderful.

Galloway's Transcriptn

An transcript of the amazing declarations of George Galloway in the US Senate: here.

Update: Even better, there is a video.

Ex-UN weapons inspector Scott Ritter talks about the background of the hearing.

Posted on 23 May 2005

Cross Language Integration

by Miguel de Icaza

Lluis S´┐Żnchez from the Mono team on his blog produced two screencasts: (first and second) which demostrate how Mono allows code written in C#, Boo and Java to work transparently with each other.

The demo shows:

  • The latest MonoDevelop IDE in action: creating a project made up of components and libraries written in multiple languages.
  • Three different languages consuming the Gtk# API.
  • The Mono Debugger in action. The debugger is a library and there are two front-ends that consume this library: a GUI front-end as seen on this screencast and a command-line front-end.
  • MonoDevelop's new templates for Boo and Java.
  • Three different languages instantiating and inheriting code from another language.

The Java magic is achieved through IKVM and the GNU Classpath.

Read Lluis' blog for more information on the futures for MonoDevelop.

The screencasts: first and second.


Hisham has been working on Mono bindings for the Enlightenment (EFL#). You can find the bindings on the module "efl-sharp" on our repository.

Better Late than Never

Found about the existance of ccMixter: the Creative Commons site for sampling, mashing and sharing music.

Old iPod

I found a use for my old ipod. It will become a Linux-powered voice recorder.

Zoltan Takes on the The Last Frontier

Zoltan, hacker extraordinaire, has embarked on the last frontier.

Posted on 17 May 2005

Stuttgart, Pilsen, Prague, Paris

by Miguel de Icaza

I will be doing two keynotes at Guadec in Stuttgart and at the .NET Technologies in Pilsen.

I have strategically placed a few cities on this Eurotrip to visit some friends and meet with some developers in the way. If you want to join me for lunch, dinner to discuss Mono, .NET, Gnome, free software or Linux write me an email to my gmail account

The dates are as follows:

Update: Sorry about the dates. A bug in my brain prevented me from incrementing the month to June. The dates above have been fixed.


A few new ideas for C# are being tried out on Spec#. It is taking steps into building tools to prove the correctness of the code. This is done by integrating into the language things like pre-conditions, post-conditions, object invariants, non-null types and checked exceptions. A separate tool is later used to do a lint-like process on the program.

File Systems in C#

You can now write your own user-level file system in C# bindings are here

Paco, r0ml, Stephen in Boston

Tonight Ben and myself had dinner with Paco, r0ml and Stephen which all happen to be in town this week. Sadly I did not take any pictures, but Paco might have some images to share later on.

It was one of the most fun dinners I had in a while everyone had tons of stories to share. We went to Casa Romero one of my favorite restaurants in Boston. Ben ordered "shrimp with something". Only later he learned that "something" was a sauce of corn parasites. He seemed to like it.

Only today I found that r0ml's not only had a blog, but he was raised in Brazil as a kid. His portuguese is vastly superior to mine, even after having being married to a brazilian for almost two years.

Posted on 13 May 2005

Open Source Java, part 2

by Miguel de Icaza

After my post on Apache's Harmony project I have been watching the fireworks on the blogs and the mailing lists. One thing is clear: nobody quite knows what Harmony is supposed to be.

There are pros and cons. The main pro is that I discovered the BileBlog, a modern-age blog that reads like a good Jamie Zawinski opinion. In particular the flame about project Harmony is gem.

Unlike Mono, open source Java faces a big problem: there are a number of free commercial Java runtimes available for every operating system that matters. The group of people who would have contributed to a free java to scratch an itch are gone. From those who remain another large chunk will switch in a heartbeat to a commercial implementation the moment they run into missing features, scalability issues, the lack of a moving GC or a hard to debug problem.

So you must rely purely on free software advocates or people employed to clone Sun's Java for a strategic purpose.

To illustrate my point: Mark reports that for the two months leading to May 7th GNU Classpath had 299 commits and today is made up of roughly 900,000 lines of source code. Mono in the same time frame had 985 commits to its core class libraries and has roughly of 1,600,000 lines of code. The previous count is only for the core class libraries and does not include Mono-specific or Gnome-specific class libraries. The Mono effort is also three years younger than Classpath and five years younger than Kaffe.

For an open source Java effort to succeed, it not only needs to match the functionality of Sun's Java first, but it must offer functionality that is not available anywhere if it wants to attract developers to its core. Today there are probably two openings in this area. IKVM which makes Java and .NET run side-by-side and GCJ which turns Java code into native code.

Java and C#, CLI and JVM

Havoc last post bounces across every possible point.

I was not going to enter the language discussion on PlanetGnome, because it touches on too many topics. For one, I think that:

  • Some key libraries must remain written in C. And we (The Mono Group) have a very good framework for binding GObject-based APIs into Mono APIs.
  • We have a tendency to dump things into a library and hoping that every application will use the library to gain consistency.
    For example, recently a user mailed me to point out that although he can browse his files on a SMB share, he can not actually use any of his local tools to manipulate these files. It turns out that instead of doing the obvious thing, which was to ask the kernel to mount the file system the path we went down on was to use the Gnome-VFS to provide an SMB transport. And this works beautifully with the Gnome tools, but it does not work with any other tools.
  • Mono right now shines as a platform for developing desktop applications, and we want to make sure that the developer experience there is great. Once we have conquered that space, we can organically reach into other spaces, but lets first get the first generation of Mono-based GNOME applications rock solid and shipping.
  • I would very much like Mono-based applications to be part of the standard Gnome desktop release and get the stamp of approval of the Gnome Foundation. There is no mandate that all distributions must ship all the packages, so Red Hat can just not ship this.

I think my comments echo Mikael's post, which both Jeffrey and Havoc seem to have missed.

I wanted to follow up on a few things that Havoc mentioned:

  • Graydon's contrast of Java and C# GUI code is a passable rendering of Java source code into C#, but is hardly an analysis of the technical issues.
    For an actual technical technical contrast there is Dare's C# for Java programmers document and the eight-part interviews with Anders Hejlsberg.
    Last year I was invited to present to the Red Hat Java summit in Boston. My presentation at the time focused on teaching to a Java-savvy audience the differences between the languages Java and C# and the JVM and the CLI, I have uploaded the slides here.
  • The same universe of open source libraries being furiously developed for Java are being developed for .NET. Either direct ports, or re-implementations of the same concepts.
    Mind you, a lot of these open source technologies under development for Java and .NET give me a vu. I still fail to see the correlation between all this server code and the Gnome desktop.
  • I can only smile when I see that Havoc tells people to try Java 5 as an alternative to Mono. Specially considering that any use of Java 5 features will likely lock people into using Sun's proprietary Java.

Posted on 11 May 2005

« Newer entries | Older entries »