Artikel

Hier findest du eine Übersicht über alle bisher veröffentlichten Artikel seit dem 11. November 2009.

  • Prozesse, Prozesse, Prozesse In meiner beruflichen Laufbahn war ich für eine Vielzahl namhafter Unternehmen unterschiedlichster Größe unter anderem als CTO und Product-Owner tätig. In dieser Zeit hat sich ein Sachverhalt wiederholt abgezeichnet – Prozesse sind, selbst für Startups die sich im aktiven Wandel zu einem mittelständischen Unternehmen befinden, ein oftmals sehr sensibles Thema – ja vielleicht sogar schon ...
  • Compile PHP and an extension under Win(x86) This guide is based on the following official php.net Wiki Page. This guide covers the compile process of PHP (>= 5.5) a PHP-extension (Pecl) under Windows with Microsoft Visual Studio Express 2012 for Windows Desktop. As result of this operation we will get binaries of PHP for Windows as well as an extension (php_*.dll). We will use the 1uprofiler extension ...
  • Startup-Code: Kommentare im Quelltext Es ist immer wieder ein gerne diskutiertes Thema „Kommentare im Quelltext“ – allen voran die sogenannten Inline-Kommentare. Das Kommentare sinnvoll und in jedem guten Softwareprojekt elementarer Bestandteil sind, dessen ist sich die Mehrheit der Entwickler und Projektverantwortlichen mittlerweile tendenziell sicher. Doch es gibt sie noch, die andere Seite – Software ohne Kommentare und das bei Projekten ...
  • Software-Entwicklung mit Open-Source-Werkzeugen Während einem meiner letzten Open-Source-Projekte war selbst ich von den aktuell verfügbaren Werkzeugen und vor allem von deren Funktionsumfang sowie Stabilität überrascht. Es hat für mich den Anschein, als wäre das Open-Source-Umfeld zwar mittlerweile eine großes Feld zum experimentieren und dabei zugänglich für jedermann und doch durch und durch professionell organisiert. Es gibt dabei unzählige ...
  • WebSockets – Vom Client zum Server und zurück (Teil 1) Dieser Artikel ist der Beginn einer kleinen Serie, die dir das Thema WebSockets und deren Einsatzmöglichkeiten ein wenig näher bringen soll. Bei WebSockets handelt es sich um eine der Neuerungen aus dem HTML5-Paket. WebSockets können ein mächtiges sowie einfach einzusetzendes Feature zugleich sein. Das die Möglichkeiten zum Einsatz vielfältig sind, steht wahrscheinlich außer Frage. Doch ...
  • PHP Coding-Standards und -Richtlinien Mit der zunehmenden Professionalität in PHP-Projekten der letzten Jahre, stieg auch die Anzahl der mir bekannten Coding-Standards und Programmierrichtlinien. Mittlerweile finden sich im World Wide Web unzählige Dokumente aus den unterschiedlichsten Projekten und in unterschiedlichsten Detailstufen. Viele große Open-Source-Projekte, allen voran das PEAR-Projekt, haben einen Beitrag zur Vereinheitlichung der unterschiedlich gewachsenen Standards geleistet. Am bekanntesten sind ...
  • Grundlegende Regeln für gute Fehlermeldungen Soeben musste ich bei der Integration einer Bibliothek mal wieder staunen. Die Bibliothek, auf die ich mich hier beziehe, zeichnet sich unter anderem durch einen guten Stil, eine durchgängige Dokumentation, sowie fast lückenlose Fehlerbehandlung aus. Deshalb ist es um so weniger verständlich, dass die eingesetzten Fehlermeldungen, die implementiert wurden, leider oft nicht aussagekräftig genug sind. ...
  • Mein erstes Fachbuch Nach einigen Jahren mit sehr interessanten Erfahrungen in der Software-Entwicklung, habe ich vor ca. einem Jahr mit dem Schreiben meines ersten Fachbuches begonnen. Mir lag die Qualität der Projekte an denen ich maßgeblich beteiligt bin, stets sehr am Herzen. Ein Stück Software zu schreiben, es zu testen und es Menschen zur Verfügung zu stellen, die ...
  • Aktueller Stand Während des letzten Jahres habe ich sehr viele neue Impulse aufgenommen und viele Theorien zur Qualität von Software gehört, Vorlesungen besucht, unzählige Bücher aus vielen Bereichen der Software-Entwicklung gelesen, sowie Diskussionen und anregende Unterhaltungen bei Conventions geführt. Würde ich jetzt, nachden Ergebnissen des letzten Jahres, ein Resümee ziehen, dann würde ich wahrscheinlich ganz simpel formulieren: Im ...
  • XHProf für Windows (aktuelle Windows-Builds) Hier findest du die aktuellen XHProf Windows-Builds. Ich bin bemüht, die Builds stets den aktuell verfügbaren PHP-Versionen anzupassen. Zum aktuellen Zeitpunkt PHP 5.3 und 5.4. Die NTS-Versionen (und 64 bit) bereiten mir momentan noch Probleme. Deshalb stelle ich momentan lediglich TS-Builds zum Download bereit. Wenn jemand die NTS-Version oder 64 bit erfolgreich kompiliert hat, dann ...
  • Source of XHProf 0.10.0 released I’ve released the source some minutes ago! Everyone who’s interested in the source of the windows-compatible release can find the sources at my github repo for XHProf and maybe soon at the Facebook repo. For the „old-school“ user – here are the udiff patches for the two files: 1. php_xhprof.h: 12345678910111225a26 > #include "win32/php_xhprof_win32.h" 33a35,37 > /** > * PHP default module ...
  • XHProf PHP-extension 0.10.0 – Windows-Build I’ve recently finished version 0.10.0 of XHProf the PHP-Profiler published by Facebook. I’ve added the missing functionality for windows versions (e.g. getrusage(), SET_AFFINITY(), GET_AFFINITY()). This Version is based on Version 0.9.2 beta (2009-06-01) from pecl. The extension was linked against php5ts.lib (PHP 5.3.3, VC++ 6, TS, Debug) and packed with UPX afterwards. You can download the Extension ...
  • XHGUI für XHProf – Windows Version Für den PHP Software-Profiler XHProf wird von Facebook eine GUI mitgeliefert. Bei genauerer Betrachtung stellt man aber schnell fest, dass diese bei der optischen Erscheinung ein paar Wünsche offen lässt.  Der kanadische Softwareentwickler Paul Preinheimer dachte sich das gleiche und hat sich des Problems angenommen und die GUI um die „highchart“ charting library (JavaScript) erweitert ...
  • Erkennen des Character-Encodings durch MAGIC-Field Bei meinen Zeichensatz-Spielereien in der letzten Zeit bin ich auf eine interessante Möglichkeit gestoßen, den Zeichensatz den der Browser für das Senden von Formulardaten verwendet zu erkennen. Es gibt, ähnlich den Magic-Methoden bei PHP, die Möglichkeit ein speziell benanntes Formularfeld zu erstellen, in das der Browser bei Submit automatisch den verwendeten Zeichensatz einfügt. Als ich das ...
  • Verarbeitung von UTF-8 mit PHP Immer mal wieder stolpert man über das Thema: „UTF-8 mit PHP“ – und es ist wirklich alles andere als angenehm. Die Unterstüztung für Multibyte-Zeichensätze in PHP ist ziemlich dürftig und da bis zum erscheinen von PHP 6 und der anschließenden Migrationsphase auch noch einige Tage vergehen werden, kommt man momentan noch nicht drum herum an ...
  • Salt’n’Pepper – Username als Pepper zum Salt Soeben hatte ich eine Idee für einen dynamisch aus den vorliegenden Logindaten erzeugten Salt – quasi Pepper zum Salt. Für diejenigen unter euch, die nicht wissen, was Salt in Verbindung mit der Speicherung von Passwörtern bedeutet, hier ein kurzer Auszug aus der Wikipedia: Salt (engl. „Salz“) bezeichnet in der Kryptographie eine zufällig gewählte Bitfolge, die an einen ...
  • Call for Papers für den „Month of PHP Security“ gestartet Der PHP-Sicherheitsexperte Stefan Esser, initiiert eine neue Aktion zur Verbesserung der freien Skriptsprache. In Anlehnung an den von ihm 2007 gestarteten  „Month of PHP Bugs“ soll der Mai täglich neue Informationen für PHP-Interessierte bieten. Im Unterschied zu seiner vorigen Initiative bezieht Esser jedoch nun die Community mit ein. In einem Aufruf auf der Projektwebsite bittet ...
  • PHP – Zugriff auf den Namen einer Child-Klasse Wer innerhalb einer Klasse (z.B. einer generischen Singleton-Klasse im Destructor (__destruct()) auf den Namen der Child-Klasse (die erbende Klasse) zugreifen muss/möchte, der wird feststellen, dass __CLASS__ an dieser Stelle (so wie es auch sein sollte) den Namen der Klasse die die Methode enthält (in diesem Beispiel die generische Singleton-Klasse) beinhaltet (Generic_Singleton). Möchte man aber ...
  • Debugging PHP in Eclipse mit Xdebug (Zend_Debugger) Ich bin gerade mal wieder über ein sehr gutes (Anfänger) „HowTo“ gestolpert. Diesmal kommt es aus dem Hause IBM und trifft genau auf meine (perfekt abgestimmte) Konstellation von Entwicklungswerkzeugen zu. Es behandelt das Debuggen von PHP-Skripten innerhalb der Eclipse IDE (PDT oder Aptana) mit Xdebug oder zend_debugger. Das HowTo ist in englischer Sprache verfasst und ...
  • Cheat-Sheets für PHP, CSS, JavaScript, mod_rewrite, SVN … Unter www.addedbytes.com/cheat-sheets/ findet man die Cheat-Sheets genannten Schnellreferenzen zu sehr vielen Programmiersprachen und auch mod_rewrite. Ich habe mir einen kleinen Überblick verschafft und muß sagen, die Schnellreferenzen sind echt gelungen. Meine Wände sind nun neu dekoriert! Für jeden der Informationen nicht nur digital oder in Form von Büchern bereithalten möchte sicherlich sehr interessant. Aktuell gibt es ...
  • PHP – WideImage image-manipulation-library WideImage ist eine objekt-orientiert in PHP5 geschriebene Bibliothek zur Bildmanipulation. Es handelt sich bei WideImage um eine reine PHP-Bibliothek die ohne externe/zusätzliche Bibliotheken/Tools außer der GD2 extension funktioniert. Ein Großteil des Code ist unit-tested mit Simpletest und die Bibliothek ist E_ALL + E_STRICT konform. Sie wird aktiv in Produktivumgebungen eingesetzt und es gab seit ihrem ersten ...
  • Dateien ausliefern mit PHP Bei den Recherchen zur Auslieferung von Dateihäppchen habe ich das PDF Deliver Files With PHP von Thomas Weinert (papaya CMS) entdeckt, welches wirklich einige sehr interessante Informationen zur Auslieferung von Daten (Dateien) mit PHP beinhaltet. Das Material wurde auf der International PHP Conference 2008 präsentiert und ist meiner Kenntnis nach immer noch aktuell. Wer Interesse ...
  • moovrelocator – qt-faststart / QTIndexSwapper für PHP In einem Projekt, an dem ich aktuell arbeite, setzt man auf PHP-basiertes HTTP-Pseudostreaming. Innerhalb der zu entwickelnden Anwendung können Videos hochgeladen werden, welche dann mittels FFmpeg zu MP4-Dateien konvertiert werden. Genau an diesem Punkt liegt auch schon das eigentliche „Problem“, da das für das HTTP-Pseudostreaming (progressiver Download) benötigte MOOV-Atom (das sind die Metadaten in MP4-Dateien) von ...
  • HTTP-Pseudostreaming von Videodateien Eigentlich lassen sich MP4-Dateien mit H264-Codec nicht über das HTT(P)-Protokoll streamen. Stimmt irgendwie nur teilweise, denn man bekommt es mit viel Mühe und über einige Umwege doch hin! Dies ist dann aber wiederum mit einigen Einschränkungen verbunden, wie z.B. der fehlenden Möglichkeit im ungebufferten Bereich zu „seeken“. Doch wie macht Youtube das dann … Generelle Informationen Ich verwende folgende ...
  • PHP merge_array() PHP bringt bis einschließlich Version 5.3 sage und schreibe 77 dokumentierte Array-Funktionen mit und mit keiner lässt sich diese einfache Operation durchführen: Verschmelze (merge) zwei Arrays Nehme das erste Array ($array_1) als Ziel (zu ergänzendes Array) Nehme das zweite Array ($array_2) als Quelle (ergänzendes Array) Wobei kein komplettes Ersetzen eines Keys erfolgen soll, bei Vorhandensein doppelter Keys sollen die ...
  • PHP Coding-Standard Es gibt mittlerweile unzählig viele Entwürfe von Coding-Standards, angefangen bei den wohl bekanntesten, den PEAR-Coding-Standards, über die Zend-Coding-Standards, bis hin zu verschiedenen Ergänzungen der übrigen Framework-Entwickler und einigen wenigen Eigenkreationen.  Fehlte es doch bisher an konkreten Ansätzen, die verschiedenen vorliegenden Entwürfe gemeinsam in einem finalen/konkreten und allgemein gültigen Entwurf zusammenzufassen, scheint jetzt ein wenig Bewegung ...
  • PHP – Simple aber effektive Performance-Tipps Nicht mehr so ganz aktuell aber auf jeden Fall einen Blick Wert! Das Video zeigt grundlegende Tipps zur Optimierung des PHP-Codes – schaut einfach selbst: Ggf. hilft euch dieses Buch ein wenig die Performanz eurer Web-Anwendung ein wenig zu optimieren. Ganz nebenbei ist es ein guter Leitfaden für den Einstieg in die professionelle Softwareentwicklung mit PHP. Sibg0T3wKs4
  • FFmpeg kompilieren (Linux) Ein FFmpeg-update wird benötigt und wieder mal keiner da, der FFmpeg aktualisieren (kompilieren)  kann – außer meiner Wenigkeit. Immer wieder kommt dieses Thema bei uns auf: FFmpeg und FFmpeg-PHP müssen aktualisiert werden – sei es um bekanntgewordene Bugs zu beseitigen, die Performanz zu erhöhen oder aber neue Codecs zu unterstützen. Jedes Mal wenn dies der Fall ...
  • PHPBench (marking) – Schneller ans Ziel Jeder der schon mal mit der PHP-basierten Backend-Entwicklung im Enterprise-Bereich in Berührung gekommen ist, kennt sicherlich die verschiedensten Ansätze die Performance einer Applikation zu optimieren. Wie in fast jedem Bereich, gibt es auch zur Optimierung stets mehrere Wahrheiten. Abgesehen von der „pre- oder postincrement?“-Frage beschäftigt sich die Seite die ich aufgetan habe mit konkreten Beispielen ...