I don't like PHP very much. Here are some interesting posts of people that have the same sentiments towards this language: "What I don't like about PHP"
, "Why PHP sucks"
, and "Experiences of Using PHP in Large Websites"
Well, a few days ago the head of an IT company in the area was in distress. I met with him and he told me that he needed a web application in a matter of one or two days, otherwise his client would - and I quote - "rip my head off". The budget was tight and I actually didn't have much time to take on this project either. But I thought that it's a challenge and it's doable. So I had to figure out a way to get this done ASAP. I haven't worked with Ruby on Rails yet (except for a tutorial), so that wasn't an option, Java would have been overkill for this small web application especially considering the very tight time frame. I didn't want to have to set up a lot of stuff on their server and I knew it was a LAMP production environment. Using plain old PHP also wasn't really an option for me: The project was supposed to be extended later on... so a self-made PHP solution is very likely to become an unmaintainable monster.
So what I did was to google for "PHP on Rails". What I found was an article on O'Reilly about a "Ruby on Rails inspired PHP Framework"
. I read the tutorial and knew that this was exactly what I was looking for.
I set up my development environment with MAMP
, downloaded CakePHP and - after a short learning curve - started developing. CakePHP offers a beautiful Model-View-Controller way of developing. You define your models and don't have to write a single line of SQL. Everything is beautifully and neatly divided and you can rapidly start developing.
Setting everything up, learning CakePHP while developing and finishing the web application way ahead of time all took me no more than 13 hours. My client is happy with the result, so is my client's client and so am I.
So if I ever have to use PHP again, it won't be without CakePHP!