Last call for ….

I haven’t posted anything in a while on this blog, and now I made the decision that this will not change: it is unlikely that this blog will be updated anytime soon. The reason is actually twofold:

Job
I’m working full time as an Open Source/Linux consultant these days – and after work I do not really have the time nor the energy to invest even more time into Open Source (besides the Fedora packaging).
Company’s Blog
I was successful in convincing enough people in our company to start a blog – and I blog there since then, so when I get home I usually already have blogged about whatever comes to my mind.

That means effectively that you will not receive any more new posts here. It hurts my heart and kills kittens, but you can remove the blogfeed. @planets where I might still be listed at: please remove this blog feed as well.

However, if you *do* want to keep up with my thoughts: credativ’s company blog is working quite nice these days. Btw., in case you don’t know, credativ is an Open Source/Linux company and the one behind the Open Source Support Center (OSSC) and the Open Source Support Card (yeah, “catchy” names, I know). They are focussed on Open Source support (Linux-Support, PostgreSQL-Support, etc.) and have offices in DE, UK, US, etc. So the general topics are pretty close to this blog. If you look close you will recognize my style: short italic introduction, eye catcher on the upper right side, special headline markings for Howtos and Short Tips, and so on. Also, the categories are quite the same, and it is actually available in German and English. Also, I am not the only person writing there – one very active PostgreSQL developer keeps blogging there, if I want it or not. ;-)

However – it is a company blog, so you will (!) find information regarding the company itself, or newest marketing things. You are warned!

So this is it: the last post. Thanks everyone for wonderful years full of blogging, discussions, news, Howtos and good tips. So long, and thanks for the fish! :-)

Qt under LGPL

kde-logo-official
Nokia, the owner of Qt software and therefore the owner of Qt, has announced that the Qt framework will be released under LGPL in the upcoming 4.5 release.

The announcement is a huge change in the licensing policy regarding Qt: up until this change Qt could be used for Free Software development under the GPL – or for proprietary development under a proprietary license including a fee. This was totally ok for many software developers and projects and it was of course the main income source for Trolltech, the company behind Qt which was bought by Nokia.

It was, however, also a big reason why many developers didn’t choose it: some companies wanted to develop closed source without paying this licence free, and other Free Software projects argued that GPL is not free enough for their taste. These reasons are not valid any more, and with Nokia supporting Qt the question arises how this will influence the software world.

Of course the world won’t change it’s face over night, but Qt had always a strong support, and every company which decided to go cross platform at least had a closer look at Qt. Now, with the new license and also combined with the new IDE Qt there are even more reasons to choose Qt for cross platform software development. And since it is a powerful toolkit anyway it might also happen that more and more Windows developers choose Qt – which would make it easier to ask them t develop for Linux as well – and/or for KDE.

Fixing UMTS upload performance on Linux

Tux
UMTS, or better said, 3G, is a convenient way to connect to the Internet while you are travelling. However, the upload speed in Linux is only half as large as in Windows – but this can be fixed by a Kernel patch.

The background

3G is the so called third generation mobile technology, best known for it’s well known standard UMTS. Using that technology users are able to get quite fast Internet connections via mobile phone technology. In fact, in Germany the UMTS upload is currently faster than most of the ADSL connections you can get.

However, recently my company (credativ GmbH) was contacted by a customer who reported that the UMTS upload speed with Linux is rather slow compared with the upload speed on Windows. We did some tests and the result was disturbing: the factor is roughly two. While we had upload speeds of 1200 kbit/s on Windows XP, Linux only did less than 600 kbit/s (both using HSUPA). Hardware problems where out of question because we tested with a rather large set of UMTS hardware. We also tried different Linux distributions, different computers and so on. Additionally, the problem was at least verified by three (!) labs around the world: one lab of a major German mobile pone company and one lab each of two international hardware vendors. (And yes, it was me who tried to keep track of all the tests and people who are spread on several continents in different time zones :D ).

The fix

In the end, however, we were able to produce a rather simple patch to fix this problem. The upload speed in our test is now almost as large in Linux as in Windows, and this result was verified by the mentioned labs. The patch is:

