Friday, December 30, 2005

there is nothing to see here

There was nothing to see here today. So go away because there is really nothing to see.

Thursday, December 29, 2005

certificate of birth, snow, and reinventors of the wheel

This morning I called the civil registry office because I needed a certificate of birth and thus wanted to ask how to apply for such a document. The officer told me that there is no need to apply for that document but I could just come along with my ID card and some money for the fee and get it --- immediately. I was confused! She also told me that it is possible to issue the document on international formulas if I need it for foreign countries. I was shocked! I am now living for 28 years here in Germany and my experience with German bureaucracy told me that there must be something wrong with that. I immediately took the car to drive there and try what I almost couldn't believe. And actually I got exactly what I wanted. Perfect service! --- Amazing! I still wonder whether there is some special trick I did not notice yet...

To have enough time to think about this amazing experience I did my regular running exercise. Today this was really hard because gusty winds did occur and made the snow lying around everywhere to be blown all over the streets and running on soft snow is much more laborious than running on plain ground. Additionally it was that cold that the water from my breath was freezing in my beard.

Later that day I was shocked again by a new example of people from the reinventors-of-the-wheel community. People from this community are those that invent something that does exist already for years but in a much better way. --- I mean the original version is the better one not the new one. This time it was again a special purpose programming language for an application for engineers. It is always the same: There is an application for which an automation component should be added. Instead of reusing a well established programming language with libraries that fit the need they decide to design a more simple language that does fit the need better because they don't need all the funky features of a full blown programming language. But then there are two problems. First they have no clue how to design a programming language and thus reinvent all the problems others have already solved years ago. Second they find that they actually need a full blown programming language and thus blow up their special purpose language with hundreds of thousands of special cases because their original language design does not support all stuff that is needed. This all does not lead to a programming language but to a horror story. --- Please, if you are the developer of a special purpose tool, learn to reuse stuff others have thought about for years and don't fall into the trap of thinking that you can invent the perfect version without prior knowledge in only a few weeks instead. --- It simply does not work!

And now for something completely different...

Today was completely different from the days before. I didn't visit relatives. They were visiting me for a reason that is completely unrelated to Christmas. Well, at least we had much fun again.

Tuesday, December 27, 2005

This is getting boring...

I know this is getting boring for you, but guess what I have done today... Right! You got it!

Monday, December 26, 2005

family celebrations part III

We did some more Christmas celebrations with relatives. The topic that has drawn most attention was the new BMW car of my cousin. If you wanted to support him buying his cars you could buy some products from his company.

Sunday, December 25, 2005

overheating the GPS receiver and visiting some more relatives

Today I was overheating my GPS receiver. This did not happen when I was doing my running exercise in the morning because we had about 0 degree Celsius with much snow lying around which is a situation that is quite unlikely to overheat the receiver. But then we visited some relatives by car and I placed the GPS receiver near the ventilation shaft. After about 15 minutes of driving the receiver did an emergency power-off. I decided to find a better position to place the receiver in the car.

When we reached our destination I had the opportunity to get some more of the latest family gossip. In a family consisting of more than a hundred members there is always something to talk about. You definitely cannot talk about everything in one meeting.

Saturday, December 24, 2005

Merry Christmas everybody!

I wish everybody a Merry Christmas or whatever your favorite religious culture celebrates these days!

I for my part have already completed the most important part of the story which is typically Christmas Eve here in Germany. Tomorrow we will leave to visit another part of our huge family.

Friday, December 23, 2005

visiting the family

Now I am again in my hometown visiting my family and celebrating Christmas during the following days.

After syncing up with the latest family gossip everything is perfect again.

exams and strange students

Today we did the midterm exams. I wonder how long it will take until the first emotions from the students come to my attention.

Some students are really strange. They prefer not to submit the exam papers at the end of the test even if you tell them that they will get zero points then. Some of them have even reasons not to do so but neither our student assistants nor my colleague and myself could understand them. It seems that some people just think on a different level normal people could not understand.

Wednesday, December 21, 2005

caught and ethics

Today when I went to my office I was immediately caught by one of my colleagues because I missed to write a message here yesterday. I apologize for confusing my colleague that way. Obviously doing that was not conforming with my personal ethical code and I will try not to confuse him again in that way.

We also had a discussion about ethics in the club this evening. I tend to have more and more interest in that sort of discussion since I am learning more and more about political games. The more experience you have with political games the more real-world examples you have for ethical discussions.

Monday, December 19, 2005

stress-testing copiers

Today we were stress-testing the copiers at our department. Actually we had to print the midterm exams for 300 students. Fortunately we have copiers that support duplex printing and automatic binding the copies with retaining clips.

The first copier did fail the stress test in quite an early stage. He started to scan the source documents and printed the first copy. Unfortunately he did not include the last page into the binding with the retaining clip. We first thought this was an accident but this happened as well with the second and the third copy thus we gave up with this copier and went down one floor to the next copier.

With this second copier we started again to scan the source documents but obviously he didn't like them and crippled one page of the source documents. We printed the source documents again and because we started to become paranoid we did this twice. This time the scan completed successfully. Unfortunately I had forgotten to type the number of copies this time and thus the copier only made one. So we scanned the source documents again. The copier didn't like it to scan the same documents again and crippled again one page. We still had the copy of the source document we printed because of our paranoia and started the whole process again. This time the copier succeeded and started to print. The first copies were all perfect. After some time the copier went hot and decided to add a light gray background to every page. This was not a big problem because the text was still perfectly readable but somehow it was a bit annoying. When the printer went really hot (after about 5000 pages) he started as well to omit random pages in the automatic binding mechanism. I will have to count the failed copies tomorrow to decide whether I have to print some more copies.

Sunday, December 18, 2005

Google's new blogging tool for Firefox

Google has a new blogging tool for Firefox I am testing with this message now.

If you can read this message you might want do consider downloading it here as well.

Saturday, December 17, 2005

sleeping, running, and updating

Yesterday I didn't write a message here because I just forgot after not having really slept from Thursday to Friday thus I did so early at Friday evening. At least I was fit enough again today to run to Viernheim and half way to Weinheim from there and then back to Mannheim. After that I updated a SUSE Linux 10.1 system to the latest set of packages which is a bit more than Alpha 4. Up to this point I didn't find any new bugs they introduced for this release.

Thursday, December 15, 2005

no further rant for today

There will be no further rant from me for today here because I am leaving now for a travel to Nuremberg for offline ranting...

Wednesday, December 14, 2005

funny German words

I like those special long words in the German language that nobody uses in daily language and most likely there is not direct translation available to any other language. These words are a special creation of the famous German bureaucracy. One of these words is "Rechtsbehelfsbelehrung". You find this word on official letters informing you about a decision by officials thus it is a special type of disclaimer. The "Rechtsbehelfsbelehrung" gives you all the details about what you have to do if you do not agree with the decision and how long you have time to state your disagreement. If the officials omit the "Rechtsbehelfsbelehrung" you have unlimited time to state your disagreement. (Well, not really unlimited, actually there is still an upper limit defined by law anyway.) The funny thing with all this is that typically it is much easier to read and understand the decision itself than the "Rechtsbehelfsbelehrung".

Tuesday, December 13, 2005

computer scientists at the Christmas market

I was visiting the Christmas market with some colleagues today. You guess what happens when a bunch of computer scientists go to a social event. Actually it was relatively harmless and we managed to exchange the most important gossip.

Monday, December 12, 2005

birthday hotspot

Today was a real birthday hotspot. Whatever is responsible for this local birthday inflation I found that four of my direct acquaintances celebrate their birthday today. But actually it seems that some people already suffer from this inflation and feel the strict requirement to announce their birthday on public mailing lists to prevent other people from forgetting them in these times.

Sunday, December 11, 2005

yet another weekend completed

Another weekend is complete. Nothing special happened. After doing my regular running exercise, this time to Ruchheim, I called Szann for the latest news from the Western Hemisphere. Finally I concluded the day with Joanna and Martin in the club.

Saturday, December 10, 2005

academic concepts for quality assurance

Many projects have big problems with quality assurance. With academic projects you even see some groups that invest large amounts of their working time in finding and fixing bugs most of which most likely would not have occurred if they had established a small amount of quality assurance. Many commercial software development groups have the very same problem in principle but they are forced to hold at least a certain internal quality level to prevent bankruptcy.

