Predicting the future

Always fun to make some predictions for the coming year, mostly so one can look back at the end of it and find out how wrong one was, or how innacurate. Anyway, here I go with my predictions for 2006:

  • The cultural collision between the Free Software community and the content industry will fully blossom with the widespread availability of Blue-Ray and HD-DVD devices everywhere with their new DRM systems.
  • The major players in the music industry will start to feel the pain of getting squeezed between other activities lessening the interest in music and improved distribution and marketing of independent music. Copy protection scheemes will start to look more like a liability than a tool for survival to them.
  • GNU/Linux will become a serious contented as a media platform and Fluendo will play a major part in that rise.
  • Microsoft will appear more and more like an ally of the open source community in their fight against DRM as also Microsoft sees that the increasingly draconic DRM measures requested by the content industry is killing the usability of their systems.
  • The Spanish speaking world will have many major Linux desktop deployments and come to be seen as the adoption leader for Linux desktops. They will mostly choose GNOME as their Desktop.
  • Research papers will start to get published that show that software patents are hindering growth and innovation, not promoting it. Supports of free markets like the Economist will start to demand wide patent reforms.
  • Creative Commons experiences something bad enough to open their eyes to the fact that open content is only open if its in an open format.
  • There will be people in 2006 not agreeing with my predictions
  • And last but not least, the new Spanish laws against smoking in public areas cause both Wim and Edward to stop smoking

The Dirac video codec

So the collaborative project between BBC and Fluendo is underway in the form of the Schrodinger project. We will develop a set of libraries to both decode and encode Dirac video and also make sure it can be embedded into the Ogg container format. We are really excited about this at Fluendo and I think it will be a great gift to the community once its finished as it brings a really high quality video codec to the community.

Media streaming hosting

Another cool thing which we are kicking of now is our stream hosting service which we are doing together with Cable and Wireless. It brings fast cheap Ogg streaming into the market using our Flumotion server, and we can even throw in support for non-free formats for those who need it. Radio Europa Plus is already using it, and we are discussing with multiple other radio and tv stations already. We are working hard on adding more features to our streaming services, including a very nice system for private and small businesses. I think this will ba a happy new year :)

Christmas is over

So I am back from Norway after spending Christmas at my mothers place. Had a nice time in Norway and got my batteries recharged. Also discovered that my family must have felt I was in lack of shirts as I got 7 of them for Christmas, and a necklas which I traded in for an extra pair of cufflings.

Also ended up reading
The Shadow of the Wind
by Carlos Ruiz Zafon. It had gotten rave reviews back in Norway and being set in Barcelona I thought it could be an interesting read to get to know the city a little more. The book did not appeal to me much, to somber and depressing. Even if the book had a in many ways happy ending it tasted to strongly of entropy for my taste. I am going to try to go out and look for some of the locations mentioned in the book though, as a way to learn more about the city I live in if nothing else.

Lets agree on nothing and everything

Feel a bit bad about making fun of good efforts, but there was a very good example of a non-decision being made quoted the other day on OSDL Desktop Architects group mailing list. It was said that one of the things that had been agreed upon at the meeting in Portland was that when people where recommending GUI toolkits they would recommend those which allowed cross-platform development. On the face of it seems like a meaningful agreement, but in reality its not. If you look at what people actually use on GNU/Linux today its Gtk, FLTK, Qt, wxWindows, Swing, SWT and XUL and to some degree Motif. So I guess the agreement is that nobody recommends Motif…Wow the power of people coming together and making hard compromises :)

Major stuff from Fluendo

Ok, so we did some major stuff at Fluendo before I ran off to go home to Norway for Christmas. The first thing, which I hope to send out some
announcements on today, is that we released a cost free MP3 plugin to the world. You can read our press release about it here and find more information on our MP3 information page, including source code information. The binary (for GStreamer 0.10) is available from our
webshop which we also officially opened now (and plan to add more plugins to as soon as they pass through our newly minted beta program). A big part of this is that we also offer a cost free distribution agreement for distributions, allowing any distribution which wants it to ship with working GStreamer mp3 support out of the box. Due to the patents involved the mp3 plugin will of course not technically be free software (even if we have made the source code available under the MIT license) so only Banshee and Totem currently can be shipped with it currently, although some other projects do have efforts underway to add an excemption clause like Totem’s, and also some of the newer projects like Pitivi use the LGPL to be compatible.

Fluendo jobs in France

Fluendo also have a French subsidiary now, in Lyon. In that regard we are hiring a couple of developers to work in Lyon with us on our multimediabox/media center software. You find information on the job
here at monster.fr. I encourage anyone who reads this to repost this job add to any french language mailing list and IRC channel where it would be relevant.

Fluendo Beta Program