--- drivers/usb/serial/option.c.old        2008-11-27 12:45:50.173275119 +0100
+++ drivers/usb/serial/option.c    2008-11-27 12:46:06.089274050 +0100
@@ -487,9 +487,9 @@
 /* per port private data */

 #define N_IN_URB 4
-#define N_OUT_URB 1
+#define N_OUT_URB 4
 #define IN_BUFLEN 4096
-#define OUT_BUFLEN 128
+#define OUT_BUFLEN 4096

 struct option_port_private {
        /* Input endpoints and buffer for this port */

This is around line 490 in drivers/usb/serial/option.c in the current linux tree.

At this point I’d like to plastinka who pointed me to that part of the kernel to fix the problem. I owe you something! :)

The problem: getting the fix upstream

The problem is now: how to get this fix upstream? I’m certainly not a kernel developer, and I could not even explain why this patch fixes the problem – I “just” have the test results. Joining the kernel list might also not be the best idea when I am not even a programmer.

So I decided to send the patch to the Red Hat guys – they have lots of developers, good connections to upstream, and I know how to talk to them. It’s bug #473252, let’s see what happens. In case you experience similar problems, send this patch upstream via your distribution, maybe that helps as well.

Gallium3D: a short explanation where it fits in

cube-with-matrix
In a comment I was recently asked where Gallium3D does fit in in regards to Mesa and OpenGL. Given that I’m not an expert the answer was short and simple but might interest others as well.

There is quite some information flowing around regarding Gallium3D. Tungsten Graphics has for example a project wiki page and there are of course talks and presentations available.

However I was recently asked by Max what Gallium3D is and tried to fit it into a short and handy answer:
Currently Mesa3D implements the specifications of the OpenGL API on Linux. Mesa3D has backends for each hardware driver type, so implementing parts of the API again and again for each driver.
Gallium3D will now hop in by being the only backend Mesa3D needs to focus on. At the same time Gallium3D will also provide a single API to the driver developers: they only need to produce one driver, no matter if DirectX, OpenGL or OpenVG is used (yes, Gallium3D could even help on Windows). This makes developing drivers for new device classes (OpenVZ is interesting for example for mobile phones) much easier.

So developing driver as well as implementing graphic specifications will become much easier with Gallium3D. That necessarily means that Gallium3D isn’t an easy piece of software. However, quite some time and effort is saved by not duplicating stuff in Mesa3D for each driver and by also not duplicating again stuff in the drivers for different graphic API’s.

Currently Gallium3D is not production ready yet. Early 2008 the state was that the first real world driver, an older Intel one, was working quite well. It might take a while until Gallium3D really enters the stage.

A last note: the information given above only tries to give a simpe overview. In fact it is so simple it doesn’t really cover what Gallium3D is (the tracker, the pipe drivers, winsys, the modules) and is probably even not entirely correct. Still, it gives interested people a first glance from they can start off searching for information.

Sony’s music now DRM free in Germany

Tux
Sony has opened up its German web shop so that DRM free mp3-music can be bought there. The page doesn’t even requires any kind of Windows software and works with Konqueror.

The history of music on the internet is very twisted: it started off with central file sharing services and quickly developed into large p2p networks. At the same time the big music labels showed an almost unbelievable level of dullness and stupidity when they tried to “battle” p2p networks with lawsuits and DRM secured music. All sides lost something in this war, and I guess the only winner was Microsoft.

Luckily these days are over now and in the US almost all big labels offer DRM free music in MP3. And yesterday Sony Germany joined the club and now offers legal, DRM-free music downloads in high quality. The entire process actually works with Konqueror (3.5.9 on Fedora 8), so there is no need for Microsoft software at all. If I saw it right there wasn’t even flash or anything else used. Just a plain page which, in the end, offered me the files inside a zip container.
And it worked!

Of course this doesn’t mean that the prices are very good, or that the artists get more money, or that there might not be a hidden water mark in the music to track you down. Also, MP3 isn’t really perfect, and I would very much have preferred to get music in OGG or FLAC. But 320 kbps MP3s are quite good for a first step, it could also have been 92 kbps WMAs.
Sony didn’t move this because they are nice, but because the market forced them!

But exactly that fact shows that users can force the companies. And that it makes sense to nag and ask and complain again and again. In they end, they will move.

Follow

Get every new post delivered to your Inbox.

Join 37 other followers