Most software developers don't like to do quality assurance because some parts of this work are boring. Especially academics often don't want to do work that is not directly involved with their topic. This is understandable because they cannot write shiny papers about this basic work and thus don't want to waste their time for it. Actually they often waste their time because if every developer in a development group does omit this work completely you get extremely broken code resulting in the situation that all developers in the group waste most of their time finding the same bugs. Because of the fact that fixing a bug takes more time than adding an ugly workaround, they often skip to fix the bug hurting their colleagues this way because they have to do the very same work for this bug as well. Often academics also have never learned how to use their development tools appropriately. For example many of them use revision control systems in a way that they check in their work no earlier than they think their whole subproject is complete. This results in lost revision history and many bugs when one decides to check in the work of the last four(!) months at once.

But there is a special sort of people that can drive me into a rage in such a situation. This sort is always reading the latest books about project management and quoting the smartest ideas from these books. Additionally they design new shiny test systems to improve the quality of the product ignoring the fact that they already have a huge amount of tests that work but nobody actually cares about their failing results.

When will those people learn that the work is not complete when you design and implement infrastructure tools. It is no earlier complete than you actually _use_ them.

Friday, December 09, 2005

strange people and public transport

I am a bit fan of public transport, especially because you meet the really strange people there. Today I met again a _very_ strange person. When I reached the tram stop there was a man of about 40 to 50 years old with a fine black suit. When I reached the platform he walked towards me and then asked when the next tram will arrive. At least this is what I supposed he wanted to know. Actually it was not a real question but some fragments of almost incomprehensible fragments of German sentences and numbers. I wondered why he didn't look at the time table himself. Anyway I told him that the next tram will arrive in about 5 minutes. He took his mobile phone, starred at it, and walked slowly away some meters. About two minutes staring at his mobile phone and some places of the tram stop platform he walked again towards me and began again talking to me in incomplete and strange fragments about when the tram will arrive. I wondered whether he was drunk but apart from his articulation nothing seemed to point to this assumption. So was he some foreigner that was not really fluent in German and thus did not understand what I explained him two minutes earlier and cannot formulate correct and complete sentences? But although his articulation was pretty strange I didn't get the impression that there was any foreign accent. I decided to explain him again. He confirmed what I told him so that I was sure he did understand this time and then walked again away some meters and stared at his mobile phone. Some more minutes later he came again to ask his strange questions about the time and the tram showing that he seems to have forgotten everything that I told him a few minutes ago. I decided that it is worthless to invest many time in explanations again and just gave him a short answer. The situation repeated. Unfortunately the tram was late this time which allowed the situation to repeat multiple times. While the situation was repeating multiple times there was one instance with an interesting variation. Once he didn't walk towards me but towards the time table, reading in a loud voice numbers from the time table that were not listed there. I felt somehow relieved when the tram finally came along to move me out of this Groundhog Day situation.

Thursday, December 08, 2005

PhD defense, midterm exams, and Santa Claus party

Today was a day with many topics. First one of my colleagues did defense his PhD thesis. You know this is this event where some professors from the department ask questions to a PhD student to show him that they are still superior compared to him. Afterwards he organized a small reception to celebrate his success.

Then we started to design the midterm exams to make our students happy in two weeks.

Finally I completed the day at the students' Santa Claus party which is always a nice place to talk to other people in a nice environment.

Wednesday, December 07, 2005

AggressivePowersave

kpowersave in SUSE Linux 10.1 has recently got a new scheme "AggressivePowersave". I wanted to know what they mean when they say "Aggressive" thus I tried this option and immediately learned how aggressive "Aggressive" can be. My kernel immediately produced an Oops message which resulted in the system being almost unusable until the next reboot. Maybe it saves some power if you no longer can work with your system but most likely this is a bit too aggressive for the average user.

Tuesday, December 06, 2005

the global trap

The nice thing with script languages is that you can do quick powerful hacks to solve problems. The ugly thing with script languages is that you can do quick powerful hacks to solve problems. Whenever you do so with a problem that is not trivial you reliably walk into one of the many traps script languages provide for you. Today I walked again into the global trap. This trap is constructed by the fact that by default every variable is global in many script languages thus if you forget to declare all variables local in a function you are likely to overwrite another variable with the same name in a somewhere completely unrelated place of your script. Some script languages even don't allow you to declare variables local.

This is not the only trap script languages provide for you to fall into. Another one for example is that variables are typically not typesafe and there are myriad numbers of operators that "magically" cast variables to arbitrary appropriate types. Although this seems to be a quite convenient feature and some designers of script languages are even proud that their operators "attempt to do what you mean", on a second thought this is one of the nastiest traps these languages prepare for you. The problem is that even when a operator in most cases does "what you mean" there are some cases where it does not. And because of the fact that the operator "attempts to do what you mean" in a huge number of special cases it is typically such complex that most programmers don't really understand the rules that control the way the operator works and thus they cannot understand bugs that result from a case where their intention differs from the meaning of the operator.

So be prepared to run in these or many similar traps when you go the script way you pretend the most easy one. And if your project is a bit more than a trivial one you _will_ run into these traps even if you consider yourself a guru programmer.

killing my system softly

I started to destruct my system slowly now by updating to the latest SUSE development snapshot. I could not update the kernel because the available nongpl modules did not fit the kernel base package thus I decided to keep the old kernel. After rebooting to the new system I found the wireless network card and the sound chip did no longer work. A short inspection uncovered that the modules were not loaded. Manually modprobing the drivers made the network available again. Christoph urged me to upgrade the kernel to a recent version so I updated to the one from the Alpha3 release. Now all driver modules were loaded again automatically as before but since that upgrade I need to run wpa_supplicant and dhcpcd manually and I can no longer hear the sound that is claimed to be played which is not really an improvement over modprobing the drivers.

Sunday, December 04, 2005

security by naivety

Some people have really strange security concepts. Telecommunication companies are typically among them. On a German news site there was an article about the fact that one can access answering machines of mobile phones of any customer of many telecommunication companies without a password just by sending a manipulated caller id. Typically the idea is that a customer can access his answering machine without a password when calling from the corresponding mobile phone but has to enter a password when calling from anywhere else. This actually does make some sense but the implementation often seems to be pretty braindead. Did nobody tell them that you should check input parameters you receive from external sources? I mean as long as you can be sure the parameter comes from a controlled source where nobody can manipulate anything this _might_ be acceptable but what they are doing here is even more stupid than deciding about access to an Internet server based on the IP address. No, _this_ concept is as if you _asked_ the client for his IP address and decided based on this information without checking correctness of the information provided. I mean the telecommunication companies should be able to check whether a caller that claims to come from their _own_ network actually does, shouldn't they?

experimental drpmsync client published

I have now put my experimental drpmsync client here. If you like to test it feel free to do so but note that this code is still in the quick hack status although it has already improved. This means that it is not yet really userfriendly and if you want to change some settings you should have some basic knowledge of shell programming.

Saturday, December 03, 2005

most expensive retaining clip of the world

Today I have bought one of the most expensive retention clips of the world. Actually I had to sign a commercial document for which notarization was required. Thus I went to the notary's office early in the morning. The secretary first wanted to have the document and my ID card and told me to wait in the hall. So I was waiting while something secret happened in the office. In the hall another person passed by with a cereals bowl. Some other people passed by as well. After some time the person with the cereals bowl passed by again. I wondered what they were doing with my document and my ID card in the mean time. The person with the cereals bowl passed by for the third time. Again some other people passed by. I was not really puzzled when the person with the cereals bowl passed by a fourth time. Obviously he was hungry. The door opened and I was instructed to enter the room. Then I had to sign the document, received back my ID card and was instructed to leave the room again to wait again in the hall. This time there was no one passing by with a cereals bowl. After some more minutes of waiting and secret things happening behind the closed door I was handed out my document bound by a sealed cord to a second document stating that it was me signing the document. When you look up the fees you have to pay for all this it is most likely the most expensive retention clip to clip two sheets of paper together.

Thursday, December 01, 2005

random invites

Today I received an invitation to an interview for a job I never applied for. This actually was neither spam nor a headhunter but just a human resources manager that mistyped the email address when she replied to an application. Maybe I should have gone to the interview date trying to get the job just for fun. Maybe I would have even found out what the job actually was I was invited for an interview.

Wednesday, November 30, 2005

computer scientists and political games

It seems that most computer scientists (and people working on other technology oriented areas) cannot handle a situation where someone is playing a political game on them. I found that there are basically three different ways they react when someone is saying something to attack their position:

1. They start to argue with their colleagues why it is not true what the other person is saying and how dumb this other person must be to think in such a stupid way. --- This obviously means they have not the slightest idea that the other person just wants to polemize.

