Comfortable PHP Editing With VIM -7-
I finally managed to re-work my VIM setup completely, so it's time for an updated. First the sad news: VIP (VIM Integration for PHP) is dead. To relativate this: I still provide my current VIM setup via Github to deal for you as an inspiration. For more compensation I also have a good news: I rewrote PDV - phpDocumentor for VIM completely and it now nicely integrates with current plugin managers. Its code is now way cleaner and maintainable and it has some fancy new features like templating support through my Vmustache implementation and support for making the generated doc blocks UltiSnippets snippets for even more ease in editing them (waving to Textmate users).
PHPBNL: Testable Code & SOLID
PHPBenelux was, as usual, the first conference of the year and, also as usual, it was a really great conference. As a 3rd "usual" thing, I did a tutorial and a talk there: On how to write Testable Code and to Make Your Project SOLID by applying these 5 fundamental principles of object oriented design to your code.
Abstract Classes vs. Interfaces
Features of object oriented languages are often use from a purely technical perspective, without respect to their actual semantics. This is fine as long as it works for you, but might lead to problems in the long run. In this article I discuss the semantical differences between abstract classes and interfaces. I also outline why following the semantics of those language constructs can lead to better code.
Eine Billion Dollar & BLACKOUT - Morgen ist es zu spät
Zwei Bücher haben mich in letzter Zeit insbesondere gefesselt, die ich an dieser Stelle kurz vorstelle: Eine Billion Dollar & BLACKOUT - Morgen ist es zu spät.
Browser SOA / HTTP Debugger
Did you ever try to debug a system with multiple interacting web services? We just released a tool, which we developed internally to be able to debug complex HTTP based SOA stacks (REST). It offers the same listening capabilities like Wireshark, but displays the HTTP requests in a far more readable way and makes it easy to reproduce single requests. Read more…
Object lifecycle control
From time to time I trip over APIs, which do not allow me to control the object lifecycle of the used objects myself. Let me discuss why this is a bad thing…
Struct classes in PHP
Struct classes offer you type safe data transportation in PHP, in contrast to arrays used like hash maps. This practical blog entry shows you how and why.
Testing file uploads with PHP
An extensive tutorial on how to test file uploads in PHP using PHPT and PHPUnit.
Apache Zeta Components: Doing mail right
The Apache Zeta Mail component allows you to send and receive complex emails very easily. This article shows you practical examples to see how it works.
Apache Zeta Components [Was: eZ Components]
The eZ Components project can now be found under the hood of the Apache Incubator as Apache Zeta Components. I wrote a status update article to inform you of the state of the project migration.