[lang]

Present Perfect

Personal
Projects
Packages
Patches
Presents
Linux

Picture Gallery
Present Perfect

Filed under: General — Thomas @ 14:07

2003-12-31
14:07

GNOME

A new gnome-media release was due since the old one didn't build against the latest gstreamer release. Now, my problem with gnome-media every time I try to do some things in it is that make distcheck is completely broken because of all the weird hacks-upon-hacks in the build system. I've looked at it a few times and noticed small tweaks that could be made here and there, but never really got round to fixing stuff decently.

Since my job now currently also entails making sure GStreamer trickles down to applications properly, I feel more responsible for a working gnome-media as well. And since I'm really anal about build stuff anyway, I just didn't feel like I'd do a good release if the damn thing didn't manage to pass make distcheck.

So I put on my special autotools boots and jumped right in. Boy, was I in for a treat. I first picked off some issues that were plagueing more than one module, as well as looking at some intltool bug that crept in due to recent commits. Then I checked the strange scrollkeeper bug that everyone kept complaining about. Turned out it was a simple bug in a .h.in file that hardcoded the path to the logfile as ${prefix}/var/log/scrollkeeper.log, literally.

Then I fixed some bugs where generated source code from IDL was being built as two different objects because it was both used as source for a binary and a library. The simple way to fix this is to make a non-installed helper library.

Then I fixed some bugs with a whole bunch of generated files not being cleaned properly, just about everywhere. Sigh :)

After all of this, running make distcheck left me with two files that weren't cleaned that left me completely stumped. legal.xml in gnome-cd/doc, es and ko. But for none of the other languages.

I guess I spent three hours trying to figure out what the hell the difference between these two was, and why some rule was being triggered out of the blue that copies legal.xml to the build dir.

Following the build log, I traced it down to the two same commands giving different results, and I noticed a rule got triggered because legal.xml was commited one second after gnome-cd.xml in those two subdirs.

 [gnome-head] [thomas@otto gnome-media.build]$ stat gnome-cd/doc/ko/legal.xml   File: `gnome-cd/doc/ko/legal.xml'   Size: 3282            Blocks: 8          IO Block: 4096   fichero regular Device: 306h/774d       Inode: 804646      Links: 1 Access: (0664/-rw-rw-r--)  Uid: (  500/  thomas)   Gid: (  501/   gnome) Access: 2003-12-31 03:32:59.000000000 +0100 Modify: 2003-04-08 09:31:37.000000000 +0200 Change: 2003-12-16 13:00:56.000000000 +0100   [gnome-head] [thomas@otto gnome-media.build]$ stat gnome-cd/doc/ko/gnome-cd.xml                                                                                    File: `gnome-cd/doc/ko/gnome-cd.xml'   Size: 16428           Blocks: 40         IO Block: 4096   fichero regular Device: 306h/774d       Inode: 804645      Links: 1 Access: (0664/-rw-rw-r--)  Uid: (  500/  thomas)   Gid: (  501/   gnome) Access: 2003-12-31 03:32:59.000000000 +0100 Modify: 2003-04-08 09:31:36.000000000 +0200 Change: 2003-12-16 13:00:56.000000000 +0100 

I have no clue what the rule is supposed to do. I know what it does, but I see no reason why it should do this, so I removed it.

I hope the three hours trying to figure out what the difference was will pay me back somewhere down the road.

Anyway, it's hard to explain how satisfying it is to finally see

 ================================================== gnome-media-2.5.2.tar.gz is ready for distribution ================================================== 

after knowing the whole build was broken for months.

Not really sure if it will get noticed at all though :) But I figure I at least get some karma points for doing the ugly stuff nobody wants to do, and I've learned some new lessons along the way. I should really get started on my ideas for the gnome maintainer guide someday soon.

If you're wondering why I spend my time writing this, it's just because being on Spanish ADSL makes me realize how incredibly slow the CVS protocol is because it is sending diffs for every file back and forth. So I'm typing this during the time I spend waiting for each set of commits of my fixes. Sigh.

So, release done, I think I've postponed my break for about twenty times, so it's time for bed.

