News for hackers. Stuff that matters.
Re:I still love PHP and JavaScript by user3939382 on Wednesday August 03, 2022 @03:16AM (#32328604)
Maybe it’s the frequency that you use the language? I go maybe 5-10k loc between needing to lookup anything in the docs at all, and 5-10x that where the issue I need guidance on isn’t in the formal doc.

Much more frequently I’m looking up something related to the tools and libraries I’m using.

The only surprising thing I’ve learned about PHP at the language level in the last 6-10 months is that you can call array_filter() without a callback to cull nulls.

Re:I still love PHP and JavaScript by CSSer on Wednesday August 03, 2022 @10:47AM (#32332488)
It could be, but I also never felt like I really got to the point you're talking about in 2 years or so of moderate usage. I've been productive in it, and it's not like I'm hung up on control flow or something. I don't hate the language either. I still have to use it from time to time, but it just doesn't seem like it makes sense for a lot of green field work due to this.

It's mostly things like parameter order for certain built-ins that aren't intuitive and/or finding built-ins I've never used or heard of because there are so many obscure ones (there are nearly six thousand) that keep me coming back. For example, how do you disable errors in a DOMDocument? It ought to be as easy as DOMDocument->setAttribute("errors", "false"), but no it's a separate function call to libxml_use_internal_errors(true). There are like five other similar function calls for this too. PHP has abstraction leaks and little inconsistencies like this everywhere.

Granted, languages with small standard libraries, like JavaScript, by contrast get an easy cop out to blame the community of various package maintainers here. But at least in that case someone can always just write a better library.

Re:I still love PHP and JavaScript by sjamaan on Wednesday August 03, 2022 @04:55AM (#32329276)
Does that only cull nulls, or also zeroes, falses and empty strings?
Re:I still love PHP and JavaScript by sergiosgc on Wednesday August 03, 2022 @06:39AM (#32329924)
Anything "falsy" -- any item that, when cast to boolean results in false. So, also zeroes, falses and empty strings.
Re:I still love PHP and JavaScript by sjamaan on Thursday August 04, 2022 @07:31AM (#32341574)
That was my point - OP said it "culls nulls", and the pitfall is that kind of thinking - if you think of it as removing nulls and you're not mindful, you might be deleting things from the list you don't want to be deleting.