Older blog entries for shlomif (starting at number 185)

The Neo-Tech FAQ

tk suggested to me that I read the Neo-Tech FAQ to gain a better perspective on Neo-Tech and understand why it is an "evil cult". Well, I was reluctant from reading it for a long time, but today decided to take Baz Luhrman's advice and "do one thing everyday that scares you". So I read the most recent version of the FAQ, which was pretty old (1996) that I found on Google Groups.

The FAQ is so ridiculous that it made me laugh a couple of times. I anticipated (from previous impressions of it) that it will try to attack mainly the Neo-Tech staff, while having little to say about the Neo-Tech wisdom, and I was right. Furthermore, most of the attacks on the Neo-Tech people were based on information or reports which I cannot easily assert, and most of the attacks on its wisdom quoted out-of-context snippets out of the Neo-Tech material, which can easily be refuted by someone with a better grasp of the Neo-Tech material. (and sometimes directly contradict other quotes, which state the opposite, plain and simple)

What killed me was the fact that it claimed Frank R. Wallace (the founder of Neo-Tech) advocated dishonesty because he said that in poker it was OK to cheat. (!) Seriously, Poker is very much about cheating as everybody know. Plus, the Neo-Tech Advantages state countless of times that dishonesty and lies are plain wrong and destructive. (except in Poker :-))

tk, if you think this poor excuse for criticism is good enough to invalidate the Neo-Tech Philosophy, then think again. If only, it made me more convinced that Neo-Tech is "The One True Way<tm>". And it certainly did not convince me that Neo-Tech is a cult or is Evil. Granted, Neo-Tech is huge in scope and takes some time to fully understand and integrate. But it is just an idea system, and a pretty darn good one.

In any case, I'm happy, because a huge stone was cast off my chest.

28 Oct 2003 (updated 28 Oct 2003 at 12:32 UTC) »


My first week started quite eventfully. After the day in which I had Thermodynamics, which went OK and in which I learned little new things, I went expectedly to the "Automata and Formal Languages" lecture. There, I discovered that "Set Theory and Logic" is a hard pre-requisite for the course. I talked with the lecturer during the break and he told me that he won't allow me to take the course. I asked him why the requisite was so important and he said that "You see, we have set theory all over the place". But I did not have a problem to understand what I saw in the first half of the lesson!

In any case, I cancelled the registration for this course and registered to a different course from the Electrical Engineering Department on the same day. ("Design of High-Speed Digital Systems") For it I'm sure I have the pre-requisites.

DVD Playing Trouble

I had a trouble playing DVDs. Ogle and mplayer have emitted the error ""Can't open file VIDEO_TS.IFO" and Google could not help me. I then tried playing a music CD, and mounting a filesystem, and neither of them worked. Then it hit me: the ide-scsi emulation! After I switched the device to /dev/scd0 (the SCSI device) everything worked fine again.

Am I lame or what?


I done a little translation of Homesteading the Noosphere, up to and including the end-note about the Fijian Village Chiefs. I also received some corrections about "Rub a dub-dub" which I happily applied.

Subversion and Win32 Guide

I received an E-mail from the guy from whom the guide was intended, telling me he failed to install Subversion once again. This time, he did do a step he did not do before, but he did not follow the guide exactly (and named a URL differently), so this may be a problem. He said he'll try again later, but meanwhile will use CVSNT for the current project.

grip woos

grip ripped at 4x speed, while my CD-ROM drive is 52x max. I posted a message to Linux-IL about it and Matan Ziv-Av replied with a good advice, that increased the speed to 10x. Still not maximum but better.

Welcome to Linux

I ended up preparing the slides for 3 out of 6 of the lectures that would be given in the Welcome to Linux series. Recently I was asked to prepare a version of them that would be viewable from the hard-disk. A quick script did the job, but it took me some time to debug it.

The first lecture was given yesterday by Ori Idan. The lecturing hall was full, many questions were asked, and Ori gave a good presentation. There were a few glitches in the lecture that KDE there got stuck, and so the lecture came out longer than agreed on. I came to the lecture with Ori, and went back with a guy who had to drive to Northern Tel Aviv, which was very convenient for me. He was a Linux newbie, and I told him a lot about what I'm doing right now, about CVS, about software patents and other things.

