<$BlogRSDURL$>

Friday, May 21, 2004

Gnome Politics 

In my last post, I mentioned the debate going on within the Gnome community about what to use for a high level language. Since then, there have been a lot of postings from both sides of the issue. I think the two sides aren't really seeing eye to eye, and I'm not convinced that it's entirely innocent, either.

On the one hand, you've got pro-Mono people. This side of the debate often takes an attitude that has a kind of "Oh, this debate AGAIN?" attitude. "Why are we wasting time discussing this? We could just be writing code (with Mono)." This side also seems to feel that they are being told to not write code in Mono, which isn't, I believe, what they are being told.

On the other side, there's a concern that we are in a bad situation, where people want high-level languages, and it will be a disaster when different camps settle on different ones, since they won't interoperate nicely. As Havoc said, this is what will happen if no decision is made. But the issue isn't whether or not to use Mono, it's whether or not Mono should ever become a part of the core of Gnome. If the Gnome project were to decide now, one way or another, whether it was going to ever include Gnome, it would allow people to make choices with more clarity. People who wanted to write things in Mono would be perfectly happy to do so, and not expect that their code will ever get shipped with the default Gnome. As it is now, people are making choices as if what they want to have happen is what will happen, and it's going to end in tears for someone.

However, this isn't a debate Mono fans want to have right now (and Nat Friedman pretty much said as much). Whatever the reason for this oddly SCO-like delaying instinct, it does have another effect. By delaying the decision, Mono benefits from this uncertainty with respect to the Gnome project's decision; people will continue to write more and more software with Mono that is meant for the Gnome eco-system. When it does come time to make a decision, there will be so much Mono-based software that it will be hard for Gnome to turn it all down.

People who are against the adoption of Mono should be aware of that.

On the other hand, Red Hat has been accused of "Stop Energy" tactics. I think this is largely bogus, because Red Hat is simply being careful and wise, and trying to win people's hearts and minds on this issue, instead of just plunging ahead with some course of action as some others have. What possible reason could Red Hat have for wanting actual stasis in the Gnome code? However, there is an effective counter that anti-Mono people could play that doesn't involve "Stop Energy." And I imagine it would be much more successful than trying to win this through debate.

The counter is simply to start creating the type of software infrastructure that currently makes Mono so attractive to Gnome hackers for Java (or the platform that they would otherwise propose). The Mono hackers did a huge amount of work getting Mono so solid, and so well integrated with the Gnome environment; the similar work was never done with Java. I believe there are factors that made .Net more attractive to those hackers than Java, but Java is probably good enough if it were given a bit of work. (If Mono is not chosen, it'll be a huge shame that the developers hadn't spent that time fixing up current open-source Java projects and optimizing them and creating bindings). In any case, it's not at all too late for Red Hat or Sun (or anyone else, but they'd be the most obvious proponents) to do this and start laying this foundation. Ximian spent a lot of money developing Mono, and then developing interesting open source software with it. If Red Hat and Sun want to fight effectively against having Gnome integrated with Mono, they should do the same.

Updated: I just realized that when I say that I think "it's not innocent," it makes it sound like I think these are bastards trying to hurt free software for their own gain, or something. I don't think that's the case at all. Their software's all open source, and it's all great. The debate is about whether or not the thing they wrote should be given away for free as part of another project. I think that's a fantastic thing to do. Really, I think they think they're right, and want to win here. For various reasons from technical to yes, financial. Nothing wrong with that. In particular, I've always been impressed with Miguel de Icaza. I once wrote some code for GTK, and he noticed my patch and wrote me to tell me to copyright it in my name, and get credit in the authors file. I was impressed that he'd even noticed, but I was also impressed that he then sent me a follow-up email taking some interest in who I was. Unfortunately, I just think he's wrong about the long-term wisdom of this strategy. I guess the good thing here is that if we can choose the right thing to do here, whichever one that turns out to be, even the people who are on the losing side of the debate should benefit.
Comments:
It's funny how this is an echo of the larger problem that people are still supporting and developing for KDE (as far as I know). With Sun shiping Gnome it seems to be the clear choice. An API in C is so much more useful to other languages than an API in C++. KDE should have died from just using C++ alone... yet it still kicks. Surely all of the cool stuff like Konqueror and whatnot could be ported, as Gnome absorbs KDE. But, so is the problem with the OSS world, where there's no way to organize to avoid stupid dilemmas like this. (Perhaps more in the industry will go with Gnome-only... as the industry can actually show that it can organize.)
 
Great work!
[url=http://qpjkswxt.com/dllj/adma.html]My homepage[/url] | [url=http://yxfybwqs.com/rsba/tmks.html]Cool site[/url]
 
Great work!
[url=http://qpjkswxt.com/dllj/adma.html]My homepage[/url] | [url=http://yxfybwqs.com/rsba/tmks.html]Cool site[/url]
 
Thank you!
My homepage | Please visit
 
Good design!
http://qpjkswxt.com/dllj/adma.html | http://cbmdgpbw.com/dtue/qaig.html
 
Post a Comment

This page is powered by Blogger. Isn't yours?