Filed under: General — Thomas @ 14:06

14:06

Dave/Dina

I was finally getting ready to release the first alpha this week. I registered davedina.org (it was about time). I added a status page with the help of Kristof and his excellent MySQL formmaker.

Then yesterday, after having uploaded the whole tree and the ISO's, I said to myself, "Well I should give this one final test before releasing". So I burnt the CD's, broke out the QBIC box, and proceeded to install. Bad move. I had done the install from NFS all the time, and the CD didn't contain the graphics for some reason. So I tried over NFS again to check if I missed anything, but for some reason I couldn't get the QBIC connected to the network. I tried on three places with four different cables, even going so far as to move it back to the freshly installed and cleaned living room, but nothing worked. No network. And my VMWare trial license had expired.

That left me in a pissy mood for the rest of the night :) Everything was ready, and now it seems like I'll need to redo the iso images. Let's just hope I can cut corners some way by only changing a small part of the iso's, though at this point it looks easier to regenerate and take care of some other cosmetic details while I'm at it.

DirectFB & Dave/Dina

I decided to try Ville's TV/OUT Howto again from scratch. This time, I went with pristine sources instead of the Red Hat kernel source. It still didn't work. Then I tried with the other Matrox cable that I thought belonged to the other card, and that made it work. Sigh. I wonder how many times I had perfect TV output but the wrong cable before :) Which reminded me of a very important self-discovered engineering lesson: When things don't work, it never hurts to try illogical ideas out and look for logic afterwards.

Just make sure nobody is looking in case you have it wrong again :)

It also reminded me of two other simple lessons I seem to recall getting out of Zen And The Art Of Motorcycle Maintenance: "Write down everything what you're doing with results to test your hypthoseses" and "Only change one factor at a time and note the resulting change".

Anyways, I now have perfect 720x576 PAL tv output. Which people tell me is the proper resolution to output to. Only, if you do a little math, you'll notice this seems to indicate that the pixel image has a 5:4 aspect ratio, why the TV has a 4:3 physical aspect ratio, just like a computer monitor. Does this mean I have non-square pixels ? As a matter of fact, yes - this page explains it a lot better than I can.

So now I'm trying to decide if I should stick with this so-called perfect resolution for PAL TV, having to change from 800x600 everywhere and having to live with non-square pixels being the norm. The latter will make it hard to properly develop applications on regular computers, especially on my desktop and laptop LCD screens that obviously have square pixels.

Anyways, looking forward to doing some DirectFB experimentation soon.

Apartment

Everything starts falling into place nicely now. We finally got ourselves a washing machine and a real bed.

Last weekend when my parents came round we managed to hang up the hammock as well. So this is our new bedroom. And this is how DIY guys express their love.

This fine lass often cooks for me and does that very well.

And last time we went out, I wanted to wear my selfmade pants, but the button had dropped off. I had two spare buttons, a cool navy anchor one and the silly cow. After discussing it with Kristien, the silly cow won.

And this is what they call hammock hacking. (Or, rather, chatting).

This weekend, we went on another IKEA shopping spree, this time taking home only about 320 euro worth of stuff. That included a much needed TV cabinet for the living room. The cabinet itself looks really nice, but it's a bitch to work with. It has holes at the back for running cables, but of course since the rest of the back is closed there's a lot of groping in the dark going on to insert cables.

Anyways, I ran speaker cable all around the room between the wall and the wooden floor covers, so now I have four big speakers doing fake quadrophonic audio. This all in preparation for the eventual possibility of getting an actual surround sound system someday.

Life

On Christmas, we spent some time together with the two of us. Very nice dinner, and in the afternoon we went out blading for three hours. All along the sea, all the way through the old town during siesta, wonderful. It was incredibly sunny, must have been close to 20 degrees, and this on Christmas... After that we went to see Elephant. Quite OK, not too fantastic.

Friday, more food, and at night there was a Christmas skating gathering. A hundred people wearing silly hats and all sorts of Christmasy things, skating through the old town, by the sea, all the way up to Gracia. Very nice, very good routes. After that, Kristien had agreed to come see Alien with me.

