Category Archives: Internet - Page 2

Python web frameworks

Lately I played around with python web frameworks. After working on a web project with Django last year, I discovered Aspen lately. There are many other frameworks out there. Nevertheless, I’d like to share my findings about Django and Aspen. 🙂

  • Both use python, which is generally known as being fast. It’s compiled and therefore usually less memory hungry than other web oriented languages. There are also better ways to optimize performance, e.g. by writing a custom web server, if your website has high traffic.
  • Both frameworks are nicely object oriented. You get a request object (Django, Aspen) which encapsulate all information from the client. The application can use all its information to generate the output, encapsulated in a response object (Django, Aspen). When errors occur, you can simply raise an error response object in the middle of your code.
  • Aspen and Django are providing templating engines which are very similar to each other.
  • URL’s like http://falstaff.agner.ch/list/10/ score in terms of readability and alterability. Also, they simply look better! Both frameworks encourage the user to use such URL’s without file endings or unreadable long query strings (like ?page=start&session=123). While Django uses a configuration file, Aspen uses the file system itself to create such URL’s.

However, there are also big differences between these frameworks… Read more »

Zenphoto Dokuwiki integration

For a small web project I recently decided to use Zenphoto as photo gallery and Dokuwiki as Main page. I wanted that Dokuwiki and Zenphoto share they’re user database. But both ways, neither Zenphotos user database in Dokuwiki nor Dokuwikis user database in Zenphoto seemed to be simple to implement. So I ended up in a Dokuwiki plug in which synchronize the user database with Zenphotos user database. For that purpose the plug in need the MySQL login information for Zenphotos database. It also allows to enable auto login for Zenphoto when login on Dokuwiki (by simple setting the right cookie). I created a Github repository and added a plug in wiki page to the Dokuwiki website. I thought it might be useful for anybody else…

Using git to install dokuwiki

Since some months now I use Subversion to update my WordPress installation. A simple “svn switch” to the new tag does the trick, and your WordPress installation is up to date! Since my Dokuwiki installation are getting older and older, I decided doing that with Dokuwiki as well. The source code of Dokuwiki is hosted in a Git repository over at Github. I found nowhere a short instruction how to do that with git, so I thought I write one.

First of all, you need git to install git (always strange to install such software on a server, but who cares :-))

sudo aptitude install git-core

When you already have a Dokuwiki installation, you have to convert it to a git repository. Because git clone doesn’t allow using a non-empty directory, we have to work around this limitation. Warning: Using this method you will loose any changes made to Dokuwiki specific files. Configuration and data should be in their own files so you won’t loose such data.

git clone -b stable -n http://github.com/splitbrain/dokuwiki.git
mv dokuwiki/.git/ .
rmdir dokuwiki
git checkout -f

When you are going to install a new installation, use this command

git clone -b stable http://github.com/splitbrain/dokuwiki.git wiki

For security reasons its recommend to disallow the .git directory for HTTP requests by adding these lines to the .git/.htaccess file. You should also remove install.php.

rm install.php
vi .git/.htaccess
order allow,deny
deny from all

To update your installation, just use the command git pull, which will pull the latest commits from the original Github repository.

git pull

Integration DIY Map in Typo3

Momentan bin ich am Erstellen einer Webseite für die Jugendhilfe Lateinamerika (www.juhila.ch), eine Hilfsorganisation der Salesianer Don Boscos. Diese Webseite habe ich mit Typo3 realisiert. Die JUHILA unterstüzt Hilfsprojekte für Jugendliche in Lateinamerika. Um diese Projekte auf der Webseite zu präsentieren, wollte ich eine Flash Karte verwendet, die von John Emerson programmierte DIY Map. Die Karte benötigt eine XML-Datei, woraus Informationen für die Länder sowie die Orte der Projekte gewonnen werden. Die Karte kann mit einem normalen HTML-Bereich in Typo3 eingebunden werden. Als Parameter kann der Ort der XML-Datei übergeben werden, dabei sollen die Informationen für die XML-Datei aus dem Seitenbaum von Typo3 geholt werden. Die XML-Datei muss also dynamisch erstellt werden. Read more »

Musterbriefe gegen Datenkraken

Datenschutz ist in der Informationsgesellschaft ein wichtiges Thema. Die Schweiz hat deshalb auch ein relativ solides Datenschutzgesetz (kurz DSG). Jeder kann nach seinen gespeicherten Informationen fragen, und wird dabei vom Gesetz gestützt.
Read more »

Wie Skype funktioniert

Letzte Woche im c’t (17/06) auf Seite 142/143 gelesen, was mich schon länger beschäftigt hat: VoIP erzeugt relativ viel Verkehr, und dies wärend eines Gesprächs laufend. Wenn alle User, momentan rund 6 Millionen, über die Skype Server Telefonieren würden, wäre das ein enormer Datenverkehr und dies könnte Skype wohl kaum zahlen. Aber Skype arbeitet bekanntlich mit der P2P Technologie, welche direkte Verbindungen zur Gegenstelle aufbaut. Dies setzt aber voraus dass einer der beiden miteinander kommunizierenden Computer Verbindungen von aussen zulässt. Da heute viele User ADSL besitzen und somit meistens hinter einem Router mit NAT sind, kann aber in diesen fällen keine direkte Verbindung hergestellt werden! Das dachte ich bis anhin zumindest. Read more »