Perl Golf

The last three days I was heavily occupied with the PERT/Gantt chart conversion Perl Golf. The day before yesterday, I ended up with a 65-characters long solution, and yesterday I was able to optimize it twice, each time by one character. Right now, I'm stuck 6 characters before the currently best solutions, with no ideas on how to further optimize it. But I'm still not giving up.

GIMP Lecture at Telux

I gave a lecture about the GIMP on Sunday to the Tel Aviv Linux club. It went pretty well, but there were few people there (less than the previous lecture). Some things sparked a bit of discussion, like whether Graphic Artists can learn the GIMP Scripting or do they need something more foolproof.

After the lecture I talked to two guys. One of them was a system administrator in a high school who converted some of the server infrastructure there to Linux, and wanted to conduct an experiment to see if development could be taught there.

Quad-Pres Hacking

I released a new stable version of Quad-Pres, with some critical bug-fixes. The problem was that upload did not work, because of a leftover file which was revamped without proper modifications to the rest of the code. So, I added some tests and now have some items on my pressing to-do list.

Rub-a-dub-dub Translation

It's finished! Did not take too long at all, but maybe the article was just short. I have applied some corrections by going over the translated text. Now I'm looking for someone to go over the translation and copy-edit it.

Setting up ViewCVS for Subversion

I wanted to set up ViewCVS for the Subversion repository. So I read the install file of ViewCVS from the CVS, and followed it. The first problem I encountered was that the Python SWIG bindings of Subversion refused to install. I received a hint in response, which led me to a solution. (an explicit make install-swig-py-lib command)

Then I installed and configured the ViewCVS config files and they refused to work due to an unfound module error. Turns out the problem was that Apache did not pass the PYTHONPATH environment variable to the CGI scripts. After RTFMing, I found a solution: a simple "PassEnv" directive.

Then it worked, but I'm not sure that it traced files across copies. I may try Chia-Ling Kao's SVN::Web script later on.

Haifux Welcome-to-Linux Preparation Meeting

We held a meeting in preparation for the "Welcome to Linux" series. kilmo was there as he returned from abroad, and I was surprised to see him there. Here is the summary of the meeting which I took down.


Studies are beginning tomorrow. I have to get up early to catch the bus, which should arrive a while before the first lecture.

17 Oct 2003 (updated 25 Sep 2004 at 11:20 UTC) »


More Hacking. More tests, and finally a new stable version release. I branched and tagged version 0.10.0 only to discover I did not update the file list of the tests directory, so I released version 0.10.1 as well.

It seems Quad-Pres has disappeared from Freshmeat, possibly because vipe was down for a while. (I did not receive an E-mail about it, though). Eventually, I registered a project at BerliOS, and now it has a new homepage. So, now Freshmeat points at it and hopefully it would be safer there.

Version Control Systems

Added a few items and corrected some typos in the version control comparison. Also, I recommended Subversion in a recent discussion in webdesign-l, and someone posted a message that when he tried to install Subversion on Win32, it did not work for him.

To help him and others in the future, I installed Subversion myself on my Windows XP laptop, and documented the process. Et voila: a Subversion Win32 Installation Walkthrough. Share and enjoy!


I'm taking a break from translating "Homesteading the Noosphere" by translating the Joel on Software "Rub a Dub Dub" article (to Hebrew, of course. Like I know any other language besides that and English well enough.) Here's the site where I'll put intermediate copies of the translation.

Finally, I went over the slides of the GIMP Lecture in preparation for my lecture on Sunday. And on Monday there's a Haifux Welcome to Linux coordination meeting.


I went to see "Finding Nemo" the other day along with my father. The movie was nice, albeit not quite as much as "Monsters Inc.". At the end of the movie there was a very long list of credits, and my father joked that it would have taken less time to draw the movie pixel by pixel. In any case, the Graphics was great.


