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.
Be the first to get Modern Object-Oriented PHP!
Long to learn how you can develop modern applications using object-oriented PHP? Curious about how to apply all these best practices to your code?
Modern Object-Oriented PHP is a brand-new book focused on teaching you the techniques you need for writing modern, well-designed object-oriented applications!
The book lands in April. Sign up today for a sample chapter plus special launch day discounts!