PaulWay,
@PaulWay@aus.social avatar

Has someone already said...

PHP is the COBOL of the nineties.

jpm,
@jpm@aus.social avatar

@PaulWay disagree, not many core banking systems written in PHP, it’s got more of a BASIC vibe including a bunch of “oops this pet project grew to be wildly popular”

Now Java on the other hand…

PaulWay,
@PaulWay@aus.social avatar

@jpm Wordpress is still running on MariaDB and PHP. Joomla and Drupal are as well, AFAICS. Major web-facing systems, running on a language with a long and bitter history of stupid, unnecessary vulnerabilities and complexity.

Yes, I'm biased. Yes, I'm sure it now has lots of lovely features now. But the vast swathe of PHP uses legacy 'features', and I'm willing to bet $100 that most of them have had at some point an attempt to remove them and received a furious backlash from the community complaining about having to revise "millions of lines of code" that apparently depends on insecure, buggy, inconsistent and hard to use legacy functions.

I had to support a system that was written in PHP from 2011 to 2012, and it was awful. In one case I wrote a module specifically to try and bring a bit of order to it:

https://github.com/PaulWay/PHP-Console-GetoptLong

Trying to write that module in a clean, consistent way was itself hard because of the inconsistent language I had to use.

The real problem was that the people writing the code I had to support wrote bad PHP. They did not have the discipline, because they did not need the discipline. And that's why, in one case, a misfeature that has been around since the product was written was allowed to continue because the programmers said it was impossible to remove it. When I demonstrated that I had removed it, they said that it wouldn't work. When I demonstrated it working, they said it would take too much time to change all the documentation and the customers had now already learned the bad thing and so it would be too difficult to learn the good thing.

Yes, I'm prejudiced, but this is also why languages such as Python and Go and Rust exist. Because sometimes the way to write better code is to use better tools.

Woodworkers will tell you, you can't make a good table with bad tools. It might sound like it's possible, and you might get close, but it won't be a good table. It will have flaws that the bad tools have left behind which cannot be remedied by other bad tools. It'll be a table, but it won't be a good table.

PHP, and COBOL, are just bad tools.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • rosin
  • osvaldo12
  • modclub
  • DreamBathrooms
  • khanakhh
  • magazineikmin
  • thenastyranch
  • Youngstown
  • everett
  • InstantRegret
  • slotface
  • ngwrru68w68
  • kavyap
  • tacticalgear
  • megavids
  • GTA5RPClips
  • anitta
  • Durango
  • mdbf
  • cisconetworking
  • tester
  • ethstaker
  • cubers
  • provamag3
  • normalnudes
  • Leos
  • JUstTest
  • lostlight
  • All magazines