Tell HN: I think you're downplaying the PHP community
79 points| jqueryin | 9 years ago
Whether it's taking classes, working on side projects, or reading the latest blogs, everyone seems genuinely interested in learning.
Based solely on vote counts alone on the frontpage for the last few days, there appears to be a very large portion of the HN community that both readily follows PHP and/or actively uses it.
What I find most interesting, however, is the comments section.
There's a large camp of developers on HN that are very outspoken regarding their abhorrence of PHP. The language has been ridiculed for well over a decade, so this is to be expected.
What's most intriguing is what you don't see in the comments: the huge number of proponents of PHP.
So where does this discrepancy between vote counts and comments stem from?
I would venture to guess the vote counts themselves stem from silent proponents. They likely don't provide counter arguments because it's simply not necessary. Nothing is gained.
Everyone here has a unified goal of working on cool problems, building amazing applications, and hoping to strike paydirt for all of our hard work.
Maybe it's time we all think about why it is we complain about language X vs. language Y and just get back to trying to make our lives and those around us better, through code.
[+] [-] pwinnski|9 years ago|reply
I think many of the loudest anti-PHP voices are ex-PHP developers. They/We naturally assume our own experience is normative, and since we didn't know X, Y, or Z back when we were coding in PHP, obviously neither does anybody else still coding in PHP.
Or, more graciously, back then PHP was the best language we had learned up to that point (better than BASIC or Perl, say), but now we use Ruby or Python or something else, so now we recognize the deficiencies in PHP. Clearly those other people, just a few steps behind us on the path, need to also learn about the deficiencies in PHP and how much better X is.
There are any number of nuanced ways for that to be expressed, but ultimately I think it's mostly tribalism, and obviously unhelpful. Sure, I used to write PHP. Built my first startup with it, sold it, and stuck with it for a few years more even after that. And sure, I don't write in PHP any more. These days it's Python or Java or Clojure for me. Because PHP sucks? No, because it doesn't suit what I'm doing these days as well. And not necessarily for reasons related to the quality of the language.
[+] [-] segmondy|9 years ago|reply
[+] [-] s0l1dsnak3123|9 years ago|reply
Many many yes voters (including myself) were very surprised by this result - the internet was on fire with grass roots activism of all kinds. Glasgow had weekly rallies with thousands (sometimes tens of thousands) attending. And yet we lost.
I can't help but wonder if we're witnessing the same phenomena - a silent majority of people who feel no need to contribute to the discourse but have different opinions and values on the subjects us in the comments section are discussing.
Interesting stuff.
[+] [-] gorbachev|9 years ago|reply
If the thing "just works", what am I going to say? "PHP is nice, it does what I need it to do". That's not interesting in any way.
If the thing doesn't work, then I usually have quite a few specific annoyances I've most likely spent considerable time trying to get around or solve completely, and I have developed strong opinions based on those experiences.
[+] [-] twunde|9 years ago|reply
[+] [-] angry-hacker|9 years ago|reply
And yet after every election the map of the country is blue - - color that represents PP :))
[+] [-] gkya|9 years ago|reply
[+] [-] colshrapnel|9 years ago|reply
[+] [-] throwaway420|9 years ago|reply
People are probably concerned about not being viewed as a good or knowledgeable developer if they admit to using PHP here, so it's probably not a fight that's worth having for most posters. People don't always give their genuine opinions when they think that their personal reputations or livelihoods are on the line.
This isn't just the case in technical or career matters, but especially when it comes to personal reputation. Just ask people how many sex partners they've had: the results will probably be skewed up or down in fairly predictable ways if people think there's a chance that they'll be judged somehow based on the answer.
Personally I think PHP is a useful (and extremely imperfect) tool that is very appropriate to solve a fairly wide range of problems. For certain problems, it's arguably the best tool. That's why it's going to be around for quite a while.
[+] [-] nbouscal|9 years ago|reply
[+] [-] chrisgoman|9 years ago|reply
[+] [-] oliwarner|9 years ago|reply
HHVM is backwards compatible (so runs your PHP, lets you include it from Hack, etc) but it's hardly a vote of confidence in PHP, the language.
[+] [-] unknown|9 years ago|reply
[deleted]
[+] [-] 1123581321|9 years ago|reply
[+] [-] throwaway420|9 years ago|reply
Is this really the case? I've seen estimates of around 70-80% of websites using PHP as part of their backend. Granted, many of these would be simple Wordpress sites or other blogging/shopping/content management platforms where almost no actual coding by the user is involved.
[+] [-] mtberatwork|9 years ago|reply
Indeed, this becomes quite apparent when it comes time to hire. The vast majority of candidates that claim competency in PHP generally fall into two camps: 1) "W3C school grads" 2) Wordpress developers. Both sets drastically increase the signal/noise ratio.
[+] [-] ythl|9 years ago|reply
[+] [-] TazeTSchnitzel|9 years ago|reply
Moreover, it is designed around bad practices in the name of simplicity. Games cannot be framerate-independent, for example.
It may be a useful prototyping tool, but I feel sorry for the people stuck using it when those prototypes turn into full-size games and they can't easily port to something better. It's better to teach people something more flexible and similar to what's used in the real world.
PHP doesn't have these problems, it's just painful.
[+] [-] mysterydip|9 years ago|reply
[+] [-] hotsy_botsy|9 years ago|reply
I challenge you to come up with a better car analogy.
[+] [-] fiedzia|9 years ago|reply
But there is also nothing particularly wrong with it. It may not be better, but it has no worse maintenance record, crash record, or accident survival rate then average car. (In software world, that would be perhaps java).
To come with better analogy - PHP is like a 15+ yo car imported from neighbour country because that's the only thing you can afford. Its popular and you'll see it all around in you area, so you may be unaware that better cars even exist. It can be used, but something breaks every 50km, the rust has eaten so much that any minor collision will get you killed, and you'll see people frantically repairing it with duck tape on every street to ever get home. But yeah, you can drive one. And have you heard that next year the tax will be lowered, so you may be able to afford 14 yo cars, life is getting so much better here.
[+] [-] bbcbasic|9 years ago|reply
[+] [-] crimsonalucard|9 years ago|reply
[+] [-] z0r|9 years ago|reply
[+] [-] leovonl|9 years ago|reply
In fact, I've been hearing for 10 years things like "what, OCaml? where do we hire someone to work on this?", "Haskell? nobody uses that", and more recently "we cannot use Rust as we don't have anyone that can possibly understand this". Saying "PHP is just another language/tool" is just throwing the towel without trying to understand anything.
What would you think if someone said "coal is just another fuel, stop trying to push electric, let me use coal and go on with life"? Well, a lot of people believe this, but let's pretent there's a consensus on this, shall we?
So, the question is: you CAN use PHP for doing web development. You can also use coal as a fuel. Not only that, but all libraries are written with this in mind, all code bases and fragments of code are focused on web development, etc. Coal is also combustible, a lot of manufactures dominate the technology, it's cheap, so.. hey, energy!
Even if the language is pure crap - as coal is as a fuel - people will only hit the crappy parts when their system is already implemented and being used by more people. "Hey, this language has a lot of issues" - "hey, this coal thing really polutes". Too late. You already have a full system implemented, you have experience with the language - or energy production technology... so you just change your workflow to accommodate this. Or you just never realize it - "whatever, no big deal" - and keep using it, as you see the advantages as more important.
There's tons of factors that contribute to the PHP popularity - the same thing with C, Perl, etc. Doesn't mean the language is good, and also doesn't mean everyone has to agree with you that "it's just another tool, let's go back to business".
So yeah, no.. I won't let you go on with PHP, sorry. I want better tools, better systems, and I want to spread knowledge. I guess we are going to agree to disagree on that.
[+] [-] tbirrell|9 years ago|reply
[+] [-] circlefavshape|9 years ago|reply
I've been writing php professionally since 2000, and I like it well enough. I know it so much better than any other language that, 20 years into my career, I can't see how I'll ever learn another one well enough to compare them.
[+] [-] mst|9 years ago|reply
Mostly I file it under "hipsters gonna hipster" and then go back to doing something useful.
[+] [-] unknown|9 years ago|reply
[deleted]
[+] [-] oliwarner|9 years ago|reply
[+] [-] flanger001|9 years ago|reply
[+] [-] ryanlm|9 years ago|reply
[+] [-] nbouscal|9 years ago|reply
[+] [-] spronkey|9 years ago|reply
There are plenty of resources around that demonstrate just why it's so horrible. It's inconsistent, easy to shoot yourself in the foot (mainly because of the backwards compatible stuff), some stuff is just plain broken (ISO_8601 for example), yeesh.
But for many web projects - APIs, server-driven web applications, it can be a pretty solid choice.
It's main downsides are the ugliness of the language, shaky history for core commit code quality, and poor usability for long-lived processes. In 2016, these three issues can be worked around reasonably easily (though some danger does exist especially handing a codebase to inexperienced developers).
It's upsides are quite numerous. It's gradually typed, which means it can be used dynamically, but also supports more type-driven DDD-esque work, and codebases can mature over time by progressively adding more static analysis.
The execution environments now available are fast and reasonably efficient. In practice, PHP will beat out CPython and Ruby for most request-response type applications quite handily.
The wider PHP ecosystem is pretty OK. Composer and Packagist are on par with NPM/NuGet/RubyGems, and are easily better than what's available in the Python or Go ecosystems. The quality of packages varies, but in my experience it's on par with the rest - there are some shockers, but there's a lot of solid stuff too.
Unlike Python, it doesn't suffer from massive division - older PHP code can suck, sure, but much of it has been composerified and can be used easily with a bit of Facade or Mediator in newer projects.
PHP has deployment pretty well down, too. Mod_apache is super easy for basic uses. FPM works pretty well for more advanced stuff. It's easier to manage than the likes of the JVM, or even 12-factor type "bundle into an executable and reverse proxy" apps. But you can also do that with PHP as well, if you want to.
Is it my first choice in development environment? Absolutely not. Is it a very effective tool for many applications in 2016? Absolutely. Do I pick it up over Python and Ruby if I'm looking to build a web application? Yes I do.
[+] [-] TazeTSchnitzel|9 years ago|reply
[+] [-] Ysx|9 years ago|reply
[+] [-] wnevets|9 years ago|reply
[+] [-] ryanlm|9 years ago|reply
[+] [-] sctb|9 years ago|reply
[+] [-] jqueryin|9 years ago|reply
[+] [-] crimsonalucard|9 years ago|reply