Tuesday, November 18, 2008

How to choose a PHP Framework (Comparison)?

First of all, there is more than a dozen of PHP framework available nowadays (it’s bad that it make decision making more difficult; it’s good that it makes them more competitive). So, how do I know which one is better?

Firstly, I would go for some overall reviews (but most of them are outdated) and feature comparisons, where the established one would usually have more or less the same feature (but it helps me to pick the top 3). Personally, I think it's the style, syntax, approach and "feel" rather than pure features that sell the framework. I think Rail-styled (MVC) and lighweight framework (with flexibility), and simple syntax (easy to use) is the current trend. I am not very fond of Templates (used php for god sake, why restrict yourself!), a little bit of ORM is good (not too much though).

Secondly I need to use Google Trend to find out which is more popular to ensure support and long term continuity of the product.

Thirdly, I need to dwell compare between the top 3 framework, such as CodeIgniter vs CakePHP, CakePHP vs Zend, CodeIgniter vs Zend, and etc.

Forthly, I will dwell into areas which I am specifically concern and emphasis, such as flexibility, performance and etc.

Finally, give it a spin to at least 2 of them to get a feel of it (the begginner's tutorial play a very important role for new recruit).

Once you are hooked on one of the framework, it would be too late to change due to the learning curve and effort invested to develop codes for the framework. For better or worst, I am married to my choices made years ago.

About 2 years back I had chosen CakePHP, which had work pretty well for me so far (except that I am bugged by the performance comparison review lately, but I am hopeful the built-in caching would help to solve that). Perhaps CodeIgniter is the new ace, but CakePHP is pretty well established, and I dislike the style of Zend Framework.

Monday, November 03, 2008

Book Review: The Alchemist

The Alchemist is a light book to read about purpose of life and spiritual told as an adventure story. I read this during my Nepal’s Annapurna Circuit trip, and it’s a good and interesting read.

Different people might have different interpretation and interest about the book, but I think it is mostly about listening to our heart to decide on what to do with our life. The story revolved around a boy who don’t want to be a farmer like his father, and decide to be a Sheppard to travel to places. Along his travel he met with people and discover about his destiny (or being told about his destiny), and he decide to go for it. He sell all his goats (stop being a Sheppard) and embark on his journey. In between there are must doubt and challenges, and quite a few setbacks and interesting encounter. Every time he is in doubt, he will have to listen to his heart and to the world again; or pick up one of his two stone to help him decide. He made money being a jeweler seller, offered to be councilor of the oasis, being rob and hit and almost killed, travel a few thousands mile only to realize what he is looking for is actually back where he started.

I guess the destination or the end is not really the main point, but his journey: the people he met, the lesson he learn, the adventure he had and the decisions he made make him who he is at the end. Though he is hunting a treasure as part of his “destiny”, but the treasure seems to be the least important part of his journey.

I guess we always wonder what we should do with our life: what should we work as, who is our soul mate, what is our destiny and should we listen to our heart (our inner desire). In the pursuit of money for a more comfortable life, we may have to let go many things; perhaps we should ponder is there a slightly better way to live our life besides following the majority or social norm. It might not be easy or clear; but is the will to explore slightly further and perhaps embark on an adventure of a lifetime.

How would our life be if we continue what we are doing today? Is there a need for change? How can we change? A little pondering and a bit of action could go a long way; it’s inaction and giving up that I am worry about.