I finished reading "The House of Arden", which had a rather disappointing end. I also read Joel on Software's Unicode article. Not too much I did not know, but it was still a very amusing read.

Finally, I started reading "Ender's Game", and read two or three chapters. It's a bit strange so far.


I decided to backup my Linux system. Due to the fact I have an IDE CD Writer, I had to install ide-scsi. So I followed the instructions in the "Installing your ATAPI CDRW Drive in Linux" tutorial, which involved rebooting the computer (gasp! I thought in Linux we were never supposed to do that). Eventually, after the reboot and setting a parameter in loadlin, it worked on the first try, and I have a burned CD with some backups.


I worked on Quad-Pres the past two days. At first I added an option to set the encoding and language, on a per-presentation level and a per-page level. To make sure it works correctly, I wrote a test script for it. Eventually, I ended up with more lines of test code, than lines of added code, and the code worked at the first try my test suite had no bugs in it. The test suite involves a bash script that calls two Perl scripts. (%-) - it was the easiest way to do it).

Then when I fixed a bug (that the rendering process did not stop on the first WML error), I added a test for this as well.

Finally, I added a module to channel Getopt::Long and make sure it can use an array besides @ARGV. (a kludge, if you ask me, but that's life). And I added a unit test for this as well. After I got the test to work, I found out I had a bug in my code (!) because of it.

I'm quite happy with this "write tests as you write code" scheme. So far, it slowed me down a bit, but in the long run it gives way for more robust code.

10 Oct 2003 (updated 10 Oct 2003 at 18:43 UTC) »


I wrote some patches to the perlop and perlsyn Perl Man Pages, which I sumbitted to perl5-porters and there Michael Schwern and others have revised them. The two patches were applied to the bleadperl version.

I also copy-editted the translation of Open Source Software - A History that was done by Oren Maurer. Finally, I made some modifications to the Haifa Linux Club "Welcome to Linux" lectures that I'm responsible for. There may have been some other things, but I don't quite recall them.

Subversion Woos

I upgraded the Subversion at the stalker host, without first dumping the repository. That has put me into trouble, as nothing I tried to resotore the old homepage repository (which was changed since the last backup) worked. Eventually, I settled on using the few-days-old backup, checking out a working copy, and syncing the new working copy in, using a Perl script I wrote for the job. Now everything is up again.

Next time, I'll know to be more careful.

New Cellphone

My father decided that the entire family will switch their cellphones to Orange (GSM cellphones) to enjoy their intra-family calls discount. So, I now have a new cellphone. I still have to get used to it, and so far using it is a bit annoying.

One thing I noticed was that I could not enter Hebrew contact names longer than 5 or so characters. After calling the support, it turned out that we could only have it longer if the interface (and the names) were in English. So much for human engineering.

Orange Site

I had wanted to view the new cell-phone in the catalog so I tried to use the Orange site. With Konqueror it was dead on arrival, so I tried Mozilla. This worked better, but when I accessed the catalog page, I could not see anything displayed there.

I wrote an E-mail to the webmaster telling them that Mozilla was not supported. In reply, I got a message saying that the site is guaranteed to work only with Microsoft Internet Explorer 5.5 and above. I asked them if they plan to support Mozilla any time soon, and got a reply that they don't for reasons I found very interesting. Here's my reply:

> Dear Mr. Fish,
> I thank you again for your mail.
> I regret being so blunt but, no, we are not going to change our website in
> the near future. We have developed an amazing website,

"amazing"? By this do you mean full of non-portable bells and whistles, and other idiosyncracies? Sorry, but that's not an amazing web-site according to my book.

A good web-site is either simple and clean, or includes standard-compliant, portable embelishments. (which are usually not necessary).

Usability, low bandwidth, etc. is much more important than "amazingness" and I bet it's not very usable in MSIE either.

> that costs us a > lot of money to develop and maintain,

Why does it? Why should it? I maintain a few web-sites in my free time and I'm not getting paid to do so. If you keep your web-site clean and simple, it will cost less money to maintain and will also attract more visitors.

> and it is currently built exactly > according to our business needs.

I seriously doubt it is built according to anyone's business needs. Why do you need JavaScript to display the catalog of images? Why not simply include them in the HTML? If you look at popular international sites, you'll see that most of them are built with simple and clean HTML (sometimes without any trace of JavaScript).

> I can also say that although > technologically it might be possible to develop a version for Mozilla or > other browsers,

1. It is possible.

2. I'm not talking about a separate version for other browsers. I'm talking about one version > orange, and many other content providers, are investing > in the most common browser, it is currently not cost efficient to > develop versions for other browsers. >

It is cost efficient if you hire clueful developers. Look at my site:


(which links to other sites I made).

They all look perfectly fine in all modern browsers, including lynx (a minimalistic text browser). Why? Because I know what I'm doing and I know how to write good HTML.

First you tell me your site costs a lot of money to maintain, and then you tell me it is not cost efficient to support other browsers. Now, let me tell you this: if you keep your site clean and standards compliant, you can have it support all browsers and it will cost you much less money to maintain.


Shlomi Fish

1 Oct 2003 (updated 25 Sep 2004 at 11:15 UTC) »


IBM has recently bought Rational, the producers of Rational ClearCase, which is an SCM system competing with BitKeeper. Does it mean all IBM employees (including many Linux kernel hackers) are forbidden from using BitKeeper? ;-)

