Archive for the ‘Reviews’ Category

php|tek 2008: day 1

Thursday, May 22nd, 2008

Yesterday the php|tek conference officially started.

Andi Gutmans, co-founder of Zend, presented the opening keynote. He started by responding to the news about the lay-offs in their R&D team. I already blogged about this response yesterday so I won't go into it again.

Andi also had some Zend Framework news. They have been working with the Dojo (a javascript framework) team to integrate the two frameworks. Details on this can be read on Andi's blog.

The rest of Andi's keynote was the more or less standard 'current state of PHP' which, if you don't follow the PHP news too closely, is a nice overview of what's going on in PHP and Zend land.

Next, I visited Stefan Priebsch' session called '50 reasons to use PHP5'. I thought I already knew most of the reasons to switch to PHP5, but Stefan managed to come up with 50 distinct reasons. Pretty impressive. If I hadn't already switched a long time ago, Stefan surely would have convinced me with this talk. I mainly wanted to see Stefan as he will be speaking at our Dutch PHP Conference in June, where he'll do a talk on what's new in PHP 5.3 and PHP 6.

The next talk I planned to visit was Paul 'KISS' Reinheimers' session on maintaining statefulness in Ajax applications, but the room was so crowded that people even sat on the floor, so I went back to 'the corner' to check up on e-mail and had a chat with Elizabeth Naramore, the editor of my upcoming book.

Then we had a nice lunch buffet with various types of food but unfortunately no brownies this time. :)

After lunch, I skipped a few sessions to go to Hopeless Joe's with Chris Shiflett, Elizabeth Naramore, Luke Welling, Christian Wenz and Cal Evans to celebrate Chris's birthday and watch the final of the European Champions League. Our CEO at Ibuildings is a big Manchester United fan so I had to be in favour of Manchester, and after a long match that ended in penalty kicks, they won.

We got back just in time for Scott MacVicar's talk on image manipulation with Imagick. Seam Carving is an interesting technique for scaling images while retaining the interesting parts, and always works well in presentations. People who haven't seen it before are usually awed by it, as was the case in Scott's talk.

When the last talk was over, we went back to Homeless Joe's to have diner, during which Terry Chay arrived on the scene who demonstrated he's about as passionate about anything as he is during his talks. I'm looking forward to his closing keynote tomorrow.

Next up was the Rockband Contest. This was awesome. Geeks rocking like crazy, and a crowd going wild at a contest presented by Paul Reinheimer, dressed for the occasion. This evening got a lot of pictures on flickr that people would probably not want any future employer to find. :-) (oh, and finally Scott managed to launch the elephpant with a parachute from the 10th floor of the hotel; evidence will probably shortly be posted on the tek08 flickr stream.)

The evening ended with a visit to Harry Canary (or at least a bar that sounded vaguely like that), and when a few people went over to Shoeless Joe's to continue the party into the night, I finally went to bed.

It was a great day!

php|tek 2008: day 0

Wednesday, May 21st, 2008

Today is the first day of php|tek 2008. Here's a short review of yesterday, the pre-conference tutorial day.

In the morning, I sat in on Christian Wenz' Ajax tutorial. It was a basic introduction into javascript and ajax, so it was a little bit more basic than I had anticipated, but I had the chance to work on my backlog of emails. What struck me was that more than half of the audience was from various countries in Europe; most notably Scandinavia. The session that had the largest audience was Ben Ramsey's ZCE crash course.

In the coffee break, a whole case of PHP Elephpants (Oracle edition) had been kidnapped. Sean Coates and Paul Reinheimer, in charge of handing them out, at first didn't even notice they were napped. 'Wow, we already gave away all our elephpants.'

Around noon we had a nice boxed lunch which contained a nice turkey sandwich and a brownie. I love brownies! During lunch, more evil plans involving elephpants were drafted. If you love your elephpant, keep it safe in your hotel room today. :)

After lunch, I couldn't decide if I wanted to listen to Luke Welling talking about social networks or to Sebastian Bergmann on Selenium, so I ended up not going to either, but instead hang out in what has informally been dubbed 'The Corner'. An interesting observation is that PHP geeks, when put together in a room, seem to have 2 communication ways going on simultaneously. Some actually talk, some just chat on IRC, some do both. Pretty weird sight sometimes. :)

When the tutorial day ended, arrangements were made to go out for food. Ligaya Turmelle showed natural leadership and made a reservation at a local pizza place, for 15 people, at 18.00h. Morgan Tocker bribed the hotel's airport shuttle into driving us to the pizza place, with a little more people than expected: we managed to cram 26 people into a 15 people minivan (someone took pictures but they're not up on flickr yet). Everything went fine, and the pizza place was a little overwhelmed that we were not only 26 instead of 15, but also an entire hour early. We also seemed to have left 2 guys behind at the hotel, who had to take cabs, but eventually we had a very nice dinner.