2. They immediately offer a compromise by going five steps backwards from their own opinion. Typically they think that this will smooth the opponent. Actually in such situations this only leads to the effect that the next time the opponent will come back with an even more extreme position.

3. They become totally bullheaded. In this situation they even don't try to find an appropriate compromise, even when this hurted themselves because any solution would be better than having no solution.

Some position in between 2. and 3. would enable them to handle the situation quite well by entering the political game as an active and smart player. --- But as computer scientists are binary people they can't mix that stuff.

Tuesday, November 29, 2005

trendsetting

It seems we are again real trend-setters here in Germany. After our former government decided this summer to force early elections there are more and more other countries doing the same now. Two weeks ago the Israelis announced to do the same and now the Canadians are following as well. We could invent a global annual reelection day where we reelect all governments all over the world to have some more fun --- although on a second thought there are also countries that have that boring elections that even the international observers don't like to go there...

prototype for drpmsync client

Because the author of drpmsync does not like the idea of a drpmsync client that can use various non-drpmsync servers to balance the load I have now implemented a first prototype myself. The only thing this client needs from a drpmsync server is the contents file. After it got this file he can do everything else with any rsync, ftp, or http server that does mirror the original drpmsync tree including the deltas. Obviously there is a problem when the mirror server is out of date but this is not really a problem because a final run with the official drpmsync client can then fix up these minor glitches.

I am now trying to catch up again with the current state of the factory distribution with this client. If this works fine I will publish this client for anyone interested.

Sunday, November 27, 2005

winter is coming back

It seems the winter is now coming back here in Germany. In the Muensterland, an area in Northern Germany (I hear some people crying now... ;-) there was so much snow that they suffer from the heaviest electrical power outage since World War II because the weight of the snow has broken down many power poles.

I was doing my running exercise from Mannheim over Ludwigshafen to Altrip and backwards today. There was no snow at all at these places but when it started snowing a bit on my way backwards from Altrip to Ludwigshafen I found that it becomes somewhat uncomfortable when running with a tee-shirt only when 2 degree Celsius are combined with snowing and gusty winds.

Saturday, November 26, 2005

usual weekend stuff

Was doing the usual weekend stuff today. Joanna considered this boring. Maybe I should do some unusual weekend stuff tomorrow.

Friday, November 25, 2005

radeon driver broken

Today I found that unfortunately the radeon driver is again broken for my machine. Immediately when the X server is started, the whole machine crashes. I first switched to the vesa driver but due to the fact that I need a dual head setup I installed the proprietary fglrx driver again. After some fiddling I got it running. After all it's a pity that many hardware vendors do not publish specs to allow implementing a stable open source driver. I still hope this will change when Linux gets more and more market share.

Thursday, November 24, 2005

copying other's work aka teamwork

Today I did again a course for our freshmen. Some started to complain because they got no points for their assignments. Actually we decided that they won't get any points for assignments where we get exact copies from multiple students. Some argued that this is not fair treatment because we adviced them to build learning groups. So I had to explain again what a learning group is and why it is more advisable to _do_ the assignments instead of copying it from someone else. Then there were those people that complained because they suffered from the fact that others copied their work. I answered them that they at least now have learnt something about whom to trust.

I think that most of them now have realized some basic rules on that topic.

Wednesday, November 23, 2005

the German way of creating equitable laws

We have some strange way here in Germany when we create our laws. There are two things that are quite special about German mentality when it comes to creating laws.

The first thing is that most Germans are obsessed by the idea of creating perfect equality for everybody, especially themselves. I mean there is nothing wrong with egalitarianism in principle but most people here are so notorious about this idea that they _always_ find a point where they are discriminated.

The second thing is that most Germans think that they can fix disparity by adding exception rules to the existing laws. They don't understand that they just create _more_ disparity by inventing new exceptions instead of simplifying the rules to a level where they actually still can control the results of their changes somehow.

The result of all this is that we get more and more laws here. One of the most interesting things about this is that in 2000 it was said that about 60% of all publications worldwide related to tax laws was written in German language. (When I do my taxes I get the impression that this number is still increasing...) This leads to the paradox situation that the rich people that can afford paying a qualified tax advisor pay less taxes and the poor ones, the exceptions are designed for, often cannot make use of these exceptions because they are nor aware of them. Fortunately I am pretty sure they will invent yet another exception rule just to fix this problem...

Tuesday, November 22, 2005

security checker

Ulrich completed the security audit of our new security checker tool thus we could merge it to the production branch. I immediately tried to make some use of it by adding meta descriptions to some well audited functions to allow the tool doing automatic pre-auditing of new code only using functions with complete meta descriptions. According to my first tests our manually audited code seems to be pretty clean according to the tool. Cross-checking with some external code that did not get a manual code audit did show that the tool could actually detect many problems. Seems the tool could really be helpful in the future when implementing new code or when looking at existing one.

Monday, November 21, 2005

Acrobat Distiller, the PDF specification, and coding style

Was running pstoedit on a PDF file today and got the following error message:

**** This file had errors that were repaired or ignored.
**** The file was produced by:
**** >>>> Acrobat Distiller 6.0.1 (Windows) <<<<
**** Please notify the author of the software that produced this
**** file that it does not conform to Adobe's published PDF
**** specification.

Seems that either pstoedit is not telling the truth or Adobe did not read their own specification when implementing their PDF creation tool. I wonder whether I should send them a note...

Then someone posted some coding styles on Slashdot that are obviously used by some developers of projects I am involved in. This page is definitely worth reading!

Sunday, November 20, 2005

working up some pending stuff

Today I was working up some stuff pending for a long time but there is still some stuff left up to work up --- just to prevent me getting bored.

Afterwards I went swimming with Joanna. Martin was lazy again and preferred staying at home. But this way he could at least prepare everything for the nice evening we had.

Saturday, November 19, 2005

usual weekend

We decided to build a new policy file today to install the development machines for a project because the old one became too difficult to maintain. Then we did. After doing so and exchanging latest gossip we went to the cinema to watch another old cult movie.

Friday, November 18, 2005

real interest

Seems my body was actually interested in getting some iron because he didn't complain about the ferrous sulfate today.

I am not that sure what the inventors of the openSUSE project are actually interested in. Was this just one big marketing bloat? Are some people still completely shocked by the Novell press announcements of the last weeks. Seems like the Novell head managed almost all of their employees to fear losing their job. At least I have made the experience that when you want to discuss some issues about the openSUSE project in the last weeks you meet mainly three sorts of people: First there are those that don't know about the issue and are not responsible for any problem. Second there are those that don't answer to messages at all. And finally there are those that tell you that they have already discussed about a solution internally but they cannot tell you about it. --- Huh? Wasn't the project named _open_SUSE? --- Well, ok, they spell the "open" in openSUSE in small letters. Will they drop the small letters again like they once dropped the dots?

What's up SUSE? You can't complain about FUD that claims that Novell wants to cancel the desktop products or things like that if you give external people the impression that there is some horrible thing going on internally nobody is allowed to talk about. And you can't really eliminate that FUD by just denying it. This just leaves a similar impression like this famous German quote: "Niemand hat die Absicht, eine Mauer zu errichten." ("Nobody has the intention to build a wall." --- Walter Ulbricht said this about two months before they started to build the Berlin Wall.)

Thursday, November 17, 2005

replacement product test scheduled

Now I got ferrous sulfate pills as a replacement for the ferrous glycine sulfate. Will test tomorrow whether my body likes them but because I don't want to overstress it, I will first try with half of the recommended dose rate.

Wednesday, November 16, 2005

ferrous glycine sulfate received --- core dumped

Got a package with ferrous glycine sulfate pills yesterday by the blood donation service because they consider me having some iron deficiency from doing regular blood donations. So I took one of those pills as instructed this morning before I went to work. About two hours later I felt extremely sick thus I called the blood donation service for advice. They recommended not to take the pills for the following two days and then test again. My body had a different opinion. It was pretty sure that I shouldn't have taken the pill in the first place and thus reverted the process of taking the pill completely. After that I felt completely comfortable again. Seems I should never ever use those pills again and fetch a replacement product at the blood donation service.

Tuesday, November 15, 2005

Everything just one big bloat!

It was everything just one big bloat! The earth shrinked back to normal size. At least this is what my GPS receiver was telling me when I was doing my running exercise again this morning. The course that used to be 10km was again 10km. Most likely it was because it is getting cold now here. I also had to switch to a long pair of trousers now because the temperature went below 5 degree Celsius in the morning.

Monday, November 14, 2005

openSUSE codename competition

