Excited About PHP Again
Out Of Date Warning
Languages change. Perspectives are different. Ideas move on. This article was published on February 2, 2012 which is more than two years ago. It may be out of date. You should verify that technical information in this article is still current before relying upon it for your own purposes.
Ten months ago when I started at Mozilla, I began transitioning away from PHP and into Python and Django. This was inevitable: the Mozilla Webdev team favors Python over PHP in almost every webapp (Socorro is the critical exception). However, over time I had become disillusioned with the direction that PHP was taking. The project seemed stalled, lost in the woods, drifting on a sea of uncertainty.
PHP has a lot going for it. It still runs huge chunks of the web. PHP 5.3 revolutionized many parts of PHP, improving Windows performance 40% and overall performance 5% – 15% over previous benchmarks. It introduced tons of new features, lining PHP up against some of the best web languages available. PHP 5.4 continues to build on this accomplishment, adding traits, improving speed and reliability, creating new ways to test code, and improving on the features introduced in PHP 5.3. The future is bright indeed.
Rasmus also answered many of my long-standing questions about the project: why it’s loosely typed, why we don’t allow type hints for interchangeable types, and about the overall intent of the project when he first formed it. Over time, the language has changed, but it remains true to it’s foundations as a web language, and it powers an enormous chunk of the web as a result.
The coming release of PHP 5.4 seems like a turning point in the overall development of the language, and I’m excited about the new features that are coming. While it won’t address every concern I have about PHP or even introduce all the features I think are critical, it does show movement in the right direction.
Learning design patterns doesn't have to suck.
Design patterns open a whole new world of possibilities. So why are you avoiding them? This brand new book will help you finally understand these wonderful programming techiques!Learn design patterns TODAY »