Loud ramblings of a Software Artisan

Tuesday 28 February 2006

The deep secret of the Windows OEM licensing...

...or actually what we know already.

Dell recently released, for the US market, some high end Linux desktops. This is their second attempt as they ditched the first in 2001. Note that Dell is still one of these major vendor that refuse to sell you a machine without the "recommended" operating system. The same vendor that in some jurisdicition refund people for that illegally bundled software. But these 3 models are highly selected. We are talking about workstations, the one where the work stops, not about servers.

But Steven J. Vaughan-Nichols wonders about why Dell does not really push these workstation. Apparently it is not unrelated to Microsft OEM licensing condition for which Tangent, an OEM, is taking to court Microsoft for abuse their monopolistic position by leveraging high fees for the right to license. Microsoft defense about that is:

"No court has ever found that Microsoft charged too much for its products."

That is exactly the problem: immunity should stop.

But how would that impact in the open source world? It impacts it more than you think.

First of all to have wider adoption of open source operating system and software, they should be bundled (as an option) with hardware, and the current OEM contract just prevent the top tier vendors to do it. The settlement with Be Inc. is just a good evidence of what happened: nobody ever took the free license for one year to bundle BeOS with the PC along with the default OS.

Second, to have Linux become more popular, we need better support for hardware. The current hardware support of Linux is really good, but sometime too good: it supports obsolete hardware that even the manufacturer no longer support. But that is not what users want. They want to be able to go the consumer electronic store, but some device, and have it work on their PC. And that currently only work with the OS that the manufacturer supports (usually only the last versions). When you ask that manufacturer about Linux support he says that there is no interest. We all know that you need software to have users and users to have software (at least the one on which you venture being paid by selling it). Back to square one.

Monday 27 February 2006


FYI, here is the official tariff for for the Levy on blank media for music reproduction in Canada:

3. (1) Subject to subsection (2), the levy rates shall be
(a) 29¢ for each audio cassette of 40 minutes or more in length;
(b) 21¢ for each CD-R or CD-RW;
(c) 77¢ for each CD-R Audio, CD-RW Audio or MiniDisc.

DVD-R are not considered as audio media.

Sunday 26 February 2006

Linux Server Hacks

Linux Server Hacks by Rob Flickenger is one of these "general purpose" books that you learn lot of things from. 100 hacks that actually teach you how to use Linux system tools more efficiently; if you administer Linux servers for a living, I highly recommend it.

Saturday 25 February 2006

Anatomy of a software patent lawsuit

Washingtonpost has an insightful article about the absurdity of the Blackberry patent lawsuit. In that case, Blackberry is selling a proprietary service on which people become higly dependent (it is often nicknamed crackberry) generating a huge revenue stream for them, both in their country, Canada, and in the U.S. But NTP is suing them for patent infringment and what will happen is the service shutdown, unless Blackberry modify the software to not infringe the patent.

Note that Canada is no impacted by this due to patent law.

Friday 24 February 2006

Little Earthquakes

This evening the whole house vibrated. I thought it was a huge truck driving crazy. But no, it was an earthquake.

FOSDEM 06, not there.

I just wish I could be at FOSDEM in Brussels. I would have been in France at that time, I sure would be there. But my trip set at that time and had no way to move. I looked for last minute ticket, and YUL->CDG through AMS was CAD$1400, less than just YUL->AMS (forget a flight to Brussels). But both the price and my current work schedule does not allow me to do that.

I hope people will enjoy it.

Events I surely be there are DDC, and eventually OLS.

Recent Ubuntu uploads

Ubuntu got recently the following packages I made:

  • autopano-sift: a tool to assemble the pictures together for stitching. It does generate the panotools panorama files so that you don't have to find the matching points manually in, say, hugin.
  • exifprobe: this tool displays EXIF information of various image files, including RAW files. Yet another EXIF parsing utility, that one being actually quite convenient.
  • pandora: a Gimp plugin to assemble together by putting various pictures in layer.
  • gphotofs: a Fuse filesystem using libgphoto2. Make you Kodak or Canon camera visible as a disk.