A lot of beer, ale and Chicago pizza's later, the hotel shuttle came back to pick us up.

Back in the hotel, plans were made to visit Shoeless Joe (rebranded to Homeless Joe or Shameless Joe by the tek attendees), a bar across the street. To get there, you have to play 'live action frogger' (crossing a 6 lane busy highway). I planned to join but instead was invited by Marco Tabini and his php|architect partner Arbi who were just going out for dinner, so we could have a chat (about Top Secret Stuff that I'm not allowed to talk about just yet ;-)). As I was still stuffed with Chicago pizza, I had a beer and a nice chocolate desert (I love chocolate!).

When I got back to the hotel, I went online to check where everybody was at, but actually fell asleep during the process (I'm still not entirely on Chicago time).

And now it's about 8am; time to get ready for the official opening of php|tek 2008 by Andi Gutmans.

php|tek 2008: day -1

Tuesday, May 20th, 2008

About 24 hours ago I woke up to drive to Brussels for a long flight to Chicago. The fact that this was 24 hours ago is beginning to show: I'm randomly falling asleep even in noisy underground trains.

But it's been a fun day. The flight was ok (watched national treasure 2 and ocean's eleven, both of which I've already seen but it kills time; and in between I read a book I'm reviewing). Getting from the airport to the php|tek hotel was only a short ride, and my room is huge: Separate living room and bedroom, 2 tv's even. (And perhaps a US thing: an empty fridge instead of a minibar).

Since I won't have much time to see downtown Chicago later this week, I went there this afternoon. Saw some nice things, had a nice diner, and went back to the hotel.

Right now I'm sitting in the lobby with a bunch of the people that are also hanging around in the #phptek IRC channel. With everybody having different IRC nicks and different twitter usernames, it's a bit difficult to know who's who though. Some people can easily be recognized from their avatar, but others look completely different.

There isn't much PHP news worth mentioning yet, but it's still only day -1. (Except maybe for the Zend news from today; I think Andi can expect some questions about that during his opening keynote on wednesday.)

In any case, I'm looking forward to the actual conference. Tomorrow is tutorial day. Still haven't decided if I'm going to sit in on the ajax, web services, social networks or phpunit sessions, or maybe just hang out.

Book Review: php|a’s Guide to Programming with Zend Framework

Friday, April 18th, 2008

I've recently read Cal Evans's Zend Framework book.

Before I voice my opinion, a disclaimer: I have met Cal personally; in fact I'm having diner with him next Monday, I'm writing a book for php|architect, and my company is a Zend partner. I could not be any more biased. :-)

If you still trust my judgement (and I will try to remain objective), read on.

First of all, the book is fun to read. I like Cal's writing style. He's able to teach stuff while keeping it light and funny. And that works; the book is never dull so it's easy to read in a short time frame. (I never read things in a short time frame though, still took me a month to read it, but that's me; not the book.)

The book first covers the important bits of ZF, such as setting up a ZF application, and working with views and the controller.

What I really liked was that Cal covers the Model properly. Recently there was some fuzz: the now infamous 'heckler at the phplondon conference' called framework authors 'criminals' because they called their frameworks MVC while they only provided Views and Controllers. Cal discusses how to use both a thin model (just a wrapper for the database) and a thick model (business logic) in a Zend Framework application. The book demonstrates, with example code, that you don't need a 'Model' class in the framework itself to work with a Model. A Model is application specific anyway, it contains the business logic of the application. This was refreshing. It was almost as if it was written because of the phplondon incident but the book was written well before that.

After covering all the important bits, some less important but nevertheless useful topics are covered: caching, web services and two-step views (layouts).

The book is full of code samples, and from the book's website you can download the sample code so you don't have to copy the code from the book manually.

Of course, I also have a little criticism. In some parts of the book, things are explained rather quickly. In particular in the web services part, I had to reread some parts a few times before I grasped them. I had the feeling that the rest of the book had a calmer pace, which made it easier to understand what was explained.
Also, there were a few bugs in the book, in particular spelling. However I must be careful to say that, my book might have the same issue. ;-)

Regarding bugs in the example code; Cal keeps track of them at the book's companion site, so if you run into an issue when running the sample code, first check the site to get the latest code.

All things considered, it is a useful, well-written introduction to the Zend Framework. I can recommend anyone who just started working with the framework, and anyone considering to use it, to read the book. It will not only show you how to get things done, it will also give some insight into how the framework works and why things are the way they are, and this greatly helps to understand the framework.