Bad move. I don't think she saw any of the scenes that needed to be seen :) I'm hugely in debt to her now, so if people can keep me updated on the release of a new Barbie movie, let me now ...

And now we're preparing for the flood of people dropping in on us for New Year's Eve. The first two arrived yesterday evening. Uraeus is arriving just about now, and the other fourteen are soon to follow...

So if you don't hear from me for a while, you know why !

Happy holidays, y'all.

Filed under: General — Thomas @ 14:05

14:05

Desktops

ottawaDave, I think your reasoning is of little practical use. The question you ask is asked over and over again, and the answers are pretty straightforward.

  • Posing the question makes it very obvious that you are not a programmer on either of the two. Thus, you have very little chance of actually influencing either KDE to merge with GNOME or the other way around. That's not a fault, a flaw, or a problem, just an observation.
  • The only people ever to wonder or ask why GNOME doesn't just stop and merge bits into KDE are either people that don't use KDE or GNOME at all, or people that mainly use KDE.
  • The only people ever to wonder or ask why KDE doesn't just stop and merge bits into GNOME are either people that don't use KDE or GNOME at all, or people that mainly use GNOME.
  • The actual developers on both GNOME and KDE that realise there is duplication effort going on and actually want to do something about it have joined forces on Freedesktop and are making reasonable progress in sharing basic infrastructure.

I just don't understand why people ask this question over and over again and fail to just see the simple answers.

So, obvious questions as a reply. If there was only one project, what language would it be written in ? What would the UI look like ? Would everything be configurable or would it have a small set of preferences ?

If you can't answer those questions, then you already answered your question on why GNOME and KDE do not merge.

Also, the way you phrase the question makes it sound so simple. Why are there two when there could be one ? As if it is dead simple to just take the best bits of both and put it in either one.

By no means is this a personal attack against you, or GNOME, or KDE. It's just that I think you're asking the wrong question from the wrong perspective, and it's being done over and over, and your write-up of course sollicited the obvious reply.

Web Shops

Tried ordering a present for someone on the web. I went through fifteen webshops. The two where we were succesfully able to place an order screwed up at the very last minute, after we filled in all our details. One of them threw up a popup for payment that the browser blocked, and after that there was no way of getting back to that popup to fill in payment details. The other one just didn't allow credit card payment AFTER we had filled in all of the other information.

Sigh, still a long way to go before the IT world allows us to simple things.

Parents

They visited me over the weekend. We had a great time, though I am reminded of the fact that it is impossible to try and make the storm that is my mother change direction at any given point in time. It's better to go with the flow. Especially since the flow brings many good things, like excellent restaurants, and a brand new deepfrying machine. I am going to hypothesise from your point of view that

Filed under: General — Thomas @ 14:04

14:04

Music

Wednesdaynight, Lamb was in town. A spirited performance, they seemed to love being in Barcelona. Half an hour before the concert, the concert hall was still three quarters empty. The room itself was a nice old dancing room.

Life

I think I found my favourite view of the city. Yesterday morning I decided to blade to work, since my laptop was still at work. So, falling wouldn't cost the company too much :)

So I skated to the sea, and then followed the coast line for a while. It was warm enough to be skating in t-shirt. And the nicest view here is that run by the sea, with the morning sun reflecting in the waves breaking on the beach. It very much beats the sight of cars stuck in traffic in Belgium :)

Of course, I ended up following the wrong tower, and while the tower I arrived at is only about half a kilometer from work, the straight line is across the water, and the actual road to take is in a huge arc between those two. So I arrived about an hour late. But I had a good workout.

This weekend my parents are here. They seem to think we chose a really nice apartment. While I don't actively go out seeking their approval, it does feel good to know that there's nothing to argue about or nothing to defend. They seem to be enjoying themselves here as well.

GStreamer

Still some rippling after the Wars Before Christmas. I made a release today. We need to pick up the pace in releasing. For that to happen I guess I need to finish the media test suite so we can at least have computers check for us if it plays back everything. The rest of the steps could do with some automating as well.

