Yes, PHP is Worth Learning/Using in $CURRENT_YEAR
63 comments · 90% upvoted · source · other discussions
63 comments · 90% upvoted · source · other discussions
simplistic encouraging upbeat heavy plucky paint market safe gold tease
This post was mass deleted and anonymized with Redact
If you're a senior-level developer there's no shortage of jobs. Because once something exists in production the business is going to want it to be there forever regardless of what it is developed in, so as long as you're comfortable working with legacy codebases there are plenty of jobs out there.
Personally, I work with sensor networks that are installed on-site with the customer and the entire GUI layer is built out in PHP, and we've got a few hundred customers who're all very satisfied with the product even if their version is nearly 20 years old at this point. So somebody's got to be there to support the thing when it breaks and add new features as requested.
[removed]
The trouble is not every job is posted in an accessible place, right? There are PHP migration jobs out there but they're not as common as they used to be. From time-to-time I'll get approached to do one of those jobs. However, overall, it's just kind of the nature of programming languages that are not backed by a major vendor to eventually long tail into legacy development work.
EDIT: Also, I'll say that PHP is no longer as needed as it once was now that JavaScript is pretty unified across browsers, so its no longer the best choice per se for a user interface like once was some 15+ years ago.
I'd love to see that 20-something year-old GUI.
Straight from our website: https://www.isensix.com/support/isensix-interface-tour
I worked a brief stint for this one engineering company. The software the whole company ran off of was a 20 year old program built by one of the founding partners (and lead engineer), who never really wrote much code before, but designed it entirely in VB6. This software did everything from HR stuff (accounting, vacation booking, timetracking, payroll, etc) to production, to inventory management, etc. The GUI was quite something, the main screen was all buttons. At first glance I was like WTF. But then it was explained to me, the entire philosophy of the software was about efficiency and that no matter what you needed to do, you were at most 3button clicks away from it, with the vast majority of it being within two, only obscure / rarely used functionality was 3 clicks. Modules would be enabled/disabled on a per system basis, so computers on the floor for example had the HR module disabled, and vice versa.
I unfortunate never got to see the code, but just from some poking and prodding I could tell the system wasnt secure at all. I could easily fake punch in/punch out times (change the computers clock), enable modules by changing INI settings (which means I most likely could have gotten into payroll... but didnt want to take the risk even testing it out)
Been writing PHP for almost 20 years. Now being told I need to learn Node/React....
[deleted]
Strongly agree.
I guess there's a difference to be argued between "horizontal" learning, like our homie here being asked to learn alternatives for the same task, and "vertical" learning, where you touch other elements that do different jobs (a choice in which I'd place more importance on the latter, probably)... but still, yes.
[removed]
Doesn't Swoole require you to install a PHP extension? I know Amphp does not.
amphp works without extension but it has to use proc_open which is signficantly less performant in my tests.
swoole brings golang style rconscurrency into php - its's great
Yes, it depends a little on what you can assume for the deploying environment.
If you're doing anything full stack or front end, you'll definitely want to be familiar with react. Nothing wrong with learning new tech, although it's not a great time if your employer expects you to learn it in your own time.
I'm my employer :).
Want to keep my site modern and up to date (both in what users expect of it and underlying technology).
I can either try to keep doing it with PHP or learn new tech.
Unfortunately many many startups drank the bootcamp koolaid and are now running some Node stack.
What's wrong with that (Node)?
I develop with both and node frameworks are less opinionated. For code with teams it brings in too many different coding styles or weird standards set by leads. Also the general life cycle of packages is something to worry about. I just don’t see it as a choice for monolithic apps yet. Also mongo shouldn’t be used as much as it is.
The node apps I’ve seen typically started suffering code rot quicker than the Symfony or Laravel apps I’ve seen. With Laravel up until this version, you could spend a few days up dating 4+ years of code. With the express apps I’ve seen there’s been package deprecated and vulnerabilities in packed that the app relies on too heavily to easily replace.
Also PHP devs aren’t as much subject to the learn code boom anymore. There’s arguably a bigger pool of bad PHP devs, but they’re extremely easy to spot. With node there’s so many tutorials out there that you really have no idea if a portfolio is just a dude copying an entire YouTube playlist.
It uses javascript
And that's worse than PHP?
As a matter of preference, yes. I hate javascript.
that's your personal preference, doesn't mean it's better/worse objectively.
I literally said that it was my preference.
but JS is literally the worst
the average PHP project is more likely to have dozens of larger dependencies than hundreds of smaller ones
Yeah, this ended up irking me tonight quite a bit when I was trying to install a NodeJS package that had about 2300 dependencies. The docs say, "yeah, it's really easy just do a 'yarn install' and you're good". Yeah, no... at all.
Tried on NodeJS 10, 12, 14 and 16, several versions and distributions of yarn, bunch of goes with npm, et al. I also just kept getting dozens upon dozens of errors regarding dependency conflicts / resolution issues, missing this or that, security vulnerabilities that require audits, and so on.
I think I'll stick with composer, thanks. It just works. Once in a while I'll get a dependency conflict, but those are always pretty easy to resolve one way or another.
Not to mention, I looked. Node has been around 12.5 years and is already at v16. PHP has been around 27 years and is at v8. Something tells me PHP has far better, more stable and reliable development processes in place.
Node has been around 12.5 years and is already at v16. PHP has been around 27 years and is at v8.
Not to be That Guy, he says, instantly becoming That Guy, but both projects use different numbering schemes and it's super weird and fanboy-ish to try and compare them like this. I'm no fan of Node, in the general case (while recognising it has its uses), but this isn't the way to assess it.
You could just as easily point at PHP 6 and say "Oh, where was Node's PHP 6?! Hah! Hah! How stable is your project if you abandon an entire version after years of effort?!" y'know?
Linux has been around 30 years and is on version 5. Emacs has been around ~40 years and is about to release version 28. Vim has a similar age and is on version 8.
and all are completely solid and battle tested
If you are developing a project at that pace you are gonna make breaking changes a lot, more so since you are working with JS that's also changing.
In my country ,before there is a tech company that does not have PHP jobs. Now this tech company has many open PHP jobs.
In terms of job opportunities,PHP is doing great now a days.
A strange article. I mean, it's disturbing as hell. When you read "value", a dozen different meanings jumps to your mind. Then, you feel bamboozled when realize it's just a constant literal. Oh, OK. As though anyone thought otherwise. And what about other cases, which are closer to the real life and more important? Like, as it was said in some video also called itself something like "bulletproof" or "the right way", "it's ok to put some variables directly to the query, if you know they're all right". How to judge whether a variable is "all right" other than just your "fifth sense"?
Actually it was worse, like "it's OK to put a variable directly in the query when no user input involved" which is a straight call for disaster, simply because of second order injection, not to mention that such a judgement, whether some data is "user input" or not, is a slippery ground by itself.
How to judge whether a variable is "all right" other than just your "fifth sense"?
Well, I have a couple of functions in a PDO wrapper that put variables as table and column names, but I first run another query to verify the names in the database schema. A little workaround since you can't bind variables to table or column names.
$CURRENT_YEAR = date('Y');
I think you mean date('Y').
[deleted] 20 points · Nov 2021
[deleted]
lostpx 11 points · Nov 2021
weird flex but ok
harmar21 1 points · Nov 2021
I do the 1 liner all the time, especially for dates.
_JohnWisdom 13 points · Nov 2021
Carbon people!
eyebrows360 8 points · Nov 2021
Cabron, eses!
supergnaw 0 points · Nov 2021
Carbon, comrades!
ThArNatoS 7 points · Nov 2021
[deleted] 1 points · Nov 2021
Could we please get a more human readable format? e.g. "Yes, PHP is woth using EVER SINCE"
fluffyshuffle 1 points · Nov 2021
Haha you beat me to it!