Hacker News new | ask | show | jobs
by dools 5107 days ago
If there are so many people depending on PHP and all the code written in PHP in all of Turkey, why doesnt someone in Turkey fix the problem?

Or anywhere for that matter?

There is no "they" in this equation. There is no person who should be held more accountable than you or I for fixing this problem.

The choices are simple:

1) Fix the problem

2) Find a work around

3) Don't use PHP

What's that? There is a lot of open source software that you wanted to use for free that's written in PHP that does just what you need except for this tiny little trivial thing that should be easy to fix? Well too bad!

Trade off the cost of fixing it against the cost of rewriting the big, free, open source package that's written in PHP you wanted to use, in the programming language of your choice, and stop complaining.

3 comments

It might not be an easy fix if you're not familiar with PHP's guts. It's the kind of fix that can induce a lot of unexpected regressions.

Not wanting to fix a bug because it's not worth the time or risks breaking backward compatibility is perfectly fine by me. But at least take a decision and say something.

If they don't plan on fixing it they should say something like "We believe this is a minor bug that only concerns a small number of users. In order to fix this we'd need to change X, Y and Z and make sure we don't introduce regressions. If you want to try and do it we'll be glad to review your patches. In the meantime you can use this workaround: [...]".

I hate it when I submit a bug report and it's being ignored. You also build a strawman argument with the "lot of open source software that you wanted to use for free". It's a bug and should be fixed (even if the fix is closing the ticket as "wontfix").

The "strawman" you're referring to was in response to this:

http://news.ycombinator.com/item?id=4188167

specifically the complaint that this problem manifests with lots of off-the-shelf software (although I suppose he didn't specify FOSS in his original comment).

However, I wasn't directly responding to that guy, I was more responding to what I feel has been aptly described as a "witch hunt" by others on this page.

It might not be an easy fix if you're not familiar with PHP's guts

10 years is a long time for someone to have the chance to get familiar with it.

Even if you assume that for 8 years, everyone was saying "oh, it will get fixed some time" even 2 years is a long time for anyone affected by this problem seriously enough to become familiar enough with PHP to fix the problem if that's the path that will produce the most value for them (ie. if there's enough value in some existing codebase or off the shelf software to warrant fixing this if there's truly no other workaround).

Still, I can see the sense in promoting major issues like this with PHP, but posting the bug report on the front page of HN is far less useful than, say, writing a blog post about it with some case studies of where the problem has been manifest, how people have dealt with it, the history of the bug, etc.

Actually that's a good blog post, might put it on my list ;)

You are the only reasonable voice on the matter I've heard so far. Infinite upvotes from me.

We all know PHP has its shortcomings, but there appears to be a witch hunt going on here.

We all know PHP has its shortcomings, but there appears to be a witch hunt going on here.

I think some of the witch hunt comes in attempt to steer people away from a language which is badly designed and has a million bugs which cannot be fixed without breaking most of the existing code written for the language.

Pestering a language like that is only fair.

While I'm sure it gets tiresome for those who for whatever reason have to work or prefer working in PHP, it is only a polite gesture to the software-developers who has yet to take that dark path.

If they can be dissuaded, they should.

> ...badly designed...

> ...and has a million bugs...

> ...cannot be fixed...

> Pestering a language like that is only fair.

> ...who has yet to take that dark path

Wow that's a lot of emotive language. Like the man said, witch hunt.

While I agree lots of that is emotive, it is hard to argue against the truth in 1. badly designed, 2. bugs, and 3. which cannot be fixed without breaking most PHP code.

The rest follows naturally. Anyway: Have an upvote for objectively dissecting my semi-objective analysis.

If someone started again and fixed those issues, would it rock?
Would it rock? Nah. It would merely make it less horrible. It lacks fundamental elegance and it lacks advanced capabilities. Even if fixed, it would still only be clinging to the crown of mediocracy.

But that is fine. Not all languages can or should be mind bending or define its own paradigm. So yeah, if all its problems was somehow in all unlikelyness fixed, it would be fine. It would be fine, but it would in no way "rock".

It would be a completely different language.
Yep, there's no need for language like that when dispassionate facts can get the point across just as well:

1. PHP contains a bug which makes class and function names containing certain letters, like I, fail when the code is run in certain locales.

2. This bug has been open for ten years and has not been fixed. It's not likely to ever be fixed.

3. Many similar bugs exist in the code base, due to the PHP team's approach to language design.

Granted it's horrible (I agree there), but it does solve a lot of problems rather quickly.

I'd argue that it solves the problems in the '00s that Visual Basic did in the 90's.

What I'd really like to see is a solution for '10s which fits that niche and is equally as productive, yet less horrible.

Who are you to decide that?

I am one of those who chose to work with PHP, and I'm getting more than tired about that witch hunt, to a point where I would actually punch someone.

I do realise PHP is not ideal, but as I always say, in the end it get shits done, and the vast majority of those problems or "design flaws" does not affect 99.9% of the community. Most of the people who bitch about it are not even users, in the heavy user circles we know of some of the issues, try to advocate for improvement, but seriously in almost a decade of using PHP, I could compile all those blog posts, and confidently say : I never had any issue whatsoever with any of the problems pointed.

And that's what most elitist around here forget, for 99.9% of its user base, PHP is not flawed, it works, easy to learn, easy to scale, easy to deploy, upgrade, easy to find developers...

While I get what you are trying to say, you are in no position to say so, and the community -the one that actually matters- already spoke, we have no major issue with PHP, so leave us the fuck alone please. If it bugs you that much, consult a therapist you have bigger issues than PHP...

I suspect that the only people who can defend PHP on technical merits are people who have yet to try something better and have yet to realize just how much better most other options out there are.

If that describes you, I am sorry for you, and deeply encourage you to take on something new on the side, in a different language. Just for fun, learning and exploration. Just to let your mind get a feel for how the world can (and maybe should) be different.

I've done PHP. I've been there. So don't get me wrong. PHP has good sides. Yes yes, it does. But IMO (and I'm far from alone here) they are completely overshadowed by the bad sides.

That's a bit patronizing.

Having dealt with every language under the sun over the last 20 years, PHP still has an as yet unbeatable sweet spot when it comes to getting stuff done.

The PHP project has ensured that "3) Don't use PHP" is the lowest-cost option. These bugs are not trivial, and there are far too many of them.

It is important that people should be fully aware of the technical liability they are taking on when they adopt PHP for nontrivial projects.

It isn't reasonable to demand that other people fix the huge collection of weird bugs in your project. Particularly when they are not invested in PHP (any more). PHP's bug collection is a strong reason not to invest in PHP (any more). If it is important to you to encourage PHP adoption, then YOU fix the bugs.

I am not wasting my life working around this nonsense because there is no reason why I should have to. There are alternatives which already work correctly.

Don't trade off against the cost of rewriting.

Trade off against the cost of using any of the well-developed alternatives which do not have the same bugs, the same volume of bugs, or the same internal processes which generate and shelter bugs for years on end.