Too Cool for Internet Explorer

Apple discontinues the xserve


This is very, very disappointing: Apple discontinues the xserve. It will be available for order until 31th of january 2011. The recommendation of Apple is to buy the Mac mini Server edition or the Mac Pro in future. While the Mac Pro is a great product, i can't imagine putting it in a 19" rack: two Mac Pro on a shelf would take the place of 12 units -- wow.

At ClipDealer we have two of the xserve. They are great machines and i will definitly miss the possibility to buy more of them.

R.I.P. xserve -- i had a very good time with you.



proftpd + mod_sql: solving "slow login" problem


I had a very annoying problem with proftpd, which seems a common one at first sight: slow login and the problem, that a lot of ftp clients out there have a low timeout setting configured. The problem is that googling "slow connection" or "slow login" in combination with "proftpd" led me in a totally wrong direction. A lot of people seem to have a problem with DNS lookups, which can be easily fixed by adding ...

UseReverseDNS off
IdentLookups  off

... to the configuration file, to turn of any DNS lookups. But this did not change anything for me. Running a ftp client in debug mode it turned out, that the authorization itself took a very long time, which led to a timeout with most ftp clients:

air:~ harald$ ftp -d ftp.xxxxxxxxxx.de
Connected to ftp.xxxxxxxxxx.de.
220 xxxxxxxxxx FTP Server
ftp_login: user `' pass `' host `ftp.xxxxxxxxxx.de'
Name (ftp.xxxxxxxxxx.de:harald): 
---> USER harald
331 Password required for harald
Password: 
---> PASS XXXX 
...

The password was send, and than the ftp client had to wait 10 seconds and longer for a respone. Lot's of ftp clients have a timeout of less than 10 seconds, which results in a timed out connection for such a long response time.

After googling for quite some time without finding anything useful on this topic -- besides the DNS lookup problem -- i delved deeper into to the proftpd documentation and found a howto which gave me some hints of how to speed up ftp login.

As it turned out the problem was my SQLAuthenticate directive, which i just copied from the example configuration file of mod_sql. The configuration was set to:

SQLAuthenticate users userset

The problem with this configuration is, that the userset switch seems to be very, very expensive. I still don't know, why this switch is set in the configuration -- the documentation contains no useful examples of when to use / when to avoid this switch, but eventually i found a forum post of a proftpd maintainer, where he tells, that the userset switch is not necessary to be configured. After changing above configuration to ...

SQLAuthenticate users

... login is fast as hell. I'm still curious why the switch was there ...



long time -- no update


I'm currently preparing to switch my blog software -- again. After using wordpress and serendipity for quite some time, i came to the conclusion, that i will only be satisfied with my own blog software. Therefore i'm currently developing something based on the php5 framework i developed for work. I also decided to switch language ... now i can practice my english and increase the audience of people, who won't be interested of what i am writing ;-).



ClipDealer Widget Test




Todo für 2009


Das Jahr neigt sich dem Ende und es wird Zeit eine Liste der Dinge zu erstellen, mit denen man sich 2009 beschäftigen möchte. Auf meine Liste setze ich folgende Punkte:

  • php 5.3 -- ich möchte einen Entwicklungszweig meines PHP Frameworks einrichten, in dem ich mein Framework auf einige der tollen Features von PHP 5.3 vorbereite. z.B.: Operator Overloading und Closures.
  • Ich möchte weiterhin die äusserst interessante dokumentbasierte Datenbank couchDB im Auge behalten und evtl. eine kleine Anwendung dafür schreiben. Ich plane eigentlich schon seit Ewigkeiten meinem Blog eine andere Software zu spendieren -- evtl. wird es also eine simple couchDB basierte Blog Software.
  • Es gibt jetzt eine Installation der Datenbank DB2 Express-C von IBM für OSX -- da mich Datenbanken generell interessieren, möchte ich also einen Blick auf DB2 werfen.
  • Ich möchte mir ein paar Javascript Bibliotheken ansehen. Insbesondere script.aculo.us. Da diese Bibliothek auf prototype aufsetzt, muss ich mich auch mit eben jenem beschäftigen. Ich bin eigentlich kein Freund von Prototype und vergleichbaren Dingen, da ich der Meinung bin, dass man nicht alles machen muss, was man machen kann und ich eigentlich auch nicht wirklich den Sinn darin sehe Javascript eine andere Form der Objektorientierung überzustülpen, wo die bestehende Form doch so wunderbar funktioniert. Aber mal sehen ... vielleicht kann ich mich ja doch damit anfreunden.
  • Vielleicht gelingt es mir ja 2009 mich ein wenig mit Cocoa und Objective-C zu beschäftigen.

