this post was submitted on 16 Jun 2023
96 points (100.0% liked)

Programming

13381 readers
1 users here now

All things programming and coding related. Subcommunity of Technology.


This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.

founded 2 years ago
MODERATORS
 

I don't know if it's due to over-exposure to programming memes but I certainly believed that no one was starting new PHP projects in 2023 (or 2020, or 2018, or 2012...). I was under the impression we only still discussed it at all because WordPress is still around.

Would a PHP evangelist like to disabuse me of my notions and make an argument for using PHP for projects such as Kbin in this day and age?

you are viewing a single comment's thread
view the rest of the comments
[–] jmcs@discuss.tchncs.de 6 points 1 year ago (1 children)

It's a terribly designed (and I'm being very generous with the use of the word designed) programming language, but to its defense so is JavaScript and people are not bashing NodeJS apps.

Newer versions of PHP seem to be dealing with lots of past mistakes, but it will always have lots of warts due to backwards compatibility.

[–] GioryJalino@kbin.social 2 points 1 year ago (1 children)

What are those warts? I'm not trying to be a dick, I'm just not educated enough on this subject. Is it more the ease of use (needing much more lines of code to do something or you need to build things yourself since there isn't a function for it) or more the way the language is build (multiple functions doing the same thing or misorder of arguments)? Or is it just the performance?

I started with PHP years back, shifted to Android/Java and then to C# (Xamarin) to Javascript (node.js/React(Native)). All in a hobby/personal project form, so I didn't bump into problems with PHP most peofessionals seem to have and I still use it for API's sometimes.

[–] jmcs@discuss.tchncs.de 2 points 1 year ago* (last edited 1 year ago)

You have things like type juggling which can hide nasty and hard to troubleshoot bugs. There are also inconsistencies because before 2014 the developers were YOLOying it instead if having a formal specification to stick too.

And then you also have older parts of the standard library that were done by people that didn't know what they were doing, leading to things like mysql_escape_string which doesn't properly escape strings in some charsets, meaning you should use mysql_real_escape_string and that lots of beginners used the wrong, unsafe, function.

Another thing that doesn't help PHP's reputation is that it used to be the language of choice of people that knew enough programming to be dangerous. I.e. people that know enough to do small applications, but not enough to take security issues or reliability in consideration. Which by the way, is still a big attitude issue in the PHP world seeing only 8% of PHP Websites use a supported version of PHP with security updates..