Hacker News new | ask | show | jobs
by malza 3349 days ago
Honestly. I think its main problem is it's not hipster enough. It's too popular. I bet if you made it difficult to use (for most people), added features that make certain aspects a nightmare to scale and gave it a weird name then it would do well here. Obviously don't let anyone know about the origin... say you built it at a series of obscure coding bootcamps.
4 comments

I think that's unfair, the reason PHP has a bad reputation is not because of silly hipsters. It's because for a long time it was a terribly designed language. It was a laughing stock for a good reason. The whole "hobby-grade templating language turned general purpose with complete disregard to how programing languages are designed" thing.

Now I'm willing to believe that it's improved a lot since then, but it's got a very bad reputation to overcome, and it's deserved. The languages seems headed in the right direction at least, maybe in a few years we'll forget what PHP used to be.

I'm pretty sure a substantial part of PHP's reputation is the nightmare code produced by PHP developers.
And that goes right into the whole "badly designed language" trope as well. Essentially, anything written in PHP prior to version 5 (and especially prior to version 4) should be considered suspect.

I'm a long time PHP developer (well, was until recently - my current position is in the javascript/nodejs stack arena), and have been using it since the v3 days (so not there from the beginning, but close enough). There were some truly awful examples and code practices out there.

That isn't to say you couldn't write quality procedural PHP back in the day (had you configured your server properly and stuck with "best practices") - it's just that the majority of people hacking on PHP didn't. I'm sure there were a few that did, though - but I'm hard-pressed to recall any at the moment.

Today's PHP is a much different beast than yesterday's. The OOP model and other advancements makes things so much better, provided they are all used properly and followed. Now - could you make PHP 7 as ugly as 3? Sure. But you'd be insane to do so unless you had no other choice...

Nail, meet hammer with claws on both sides.

It's entirely, 100% possible to write good, clean, tested, maintainable code in PHP. But most people working with PHP, for whatever reason (and I'm sure there are many reasons), simply don't bother.

I suppose the same can be said of all languages, but PHP devs are the worst offenders IME.

Agree with you, and let's not forget that JavaScript has similar origins.
Lets not forget that Javascript still has a lot of the issues that PHP has now finally overcome.
I haven't touched PHP in years, but I am hearing it's supporting stricter type checking, which is promising.
You hit the nail right on the head there.

Some of the nightmarish build configurations to get some Javascript projects going are just beyond belief.

It's unfortunate if you've encountered that because there's really no good reason for it. Thankfully now however most/all major JS frameworks & libs are moving to/have moved to 'zero configuration' cli tools (ember-cli, create-react-app, angular-cli, ...).
> I bet if you made it difficult to use (for most people), added features that make certain aspects a nightmare to scale and gave it a weird name then it would do well here

This is the same quality of vapid criticism that is often levied against PHP, just in reverse, all that's missing is a link to a 'fractal of bad design' type of post. I'm guessing you're going to try and justify your comment with some version of "well my criticisms are actually valid", but hopefully I'm wrong.

Mind you - that article is from 2012, and was valid criticism. In 2012. Quoting that today would be similar to "HURR DURR IE8 SUCKS COMPARED TO CHROME 57" ;)
On the contrary, I dislike PHP because I find it so difficult: its bad documentation, its badly designed standard API, the many badly designed and badly documented frameworks to replace the badly designed API, and the core language that goes out of its way to let buggy code through all combine to make writing medium-sized and above programs extremely difficult.

Supposedly it's better now. I'm skeptical.

I haven't used PHP for a number of years, but I have to disagree on the documentation. I found PHP's docs to be heads and shoulders better than other languages. It has expressive, sane examples, and allows comments that may help others with repeated questions regarding certain functionality.

Compare PHP with say, Python. Tell me which one you would rather refer to.

I'm with you on most of these, but disagree on the documentation. The main PHP code is quite well-documented, even from way back, which contributed to its popularity.
The docs are great--its the API that is badly designed in my opinion. It's not very intuitive or memorable. Take a look at string functions[1] for example. `count_chars` vs `strlen` and the list goes on.

[1]: http://php.net/manual/en/ref.strings.php