Das ist eine lange Liste und ich bin gespannt, welches Fazit ich in einem Jahr ziehen kann ...



Microsoft vs. Apple


Völlig untypisch für mich und eigentlich fast unglaublich, dass ich jemandem mal ein Produkt von Microsoft empfehle. Aber es ist in der Tat passiert ...



reactable


Eigentlich mag ich in diesem Blog keine youtube Videos posten, aber da ich ein Fan von innovativen und revolutionären Eingabe- und Bedienungsmethoden bin, muss ich das hier einfach posten.

Über ein paar Umwege bin ich darauf gestossen, als ich Videos zu dem Software-Synthesizer psychosynth gesucht habe, dessen Eingabemethode ganz offensichtlich von reactable inspiriert ist.

Gigantisch mit einem hohen "haben-will"-Faktor -- wer mag mir einen reactable zu Weihnachten schenken? ;-)



Macbook


Das neue Macbook auf meinem Schreibtisch zu Hause. Sehr schick -- aber leider nicht mein eigenes, sondern das von Freunden. Vor einigen Monaten schon segnete der Windows PC von Freunden das zeitliche und ich konnte sie erfolgreich zum Kauf eines Macs überreden. So wurde damals ein Mac Mini angeschafft. Offensichtlich sind meine Freunde mit dem Mac und Mac OS derart zufrieden, dass der geplante Kauf eines zusätzlichen Portablen Computers -- ursprüngliche Planung: Sony Vaio -- nun auch im Kauf eines Macbooks endete ... ich bin sehr zufrieden :-)






Apple Store München


Jedes Jahr am 6.12. bringt der Nikolaus den kleinen Kindern Süssigkeiten und Leckereien. Dieses Jahr hatte er für die grossen Kinder noch den Apple Store mit im Gepäck -- offensichtlich waren die münchner Kinder besonders brav ;-). Zur Eröffnung war ich auch dort und habe nach über einer Stunde Wartezeit auch mein Begrüssungsgeschenk überreicht bekommen ...












input-monitor


wordle analyse meines RSS feeds -- könnte man sich fast ausdrucken und an die wand hängen ;-)



Google Street View ...


Das Google-Auto, das derzeit in München unterwegs ist, hat seinen Parkplatz offenbar in München-Allach gefunden. Schnappschuss mit der iphone-cam aus der fahrenden S-Bahn.















iMac vs. xserve


Unser neuer Encoding Server für ClipDealer am Freitag ausnahmsweise auf meinem Schreibtisch im Büro. Nicht nur was die Abmessungen, das Gewicht und die Lautstärke angeht eine beeindruckende Maschine :-).









IMAP mit Google Mail


Mein Lieblings Mailer Google Mail unterstützt jetzt auch IMAP. Der IMAP Zugang muss zunächst in den Einstellungen aktiviert werden, diese sind derzeit allerdings nur in der englischen Version von Google Mail verfügbar (einfach die Spracheinstellung in Google Mail auf 'englisch' ändern).

Habe das ganze mal mit Apple Mail ausprobiert - es funktioniert wunderbar. Alle Labels werden in Apple Mail angezeigt und die Standard Folder ausgenommen "Chats" werden angezeigt.



Google Reader jetzt mit Suchfunktion



Meinem Lieblings Newsfeed-Reader wurde offenbar endlich eine Suchfunktion spendiert :-).











SSH Tunnel


Ich möchte für meinen Arbeitgeber an einem Projekt von zu Hause aus arbeiten. Auf meiner Linux Workstation in der Arbeit ist das Java basierte Web-Framework inkl. dem Tomcat als Application Server installiert. Zugriff auf meine Linux Workstation habe ich dort über einen Gate Server an dem ich mich anmelde und von dem aus ich dann auf meine Workstation gelange. Da ich über den Gate Server keine Tunnelverbindung aufmachen kann und will, muss eine andere Lösung her.

