Tuesday, August 26. 2008

A few months ago I attended the Dutch PHP TestFest. It really shoud have been called the Belgian/Dutch PHP TestFest, since about half of the people there were from the Belgian PHP user group. One of them, Felix de Vliegher, even got a PHP CVS account because of the amount and quality of his tests. All in all, the TestFest was a great succes.
Last week the Belgian PHP User group held their second meeting. Because the venue was fairly close to our office in Vlissingen, some of us decided to have a look. We were early, so there weren't many people yet, but soon the room began to fill up and in the end there were a little over 30 people. Not bad, given that this was only the second meeting.
Continue reading "PHP Belgium meeting"
Tuesday, August 19. 2008
Let's kickstart this blogpost by defining what an iterator actually is. According to wikipedia, an iterator is: "an object which allows a programmer to traverse through all the elements of a collection, regardless of its specific implementation." A collection can pretty much be anything. The most obvious sources would be arrays, but other than that, iterations can be done over database resultsets, strings, datetime intervals, directories, file content and XML listings, to name a few. The real benefit of using a standard iterator implementation, is that every implemented iterator does its job obeying a standard interface. Whether said collection is a database resultset or a directory structure; it can be iterated using the same method names. And that's neat, because it will save us developers a trip to the manual on many occasions (... yeah it does... just admit it... ).
Continue reading "Implementing Iterators"
Thursday, August 14. 2008
In raising the question about whether a specific programming language is agile I want to avoid exploring what makes a language agile, or comparing PHP with other languages. The intention here is not to associate PHP to agile as a natural relationship, as much as to try and understand if we can find the ingredients in the PHP world, for creating an agile environment.
Agile in the context of software development is no more than a set of principles and values as they were identified by a group of people (The 17 Agile Manifesto's signatories) who were then developing software in ways that somehow contrasted with the traditional processes. They had introduced into their development, practices which focused on delivering early and often, favoring constant feedback and change, low overhead, reduced ceremony and flat hierarchy.
Continue reading "Is PHP an Agile Programming Language?"
Tuesday, August 12. 2008
Recently a colleague stated that in theory, caching could be considered 'evil'.
Now 'evil' is a very broad term which is used a lot in the IT community, but what does it really mean when we're talking about technical solutions?
I asked around, but couldn't find a clear cut definition, so I went searching...
Continue reading "The definition of evil"
Monday, August 11. 2008
In May, I helped organize the Dutch PHP TestFest in my position as board member of the Dutch PHP User Group. This dutch event, which was sponsored by Ibuildings, was part of the global PHP TestFest initiative, which aims to get a higher test coverage for the PHP language and with that stabilize the language even more - something that will benefit all users of PHP. Back in May, we already deemed our event a big success with 10 attendees, a great presentation by Sebastian Bergmann and a huge number of tests written. But it turns out to be an even bigger success...
Continue reading "Dutch PHP TestFest - A Big Success"
Thursday, August 7. 2008
Who doesn't like to have weekends that last for seven days, each week? I've just read a book written by Ricardo Semler, it's called " The Seven Day Weekend". I have to say, it's really inspiring!
Ricardo Semler is the owner of Semco, an organization that is globally known for its non-standard way of working. Semler has divided the book into five parts.
Continue reading "Book Review: The Seven Day Weekend"
Monday, August 4. 2008
Following the success of our two PHP seminars in London, we have decided to make it a tour and to visit other parts of the UK and Ireland as well. Next up are Leeds and Dublin - come and meet us in your city! Find out more about our events below.
Early-Bird Offer: Sign up for any of our events by 15th August, and receive a free copy of the new php|architect book on Enterprise PHP Development, written by our CTO Ivo Jansch!
Continue reading "PHP Events in the UK and Ireland"
Thursday, July 31. 2008
Migration from CVS to SVN is often described on the repository server side only. When migrating you would normally delete your CVS working copies and check out a fresh one from SVN. However in case of a live website you may not want to reinstall the entire working copy (including locally changed configuration files and unversioned files). Reinstalling the website may cost time, increase server load and cause website downtime.
To overcome this problem you can convert the working copy from a CVS working copy to an SVN working copy, by replacing the CVS meta data with SVN meta data directories in your working copy:
Continue reading "Client side migration from CVS to SVN"
Tuesday, July 29. 2008
The official stable release of symfony 1.1 is now nearly a month old, and response so far has been fairly positive. This is not surprising, as this new version adds a lot of flexibility to the already flexible system that symfony offered. Let's have a look at symfony 1.1, and specifically to the points that I feel are especially exciting in this new release.
Continue reading "Symfony 1.1"
Sunday, July 27. 2008
Among the standard object oriented principles is favouring composition over inheritance, and there are plenty of design patterns that work along this line. However, one of the most useful day-to-day facets of the idea doesn't seem to get a lot of attention from PHP developers, namely dependency injection. The general idea is, that if your class depends on some other object, that object should be passed in rather than generated internally or retrieved via a global variable or singleton.
Continue reading "Dependency Injection and Zend Framework Controllers"
|