Today Andreas officially opened the openSUSE codename competition. Naturally I immediately added the suggestion "Impressive Places of the World" which should allow a huge amount of wonderful colored photos for the boot loader and everywhere where they should be placed.

Sunday, November 13, 2005

student skills

Some of our freshmen seem to start the usual panic because they realize that the exercises sometimes include questions where the answers where not explained in the course before. Our student tutors seem to become nervous about this fact as well. Seems that I have not convinced them yet that it is not sufficient for a university student to apply knowledge they learned from the courses but that they should learn to find appropriate solutions for problems that arise while trying to answer the exercises. Seems that there is some work for the next meeting...

Saturday, November 12, 2005

openSUSE governance

As already mentioned in other blogs Peter Flodin opened an interesting discussion on the opensuse list about "governance". Although in my opinion this is not the most important question in the current situation it is at least more refreshing then the boring KDE vs. Gnome discussion that goes on for too much days now on all SUSE related lists.

The funny thing with all that governance thing is that many people still think that Novell should ask them about how they should do their business. I mean giving an advice is ok but if those people deduce a right to decide about other's business from that, they are somehow brain dead in my opinion (and Pascal seems to have the same opinion).

In my opinion the current issues with openSUSE are not about decisions but about communication and information flow from SUSE staff to the outside world. But I won't go into details here again. If you are actually interested in my opinion on that topic read my mails on the list. I am curious how often I have to repeat this argument before this does actually improve.

Friday, November 11, 2005

The world is actually growing!

People often say that the world is getting smaller and smaller nowadays because of means of travel you have in our modern times. This morning when I was doing my running exercise I uncovered an alarming thing: Actually the world is growing! After about the first two kilometers (or better what always used to be the first two kilometers every other day when I was running this path in the past) my GPS receiver told me that I was running a bit further than two kilometers. First I thought that this is the result of one of these synchronization fault peaks you sometimes get shortly after initializing a GPS receiver that results in movements of some hundred meters although you actually did not move at all. Actually it was not. Continuously the number of difference in meters I was running this day up to a specific point on the path and I was running in the past up to the very same point grew higher and higher slowly, although the GPS receiver was pointing exactly to the correct point on the map I was running at that time. I was really alarmed. What did happen? The only solution that came to my mind was: The earth is actually growing and thus enlarging its own surface. What will happen if the surface can no longer stand the pressure of the internal growth? Will the earth explode? My blood ran cold! What if the earth will grow faster than I am able to run towards my home? Will I suffer a similar problem Achilles had when he was running after the turtle? Fortunately with strong effort I finally reached my home again and my GPS receiver told me that the course that used to be about 10 kilometers long has grown by 1500 meters. Stay tuned, I will report the latest findings --- if there are any...

Thursday, November 10, 2005

building a linear solver

I did now build again the current version of a linear solver I used in another project some years ago. It is always funny to see how some people build their projects. Instead of using a makefile they use really heroic shell scripts. At least they are using a compiler toolkit instead of implementing a broken parser manually like many other projects. But what you definitely don't want to do is turning compiler warnings on...

Wednesday, November 09, 2005

preparing course with limited sarcasm

Today I did some preparations for the course tomorrow where I have to tell our students about object oriented programming. Unfortunately the explanations should be based on Java thus I had to do some extra training to limit my sarcastic comments about that language to the strictly mandatory minimum level...

In the afternoon we had a meeting of the faculty council. Obviously I cannot tell stuff from there in public and even if I did you most likely wouldn't believe it...

Tuesday, November 08, 2005

security experts and linear package dependency resolver

Today I was shocked again (as it happens most days of my life). I saw how an academic research group working mainly on the area of computer security have configured their own IT systems. Obviously I cannot go into details here but I can repeat my general advice to all people working on theoretic concepts to at least apply these concepts they are publishing papers on it to their personal practice. If you don't do so, you definitely will lose contact to reality...

Another thing I thought about today was how to improve dependency resolving in our build system. Currently we are doing basic dependency checking with a greedy algorithm that continuously takes the decision required to resolve a dependency as long as it is not ambiguous. If the decision is ambiguous the resolver stops and requests manual specification. This does work and is implemented by most RPM install tools as well. But for a build system it becomes more and more annoying the more distributions it supports because every distribution likely adds some more ambiguous choices. The alternative some other build systems use is to hard code some special selection rules is not really better because it tends to blow the rules for each additional distribution you add. My current idea is to convert all package dependencies into linear equations, adding an objective function to minimize the number of packages, and then solve the simplex matrix by a linear solver. This would definitely give a generic algorithm and converting dependency rules to linear equations is straight forward. To prevent the solver from selecting one solution randomly if there are multiple minimal sets possible, I might give some extra weight (< 1/(total number of packages)) in the objective function to the packages. Nice thing with these idea is that it will work with any package management system, solving the sparse simplex matrix should be acceptable fast with good solvers, and you don't need any user interaction as long as the dependencies are solvable.

Monday, November 07, 2005

top secret --- this message will suffer self destruction in 20 seconds...

Some companies have the annoying habit to label every document they publish internally by the word "confidential". I understand that there are things that should not become public and thus must be kept confidential but some companies often label stuff published internally as confidential although the same thing with almost the same wording was published to the press as well. You may ask: "What's the problem?" --- Well, what do you think how serious the company employees will take the word "confidential" if it seems to be already included in the letterhead of the standard internal letter paper of the company.

But some companies have already recognized this problem and thus invented the wording "strictly confidential". --- What's the meaning of this? And what's the difference to the simple version of "confidential"? Does this mean that you should tell around the "confidential" stuff but not the "strictly confidential" stuff? But it seems that at some companies even the "strictly confidential" stuff is no longer to be considered serious because I have already seen flyers placed near the entrance to the lunchroom of a company that was labeled "strictly confidential". Do they really believe that this information does not spread if they place it at such a prominent place? Especially when the lunchroom is also accessible by some visitors.

So what is the reason for all this? Did some people from internal marketing just watch too many James Bond films, are they just plain stupid, or is their intention actually to attract attention by labeling leaflets that way. Ok, you can't do anything about the first two possible causes but if the last one is the actual reason then those people should notice that it is problematic what they are doing. If they are using words like "confidential" in such a meaningless way people might ignore it even when they get information that is _really_ confidential and this actually _can_ hurt a company.

Sunday, November 06, 2005

Copy&Waste programmers and compiler crash

Tried to build our database system with gcc 4.1 today. The first thing I noticed again was that the so called Copy&Waster programmers were active again. You don't know what a Copy&Waste programmer is? This is this sort of programmer that is too lazy to write something like a function body but instead takes a random file with similar code, copying all the errors of the original author and adding some new one. This sort of programmer is the same sort like the ones that implement almost all member functions of a C++ class within the class declaration resulting in two problems. The first one is that by the C++ standard member functions implemented within the class declaration are always inlined, which most likely fails for functions with thousands of lines of code. The second one is that it makes the class declaration complex and unreadable. This second problem combined with Copy&Waste programming then results in compiler errors like this:

myclass.hh:42: error: extra qualification 'myclass::' on member 'foo'

If the class declaration would have been clear from implementation code people would have noticed immediately that there is broken code. So, if you are a Copy&Waste programmer or you implement member functions within the class declaration please stop this _now_ unless you want to become non-replaceable in your company because you become famous for nobody wants to maintain your code.

After I fixed those stupid bugs I found that the compiler again crashes when trying to build the runtime engine. Will have to check tomorrow whether it is ok to show the preprocessed code in the public to do a proper gcc bug report.

useless road signs and "Wetten dass..." event

This message about yesterday is a bit late because yesterday I did two things that made so much exhausted in the evening that I didn't want to do anything else afterwards.

The first thing was my usual 30km running exercise for the weekend. There I found one of the most useless German road signs I have ever seen. In Ilvesheim there is a blind alley of about 150m which is easily identifiable as a blind alley from the beginning. They have but a sign that says that it is only allowed for cars that have their destination in that street to pass through. --- You won't guess that! Whoever might be interested to pass through a blind alley of 150m if he does not want to go there? The city council would have better invested the money for that sign into the local school for blind people or some project like that. But we have many useless road signs like that. In Ludwigshafen for example there is a road on the Parkinsel which is as well closed for cars. They have placed an additional sign there which reads "Zufahrt fuer Berechtigte frei" which means basically that access is allowed for authorized people. Well, I always thought that it is exactly the _definition_ of "authorized" to be allowed to do something thus if I am authorized to access a road by car I am allowed to do it whether there is such a sign or not.

