The simple stuff is just too boring once you are an expert in the subject.
The simple stuff is just too boring once you are an expert in the subject.
Later they started to move away from all that with PSR, typed object layer and more es6/py3 set of features.
If you're very much into art, you've probably seen the simple stuff already, and you would prefer to see something that surprises you or makes you think instead of the nth iteration of the same tropes.
But PHP is a tool, and you want your tools to be boring and reliable. (Whether PHP fits the description is a different discussion.)
For example instead of just doing something there are multiple levels of indirection and instead of simply operating on a variable they tend to setup overly complex types that get passed around. Obviously sometimes you need that, but I'm talking about adding this complexity when it's not necessary.
But I would guess that a majority of developers that are not CS researchers value simplicity over complexity, at least in theory. After all they’re just trying to get shit done.
Okay fair enough...
> > I was never able to move from PHP to something else.
But that's why people like PHP, they have little exposure to something else.
People that have experience with langs like Rust, Java or C#, Kotlin, Haskell or Elm, OCaml of F#, they usually do not like PHP. Why would that be?
People who only every have used PHP (and maybe some JS) they are usually the only ones raving about the language.
If you have seen a lot of movies (critics usually have) you are better at judging the merits of movies. Same for languages.
> are better at judging the merits of movies
Their definition of "merit" is "surprises me and brings something new to the table", while a regular person wants "is entertaining". i.e. they are better at judging the merit of something not actually wanted.
Those hinted types are than enforced through an IDE.
Thats just horrendes langauges missuse / misdesign.
If you like strong typing, great, but many popular languages have weak types and dynamic types by design. It’s not some horrendous oversight.
But just because PHP apparently added reasonable typing in >7.2 still makes it a ranchy languages for most of its lifetime.
Anyway ranting about it doesn't imply that i hate it or that i haven't used it. Its one of my first languages, but from my personal view, php is a shitty language in comparision to most others
Then we got Javascript and Node, with even less sensible types (no integers!) so you have to use Typescript and lots of tooling to get what PHP offers.
In enterprise environments Java and then C#/.Net dominated and did have strong typing, but that’s not the world of PHP.
Comparing PHP from a decade or longer in the past to Go et al. hardly seems apples to apples.
So if you want to dismiss PHP as “shitty” compared to “most others” define shitty and identify the others.
And im pretty sure that the history of PHP is still everywere inside PHP, like php function inconsistencies across the board.
Or whats the current situation on unicode support?
When i started with PHP4 and Lamp, what a great time. JavaEE was bloated, not a lot of good free webservers available, granted.
But while PHP5 was great and had a loooong shelflife, JEE became much cooler and had fundamental critical things like CDI and really good CDI Frameworks.
Eclipse Java IDE was always really good, something PHP hadn't had for ages.
And if you look at the fundamental difference between lets say java and php: In Java you have specs and reference implementations (partially also thanks to oracle, you now have mulitply companies having their JVMs) which made the JVM very robust and fast.
When Facebook did the hhvm/hack stuff, that was great and pushed enough nerves to rethink the performance of PHP but the performance gains were stupid crazy. Thats a very good indication when a language with so little money and support has such a huge performance gain after such a long time existing.
The fact that Facebook than threw the PHP community under the bus with hhvm/hack didn't make it better.
Eclipse supported PHP from 2007, and the PHPStorm IDE from JetBrains dates to 2010 or 2011. Java has always had better tooling because of the enterprise focus. PHP IDEs are very good today.
PHP 7.x and 8.x have seen big performance improvements. I haven't seen hack/hhvm get much traction outside of Facebook but maybe it did.
This...doesn't seem particularly reasonable?
You're not required to like PHP, and you don't need a reason why things you dislike are objectively bad in order to be allowed to dislike them.
Its hn, i think its reasonable to discuss asthetics of langauges?
But yes the history of PHP is murky and i do believe, that a few small changes could have big advantages for PHP and because PHP was one of my first languages and i also developed for it for a few years, i do have some type of connection to it.
Just imagine having a more community / sig driven approach defining a spec first, than having a reference implementation and opening it up to others.
And a PHP base rework would also help. Rethinking the architecture and code, cleaning it up and fixing issues which are still there because of it like unicode support.
Even for arrays?
You can describe the expected value or key/value types of an array in PHP doc comments for IDEs and static analyzers, but PHP won't enforce those.
Types are great and they have downsides. Perl, PHP, Python, Ruby, JS, Lua, lisp, objective c are proof that you dont NEED them to have working code.