So we are finally ready to start a beta program for some of the plugins we developed (Windows Media for intance). Due to this we are accepting requests from interested parties to join our beta program. If you are interested mail me at christian at fluendo dot com, and tell me what distro you are using and also if you have some basic linux/unix skills (like being able to run gdb and get a backtrace.

Those accepted into and how participates in the beta’s will get a free copy of the final plugins.

Guess I am becoming a usability nazi

I guess the ‘just works’ philosophy of GNOME have made me assume that whenever something works in a non-optimal way by default it is ‘broken’ codewise so I don’t check if there is a way to change its behaviour. So for a long time I have been irritated by the Gaim message ‘window list’ entry continuing to ‘blink’ even after I read a message (only going away when I reply). Today I ended up taking a look at the Gaim preferences and discovered that there is an preference entries to make it stop blinking on focus or mouse click. Not sure if its truly needed functionality or just options put in to cover up broken default behaviour. Anyway Gaim behaves the way I want it now, which is good :)

There is a mock-up for a new print config dialog available for viewing. Not sure if I like it or not, but it might just being based on FLTK makes it looks weird. What struck me that its a bit strange to have page full of settings, and then have a button with the name ‘settings’ at the bottom. ‘DJ5850 Specific Options’ or something like that might be a better name for the button. According to a mail on the osdl list that button should bring up a page with multiple tabs worth of settings, so I guess those tabs will be named ‘More settings’, ‘Even More settings’ and ‘Most settings’ :)

What is the ‘best’ http library

So we want to add a http plugin in GStreamer which is desktop neutral.
I first wanted to use libsoup, but it will start depending on gconf soon, so unfortunatly that takes it of the table.

It seems to me that Curl and Neon are the two main options to build our plugin upon. My current idea is to go with Neon, but if anyone have some good arguments for Curl or something else, please let me know :)

What to do with features nobody wants to implement

Tim Janik had a post about never rejecting a feature request, which got me thinking about an issue in the GStreamer bugzilla. We have a gazillion requests for support for every weird audio or video format under the sun. With weird formats I am talking about things like gameboy audio, NES audio, computer game video formats and things like that.

So these kind of requests seldom comes with patches and I tried asking for such a few times. They are also not something you don’t generally get anyone interested in helping out with, as people who just want to help out on GStreamer prefer working on something that a large numbers of users might actually enjoy, as opposed to something only the 5 person linux-based gameboy audio format community might get a thrill from ;)

So my opinion is that such features will only ever enter GStreamer if the bugreporter is interested in doing it him/herself. And if that not the case they are just ‘bugzilla clutter’.

So we are left with a situation where we have tons of stuff ‘cluttering’ bugzilla, yet it feels a bit bad closing them as they are valid feature requests and of course you can ignore the bugs by excluding enchancements from your bug search for instance (although that also filters out the more realistic feature enhancements).

Now I realize of course that the lack of gameboy audio format support makes GStreamer useless for people like Linus, and that we are fucking idiots for not diverting resources from for instance improving VoiP support over to work on supporting such formats, but in the meantime I a trying to figure out a usefull way to deal with these bug reports :)

Usability

The little flamewar with Linus about usability do bring up a few good points. So usability was made a focus for the GNOME 2.x series and a lot of good have come of that, but it has had some unforseen side effects.

First of all, the vast majority of GNOME users and developers don’t know the details of why certain things are like they are in any given module, we only know the details of the select modules we develop/follow closely. The issue of printer options as discussed is one good example, I had no idea (before the Linus thread) why things where the way they where.

The problem is that we and the community in general have started to assume that UI design decisions are behind everything in GNOME being the way they are. So when people come complaining about missing printer options, the assumption is that that its a design decision and not simply something not implemented yet (as was the case in the printer options case) or Havoc simply not having had the time and interest to work on Linus’s mouse button mapping issue enough to bring it to completion. Yet, out there people assumed this things where caused by design decisions, even people relativly close to the development community, and often people would even give this assumption as the answer to anyone they talk with who brought up the issue.

The rate to which this belief has become embedded in peoples conception is actually amazing. I have had multiple discussions with people complaining about this or that in GNOME, and when looking into it finding that the reason something is the way it is has nothing to do with a ‘make it simple’ design decision, but simply that the developers haven’t gotten around to it yet, or in some cases not being aware of the usecase/need. And I have then found that when returning with this information I actually have to spend a lot of time convincing people that their wanted functionality XY is simply a lack of developertime/awareness and not a concious UI design decision.

This is a problem in many ways. It creates fertile grounds for silly misunderstandings like the issues brought up by Linus.It might also cause a lot of people to not create patches adding the functionality they want because they assume its omission is on purpose and thus hindering people from joining the project.

On the other hand I guess it do mean people have a lot of faith in the level of the UI design work going into GNOME, since they obviously assume nothing is in GNOME or ever happens in GNOME without a lot of UI thought having gone into it :)