So for part of my development at work, I have been looking at the various PHP frameworks there are around and trying to find something that I can not only use at work, but also use at home for my own sites.

Now I do a little PHP and it is my aim to one day be the front end “that is better than most back enders at back end stuff” coder, but that day is many moons away. In the meantime I have tried and looked at the hype about a few MVC style PHP frameworks.


Symfony logo.{.external}

This was recommended by Manda Poo, my former colleague. Her new company Blu Halo use this and apparently to superb extent according to their web site, which utilised the framework (Blu Halo{.external}). They also use jQuery superbly, but that’s one for another blog. Blu Halo do have a quite excellent web site there. Pretty much a perfect example of what I want to do at Gyro (I’ll be lucky, Virgin Atlantic is a little heavy on my time right now…).

I found Symfony to look a powerful and all round excellent framework. Some massive sites have used the framework, as well as Blu Halo mentioned above, for example Heriot-Watt University{.external}, ASDA (press release source){.external} and Shoot magazine (brilliant){.external}. I did have a few issues with local development, using the command line PHP interface and getting it to work with WAMP. Incidentally I just found a load of solutions, a little too late unfortunately. I must try harder to work through things next time!


CakePHP logo.{.external}

Next was Cake PHP and I found pretty much the same as above, but without a personal recommendation I kept going back to see what I could see about Symfony, hence only spending a little while with Cake PHP. This is quite possible the most useless review of anything ever.

I’ll try Cake again, but not quite yet!

Code Ignitor

CodeIgniter PHP Framework logo.{.external}

This has proved to win the competition to be come my current obsession. From seeing the ease of install (upload – that is it!) to the simple database set up and querying I have quite literally got stuck right in. Hopefully over the next few weeks I won’t find any problems with it because it would be heartbreaking.

The best bits I have found in very limited experience of CodeIgniter are that the organisation of the framework is excellent, the way the MVC works and the code helpers are clear, without any experience of them, is brilliant.

I also briefly looked at KohanaPHP{.external}, which is based on CodeIgniter and I think it probably is the way forward, if it is as flexible as claimed (which it appears to be). The choice cam down to the fact CodeIgniter had better tutorials and support to unfortunately.

Obviously not being a back end specialist and an especially insecure programmer, I need more input on what might work as a development tool at Gyro. There is always the chance we don’t need one at all, but if we want to be considered a serious digital agency, then we better get in line and use the powerful frameworks. Not that there is anything “wrong” as such with the current set up, but surely better is, erm, better.

I think I will go with CodeIgniter for the back end of my next web site incarnation, but when I get a little more experienced with OOP I reckon I’ll go back to Symfony. Only time will tell.

ASP.NET will never be mentioned in a blog here, expect then, because it smells.

Warning – Philosophical comment below…

Yesterday I thought about what I might have made of myself if I had either staying in the call centres or really pushed to be a teacher. I thought call centre manager would be about right, at LEAST whereby teaching would have been a struggle to get up the ladder. Then I realised what I have already accomplished with only 4 years of web programming experience. Building Xerox, T-Mobile, SportsAid and Tate and Lyle web sites. Even coding Virgin emails most days is a feather in the cap – especially as I seem to be the only email author that can make emails almost perfect in every client, even Lotus Notes 5. The best bit is I will only get better, so I’m not thinking about what I could have done any more, but thinking about what I will do for the Internet and myself in the next 10 years.