In the evening I went to an event at the water tower of Mannheim related to the German TV show "Wetten dass..." which is the most famous TV show here in Germany. Yesterday they sent live from Mannheim and because of that there was an event at the water tower where 250 electric guitar players had to be found to play together the central theme of "Smoke on the Water". They had a nice supporting program there and almost everybody was in high spirits.

Friday, November 04, 2005

teaching to use tools properly

Why the hell are most academic computer scientists of the opinion that it is not important to learn using the tools for their daily work properly? Actually I found that most researchers at a university for instance actually don't use a revision control system in a way that it helps them to track revisions of their developed software (what typically a revision control system is designed for) and most of them don't have a clue what a linker is actually doing.

So, why is that the case? You expect those people to be quite intelligent (often even with some amount of arrogance when comparing themselves to "simple" people working in the industry). I think this is often a result of that sort of arrogance because if you talk to such people you are often told that it is of no academic interest to learn about existing tools. I understand that there is no academic conference where you can publish a paper on how to compile a C++ application. But couldn't it still be useful to understand the tool you are using to save much of your valuable time by not needing to work around problems that result from improper usage of the tools? And of which actual use is a benchmark report about various algorithms implemented in C++ when the fastest one works unreliably because the implementor did not understand the aliasing rules?

The same problem occurs when teaching students. In recent times it becomes more and more a common practice for many teachers at universities to expect students to be no longer able to learn an additional programming language or something like that on their own. Instead they start to standardize to one programming language for all courses just to make sure every student has at least seen it once before. The very same teachers then complain that most students are no longer capable to do productive work in a project. When should students learn autonomous work when they have to learn only exactly what the teacher tells them in the course instead of being forced to learn some additional stuff that is useful to understand the topic?

In my opinion those academics should understand that they are not superior compared to someone working in the industry but they have a different focus. _Both_ sides could and should learn from each other. Where academics have a clear focus on trying much interesting stuff, a person working for a company is more interested in creating a product that is of an actual use and does actually work. Have you ever tried to use software from an academic project in a productive environment?

Thursday, November 03, 2005

still alive and fighting again with the drpmsync server

I am still alive!

Actually the strange package I received today was not a parcel bomb but only some boring contract papers from a company I am involved in. The fact that I did not know the sender was just because I did not receive the documents directly from that company but from another company that sent them on their behalf.

Currently I am again running my specially modified drpmsync client doing some dirty tricks to catch up again with the current SUSE edge distribution because the normal client is still not usable because of the slow server. Thanks to Eberhard's fast server my special hacked up client can fetch some files in parallel from there although his server does not support the drpmsync protocol. If that situation holds on for some longer time it could be useful to clean up this version and publish it.

Wednesday, November 02, 2005

receiving strange package

One day after they went into panic in the Netherlands because of a package in a train I had a notice from UPS in my mailbox informing me that they wanted to deliver a package to me but were not able to. Obviously this was because I was at work. The strange thing with this is that the notice claims the package is from a company or person I never heard of before. If I were paranoid I would suspect the package now to be a parcel bomb or something like that. --- Wait actually I _am_ known to be paranoid...

Well, let's hope that you read another message from me tomorrow...

Tuesday, November 01, 2005

Halloween tricks

You noticed that I did a Halloween trick yesterday by not writing anything here? --- Ok, actually it was not really a trick but just the result of the fact that I was on the greatest Halloween parties I have ever seen and after that party I forgot to do so.

It still seems that everybody is doing Halloween tricks here although Halloween is not really based on any tradition in Germany. The most famous tricks are currently done by the SPD, one of our political parties. It all started with the board of managers electing a secretary general that the chairman didn't like to have. This lead the chairman and various other persons to announce their retirement and lead the party into another big crisis. It seems someone should have given them some treat instead. Let's see whether someone manages to form a new government in the near future, the whole thing slowly begins to become a staircase wit...

Sunday, October 30, 2005

"Der Bockerer" on TV

Today I was mainly relaxing and preparing exercises for our students.

An interesting thing I noticed is that the Bavarian TV will show the first three films of "Der Bockerer" this night. I immediately instructed vdr to record them because those are really good Austrian films.

Saturday, October 29, 2005

visiting Cologne

Ok, today I was all day occupied visiting Cologne. When I reached the conference building there was this concierge, an original native of Cologne. He was most likely the only one in the building with hundreds of signs that smoking is not allowed that was tolerated to smoke some strange cigars all day. Apart from smoking his primary job seemed to be asking everybody whether he has arrived by train and explaining that they offered a free parking space for his car. Actually he explained this to all people, whether they arrived by car or not. Then there was this Indian guy that asked him whether he speaks English. He claimed that he did so. So the Indian guy asked him whether he needs his passport. The concierge explained in clear English sentences that they have a garage and that he could use a free parking space. Obviously the concierge _could_ speak English --- and he never claimed that he could answer English questions.

After we had all work done, we did what would have been typical for an excursion of our department: We visited the cathedral and some cafes. What would have been not typical for an excursion of our department is that we walked more than 500 meters at once.

Finally I noticed that Cologne has more of everything than Mannheim: The church is bigger, there is more traffic and more nice girls although I have not checked whether the majority of them are natives but due to the fact that we were mostly in the inner city I suspect most of them have been tourists.

Friday, October 28, 2005

graduation ceremony

Today we did our yearly graduation ceremony of our faculty. I was responsible for taking photos of all people that were involved in the event. One former student first talked about why it is great to work at IBM. A professor from an other university was telling about how efficiency of solving 3-SAT problems were improved in recent years, although I suppose most people where just impressed and confused but did not understand anything. Then there was a talker from the alumni network that was a really good talker. Finally the certificates were issued to the students and then the most important part of the event took place: the buffet. Apart from eating this was the place to meet old friends and to backbite other persons.

Thursday, October 27, 2005

foolish act of the week

Today I was made aware that some people from our institute managed to win the foolish act of the week contest. Two of them attended a meeting of the university data processing center where they were offered an old 19" rack from the old local district court building that was no longer needed there. Immediately a group of happy campers went to the old local district court building and moved a 250 kilogram dusty and muddy rack first to the underground parking area, from there with a transporter to the institute building and up to the second floor where they finally found that the rack does not fit into the room where it was intended to be placed. Now the rack is blocking a door and the group of happy campers have heavy pain in arms, shoulders, and in the back.

A pocket rule could have saved much effort in this situation...

I for myself now completed the preparations for my trip to Cologne on Saturday which was much less painful.

Wednesday, October 26, 2005

PDF puzzle

My colleague did a PDF puzzle today. It was not really his intention to do so but he just created this PDF file. On most systems this PDF looks as expected but on some (Windows?) systems when watching it with the Adobe browser plugin it looks like this. I have created the same document as PDF with my tool chain that does not seem to have this problem. Anyone here with an idea what is happening here exactly? Is this a bug in the document or in the Adobe plugin?

Tuesday, October 25, 2005

student inflation, population of 10.1 repository, and lookup rules

What's the reason for the inflationary increase in the number of students visiting our university courses this semester? All courses I am aware of have a much higher number of students than was predicted by past experience. For some courses even the scheduled rooms are quite small.

To support an inflationary increase in my package repository I started to populate the repository for SUSE Linux 10.1 with the first two packages. Only two packages so far but it is a start. Note that you should _never_ install the package build-ccache on your system because it is intended to be used by morebuild only. Installing this package on a normal SUSE system might result in strange behavior. Maybe I should finally implement some ideas to morebuild that would obsolete this package completely.

Another point that results from latest SUSE releases and especially from the shipment of gcc 4.0.x is that I had to read the detailed rules for C++ lookup rules with templates to understand the details of why _exactly_ gcc rejected some specific code. I was aware about the basic facts but the specific case required the details. Funny thing was that this was the first case where gcc even provided a more detailed error message than compilers with the EDG front end. Typically it is the other way around. I use to run critical code through compilers with the EDG front end to get additional hints about problems but for this specific case one of the EDG based compilers that rightfully rejected the code like gcc did give much less detailed information about the problem and another one even accepted the illegal code like older gcc releases did. Seems the second one either uses a broken version of the EDG front end or just wants to be "compatible" to all the other broken compilers.

Monday, October 24, 2005

confession: I didn't give up and meeting inflation

Ok, ok, I must confess that I actually didn't give up with drpmsync. When I came home last night I had another idea how to sync to the current state and at 6:30am it was actually complete. Now I am the proud owner of a current repository.