Hugin got rejected because of libvigra. Fortunately this problem will be addressed upstream. Same would happen to enblend (I have to report the problem upstream).

Update: see enblend bug 1438069.

Thursday 23 February 2006

Open formats

Company, I couldn't agree more about that. Now that you brought us byzanz, there is no excuse. For the little story I once fought at the office because somebody decided that it was a good idea to use Flash to display graphic data to the engineering that was at 99% running Linux...


Sunday 19 February 2006

AE-1 test roll

I had to do a test roll for an AE-1 camera I bought used recently. So I went to the local grocery store that has a 1h lab, got a film and shot around the parking lot to have it processed there. Actually pictures turned okay (for something I took 5 minute to shoot), that show that I can still do things with very little inspiration. Given that I haven't ever been a fan of 1hour photo labs, I must admit that I'm surprised how quick it is to process: 10 minutes to process the roll (C-41 color negative) and 5 minutes to print (automatic settings) on a Noritsu minilab. Probably not the most optimal results, but with proper setting these machines output good quality prints without much effort.

The camera was an Canon AE-1 with a 50mm Macro f3.5 FD.

I scanned a couple of frames. It is not exactly how the print looks, but it is pretty close, and I like it that way. Given that it is negative, it is always subject to interpretation, both scan-wise or print-wise.

And xsane needs sone UI love, seriously.

Friday 17 February 2006

A picture is worth a thousand words

