This is the blog of Gerd Riesselmann, a freelance software developer from Cologne, Germany. This site contains articles about software development and user interface design in general and object oriented programming in special, covering a set of programming languages from C++ and C# to PHP and Javascript. Additionally, you'll find code snippets and modules for Drupal, the open source content management system powering this site.


Internet Update The Wrong Way III

This time: Sophos Anti-Virus. On internet update, this program downloads updated application files for all possible languages (and it speaks an awfull lot of languages). And no option to turn it off. So I happily downloaded the updates for swedish, italian, spanish, danish, french and some others, which any of them I haven't installed. It took 15 minutes on my parents ISDN connection - and they pay for every kilobyte. If Sophos is an average virus scanner (I don't know), I suppose this updates to happen every week or so: Horror!

At least, however, unlike many other anti virus applications, Sophos doesn't require a restart on update.

Worst EU Lobbying Award 2005

On December 14th, which is two days from now, the winner of the Worst EU Lobbying Award 2005 will be announced in Brussels. Since then everybody can vote on his or her favourite. Or, as the organisers of the award put it:

This is your opportunity to decide which of the ten cases deserves to be remembered as the most ruthless influence peddler, the fastest spinner of spin, the grand master of disguise, in short who will become the ‘Worst EU Lobbying’ Award 2005 champion.

As of today, the Campaing for Creativity (C4C) is leading with 87 percent. C4C is lobbying pro software patents and - although backed up by SAP, Mircosoft and others - claims to be an initiative supported by individuals. It was nominated as "a fake NGO brilliantly disguising corporate demands as grassroots concerns".

Large-Scale C++ Software Design

Following up on a comment from Udi Dahan about physical design Len Holgate points out that

If you're working in C++ and you haven't read Large-Scale C++ Software Design (APC) by John Lakos then you really should.

This is definitly true. John Lakos' book - beeing as far as I know the only one on the topic - is a must-read for each C++ developer.

Len is using Lakos' book as an argument against my post about C++ still beeing needed? and further states:

You have to actively manage your dependencies all the time, no matter what language you're working in. If you don't do it in C++ you can end up in a hell of slow compiles and horribly entwined code that all needs to be rebuilt if you ever change one class. If you do it right you rebuild just what needs to be built and you depend on just what you need, and no more.

Again: true. However, each project contains some very fundamental libraries, nearly all other packages depend on. A custom string class comes to mind ;-), but there are other. Let me tell you a little bit about the application I'm developing at work to get things clear.

Drupal Most Popular Posts Block

I'm currently experimenting if and how presenting users links to other content of this site affects the site navigation (and how you may have guessed: Yes, I got myself a Google Analytics account, too). First I decided to display related articles beneath each articles. Now I'm trying a "Most popular" block that displays the top five pages visited within the last three days. Here's how I did it.

Crop circles: How to

Tired of living in a village where nothing ever happens? Looking for 15 minutes of fame? Why not create some crop circles and wait what amazing stuff some people will find out about the place you are living? But stay mystic, don't get too concrete.

Design Pattern Love Story

Go and read Scott Allen's Design Patterns: A Love Story, it's fun! (via Darrel Norton)

Gravatar support

I added support for Gravatars today. If you own a gravatar, it will be displayed aside your comment. The following images have a special meaning:

Gravatar for users without gravatar This is displayed, if you do not have a gravatar. It show's a plant called "Sonnentau" in German, scientifically it is called Drosera something. It grows in the bog and eats insects. Nothing about your character or your favourite meal is implied by that.
My gravatar And this is me ;-).

Is C++ still needed?

Christopher Baus is reasoning about why C++ is falling out of favor:

In domains where low level access is critical, developers are going for C. If developers can live with higher level abstractions, then they are skipping straight to Java or Python or Ruby or PHP, and by passing C++ altogether. C++ is getting squeezed out in the middle.

I think he's right. If you're doing large scale business applications, like I do on work, C++ definitly is not the language of choice. Some reasons:

Display related nodes in Drupal

I just hacked the following code into my node.tpl.php to display five possible related nodes beneath each story. There also is a module doing this, however, I wanted to reuse the build in search, since it offers this nice snippets feature.

One feed module to rule them all

I found the build in feed support of Drupal to be a bit poor. It only offers RSS feeds, publishes only teasers, but not full text and doesn't allow to set an image for your feed. Atom support is missing and there is no comment feed. There are modules for both atom and comment feed, though.

That's why I decided to write a module for general feed handling purposes. The module is still very beta, however, it already powers this site's feeds. You can download it here. Be sure to read the INSTALL.txt file, since this module requires a hack to the node module.