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...