But the meeting density today was definitely too high. There was a meeting for the organization of the graduation ceremony of our students. Then an even more important meeting was scheduled spontaneously. It was scheduled that spontaneously that I completely missed to cancel my participation in the other meeting. Some minutes after this meeting has completed I noticed by accident that another meeting on that topic was scheduled some minutes later and nobody noticed me about it. Finally I could even manage to participate this meeting. Will see what will happen during the rest of the week...

Sunday, October 23, 2005

not enough resources, giving up

Seems that SUSE has ways too less resources to handle a continuous access to the current set of RPM packages. As I told already yesterday I was in charge of evaluating the drpmsync service. Now I have detailed measurements and found that the drpmsync server was so much overloaded that he managed to stream out within 24 hours only the production of new packages that were made within 2 hours, i.e. less than 10%. Most likely it is not the drpmsync service that kills the machine it is running on but the fact that ftp and rsync run on the very same machine and this machine cannot handle this load.

Let's hope that they will get some public mirrors for this server or have the money to buy some additional machines. Until one of these situations happens to occur I am giving up syncing the data because in the current situation the service unfortunately is unusable.

Saturday, October 22, 2005

drifting away from the edge

After debugging all problems that were invented by securing the server with Adrian this morning I finally could start to sync the current SL-OSS-edge directory from the drpmsync server. I already had a local image of the full tree from the time when alpha 2 was released and thus expected to have a fast sync to the current state but there still are problems. The first one was that the delta set was quite incomplete in the beginning and thus instead of deltas often the full RPMs got transfered. Fortunately this seems to have been only a startup problem because later files show this problem more seldom. Now the current problem is that drpmsync.opensuse.org serves the deltas such extremely slow that I can sync less deltas than get added on a daily basis. The server sends data at a rate between 0KB/s and about 40KB/s, most of the time being less than 2KB/s. This leads to the result that people are drifting slowly away from the "edge" distribution. My current backlog is 58 hours and slowly increasing. There are only three solutions to fix this problem. Either the SUSE stuff slows down their work or they make the clock run slower or the drpmsync service gets faster. Let's hope they add some more machines in the near future to balance the load.

crazy drpmsync and seminars in the toilet

Today the drpmsync server again gave me a hint that it is quite useful to backup everything before working with a new tool. After long time syncing the repository the server was stopped and thus my client as well. After the client was restarted, it started to remove all files in my repository. Fortunately I have a policy manager running that stopped the client after some hundred deleted files. I found that the server was misconfigured and did not allow access to the data directory which made the client think that there is an empty repository on the server side and thus started to delete everything on the client side instead of doing nothing because of the error message received from the server. After learning about this annoying behaviour I added another rule to the policy manager to backup the whole destination directory before each drpmsync call.

Many students seem to be rather confused when searching for course rooms because it happens quite often during the last days that they appear at our department searching for a course room that is located in a completely different building. It seems that we should invent a course in the first semester on how to read street signs that announce the name of a street. Today a group appeard again that claimed that their seminar will take place at our building in the room C0.14. After some effort I managed to convince them that although there is always a shortage in course rooms it is quite unlikely that they do seminars nowadays in the ladies' toilet.

Thursday, October 20, 2005

gcc 4.0 port and openSUSE drpmsync server running

My colleague completed the gcc 4.0 port of our database system today with my special version of the compiler. No more really interesting bugs found in the code that were not already seen yesterday but I had to explain again why a template instantiation is not allowed when the template definition is not yet complete.

Another thing I waited for was the public drpmsync server that was planned for some time now for the openSUSE project. In time with 10.1 Alpha 2 release it is up and running now. Unfortunately it currently does not hold any delta RPMs to public available packages thus it is currently not yet really useful but will hopefully become so within the next days.

Wednesday, October 19, 2005

giving C++ coding advices

One of my colleagues started today to fix all broken code in our database system that prevents gcc 4.0 from building it because he wants to have his workstation updated to SUSE Linux 10.0. He also requested to appear in this blog for this heroic action and thus I am reporting here what I have seen during the day while being the local C++ coding consultant for this project.

Most bugs where quite simple stuff like not including include files for interfaces that were used, funny (but unfortunately wrong) syntax variants for template specification or instantiation, broken namespace usage, encapsulation of an interface part, type conversion errors, and stuff like that.

But then after the boring stuff we discovered a bug that made the project stop for some hours. First we did only see gcc crash with an internal compiler error. I was immediately alarmed because this happened with a file that was generated by the compiler construction toolkit we use. This toolkit is famous for being quite unreadable and unportable code and randomly odd behavior. I tracked down the gcc bug and found that it was a bug fixed some days after the SUSE gcc for 10.0 was branched. At the same time I found that the generated parser code is non-valid and definitely silently produces incorrect binaries independent of the compiler used. A stripped down version of the broken code is "int a[1]; int* b = &a[-1]; int* c = b;", just for the case you want to crash the SUSE Linux 10.0 gcc. To enable my colleague continuing his heroic project I have built a replacement cc1plus binary for the system compiler. It seems quite unlikely to be able to fix the used parser generator thus the only solution here seems to be migrating to a different toolkit, especially because the current toolkit doesn't run on x86_64 anyway.

Tuesday, October 18, 2005

new Xerces-c and Xalan-c builds and openSUSE mailinglist

I have done new Xerces-c and Xalan-c builds for SUSE Linux 10.0 to replace the earlier builds built with an early beta of 10.0.

The discussions on the main openSUSE mailing list seem to become more and more obscure. Actually I have expected that because the members of the list are just too inhomogeneous ranging from qualified developers and packagers to users that seemingly can't even read the messages on the screen. Currently I can see three directions where this list might go:

1. The lazy users scare away most of the qualified people by repeating the same stupid questions that where discussed or explained even multiple times.

2. The qualified people stop answering simple questions and thus scare away the user community.

3. The list becomes a noise-only list containing only flame wars with no content at all.

Let's hope that some groups of people move to more specialized sublists before the main list gets too crappy.

Monday, October 17, 2005

makedeltarpm

Did some detailed tests with deltarpm.

It seems that it works pretty good when making deltas of RPMs that contain mostly text files. This seems logical because text files tend not to change much and thus deltas can be created in an efficient way.

When analyzing binary files I found that it works only well when between both versions of the RPM only minor patches where applied. If you have changes that touch many parts of the source files creating a delta RPM for a package containing mainly binaries is no longer worth to do.

There is a similar result for source RPMs. If only a patch was added or removed to the source RPM package the delta RPM package is pretty small but even when only small parts of the source archive changed, the delta RPM does no longer save anything valuable because the compression for the archive completely breaks the delta algorithm.

Sunday, October 16, 2005

what a bad day

Today really wasn't my day. My intention was to run again 30km, this time to Ladenburg and back.

The first problem occurred already one minute after I have left my flat. I noticed that I had forgotten something in my flat and thus hat to run up the stairs to the 5th floor again to fetch it.

The second problem was that my fitness level was quite low today for some unknown reason.

The third problem was that I noticed after about 5km of running that there was some strange pain at a specific point of my leg. After shortly inspecting the problematic area by touching there I found that my trousers that were specially designed to protect your skin from getting injured by long distance runs had a small hole. At that point I didn't have an idea what the results of such a small hole could be.

Then after about 20km I felt abnormally fatigue and the pain in my leg got stronger and stronger thus I decided to cancel the run at that point. I started to inspect the area with the pain and found that everything was full of blood. Seems that I definitely should not use this pair of trousers any longer.

Saturday, October 15, 2005

recovering, catching up, and preparing

Today I started with recovering from yesterday. After having completed this step I tried to catch up (no tomato sauce!) with some mailing lists and some other stuff that was (and partially still is) pending.

Finally I managed to do some preparation for my trip to Cologne in two weeks.

improving the world, timezones, and visiting friends

Today I was improving the world a bit more by educating another person in building RPM packages for required software instead of just copying everything into a random directory and forgetting about all the security flaws that where installed that way.

Some of you might have noticed that they got this important information much later than they were used to. You could blame the time zones for this because Szann, Joanna, and me were visiting some friends talking about the good old times, the good new times, and times in general. Szann was still used to PDT and thus did not show any interest in leaving within the near future but as Joanna and me decided to maintain the friendship to the people we were visiting we finally decided to leave what enabled me now to write this message.

Thursday, October 13, 2005

important bureaucracy to end in itself

Today I was again told that it is vitally important to subscribe to a special list containing all persons at a faculty that intend to do their doctorate. Actually you need this when you finally want to submit your work and because of that most of my colleagues do this extra bureaucratic work when they have to do bureaucratic work for the final submission of the work anyway. Up to this day I am not aware of any advantage I get when I do subscribe now. Actually I even don't know why this list is required anyway.