Zu Hause verbinde ich mich über eine fritzbox fon ins Internet. Über die fritzbox sind SSH Tunnelverbindungen auch nicht so ohne weiteres möglich. Glücklicherweise gibt es eine Lösung für das Problem:

Mit Hilfe der hervorragenden Anleitung auf der Seite tecchannel.de habe ich mir zunächst auf meiner fritzbox einen SSH Server installiert, sodass ich mich von aussen per SSH mit meiner fritzbox verbinden kann.

Wenn das funktioniert, kann ich nun einen SSH Tunnel von meiner Workstation in der Arbeit auf meinen Rechner zu Hause aufmachen. Das funktioniert über einen "Local Port Forward" mit Hilfe des folgenden Befehls:

ssh -f -N -L 2222:192.168.xxx.xxx:22 root@externe-ip-fritzbox

-f Bewirkt, dass SSH als Hintergrunsprozess gestartet wird und somit das Terminal nicht von SSH blockiert wird
-N Bewirkt, dass kein Befehl auf dem Verbundenen Server ausgeführt wird, denn das ist bei lediglich einer Port Weiterleitung nicht erforderlich.
-L Lokale Port Weiterleitung: Alle Anfragen an den Port '2222' auf der Linux Workstation in der Arbeit (von der aus ich diese Kommandos absetze) werden durchgereicht - und zwar an Port '22' des über die IP Adresse spezifizierten Rechners in meinem lokalen Netz zu Hause. Die IP Adresse 192.168.xxx.xxx ist tatsächlich die Adresse, über die mein Rechner zu Hause der fritzbox bekannt ist.
  Als letzter Parameter wird der Login und die IP Adresse angegeben unter der mein Heimnetz im Internet erreichbar ist.

Nun wäre ein SSH-Tunnel zwischen meiner Workstation in der Arbeit und meinem Rechner zu Hause aufgebaut. Per 'ssh -p 2222 username@localhost' sollte man sich nun auf den Rechner zu Hause per SSH anmelden können (beispielsweise zum Test der Verbindung). Die fritzbox wird dadurch praktisch "untertunnelt".

Anschliessend kann über diesen bestehenden SSH Tunnel ein sogenannter "Remote Port Forward" eingerichtet werden. Damit ich von zu Hause aus via "http://localhost:8080/" über meinen Browser auf den Tomcat in der Arbeit zugreifen kann, gebe ich folgenden Befehl (wiederum auf der Linux Workstation in der Arbeit) ein:

ssh -p 2222 -f -N -R 8080:localhost:8080 harald@localhost

-p Bewirkt, dass SSH den Port '2222' für die Verbindung verwendet - das ist mein Tunnel, also die direkte Verbindung zu meinem Rechner zu Hause
-f Bewirkt, dass SSH als Hintergrunsprozess gestartet wird und somit das Terminal nicht von SSH blockiert wird
-N Bewirkt, dass kein Befehl auf dem Verbundenen Server ausgeführt wird, denn das ist bei lediglich einer Port Weiterleitung nicht erforderlich.
-R Remote Port Weiterleitung: Der SSH Server auf meinem Rechner lokal zu Hause öffnet den Port 8080 für Verbindungen zurück zu meinem Rechner in der Arbeit. D.h. alle Anfragen an localhost:8080 von meinem Rechner zu Hause aus werden an meine Workstation in der Arbeit ebenfalls an Port 8080 durchgereicht.
  Als letzter Parameter wird der Name des Useraccounts auf meinem Rechner zu Hause, jedoch der Hostname "localhost" angegeben (da ich mich wie weiter oben ja schon beschrieben, per 'ssh harald@localhost' direkt von der Workstation in der Arbeit auf meinem Rechner zu Hause einloggen kann.

Die Eingabe von "http://localhost:8080/" in meinen Browser zu Hause sollte mir nun die altbekannte Startseite des Tomcat in der Arbeit liefern.