Okt 26
Schon seit langem setzte ich für die lokale Entwicklung MAMP Pro ein. Mit der neuen Version 2.0 hat sich unter der Haube jedoch viel getan, so dass ich schon einige Male der Verzweiflung nah war. So auch jetzt wieder, als ich Zend Optimizer zum Laufen kriegen musste.
Mit MAMP 2.x wurde die Unterstützung von Zend Optimizer komplett entfernt und alle Komponenten von MAMP laufen nun mit 64bit. Da es denn Zend Optimizer für Mac OS X jedoch nur als 32bit Variante gibt, haben wir schon mal ein Problem.
Zuerst muss jedoch Zend Optimizer installiert werden. Die benötigte Datei findet man bei Zend. Übrigens, ich hasse Zwangsregistrierungen, nur um an einen Download zu kommen!
Anschließend kopiert man die Datei ZendOptimizer.so (nach dem Entpacken zu finden unter data/5_2_x_comp/ZendOptimizer.so) in das Verzeichnis /Applications/MAMP/bin/php5.2.17/modules .
Nun muss in der php.ini noch Folgendes ergänzt werden:
zend_optimizer.optimization_level=15
zend_extension=/Applications/MAMP/bin/php/php5.2.17/modules/ZendOptimizer.so
Teilweise tritt folgende Fehlermeldung auf:
Failed loading /Applications/MAMP/bin/php/php5.2.17/modules/ZendOptimizer.so: (null)
Dann sollten die Execute Rechte der Datei wie auch die Datei Xattributes (mit xattr) überprüft werden.
Nun aber zum eigentlichen Problem. Auch wenn bisher alles problemlos verlief, wird PHP unter MAMP den Zend Optimizer nicht erkennen und unsere Anwendung (in meinem Fall Shopware) wird weiter herummeckern, dass der Zend Optimizer fehlt. Das liegt wie gesagt daran, das unter MAMP 2.x der Apache unter 64bit läuft, und entsprechend den 32bit Zend Optimizer nicht verarbeiten möchte.
Hier hilft es nur, MAMP dazu zu bringen, den mitgelieferten Apache Webserver mit 32bit zu starten. Dazu muss die 32bit Variante jedoch erst aus der Multibinary Datei extrahiert und ein Symlink angelegt werden:
mv /Applications/MAMP/Library/bin/httpd /Applications/MAMP/Library/bin/httpd.64
lipo -thin i386 /Applications/MAMP/Library/bin/httpd.64 -output /Applications/MAMP/Library/bin/httpd.32
ln -s /Applications/MAMP/Library/bin/httpd.32 /Applications/MAMP/Library/bin/httpd
Nach einem Neustart von MAMP sollte nun der Apache mit 32bit laufen und der Zend Optimizer korrekt erkannt werden.
Zurückgewechselt werden kann zur 64bit Variante wieder mit:
rm /Applications/MAMP/Library/bin/httpd && ln -s /Applications/MAMP/Library/bin/httpd.64 /Applications/MAMP/Library/bin/httpd
Mein Testsystem:
MAMP 2.0.5 unter Mac OS X 10.6.8 (Snow Leopard).
Feb 08

Wird schnell mal ein Wireframe von einer bestehenden Website benötigt? Mit dem Bookmarklet Wirify ist das kein Problem und geht mit einem Klick. Das kleine Tool ist sehr hilfreich, wenn vor einem Redesign der Status Quo festgestellt werden soll oder bisherige Entwicklungen, hinsichtlich verschiedener Designparameter (Abstände, Weißraum, Platzaufteilung) überprüft werden sollen.
» Wirify: The web as wireframes
Jan 26