But administration insists on their thesis that it is vitally important to do so. As a scientist I am used to ask people that claim something for a reason thus I always asked those people why this is assumed to be so important. Until now no of them ever could tell me the reason. Instead they repeat their claim that it is _really_ vitally important.

My current thesis is that there is a secret club somewhere trying to assure that there are always at least 23 persons on this list. Most likely they are just not allowed to tell you why it is so important to have 23 persons on that list because it is important that you do not know about that fact to protect their world domination.

Hmm, I think I should watch this video DVD again I received yesterday to ease the pain...

Wednesday, October 12, 2005

greatest university of the world

Today as a member of the faculty council I got the new video DVD about our university for reference. The DVD contains about 4.2GB of high quality video about how great our university is. After having taken a look into the videos I am confident again to have studied and being working at the greatest university of the world. I will keep this DVD at hand for the case I will get frustrated about something at our university to prove myself that I _must_ be completely wrong with my frustration.

Tuesday, October 11, 2005

DoS reloaded and bloated install scripts for script languages

The SUSE mirrors where slowly recovering from the release DoS event but then they decided to keep up the situation for some longer time by releasing a new 4.5GB source DVD containing again only files that were already on the ftp server. I was told that this was on big public request. I still wonder how long they continue to make mirror infrastructure unusable by public request...

I wonder whether it would be appropriate to package all mails from the openSUSE mailing lists into an ISO image and post this image to the list once a month, just to please all those I-want-everything-in-an-ISO-image-...uhm...-people...

Then I tried to package a ruby module into a RPM package and found that those modules suffer from the same problems almost every script language seems to suffer nowadays: Their communities have no knowledge (or completely ignore) well established tools and ways to reproducibly install a module into a desired directory. Instead they implement a extremely bloated install system that is mostly undocumented and definitely invents a new user interface you never have seen anywhere before. You typically even can't use knowledge from other packages of the same flavor because all modules seem to use special variants of the install system that support partially different sets of options. Will have a deeper look into this tomorrow...

Monday, October 10, 2005

new head of chair

Today the new head of our chair arrived for his first day at our university. He was accompanied by four other persons from his research group. It was my job now to introduce them to the most important affairs of our university including some bureaucratic stuff they had to do in their new offices, the refectory building, some bureaucratic stuff they had to do at the data processing service center and some bureaucratic stuff they had to do at the administration building. Will continue all that stuff during the next day. At least it is assured now that they can survive now autonomously in our university's bureaucratic world.

Sunday, October 09, 2005

end of the SUSE release DoS and pending upgrades to the build system

According to my statistics collected here the mirror infrastructure is slowly recovering from the DoS attack triggered by the SUSE Linux 10.0 release.

I have neither upgraded the build images for 10.0 on the build cluster to the final release, neither have I created those for the edge tree yet. This was not because of the defunctional mirror infrastructure but just because I was too lazy until now and there was no real need.

Saturday, October 08, 2005

findings in Nuremberg

Well, I'm back from Nuremberg now where I collected some findings about current SUSE projects at the meeting, SUSE gossip at the party, and non-SUSE facts in town today. Because of the fact that I learned most SUSE related facts yesterday and this is todays rant I will only tell non-SUSE ones.

The first thing I noticed when walking from Langwasser to the city early in the morning was that Nuremberg obviously wants to make their city more interesting by placing trees across public forest tracks.

The next thing I found was that the place and the buildings (at least they that still exist) where the Nazis have held their Reichsparteitag are even larger than you would expect even if you have seen them on a map or in films from or about the Third Reich before.

Then we added some general facts about historic sites within the city to our knowledge by Andreas and Christoph reading from a tour guide they found somewhere in the Internet and Rasmus countered with knowledge he read from some plates at the sites.

After learning so much stuff I was too tired to do my regular 30km run when I reached Mannheim again. Thus this job is still pending, maybe for tomorrow, we'll see...

Friday, October 07, 2005

service out of order

Sorry, no rant today. Off to Nuremberg now...

Thursday, October 06, 2005

FTP mirror systems considered harmful for SUSE Linux releases (or the other way around)

Today it happened. After releasing the final release of SUSE Linux 10.0 the mirror system broke down and is still not reliably functional again. Most of the mirrors either did not manage to get a complete set of files or they became completely overloaded and thus were no longer reliably available.

Why did this happen? The reason is quite simple: The size of synced out files was much to high to be handled by network bandwidth and mirror's disk hardware. The ironic point here is that it was not the size of the distribution alone that killed the mirror system but the fact that every mirror had to sync the same files multiple times. If a mirror mirrored both, suse.com and opensuse.org, it mirrored parts of the 10.0 release 4 times.

This leads into a fatal vicious circle: Most of the mirrors get their files from a GWDG server. When the mirrors don't manage to get an almost complete set of files before the official announcement they are considered unreliable by most users and all users go to the GWDG servers resulting in more and more load there which itself leads to other mirrors receiving files slower and slower.

The redundancy of files on the mirrors results from the fact that SUSE started to provide apart from the FTP tree various sets of ISO files all containing mostly the same files. Optimal solution from a technical point of view would be to remove these files from mirrors completely and to provide a tool that can create these ISOs from the normal FTP tree on the client machine. Because of the fact that most users are considered incapable using such a tool this is currently a no-go.

So we can conclude that the current FTP/rsync based mirror approach is not feasible for the way SUSE Linux is distributed by the mirrors. Instead mirrors should be provided by a tool (e.g. a script) that automatically syncs a minimal set of files and automatically builds all other files that contain redundant information. That way they could sync up with the GWDG server earlier thus being considered more reliable by the users which would remove load from the GWDG servers keeping them fully operational.

First ideas were already considered about that topic. Let's hope that the ideas evolve before the problems evolve.

Wednesday, October 05, 2005

university constitution and geek mode

Was talking to some colleagues today about the new university constitution currently under development because the university head expects me to give an official statement about the current draft for the convent of research and teaching assistants in two weeks.

To fix my brain up from all this legal stuff I uploaded map data for Nuremberg to my GPS receiver to be able to stay in geek mode while traveling there during the weekend.

Tuesday, October 04, 2005

obscure build systems

On some days you just wonder why people create their own build system when they have no experience in doing so at all. Today is such a day. I have seen released source code for a project that is built about the following way:

1. Copy some template config file and manually change settings as you whish. --- Ok, this is not state of the art but acceptable.

2. Fix some Perl script needed in the next step by replacing hard coded paths with the ones appropriate for your system.

3. Use the Perl script to build an executable required for the build system.

4. Fix some other Perl script by again replacing hard coded paths with the ones appropriate for your system.

6. Run this Perl script to build the actual build system.

7. Build the software with the build system built in former steps.

Easy, isn't it?

Some of you might have noticed already that there is step 5 missing. This is intentional because in step 6 you notice that the Perl script does still fail because the executable from step 3 cannot find a specific file. I'm not sure yet who is responsible to provide this file but obviously there must be a magic undocumented step 5 which either provides the missing file or fixes the broken Perl script.

I have seen similar build system adventures at some commercial software vendors but they at least assure that it works if you perform all steps as required, i.e. there typically is no missing step 5. The maximum of build-system-uses-another-build-system-uses-another-build-system recursions I have seen in real world productive development environments for applications written in C so far is 7 recursion steps. Anyone here that has seen more?

How hard must an average developer be penalized by his own build system before he accustoms himself to well established build tools instead of trying to reinvent the wheel?

Monday, October 03, 2005

national holiday and penumbral solar eclipse

Today we had a national holiday here in Germany but apart from the fact that almost nobody went to work you didn't notice that very much here in Mannheim. There also was a penumbral solar eclipse today but you even didn't notice this because it was too cloudy. --- All in all it was a quite unspectacular day.

Sunday, October 02, 2005

Novell servers hacked and finding a nice path to Frankenthal

Novell again managed it to Slashdot. --- But most likely they are not _that_ happy about that as it happened because some of their web servers were hacked. Fortunately the SUSE distribution servers were protected in a better way and thus they did not suffer from the hack and the current distribution files are still sane.

From my daily experience there are _very_ many systems at companies and other facilities that have numerous security flaws although fixing them would be an easy job. Most times this is because the system administrators have no clue when security is concerned. Many of them even believe that they _have_ a clue and are doing many things they believe will improve security of their system but miss the vital parts that make up the required basis for a secure platform, like for instance installing security fixes for known flaws. The management often does not have the budget to hire people that actually have a clue but more often the management even does not have a clue that their system administrators also don't have one.

