Confused about the EU constitution?
Typically, we think of a constitution as a document that embraces the highest ideals of a people; laying out clear guidelines for safeguarding civil liberties and the rule of law; not a compendium of perks for big business and their cronies in high finance. The EU constitution simply hands over more power to an ``unelected'' class of euro-parasites who want to suck the life out of the social welfare system that has raised the standard of living for the middle class to the highest in the world. The French were smart enough to say, ``non!''
From here. It is a fun read.
Posted on 31 May 2005
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 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.
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
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
Duncan today pointed me to Ulrich Drepper's blog (Libc and binutils hacker).
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
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
I moved my blog to a new domain, it is now on a spicy new domain.
Posted on 24 May 2005
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
Check ChomskyTorrents for your dissenting needs in torrent form.
Update: Fixed the previous link.
Maria Laura just introduced me to Nina Simone, wonderful.
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
The demo shows:
The Java magic is achieved through IKVM and the GNU Classpath.
Read Lluis' blog for more information on the futures for MonoDevelop.
Found about the existance of ccMixter: the Creative Commons site for sampling, mashing and sharing music.
Zoltan, hacker extraordinaire, has embarked on the last frontier.
Posted on 17 May 2005
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 firstname.lastname@example.org.
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.
You can now write your own user-level file system in C# bindings are here
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
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.
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.
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:
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:
Posted on 11 May 2005
Jamie correctly points out that the idea of having the search functionality present at all times without popping up an annoying dialog box predates Firefox, it has been availble on Emacs and XEmacs forever:
Emacs search functionality is also a bit more evolved at this point than Firefox (in an Emacs kind of way). Anyways, I can not wait for more desktop applications to use this model for searches.
Gonzalo has posted some details on the evolution of Mono's performance for WebForms and WebServices here.
Summary: Loading a test that shows a directory listing without any caching enabled has gone from 30 requests per second a year ago to 155 requests per second as of Mono 1.1.7. Check the details on the incremental improvements that got that performance.
Posted on 10 May 2005
To get the law approved, legislators used a clever hack: the actual RealID thing is not being discussed or debated, instead it was just hidden inside another piece of legislation which will likely get approved (some military budget).
Bruce Schneier, security and cryptography expert also has some negative things to say about the plan, but focuses more on the lack of security that this will bring and comments on the legislative hack:
If you haven't heard much about REAL ID in the newspapers, that's not an accident. The politics of REAL ID is almost surreal. It was voted down last fall, but has been reintroduced and attached to legislation that funds military actions in Iraq. This is a "must-pass" piece of legislation, which means that there has been no debate on REAL ID. No hearings, no debates in committees, no debates on the floor. Nothing.
ID cards have successfully been used in totalitarian regimes to impose the will of those in control. Am not saying this will be the case in the US, but I figured I might share some perspective:
Of course the situation is not the same in the US. In Lebanon people are pretty much "born" into their political party, as their political party is very much tied to the religion.
Probably other developed nations of the world have National ID documents and they have been very happy with it, I have probably not paid attention to those.
My point is that its a resource easily abusable by those in control. If you care about these issues, you got less than 48 hours to call your representative.
Posted on 09 May 2005
Very amusing: the Medium Lobster sets the record straight on the invasion of Iraq.
Also from Fafblog: Great Moments in History: God Hides...
Some people fell in love with the idea of REST-based web services. But they mistakenly confused REST as `encode the operation anywhere you want, send and parse the document in any way you feel, hey we can do whatever we want as long as we use http'.
The problem was that they did not follow the directions in the small print, and the Google Accelerator was the first application to byte them in the ass:
Well, you didn't listen to me, did you 37Signals? Did you? Now Google releases their Web Accelerator and your application is broken. Apparently you used GET to delete items from Backpack and when Googles Web Accelerator pre-fetches that URI in you web app, items get deleted. Let's make this clear, Google didn't break your application, your application was broken, Google was just the first person to point it out to you. Do you feel the pain? Do you feel it?
This is a good example of something that people predicted would break (Dare has a post here).
Not being a web developer, I just kind of watched the debate without much insight on what was going on until now.
Posted on 08 May 2005
For quite some time there have been a number of open source Java virtual machines implementations, it could be easily understood that each project was trying out different ways of implementing the virtual machine or had different goals, milestones or requirements.
All of these JVM efforts at least shared the class libraries (which is a large component of a Java VM) in the form of the GNU Classpath, and this certainly helped these communities collaborate.
The Apache Foundation is now starting up a new effort (Harmony) to put together a virtual machine and its class libraries under the Apache License. The FAQ posted is a bit short on the motivations for this effort. I can only speculate that this was done to avoid the side effects of class libraries licensed under the GPL-with-exceptions or the LGPL which make people nervous.
Depending on how this process is managed, this could either become a big delay in bringing a full free software/open source Java implementation (as people take sides on the licensing debate) or if managed properly could make open source java more viable.
The challenge that the Harmony project faces now is significant. They need to convince enough of the existing open source Java developers that they should abandon the current GNU classpath effort and either relicense their code to be Apache-license compatible, or that they should rewrite their code to assist this new effort on the grounds that the Apache License is better. This last point does not seem to be very well articulated in the FAQ which merely dances around the issue. The FAQ at this point seems to mostly focus on spinning things positively while not explaining the rationale for this split, as can be seen by the first follow ups.
If they are not able to bring these existing contributors over they are going to have to grow this codebase from scratch and depend on member companies to contribute code to the effort. IBM might be interested in donating parts of their code (assuming they are allowed to) and might even be behind this split.
We have been working on the open source Mono for almost four years now and it has helped me put things a bit into perspective. I can not blame the Apache folks for going down this path. This should have been sorted out a long time ago in GNU Classpath land, but am fairly skeptic about the viability of Harmony's class libraries.
It is hard to tell what will happen, but without the endorsement of the majority of the GNU Classpath developers this is a major setback for open source/free software Java. It might be a necessary step, but am skeptical of its success possibilities.
In the meantime, gentlemen, you can start using Mono with its lax license today! Get it while its fresh!
Mhm, sorry about that. I just felt like plugging Mono again. Lets move on.
Licensing wise, we went through a similar issue in the early days of Mono. Our class libraries used to be under the LGPL license. We switched the class libraries license from it to the MIT X11 license in response to comments from our potential users and contributors. Of course the MIT X11 license has pros and cons. On the pro side, it imposes very few restrictions on the users and its very easy to mix and match, and in general people feel comfortable with adopting it. On the downside, it is possible for companies to "appropriate" the code and never contribute anything back.
Certainly people have copied the Mono class libraries into their proprietary products and not given changes back (mostly people find Mono components easy to reuse on the Compact Framework that lacks plenty of functionality), but even the GPL and LGPL would not have changed things dramatically in this case (only the receiving end would have the right to the source, and for Compact Framework users, even more irrelevant than desktop users).
When it comes to large users of the Mono class libraries, Mainsoft is probably the largest consumer of it. Mainsoft has a product that turns CIL bytecodes into JVM bytecodes and allows users to port their C#/.NET code to a Java VM. Mainsoft could have chosen to make a proprietary copy of the class libraries, improve their copy and ship that to costumers. But instead Mainsoft has chosen to become an active contributor to the project, and is relicensing its own code under the same terms, the MIT X11.
There are a number of reasons: it is simpler to get new improvements from the community into your own code base, you can drive the direction of the project, and they have created a great aura around their company in the community: they are not only socially responsible contributors, but the world can see that their contributions are top-notch. In addition, their customers get access to the code and can benefit from the shared knowledge pool of the resulting code.
I mention this because a common reason to use the GPL and the LGPL, as opposed to a more lax license like the MIT X11, was that third-parties would tend to keep their improvements to themselves and that only a license with stronger terms could get them to contribute back. A few examples are usually mentioned: the X11's own failure in the 80's to get vendors to share their improvements and the success of GCC in forcing the C++ front-end to be released.
Maybe those examples did apply in a poorly connected world and much smaller ecosystem of the 80's, but none of the two previous scenarios necessarily apply today for horizontal software. The Mono class libraries have demonstrated that companies are willing to contribute to the class libraries and that collaboration will help them reduce the cost of development.
I am now less convinced that forcing people is the best way of achieving collaboration. The GPL has certainly played a role in educating people about free software, but for the most part people who contribute to nascent open source/free software projects have done so do for a plurality of reasons that have nothing to do with being forced by the license, including shared R&D costs, joy, need, curiosity, challenge, sense of community, social responsibility, or fame.
This must be obvious to every Firefox user now, but am still amazed at the simplicity and the beauty of Firefox's search design.
Ever since I can remember GUI applications, searching has been implemented as a popup box that pops in the middle of your document covering the text you want to search. Descriptions on how to float these dialog boxes and the discussion about how to create these non-modal dialog boxes is present in most GUI programming books that taught these principles to developers.
The beauty of placing the search at the bottom as opposed to using a sidebar is that the document is almost never reformatted.
I find myself missing this interface on my applications. Evolution for example still has the old-school search dialogs:
The new Adobe Acrobat pops up a small enough window with only the basics: the text to search for, backwards and forwards button, and configuration options are done from a button on the left:
An improvement, but not as good as Firefox.
That being said, the places where I miss search the most in my applications are:
It should be noted that this dialog probably needs some love anyways.
Posted on 07 May 2005
Alex Graveley's story. An interesting read
Posted on 06 May 2005
Ajai Raj attended a presentation from Ann Coulter in Austin, was arrested for swearing and being lewd. A very articulate article:
So yes, the Q&A session came around, and it was pathetic. Her slack-jawed fans got up and licked her face so she could pat them on the head--one schmuck offered to be her bodyguard, and she smiled, doubtlessly making a mental note that she wouldn't touch his nether regions if she were King Midas. Liberal protestors posed well-intentioned but woefully timid questions and got shot down in a hail of ignorant shitfire from the She-Dragon. Standing in line awaiting my turn, I watched her send a moderate Republican, who had questioned the sheer incendiary magnitude of her rhetoric, walk away in tears when she tore him apart for daring to question her.
So yes, I saw my "opportunity to say something lewd and offensive." And I took it.
But the whole blog entry is worth reading.
The Ganon scandal is getting more spicy. Using the Freedom of Information Act, a couple of members of congress obtained the records that show entry time and departure of Jeff Ganon, the fake reporter into the White House.
Most of the records are normal, but there are a number of inconsistencies: multiple-entries with no exits recorded; Multiple exits without an entry recorded; Extended stays and double visits after press conferences.
The famous memo is here:
SECRET AND STRICTLY PERSONAL - UK EYES ONLY
From: Matthew Rycroft
Date: 23 July 2002
From Tom Tomorrow a transcript from Meet The Press about how things are getting better:
MR. FILKINS: Yeah. There's actually a company in Baghdad that does nothing except offer rides to the airport and back. They've got an armored cars and some guards. And they charge $35,000 for...What's striking about this is that if you read the entire transcript, both of these reporters actually seemed to think that things are generally improving in Iraq--proving once again that everything is relative...
MR. RUSSERT: Thirty-five thousand dollars?
MR. FILKINS: ...for a ride to the airport. And I think you know, if you miss your plane and you have to come back, it's another $35,000. But...
MR. RUSSERT: How long--is it six miles?
MR. FILKINS: I think it's about six miles, yeah. It's not a happy six miles. So, you know, they earn their money.
Posted on 05 May 2005
A Java developer talks about his migration to Mono: he needed a cross-platform GUI framework and good database support. He goes on to describe his experience at length on his `Mono for Fun' article.
Posted on 04 May 2005
My feeling is that the Gnome Desktop itself is fairly complete at this point and that is why we have seen people invest less into the actual infrastructure on the desktop and a lot more on getting things right. Am personally very happy with the incremental goodies in Gnome 2.10, it continues to be a pleasant upgrade every time and it is a good direction to polish and improve while some of the fundamental components of the desktop are sorted out.
In my opinion infrastructural hacking can be fun and its important, but the easy stuff is done, and the more complex issues can take years to get to the point of being fully baked and wildly deployed.
This is why casul developers or those who do not happen to be working for companies that can do multi-year commitments of work on a single direction have turned their attention to create independent applications in Mono or Python. The activity in GnomeFiles is a proof of this. As it happened in the past, a lot of the new Gnome-based and related developments and activities are happening outside realms of Gnome. It would not hurt to create bridges to these projects.
There are important pieces of the desktop that will bring considerable upgrades to our developer offering: Cairo, the new vector-based Gtk+ toolkit, GStreamer, The GL-based X server, Luminocity and D-Bus to name a few.
But these technologies will take a few years to be completely baked. Cairo has been under development for almost three years and D-Bus under development for two and none of them are available yet in 1.0 form. And once they are ready, it will take sometime before these technologies are wildly available.
In the meantime, there are a number of easy things that we can do to improve Gnome:
We continue to maintain Evolution but we have also branched and started a few new desktop projects, this time built with Mono and Gtk#: a new GUI designer for Gtk+ (Stetic), a personal photo management application (F-Spot), disconnected file sharing (iFolder), desktop search (Beagle) all pieces that we consider important for the desktop.
I believe these components (and more) should be part of a standard desktop offering. Whether they become part of the standard Gnome offering remains a political issue, but at least Novell, Mandriva, Debian and Ubuntu are making these available in one form or another (wink, wink).
In my opinion, Mono is in a strong position since it provides the same libraries that have been developed for C# developers to be consumed by other languages (of particular interest are Boo and the renewed IronPython) and because it has opened the doors to the Windows developers which are now starting to get their feet wet on Linux, Open Source, Gtk and Gnome.
Posted on 02 May 2005