Started working on tasks pages for the websites, similar in spirit to the GNOME bounties. But, obviously with less money. I'm going to add some this weekend; I have a bunch more but the code needs a bit of massaging to be manageable for new people.

Mike Hearn showed me some examples of using XML and XSLT to generate this sort of stuff. I wish I found out about XSLT earlier. While I don't understand the first bit of what I'm doing, it does seem like a very smart way to treat web content. I managed to figure out how to crosslink pages, and how to present clickable links for source code in the various CVS repositories. Cool stuff.

We're also moving CVS to freedesktop.org this weekend. I think I've got everything prepared well enough, and I tested the important bits.

Sweden

When you've gone fishing, it's nice to come back home with a fish. I think we caught a good one. We'll be able to tell soon enough :) I'm very excited, it's nice when you can get important stuff right.

Filed under: General — Thomas @ 14:03

14:03

GStreamer

Things are like a yo-yo at the moment. The friction that I had anticipated after both leading figures on GStreamer have taken a break is starting to get to us. Which is good, in a way. This will force us to deal with some of the issues we've been struggling with now that we don't have a clear community leader.

I had anticipated much worse than this when I realized that Wim was also going to take a little break. I had feared development would have ground to a halt. Right now, development isn't as clean or careful as it used to be, but in the end we're still getting in the features we need. I guess I am going to have to be slightly more aggressive, but in a nice way, to make sure the end result is a buildable working product. And I'll have to do that without hampering others too much in their work style.

People sometimes say that a pure democracy doesn't work, and a dictatorship doesn't really work either if people don't stand behind the dictator. For a project like ours, I guess for now the best way of getting stuff done is to divide responsibilities among people that know how to live up to it. That means, don't let someone who just wants to code and do new stuff maintain the build, for example. But it also means for someone like me at this point to not interfere too much with actual development. Something I'm not doing, by the way, at this point.

Since GStreamer is now part of my job, I will however get back to coding again soon enough. My selfimposed break from GStreamer to work on Dave/Dina has paid off well, but I need to get back in the game.

So, it seems dolphy is finally able to get back on libgstplay again now that the dust in the core is settling down. There are some minor RGB issues left to be fixed, and some seeking work to fix, and then we can throw out a player again. The nice thing is that software scaling and interactivity now works, so that means that I can finally live up to our promise to Michael Meeks. We're coming for your desktop, monkey boy.

With Robert Love (his Linux 2.6 book is funny, well-written and understandable for non-kernel-hackers, so get it) being hired by Ximian/Novell to work on desktop/kernel/whatever integration, I hope Ximian finally realizes that multimedia is the one missing link from their corporate desktop offering. All those suits just want to play their funny videos from evolution. And we're getting ever closer to being there.

mach

0.4.3 (Hot Water) is out the door. It now has support for Fedora 1, finally.

Right before releasing I couldn't figure out why it had completely stopped working. It was ignoring my custom config file for some reason. After trying everything, I just gave up and started reverting patches one by one.

It seemed I had put a # to comment a line, while I could only use //. I was trying to figure out what was wrong, poking Gustavo Niemeyer in the process, before I realized that I had to use //. I told him that was the problem, and suggested apt should at least warn me the configuration file is wrong...

There are projects that you use every day and you get some sort of mental image in your head, and you're a bit timid when approaching these people. And most of the time, when you do, they all turn out really nice. Well. Of course I haven't ever had a reason to poke the xscreensaver developer :)

Barcelona

I was getting worked up today by the way internal conflicts were turning out. One of the differences between work stuff and open source development is that arguments tend to be drawn out more in the open, for all to see. People were breaking out the popcorn and so on. I'm not going to bite into too much flamebaiting. I just want us to get the job done.

And when you go out at night and rollerblade through the city, getting teached the very basics by the best teacher in Barcelona, for free, you tend to put things in perspective. After two hours of wearing my body down, and being teached by a great teacher, who takes time to explain everything and answers every question, and does it all with style, grace, and humour, you can only be humbled by someone's enthusiasm for something.

When experiencing something like this, you tend to let go of all the negative energy you built up in the day before. I'm very relaxed right now.

So, time for bed !

« Previous PageNext Page »
picture