WordPress Plugins entwickeln und debuggen

logo-wp-codeWer in den letzten Tagen hier im Blog reingeschaut hat, der hat vielleicht unten links in der Ecke eine merkwürdige neue Einblendung vorgefunden. Eine Reihe von kleinen blauen und grünen Männchen (von kleinen grünen Männchen wollt‘ ich schon immer mal schreiben) hüpfen dort scheinbar ziellos hin und her. Der Hintergrund dieser Männlein ist ein kleines Pet-Project namens „proximo“ das ich gerade verfolge.

Ausgehend von meiner Doktorarbeit zur Virtuellen Proxemik habe ich mich an den Versuch gewagt die darin erforschte Softwarekomponente – die bis dato nur in der E-Learning Software EverLearn zum Einsatz kam – zu portieren auf WordPress (WP) und ein Plugin für WP zu entwickeln, das exakt das Gleiche und noch ein wenig mehr können soll.

Ich denke, dass WordPress genau die richtige Plattform ist, um das Konzept der virtuellen Proxemik in die Breite zu bringen. WP Blogs sind weit verbreitet und jeder mag es Besucher auf seinem Blog zu haben. Zukünftig kann man die Besucher und diese sich gegenseitig beim Blogbesuch ‚live‘ sehen und sich unterhalten. Man muss aber nicht, wenn man nicht will.

Um dieses Plugin zu bauen, ist schon ein wenig Arbeit nötig. Da ich bislang eher wenig in dem PHP-Code von WP verändert habe – ab und in in meinem Theme okay – bin ich ganz froh über jede erdenkliche Hilfe. Und da kommt mir das vom WordPress Experten Frank Bültke gerade erst online gestellte Plugin „Debug Objects“ wie gerufen. Für alle Neueinsteiger und Profis, die den WP-Loop komplett verstehen wollen ein absolutes Pflichtplugin! Danke Frank.

Update 11.7.2009
Die Entwicklung des WP Proximo-Plugins (siehe linke untere Ecke) macht Fortschritte. Viele Features sind bereits hinzugekommen. Hier eine Liste der letzten Änderungen und wichtigsten Funktionen:

  • Ermittlung der Aufenthalts-URL im Blog im PHP. Seitentitel wird dann per AJAX von echten Besuchern geliefert
  • AJAX-Calls werden gegen hacking geschützt über wp_nonce-codes und sind sehr robust
  • Robot-Detection anhand des Useragent, insb. Feed-Bots (inkl. Darstellung als Roboter-Figur)
  • Ausgiebige Tests auf allen möglichen Browsern insbesondere mit der JS-Loader-Sequenz (WIN:IE8, FF, Opera, Safari; MAC:Safari, FF, Opera, iCab, OmniWeb, Camino)
  • Anzeige von relativem Uhrzeit/Datum in den Textmessages
  • Audio-Beep bei neuen/ungelesenen Messages und Notification-Grafik auch nach Sprung auf neue Seite
  • Alle Figuren sauber als PNG neu gerendert, kein GIF mehr
  • Proximo merkt sich ob es ein- oder ausgeklappt ist
  • Gesamter PHP-Code objektorientert und einfach wartbar
  • Automatische Upgradefunktion für eventuelle Datentabellenänderungen (Plugin-Versionierung)
  • Administration mit automatischer Installationsüberprüfung bei verschiedenen Themes des Plugis versehen
  • JavaScript hochkomprimiert (über 55% Speicher eingespart bei Übertragung)
  • Update: Soeben ist der Autopilot als Feature hinzugekommen!

Why do I blog this? Die Entwicklung eines WP Plugins ist eine echte Herausforderung. WP selbst hat eine komplexe Struktur des Ablaufs die selbst Profis nicht „mal eben so überschauen“ bei der Generierung einer Seite als Antwort auf einen HTTP-Request. Dennoch ist sehr viel gute Dokumentation im Netz vorhanden, um schnell dahin zu gelangen wo man hinmöchte. Debug Objects ist perfekt, um auch Konflike des eigenen Plugins in Entwicklung zu entdecken.

Grüner PC als Designstudie

Eine lustige Studie zu einem „grünen“ PC habe ich eben per Zufall gefunden, als ich nach Energiequellen gesucht habe. Der LawnPC von Designer David Veldkamp.

lawnpc_3

Abbildung des LawnPC – Foto von www.igreenspot.com

Das Konzept seiner Energiequelle lautet wie folgt:

Lawnpc is a self-sustaining computer system. It creates all of the power it needs to operate with help from solar energy. Overall the Lawnpc would save an average of 876 kWh and 800 kg of carbon dioxide per computer per year. Multiple that by the projected 1 billion computers in the world and the environmental impact is tremendous.

Why do I blog this? Mich fasziniert weniger die Idee an sich – Energie zu sparen, auch wenn das ein tolles Designziel ist – als die Art und Weise wie diese Studie auf den Bildern präsentiert wird. Die Reinheit und das Spiel mit den Farben Weiß und Grün. Nicht ganz zufällig, vermute ich mal, macht das Design starke Anleihen bei den weißen Apple Rechnern. Sehr gelungen!

3D Videochat ohne Zusatzkamera (Parallax-Effekt)

Soeben bin ich beim morgendlichen Bloggen auf ein echt cooles Video gestossen vom Januar diesen Jahres. Ein paar Forscher haben die eingebaute Kamera des MacBook mit den Möglichkeiten die sie bietet in eine Art Parallax-Kamera-Display-System umgebaut:


Unter dem Titel ‚3D‘ Video Chat Using Regular Webcams ist der Bericht in der WIRED gewesen. Super coole Idee wie ich finde.

Why do I blog this? Ich beschäftige mich grade mit 3D Effekten, sowohl in Bild und Bewegtbild.