Hacker News new | ask | show | jobs
by wwweston 2706 days ago
The PHP world clearly had some Java envy rolling into the 4 to 5 era. The problem with that was less that PHP was trailing Java (although that was true in some real respects) and more that people seemed to be assuming the problem with PHP was that it wasn't using enough high ceremony and design patterns that existed to solve problems for static/manifestly typed languages (and PHP, like other dynamic/scripty languages, had different solution idioms for). Writing Java in PHP really was/is suboptimal.

The popularity of Ruby/Rails and to some extent Python and node did a lot to shine a light on the productivity possibilities of embracing the dynamic/scripty side -- at its furthest edge, you can see this in how Java has changed and brought in some of the strengths from the dynamic/scripty world. But also I think it started a good part of the PHP world down the road of thinking about what the actual problems with working in PHP were and working on those.

I'm not going to enumerate PHP's strengths because I'm (a) weary of doing so and (b) have decided for the moment it's possible there's more value in keeping the various possible competitive advantages quiet. But suffice it to say that PHP has always had strengths (along with its real weaknesses) that a lot of the dev world seems astonishingly blind to, so it's a misunderstanding to think of past versions as nothing worth building on. Filing off some of the warts, adding helpful and convenient features, and bringing performance back towards first in class rather than buying into enterprise cargo culting has really given it a boost and even made it more fun.

It's definitely not the right tool for every problem/project, there are still things missing from the language that I sometimes wish I had when using it, but it's great for a certain class of web applications.