I developed in PHP professionally for a while. The language was objectively terrible. But Laravel was great, and so was TLOEP, and some other stuff. I think the reason people would ridicule it so much was due to how many bad libraries, bad practices, and bad information was prevalent within the community. The community may have been welcoming, but much of the time it was the blind leading the blind. My understanding is that it has improved dramatically over the past 10 years.
In 2001 and even in 2011 PHP was a thin poorly thought wrapper around C stdlib and many other popular libraries.
One thing it got right is shared-nothing architecture where a PHP instance effectively spawns for each request and then dies.
I heard it was called "PHP must die architecture", probably as a tongue-in-cheek reference to haters or to a 2000 film with Jet Li.
By 2009 I switched from EJB-ridden Weblogic-posessed Java programming into PHP prigramming, and it was a breath of fresh air. Unfortunately, it paid much less.
Nowadays PHP is in pretty much the same situation as JavaScript: rotten to the core, but great nevertheless if used properly.
I relate to this, but replace Laravel with Symfony. I think the majority of people just echo whatever the internet says. Reddit is really good at this, and it's a bummer that the internet enforces this.
> No, really, cut it out. If you need to make fun of a language, do it with your own language, inside your own community.
Agreed. I have nicknames due to some of the diatribes I've gone on regarding C#/.NET but it's what I do and I am always willing to be challenged.
> JavaScript is really good at this, because they’re trying to help people write better code within JavaScript.
Now now we all get to pick on JS
-----
Also, I just really feel the need to throw out the statement, you can still have contempt out of a 'language', even a 'circle' you know about, for extreme derp.
I.e. if it becomes obvious talking heads are just doing what the salespeople Gartner led them down the path towards due to a magic quadrant and are thing both too big and too small for your org, it's OK to have contempt for that too.
Hack is pretty awesome, but it's difficult to build from source and find doc on. (Like a lot of Meta stuff, it's not well abstracted and maintained for external consumption and it's missing pieces and support materials.) In a lot of ways, reminds me of other tools without nice build processes like nix, bazel, klee, perl's cpan, istio, and samurai (ninja build's twin). Downloading binaries from the internet maybe convenient but aren't suitable for all uses, esp. distro packaging.
Tools with nice build processes: golang, (free)nginx, beanstalkd, memcached, erlang, elixir, rust, uv, pipx, and pnpm. RPM packages.
Tools with okay build processes: gradle, gcc, clang/LLVM. cmake. DEB packaging. GNU's stuff is more-or-less consistent, but autotools (automake/autoconf/m4) configure scripts are sequential, slow, and pedantically redundant. Haskell is a pain to build from source, because like go, it requires bootstrapping... which is difficult on a new platform; PSA: please don't bootstrap languages without a maintained, functioning, widely-portable, alternative reference implementation.
Tools that need improvement: openssl's configure flags are poorly documented but they're better than they were, ruby and ruby native extensions. conan. A number of Apache's (mostly Java) projects are prone to enterprise overengineering, XML, excessive but outdated features, too many options, and lack of simplicity and sane defaults. JVM (Java and not) apps can be JITed fast, portably, and run securely, but.. there's a complexity management tax and gotchas overhead. Scala footgunned itself going corporate, but Clojure and Kotlin are decent.
Contempt culture is a form of negative reinforcement which has a clear utility function: it drives behavior change by reducing undesirable actions, which can be critical in certain learning environments or social communities.
I'd agree with the author's point that its blanket use is an anti-strategy but wouldn't go so far as to tell people to "shut up".
I’m divided between Python and PHP. The python stdlib may be a bit better, but then they haven’t managed some 25 years of nearly perfect backwards compatibility either.