As a 30km run was again due according to my workout schedule I decided to find a nice path from Mannheim via Ludwigshafen to Frankenthal. Actually I did find one that does not require to cross high traffic roads. Due to the fact that I found the path was shorter than 15km one way to Frankenthal city I continued to run eastwards to the autobahn A61 and then the same path back to Mannheim. If you were interested in my findings drop me a note but most likely most of you won't even know Frankenthal.

Saturday, October 01, 2005

save-the-bandwidth campaign and shiny new features

Today I again did something for my save-the-bandwidth campaign and updated the information page about Jigsaw Download on openSUSE.org with the numbers for the current version.

A tool I also coded for this campaign some days ago is linkdup which replaces duplicate files in a specified directory by hard links and thus saves a lot of bandwidth if you serve duplicate files via rsync. If you serve via ftp you at least save some disk space and thus buffer space. If you are interested in the tool, you can find it in bug #118717 on Novell's Bugzilla.

I found that my uplink router now supports WPA2 for the WLAN interface with the new firmware I successfully installed yesterday. And even the clients seem to support it. --- At least they are still talking to the router.

Another thing I found with KDE in SUSE Linux 10.1 alpha1 is that Konqueror now has a "Speech Toolbar" with exactly one button "Speak Text". I decided to test this with the Slashdot page. It worked and even was understandable. But as you might know the Slashdot page has rather much text thus I decided to stop it again. Unfortunately it seems that there is no option to stop this talking parrot again. Fortunately my ThinkPad has a button to mute sound. Ok, I could have just killed the speech process but I think an option to do that with the user interface should be accessible as easily as the start option is available.

Friday, September 30, 2005

unhappy campers^H^H^H^H^H^H^Hstudents and panic-proof test

Today my colleagues published the results of the final exams in algorithms. The most interesting part of publishing exam results is watching the "secret" student discussion panels where some of them typically start to claim that they must have been obviously treated in an unfair manner. Some of them are even quite sure that teaching assistants at a university are typically bestial monsters with only one goal in their life: shooting down as many students as possible. And I thought that _I_ might be paranoid in former days...

If you are a student and read this: I promise you that no dead student bodies were found yet in the backyard of the computer science building here in Mannheim thus it is very likely that you will survive as well even if you ask questions to the teaching assistants about a topic you did not understand in the course. It is definitely more helpful in that case to ask questions than to hide seemingly dead in the course room. If you think that you have understood a topic try to explain it to a friend. If you don't manage to make him understand the topic you most likely did not understand it yourself and you will most likely fail in the final exams.

Some people say that it is almost impossible to upset me. So the manufacturer of my uplink router decided to help me escape from this dilemma by providing a new firmware release with a bunch of shiny new features. Typically when you upload a new firmware to the router you start the management tool, point it to the new firmare image, and wait for about 30 seconds, then it restarts and reestablishes connection to the internet. This time it was different: I started the management tool and pointed it to the new firmware image. The management tool told me that it will load the new firmware now. It claimed that during the firmware update the INFO led will flash continuously (it did) and that the router will reboot afterwards (it did as well) and that I can relogin then. Actually after rebooting the Power led started to flash continuously. I said to myself: "Ah, it is rebooting now!". the Power led continued to flash for some more minutes. I changed my mind to: "Is it still rebooting?" It still continued flashing for some more minutes what made me again to change my mind to: "Uhm... I mean... what the heck is going on here?!?" I tried to login to the mangement tool as it was promised by the tool to be possible after the upgrade had been completed and actually it did work. The management tool told me that the router is now restarting his efforts to establish the internet uplink. Some seconds later he told me again that it is restarting the very same efforts. Some more seconds later again. And again. And again... I watched the log for some minutes in discomfort and thought: "Uhm..." Finally I reconsidered what is often helpful to "fix" software bugs: Restart it! After I did so with the router it continued to flash the Power led for some more minutes but finally surrendered from his resistance and actually established the uplink connection. I'm very grateful to the manufacturer of my uplink router for implementing thrilling upgrade adventures into their firmware just to bring some extra excitement to my life.

Thursday, September 29, 2005

SUSE Linux 10.1 Alpha1 release

Today SUSE Linux 10.1 Alpha1 was released which basically meant I had to play QA a lot. First they did not ship delta images for the ISO images. Obviously I immediately complained. (Complaining is one of my favorite hobbies.) Next thing I noticed was that there is no inst-source tree. But this time I was wrong because they did just hide it in a different directory. So I had to do a deeper inspection to find the next problem and finally succeeded by finding that the inst-source-java tree did not contain Java which is not necessarily a bug but at least quite... uhm... unusual. After complaining again they decided to fix it. To conclude my QA exercises I again complained that public drpmsync is not yet up and running.

Currently I am upgrading my system to the new release. If you don't hear me complaining the next days, something went _really_ terribly wrong...

Wednesday, September 28, 2005

stressed people, fun with debugging, and vaccination against influence

Seems that I have completely recovered from my marathon now. At today's exercise my pulse was again back to normal.

Some other people seem never to recover. You know those always stressed people that tell you everytime when you meet them that they are completely stressed and have absolutely no time for almost anything. My personal thesis is that they could gain much of free time if they omitted always complaining about having no time. One of these stressed guys told me some months ago that he liked to have his identity certified by me to get a cryptographic certificate. After I told him that he just has to come along with his national identity card he wondered whether he could manage to do so. He didn't. Yesterday he requested again to be certified and assured that he will come along today. Seems he again didn't manage it. --- Poor stressed guy...

At our department they worked again at the integration of a log library to our database system to have more fun in debugging the code. I have seen the bunch of macros in the header files of that log library. I'm sure there will be "fun" with debugging after integration of that library but I'm not quite sure whether this is the same type of fun they expected to have...

To support debugging of my personal medical conditions the media in Germany currently propose to do vaccination against influence. As some others counter that this is only recommended for children, old people, and individuals with a specific risk I decided to ask at my doctor's practice whether they recommended this for me. The answer I got was: "We have enough vaccine available." --- Well actually that was not exactly an answer to my question but as they have enough available I decided to get some tomorrow to prevent the critical situation that they have to throw it away unused...

Tuesday, September 27, 2005

hacking with Google Maps and subscribing for new spam

Today I hacked the data recorded by my GPS receiver at the marathon in Karlsruhe into Google Maps code. The result is visible at http://pi3.informatik.uni-mannheim.de/~schiele/maps/karlsruhe.html. Actually I had to throw away 75% of the recorded points because otherwise the Google Maps JavaScript code makes my Firefox explode.

I have done the same for some of my training courses earlier at http://pi3.informatik.uni-mannheim.de/~schiele/maps/lauf.html. Note that the headlines are clickable on that page. But don't reload the page to often because at least with my Firefox it seems that the JavaScript interpreter is somehow leaking memory resulting in a really sloooooow browser after some time.

Christian created some new mailing lists for the openSUSE project today. Naturally I immediately subscribed because I like being spammed by list servers. ;-)

Monday, September 26, 2005

lift "out of order"

Now finally they marked the lift as being "out of order" for security reasons after my neighbour crashed to the emergency stop limit on the top floor with full speed.

After all I can understand now why people always claim that using the staircase instead of the lift keeps you healthy...

BitTorrent, exams, and stuff like that

After doing my regular running exercise in the morning I went to my office. Nothing special there but one colleague already sitting there providing some pastries to give others a hint about his birthday which happened to occur during the weekend.

Today's toy project was to establish a BitTorrent tracker to make the current Natix release availlable via BitTorrent. Not that the one-digit number of downloads really requires this but nowadays you just need to have a BitTorrent image, don't you?

My colleagues had some different "toy project". They are marking the algorithm exams. From time to time you can hear a mixture of laughter and cries of pain from their office. I'm quite familiar with that situation. Actually I haved marked a huge amount of exams in recent years as well and thus I am aware of the cruelty of some answers.

After having survived the marathon in Karlsruhe I consider to register for the marathon in Mannheim in May but actually I should recheck expected temperature for that time because I don't like running 42 kilometers when there are more than 15 degrees Celsius.

Sunday, September 25, 2005

Yet another Blog?

People may ask why everybody starts a blog nowadays. Well, if you find an answer to this question tell me!

I always was of the opinion that a blog is something really boring and that I actually will never need one. But since I found that it becomes more and more a common practice to do public rants on blogs the idea became interesting for me. I always wondered at whom I should cry if I see people complaining about merging problems when trying to checkin code they edited four months ago into the revision controll system and when reading the resulting C++ code.

So be prepared...