Immer wieder gibt es eine ganze Reihe von Projekten, bei denen man als ethisch denkender Mensch niemals seine Unterstützung geben würde. Gerade, wenn es darum geht, dass mit einem Projekt anderen Menschen Schaden zugefügt werden soll, wäre die Frage doch eher, ob solch eine Entscheidung wirklich den eigenen, moralischen Zielen entgegen kommt. (more…)
19.01.2010
10.01.2010
PHP und seine Datenbank-Schnittstellen
Für ein kleineres PHP-Projekt meinerseits brauchte ich eine Anbindung an eine Datenbank. Da die Resourcen recht knapp auf dem System sind, ich aber eine Reihe von Dingen im Hintergrund erledigt brauche, habe ich mich ein wenig umgesehen, was PHP bietet, bzw. welche fertigen Libs es gibt. Anforderungen waren dabei bewusst einfach gewählt: Die Bibliothek der Wahl musste Prepared Statements unterstützen, sollte schlank sein und eine abgerissene Datenbank-Verbindung automatisch als solche erkennen und wiederherstellen können. Wie so oft bei PHP waren die meisten Implementierungen entweder zu aufgebläht, oder aber erfüllten die anderen Bedingungen nicht. (more…)
01.01.2010
QuineRelay
Quines sind Meisterwerke, die man wie topps? Ja: Mit einem QuineRelay! GeekFaktor Googol IMHO 😉 Die Kategorien „Zu viel Freizeit“ und „Lange Weile“ lass ich mal unbeantwortet 😛 Respekt!
15.12.2009
Styling GeSHi output
When highlighting source for your website you often want to make it use a common style accross languages or want to provide multiple themes for one language. In this short howto I want to give some details on how you can actually do this. (more…)
13.12.2009
Some updates on developement
Many might have wondered why there hasn’t been any official release for quite some time and well, that’s a somewhat complicated story to tell. But let’s start with the easy parts. (more…)
05.12.2009
Besonderheiten beim Linken mit GCC
Manchmal sind Programme wie der GCC selbst für gestandene Entwickler ein Rätsel. Nehmen wir ein beliebiges, einfaches, ggf. etwas größeres Projekt, dessen C-Source zu compilieren ist. Nimmt man jetzt noch an, dass dieses Projekt mehrere Module beinhalten kann, so bieten sich ja eigentlich Libraries an. Handelt es sich dabei um ein Projekt, bei dem dynamisches Linken nicht möglich ist, so sind sogar .a-Dateien (Object File Archives) eine gangbare Alternative – könnte man denken. Aber gut. Selbst als gestandener Entwickler wird man immer wieder von seinen Tools überrascht. (more…)
10.09.2009
Templating in 1000 Lines of Code
Ich weiß, es gibt bereits viele Templater, aber die meisten scheitern entweder an einfachsten Aufgaben, oder sind zu überdimensioniert oder anderweitig zu Speziell für bestimmte Anforderungen. Daher mein Einwurf für die Diskussion um einen Templater: das Projekt 1kLOC Templater ist ein Versuch, einen flexiblen, performanten, aber gleichzeitig kleinen Templater zu schreiben. (more…)
26.08.2009
PHP: Extensions schreiben leichtgemacht
Eigentlich hat mal wieder alles wie üblich harmlos angefangen. Eigentlich ging es mir nur darum, die Funktionen von RRDTool in meinen Scripten nutzen zu können, ohne auf Prozesssteuerbefehle wie system, exec, popen & Co. zurückgreifen zu müssen, da diese auf meinem Server aus gutem Grund deaktiviert sind. Dafür begab ich mich nun auf die Suche, ob es für PHP ggf. bereits eine entsprechende Extension gibt und wurde auch recht schnell fündig: Für PHP4 hatte bereits vor mehreren Jahren jemand sich die Mühe gemacht und eine entsprechende, kleine Erweiterung geschrieben. Glücklicherweise ließ sich diese (nach Download der benötigten Header) auch problemlos für PHP5 compilieren. Da die Dokumentation wie üblich aus dem bestand, was der C-Compiler zu gesicht bekommt, hab ich natürlich einen Blick dorthinein geworfen und musste feststellen, dass eine Reihe von Funktionen, insbesondere das Dumpen von RRD-Files, das Lesen von Infos und ein paar der neueren Funktionen von RRDtool bisher nicht über die Extension ansprechbar waren. (more…)
22.07.2009
RRDTool für PHP
Mehr oder weniger aus eigenem Interesse habe ich die Tage einmal nach einer Möglichkeit gesucht, die Funktionalität von Mailgraph und Bindgraph, die auf meinem Webspace werkeln, mit einem eigenen PHP-Skript nutzen zu können. Diese Scripte nutzen beide RRDTool, also so ziemlich der Standard in dieser Hinsicht. Bindings sind auch für Python und Perl vorhanden – jedoch für PHP gibt es kein offizielles. Durch einen Blogeintrag bei IONCANNON, der zugleich eine einfache Einführung in die Nutzung gibt, bin ich auf einen etwas älteren Versuch aufmerksam geworden, mit dem jemand eine solche Möglichkeit geschaffen hat. (more…)
10.07.2009
Konsequent inkonsistent
PHP ist eine wunderbare Programmiersprache … zumindest für Masochisten. Wer zudem noch auf Inkonsistenz steht, hat spätestens mit PHP eine verlässliche Quelle für tägliche Überraschungen zur Verfügung. Wer das nicht glaubt, sollte sich PHP einmal anschauen: Hier also einmal ein Einsteiger-Kurs, für alle die, die schon immer eine Sprache haben wollten, die mehr Ausnahmen wie das deutsche Steuerrecht besitzt und komplizierter wie Brainfuck zu programmieren ist. Gut: Beides war vor PHP da, von daher könnte man maximal schlechte Immitation konstatieren, aber selbst das passt zur Sprache an sich ja bereits mehr als treffend. (more…)