I think I had to share this picture. (thanks to gnumdk on #gnomefr for the link to the picture)

Crazy weather

The weather is crazy is Canada. Crazier than usual. In one night, it snowed, melt, froze. Here is how the car windshield was this morning:

And it is not snow. It is ice ! (apologize for the crappy picture, it is a CAD$30 camera)

Thursday 16 February 2006

More Linux everywhere

The two biggest ISP in France providing broadband internet access via ADSL offers Linux based modem to their customers.

Free with the Freebox, for which I worked a few month, was the first to do that having a two-ended ADSL solution running Linux. Their Freebox modem and set-top box, that provides Internet access, VoIP and TV over DSL, and the DSLAM, the other end, that works over IP and Gigabit Ethernet (fiber optics) unlike what was on the market, at least in 2003, that are ATM based.

Now, France Telecom with the Livebox, provide a DSL Modem/router, with VoIP (yes, a telecom operator that compete with himself with VoIP services), TV (requires an external Ethernet connected decoder), wireless and other gizmos. This box, made by Inventel, runs Linux (the manufacturer advertise it as such).

But last news is more encouraging: Access Linux Platform by PalmSource. PalmSource has been acquired by a Japanse cell-phone company that wanted to go away from Symbian and WinCE with the plan to make PalmOS and Linux the base of their next generation OS. So they announced it. ALP has a Gtk based UI (they don't tell about X11, but apparently it uses X11) and use gstreamer, sqlite on top of a Linux 2.6.12 kernel. I wonder how much intersect with Nokia Maemo, but that would be their interest to team up to create a viable ecosystem of software. Maybe this time we could have AbiWord on PalmOS?

Saturday 11 February 2006

Old friends...

  • 2 Expresso Coffees: 7 EUR
  • 1 Beer: 7.50 EUR
  • 1 Hot chocolate: 5.80 EUR
  • Spending time with old friends priceless.

There are things money can't buy, for the rest, there is still....

So during this trip, I did:

Friday evening, I went to have Guinness with some former coworker, talking shop and al. Right after, I went to met dodji and his s.o. Juliette, toady and his s.o. (whose name I forgot and apologize for that) and teuf, to have diner at "Le père fouettard" where I ended up seeing, by I pure random coincidence, Ol a former Apple co-worker and his s.o, sh from Debian and Videolan fame, and bbp (friend of Videolan). We talked GNOME and other thing around some French platers.

Saturday: met with some old friends, went to have crêpes and cidre breton (Cider, Britany receipe), then off to Pub Saint-Germain on Boulevard Saint-Germain. See the bill above. I also took some nitght shots of Notre Dame that I will post later.

Friday 10 February 2006

Ottawa -> YUL -> CDG

By this beautiful afternoon of February I sit in a VIARail train headed towards Montréal, at the Ottawa train station. (photo from behind the car window)

Going through the snow south-eastern Ontario Country and south-western, I finally reach my final destination, Montréal Pierre-E-Trudeau airport, aka YUL, aka Dorval Airport. The name is funny as Trudeau initiated the creation of an international airport in Mirabel, aimed at replacing Dorval, far north of Montréal, but funnily the Dorval Airport was renamed after Trudeau's name in 2004. I end up waiting in the new internatonal terminal, waiting to board onto AF 347 flight headed to CDG, France.

Things I learned: free electricity for your laptop in the terminal lounge, but expensive wifi service. Neither the seats nor the video system of Air France A340 aircrafts in Tempo (economy) class are suited for tall people like me.

I'm now in Paris for 2 days.

Sunday 5 February 2006

Irony, honesty

I'm looking for a Canon AE-1 user manual in French (it is not for me, that's why I'm not being satisfied of the English one).

And the only place I could find it requires you to pay for that using an overcharged phone number (1-900 like). Typically the French mentality (same mentality that make all the customer services and even banks to have overcharged phone numbers instead of regular one). But what is getting worse is that the same website use copyrighted icons that are not distributed with a free licence, and that paying for a copy of copyrighted-and-non-free material is not to be considered as "fair use". For the record, the charge from Canada is CAD$5, the webmaster tell people to use something else than your own phone line.

That was the rant-du-jour.

Saturday 4 February 2006

OpenRAW news bulletin

Last week, OpenRAW.org launched their survey on the use of RAW files. Here is the press release. The idea behind that survey is to helps determine photographers practice related to digital photography, and showing what are the interest.

Calvin Jones' words about that are:

It's important to understand that we are seeking the views of all digital photographers - including those who support the OpenRAW initiative as well as those who may believe that proprietary RAW image formats are the best way for digital imaging to improve in the coming years. Our purpose is to find out what all digital photographers believe - not to hear from ONLY those who support one side of the issue. We want all voices included.

Calvin is one of the founder of the OpenRAW initiative.

Also, in the mean time, Glasslantern launched RAWPository, a repository of RAW files aimed at providing reference data sample that can be used throughout all the process writing RAW file decoders.

Optimizing AbiWord, part 2

You might want to read part 1 first.

Second round of optimization. I take the same sample document than with part 1, but this time I'll make it displayed. Here is the callee list in KCachegrind:

Obviously there is a list.

  1. UT_GenericVector<fp_Page*>::findItem()
  2. UT_GenericVector<fl_BlockLayout*>::findItem()
  3. UT_UTF8String::UTF8Iterator::sync()

We already know that UT_Vector::findItem() is as fast at it cans. It search linearly the vector. Since it is unordered there is no other choice. I'll skip for item 2 in the list, let's have a look at the use made for it with the callee graph:

We see where it is called from. Looking more closely at the source code you'll see that the vector is used as a queue, a queue of block to put in the spell cheker, and that findItem() is used to locate the element in the vector by index to move it in the queue, or out of the queue. That is where things are wrong. My solution to that is to double-link the fl_BlockLayout together for queueing. That way, when we need to change the queue order for a specific block, we do it really quickly. Change the 2 pointers of the fl_BlockLayout and of the neighbours. It is instant, whatever number of items you have in the list. As for memory it use sizeof(void*) bytes more, but that is actually worth it.

Now let's look at the profiling data after this optimization:

We clearly see that the top time consumer have changed. I mean number 2 is gone. It is hard to provide real data about the speed, but at least I know that it should be. UT_GenericVector<fp_Page*>::findItem() is still number one, it will come next.

Thursday 2 February 2006

AbiWord on BeOS

According to Haiku News, it looks like somebody has built and released AbiWord 2.2.8 for BeOS. The thing is that the code got killed for 2.4.