10 Jul 2004 shlomif   » (Master)


Advogato is back again! Finally... Well, I have one really old entry that was prepared but not posted, and another one which I started preparing and have not posted yet. I guess I'll post the older one, and wait a few days before I post the new one. I actually thought of temporarily putting them on my homepage. Now there's no need.

Note that this entry is dated 27 May, 2004. So all caveats apply.


The department's secretary finished dealing with my degree and informed me to contact the student's center. There I was informed that I still needed to return a magnetic button to the faculty. So on one day, I took the bus to the Technion and returned the button. Then, I was informed that everything is OK, and then an approval of the degree will be sent in a few days.

It arrived in the mail a few days ago. I graduated from the Technion with an average of 84.6 (higher than what was on my grades' list), and it was said there that it is "with honours". So I am finally a Technion Graduate.

Clock Skew

Two of the computers: my desktop computer which is dual boot Linux/Windows and the Win98 laptop, encountered a one month ahead clock-skew. From late April to late May. To fix it, I wrote a Perl script to scan my home directory, and modify the files's access time and modification time to their appropriate date, using the utime command. (which I learned about from good people on the IRC).

For the KMail mailboxes I had to write a different script that would convert the dates in the messages to their appropriate dates. I consulted the #perl guys further on this to learn about the format of maildir mailboxes. After that, everything worked fine.

Nvidia Driver

The recent version of the Nvidia driver, which I tried to compile barked on me saying it was unable to compile it. To understand what was wrong, I unpacked the package, delved into the source, and tried to figure out why it refused to compile against the source tree.

Eventually, I discovered that by setting the SYSSRC environment variable to /usr/src/linux, I could make it detect the kernel source tree there, and build itself. This took me a long time, however, and the kernel source tree was located in the standard place. This really shows that it is high time the Nvidia drivers were GPLed.

Subversion: BDB 4.0 vs. BDB 4.2

I discovered that Subversion on my local workstation still used Berkeley DB 4.0 instead of Berkeley DB 4.2. To fix it I had to fully mess up with the ./configure flags of the depenedencies to get it to use BDB 4.2 instead. But I was able to eventually.

After I did it, I tried to process the repositories of stalker with my local copy of subversion. It did not work. Someone at #svn told me that it could be because of a different libc or whatever. "Berkeley DB compatibility is subject to planetary arrangment.".

Israel.PM Meeting

The meeting occured a long time ago, and since then I forgot a few things. I recall it was a hot day, and that we mingled outside the building. We collected money to buy snacks, and were dismayed to discover that the shop we bought the drinks in moved to a different location, and we had to settle with the water fountain inside.

Pinkhas Nisanov gave an interesting presentation about TRIZ - the theory of inventive problem solving. I could not quite understand how to actually use it, but it ended with the subset of the 40 basic principiles for contradiction resolution, which were pretty interesting. Pinkhas brought with him two guests from the Israeli TRIZ association, which left after his presentation.

Then Gaal Yahas gave a presentation about using Perl as an interaction language in a Java environment. He described a commercial system written in Java for helping to manage Internet equipment, and showed how he used Perl to parse and process Java code, generate an equivalent Perl code (with accessors and all), and then use it to perform queries at run-time. There was also some XML involved there, in the queries and reports. It was pretty interesting.

I was able to lend the "Design of Everyday Things" book to Yuval Kogman, and also to take a book: "Design and Analysis of Algorithms". I started reading the latter, but decided I was not interested in reading it and so just left it on my desk, and will return it the next meeting.

Telux Meeting

There was a meeting of the Tel Aviv Linux Club about two weeks ago. Mike Almogy gave a presentation about Web Hosting. The presentation was interesting but a bit unfocused. The main problem was that there were many technical glitches throughout the lecture. First of all, he was unable to connect his laptop, then we had to call the building's supervisors to log in into the computer for us. Finally, after the break, the computer was locked with a password and we could not use it again. This all happened because Eddie was away.

I was supposed to get a username and password there, but unfortunately, I couldn't reach Eddie in time. Hopefully next times would be better.

iglu.org.il Upgrade

iglu.org.il was upgraded, from RedHat 6.2 (!) to Debian Stable about two weeks ago. The upgrade itself was done on Friday, and on Saturday, the machine responded. I was able to login as root and create an account for myself, but then the password was changed. To get the password, I sent the old one to sun encrypted with his GPG Public Key. He sent me an encrypted message back with the new password.

After I got the password, I was able to restore my home directory, as well as restore accounts for some people who contacted me. Finally, and most importantly, I restored the web server. This involved quite a lot of work, as Debian is incompatible with RedHat as far as the httpd configuration is concerned. I had to start with the old configuration and gradually convert it to the new one.

What gave me trouble was the fact that I used a few CPAN modules in an application I wrote for the server. I tried to use the perl CPAN.pm module, but it turned out that outgoing connections were blocked. Someone found one of the modules (CGI::Application) in the Debian Packages pool, and I was able to install it using apt-get. But then I discovered it was an old version of the module, while I was using a newer feature. So I installed the new version of the modules I needed on the script's local directory, (after scping and copying them - %-)), and then it worked.


stalker.iguide.co.il experienced some hardware problems, but was restored a few days ago. It then turned out all the binaries I compiled there could not run because they complained on an incompatible libc version. So I had to recompile everything (Berkeley DB 4.2, Apache+libapr, neon and Subversion).

I had a few problems with running the programs after everything was ready. Strangely enough, they were resolved after a few recompilations. Then, however, I found out that the old repositories could still be accessed by the new configuration there, which was nice.

Subversion Hacktivity

I've been doing some Subversion bug-squashing lately. In Issue #1771 where paths with identical prefix of components were trimmed by the display of the diff command, I first wrote a shell script to fix the problem, and then wrote a regression test, and a fix, based on what was suggested in the issue. The patch was eventually applied.

In Issue #1851, I investigated the cause a bit and added a comment there. I also wrote a fix to Issue #1814, which was not applied yet. I also added a comment to issue 1043, claiming it is invalid. Again, there wasn't too much activity about it.

Perl Quiz of the Week

I've been heavily involved with the resurrected Perl Quiz of the Week lately. I've written solution for the two latest regular quizzes. Plus, I contributed an expert quiz. It turned out the latter was an NP-complete problem.

I also sent out another expert quiz suggestion to MJD, which may be submitted some time later, and have an idea for another one.

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!