Jeder der eine Facebook Seite (neudeutsch Fanpage) verwaltet wird die Funktion schon vermisst haben: Die Benachrichtigung, wenn jemand auf der Seite etwas geschrieben hat. Ein Anbieter der sich diesem fehlenden Feature angenommen hat, ist Hyper Alerts.
Der Dienst hält sich angenehm im Hintergrund. Nach der Registrierung und der Hinterlegung der zu beobachtenden Fanpages bekommt man im eigestellten Intervall eine Benachrichtigung, wenn sich etwas auf den Seiten getan hat. Nett ist auch, dass die Option »As soon as possible« angeboten wird (derzeit wegen hoher Auslastung deaktiviert, soll aber bald wiederkommen) und man somit auch direkt auf neue Beiträge reagieren kann.
Vorbei sind also die Zeiten, wo gerade viele Social Media Agenturen sich ständig auf ihren Seiten herumtreiben mussten, um ja schnell reagieren zu können.
Mai 25
In den letzten Tagen war ziemlich viel Wirbel in der Rails Community, da drei neue Versionen veröffentlicht wurden – die letzten beiden (2.3.7 und 2.3.8) allerdings nicht ganz freiwillig.
Die Version 2.3.6 ist neben einigen Fehlerbehebungen als Vorbereitung für den Umstieg auf Rails 3 gedacht. Entsprechend sollte bei bestehenden Anwendungen (wenn ein Umstieg geplant ist) auf die neuen Deprecated-Warnungen geachtet werden. Anwendungen die keine Deprecated-Warnungen ausgeben, sollten später ohne ernsthafte Probleme unter Rails 3 funktionieren.
In der neuen Version wurden teilweise schon Funktionen von Rails 3 übernommen. So unter anderem die Funktionen für den Schutz gegen XSS, welche auf dem rails-xss-Plugin basieren. Da dort einige Bugs dem HAML-Entwickler aufgefallen sind, wurde relativ schnell eine aktualisierte Version (2.3.7) veröffentlicht. Doch damit waren die Probleme nicht beseitigt: Einer der Patchs in Rails 2.3.7 soll wiederum für einige Fehler gesorgt haben, weshalb die Version 2.3.8 hinterher geschoben werden musste.
I apologize for wasting a chunk of your day on installing what ought to have been a patch-level update only to find it breaks your app. That’s well out of line with our stable release process and it’s my fault for stepping out of it. I got caught up in a sky-is-falling response to a 2.3.6 bug that affected a handful of users and responded with a fix that exposed a new flaw to nearly all users, despite testing and sanity checking.
Apr 25

Heute mal ein Posting in eigener Sache: Vor einigen Jahren war diese Website noch in zwei Hauptbereiche unterteilt: dem Webdesign und der Fotografie. Nachdem ich aber – da das Webdesign und die Programmierung einen höheren Stellenwert hatte – den Fotografie-Teil stark vernachlässigt hatte, entfernte ich diesen Bereich komplett. Allerdings fehlte mir die ganze Zeit immer etwas.
In den letzten Tagen habe ich an einer neuen Website für die Fotografie gearbeitet. Und jetzt ist sie – zumindest vorläufig – fertig. Wer sich also nicht nur für meine Arbeit in der Webentwicklung interessiert, sollte einmal bei CBpictures vorbeischauen …
Mrz 23
Am vergangenen Wochenende fand in Berlin das PolitCamp 2010 im »Radial System V« (Berlin) statt. Gleich vorneweg: Die Location und auch die Aussicht ist super und wirklich zu empfehlen. Zwei Tage nach dem PolitCamp hier meine ganz persönlichen Eindrücke in Kurzform:
- Noch einmal zur Location: Die Räume dort sind angenehm groß und trotz der hohen Anzahl der Teilnehmer fand man auch immer problemlos einen vernünftigen Sitzplatz. Stehen oder auf dem Boden sitzen musste ich jedenfalls in keiner einzigen Session. Auch für eine vernünftige Stromversorgung wurde dank der »Netzsteckers« gesorgt. Meine vorsorglich mitgebrachte 10 Meter Stromleitung konnte jedenfalls im Rucksack bleiben. Daumen hoch dafür.
- Wie bei einer solchen Veranstaltung üblich, ist das WLAN instabil und langsam. Ständig ist man rausgeflogen und musste sich erneut einloggen. Zudem war es kriechend langsam. Aber da man das ja eigentlich vorher schon weiß, und ich mich entsprechend vorbereitet habe, war dies für mich jetzt nicht besonders tragisch. So war der Nervfaktor bei mir zumindest nach 10-Minuten erledigt. Den ganzen Beitrag lesen »
»Ruby Best Practices« zeigt erprobte und praxistaugliche Ansätze und Lösungen für die Programmierung mit Ruby. Ein besonderer Augenmerk wird auf das Test-Driven-Development (TDD) gelegt, aber auch die Bereiche APIs, Debugging und Internationalisierung werden behandelt. Das Buch von Gregory T. Brown ist jetzt als Open Source eBook bei
Github veröffentlicht worden. Das gedruckte »Original« gibt es weiterhin bei
O'Reilly.
// 23.03.2010 (0 Kommentare)