I suppose only Larry McVoy can tell. I talked about it on the IRC with some people and they said IBM is so large, that it can hardly be considered as one entity. Still, I'm not sure it is a separate entity as far as copyright law is concerned.


Various bits and pieces. I worked a bit on perl-begin, compiling it again after the move to the new computer. Then, I added some links to web-forums there. I also worked a bit on the Haskell for Perl Programmers lecture, adding stuff on arrays.

I worked on the Homesteading the Noosphere translation. I finished the chapter "Ownership Rights and Reputation Incentives", replaced my own translation with a corrected first chapter I received from someone else, and also went over the existing translation and corrected various stuff.

I also modified my homepage to include the interviews section, and placed Adrian Ettlinger's interview online. You probably know of it from the front-page article.

Haifux Lecture

Been to the latest Haifux lecture on Monday. Ron Artstein talked about Multi-lingual Typesetting. It was basically a coverage of the constraints that written languages imply on getting them typesetted. It was loads of fun and amusing.

Google Mirroring Script

I wrote a Perl Script that mirrors the www.google.com domain. (and with some customization, other domains as well). The incenetive is to set up as many mirrors of Google worldwide as possible in order to battle's the Great Firewall of China's blocking of this useful resource, and to give the people (of the People's Republic of China) what they want.

There's a demonstration of it but it's a slow link and works only with lynx, because of Google's user-agent idiosyncracies.

Rosh Hashana

Today is Rosh Hashana - the Jewish beginning of the new year. So, yesterday's evening we had a family dinner with the extended family. Unfortunately, many people were abroad, and another sub-family were visiting their in-laws. Still , it was very fun.

I also greeted several people in the IRC and in the Linux-IL mailing list. I truly hope it would be a good new year with few harms and disappointments for everybody benevolent out there.

DVD Playing (cont.)

I downloaded and installed the new version of Ogle from the RPMs/SRPMs I found at its site. Now it plays the DVD I tried very nicely, with a much better interface than mplayer (or kmplayer for that matter) and with DVD menus and all. Very nice.

That put aside it seems that mplayer has a bug in relocating the position within the film. (it also happens for MPEG films).


I did some work on Subversion: placed svn-push inside the Subversion repository, created a branch for it for future developments, and clarified some things in the mailing list and the IRC.

Then I took a break and started writing the Haskell for Perl Programmers presentation. wli helped a little after I queried him on the IRC. There are still things I'd like to add there, but it's quite OK as it is.

HTML Blues

While working on the presentation, I decided that I want to emulate the <table border="1"> look with CSS. I asked it on the web-design list and someone answere me with a recipe. I was able to customize it to emulate Konqueror's look and feel. But then when I tried it on the slides, it did not work.

After a long investigation, I finallly found that if I remove the DOCTYPE everything works again. Then I found out that the problem was that my selector was table.border1 > tr > td instead of table.border1 > tbody > tr > td. After that was applied it was solved in both Konqueror and Mozilla.

Then someone I consulted with on the IRC reported that it does not work in Internet Explorer. After some investigation, it was discovered that MSIE does not support the child selector (parent_tag > child_tag) at all. Aaaarrggghhhh! So, now either I make a non-IE compatible site, or switch to table.border1 td (which may cause problems in the future), or apply class elements to all the <td> tags inside. I can also kidnap Bill Gates and threaten to kill him unless Microsoft makes MSIE more standards compliant and makes newer versions of it available for free download, but that would be too sadistic for my reputation.

MSIE Die Die Die!!!!

New Computer

My father and I set up the new computer. A lot of data was lost and some of the backups turned out to be faulty, but we manage. The new computer is a spiffy Pentium 4, 2.4 GHz with a GeForce 4 video card, and two 80 GB hard-disks with 8 MB Cache. Thus, everything is much faster than before.

I had to finetune the Linux system, as well as install stuff there and on the Windows system. Now everything feels more or less right.

Linux Meeting at the Cafe

Ori drove me there, and we arrived rather early. Later on, other people arrived. All in all, it was a nice meeting and the only thing that disturbed me was that many of the other attendents were smoking. I ordered a chicken salad, which was good, but not too large, so I also ordered a sandwich. I ended up paying 70 shekels for it which is quite a lot.

We talked a lot about KDE, GNOME, Hebrew support, PHP and Perl, MLdonkey and many other topics.

Yesterday's Lecture

I remembered to announce the lecture only on Saturday, and so the attendance may have been smaller than the optimal. Still, quite a few people came, and I lectured and demonstrated the Gimp to them. I was asked that in the next lecture, I'll demonstrate more programming-stuff like Perl, PDL, etc. and hopefully I'll prepare something in this direction.


I took the bike for repairs. It took the repairman exactly one minute to make it fine, and he did not even charge money for it. Now I can bike again, and indeed did.

ALSA sound

On the new computer, I had some problems hearing sound. The sound seemed to be playing and all the volume controls were correct, but no sound was emitted. After consulting people on the IRC and a lot of frustration, I was finally able to solve it. What solved it was downloading the updated ALSA drivers from the Intel (the motherboard manufacturer) site, and compiling them.


I worked on getting the Freecell Solver integration with PySol working again. It did not work at first, and it took me some time to iron out the bugs in the development version of Freecell Solver that have caused it. I wanted to upgrade to the latest PySol, and so I had to compile the Python 2.3 RPM, and to upgrade Python.

One problem I encountered which took me a lot of time to resolve was that PySol was looking for the data in . instead of /usr/share/games/pysol/. Eventually, it turned out it was caused by a file I left there as part of a previous experiment. All in all, the bindings turned out to be fine, and there were different problems altogether.

I also worked on integrating svn-push into the Subversion repository. I searched for a way to build but not install svn-push, and eventually settled on adding my own buildonly meta-target and adding it to the configure.in as those targets that are built. I also re-indented the code (GNU indent seemed to get most of the job done). The code was not commited yet, because I'm waiting to see if people can suggest a better way to modify the build process.


It took me exactly 10 minutes to configure Kmail, subscribe to the Subversion developers' list and send a message with my patch there. Kudos to the Kmail team for such a nice product. My only problems with it is that when viewing a message, I cannot reply to it from the viewer, and have to go to the messages folders to do so; and that I cannot find how to sort messages by thread. But all in all, it's a very nice program.

DVD Playing

We bought a CD Encoder+DVD Drive for the computer. When playing "Bring it On", the DVD installed its own player on the Windows machine, which was not as nice as PowerDVD which came with the drive. I tried playing the DVD in Linux. Ogle crashed on me, and Xine refused to play it with some cryptic message. mplayer did work (after I found out it needs to be invoked with mplayer dvd://1/) and kmplayer gives it a half-decent but a bit buggy GUI.

176 older 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!