3 ms·
Modern PHP is very nice to work with. Ignore the haters that haven't touched the language in 10 years.
by patricklouys 9y ago
Modern PHP is very nice to work with. Ignore the haters that haven't touched the language in 10 years.
- Lazare 9y agoTo be fair to the haters, even modern PHP can be horrible. The old nightmares are still around; we've just agreed to ignore them, and maybe deprecate a couple of the worst. (And ternary syntax is still broken, and the standard library is anything but standard.) But yes, if you're working on a modern PHP project, there's a lot to love: A solid module system, an enormous sea of high quality libraries, type checking, a really nice deployment and scalability story, decent performance, good tooling (IDEs, debuggers, etc.), a servicable C-style syntax. For many purposes (not all!) it's ten times better than, eg, nodejs. (Which might seem like a low bar, I admit...)
- nurettin 9y agoIs it better than nodets?
- Lazare 9y agonodets, as in typescript on node? I haven't personally tried it, but I imagine so, again depending on your particular use case. I quite like Typescript as far as syntax goes, but I think PHP 7.1+ is comparable. And PHP has a lot more support, libraries, and better tooling in my view. For example, my experience in node land is there aren't really any good ORMs; PHP has multiple, including one (Doctrine) which is easily the equal in my view of the highly regarded Python SQLAlchemy. Similarly with routing, frameworks, templating, etc., there's a huge amount of maturity on the PHP side that's missing from node. The big question is going to be in the process model. Node has an event loop; PHP doesn't. For most purposes, I think an event loop makes writing good code harder to no real benefit, but in some cases (eg, acting as the endpoint for a ton of open websockets) it can be a big win. If you do need that, then you should probably lean towards node over PHP, and sure, why not use typescript? But for the general case, I'd still lean towards PHP. (Then again, there's also a ton of other languages and frameworks. Just because PHP - or node - might be better than the other for some task doesn't mean there aren't a dozen more languages better than both.)
- nurettin 9y agoIn your view, if someone created an ORM for node which focused on creating object graphs for tables and fields (a-la sqlalchemy) instead of focusing on SQL building syntax (a-la knex) would it be popular?
- lpghatguy 9y agoSolid module system? It's still the same as C, which is _not_ a solid module system.
- patricklouys 9y agoI'm assuming he meant the dependency manager, which is really nice. https://getcomposer.org/ https://getcomposer.org/
- Lazare 9y agoCorrect. :)
- powerslacker 9y agoI wrote some PHP last month and I still hate it :) Though it has improved dramatically.
- patricklouys 9y agoDid you write clean OOP code? You can still write bad code with it, no doubt about that.