Having lived through that era, J2EE was ultimately a disaster. I remember an "entity bean" (terrible name for a class that manages data persistence) requiring multiple java files and at least a couple XML configuration files. It was complete madness. It was slow to build, slow to deploy, slow to run.
PHP's other advantage is deployment: it's simple. In the 2000's, I used to work at an enterprise Java shop but also did PHP freelance work. The amount of bullshit you had to go through to deploy a Java app on JBoss was insane.
I'd say it's a "don't ask, don't tell" situation.
Perhaps they monitor the sessions though and might wonder why someone is working reverse engineering a retro video game.
I get a LOT of mileage out of my $20 plan. It's at least $500+ a week at API rates. I sometimes wonder if there's something wrong with their billing system.
Also, almost every other time I upgrade Ubuntu, it's a shit show. I've seen the renaming of network interfaces, loss of default routes, systemd jobs that take several minutes to timeout... It's like rolling the dice. All the problems were fixable, but still an annoyance.
For $20/month I get the equivalent of $1000’s in API usage. It’s a good value for sure. My local AI setup doesn’t get me anywhere near the productivity.
Over the past few months I've started to install newer ubuntu kernels using the mainline PPA. However, it goes long periods of time without getting updates, so it's not really a satisfactory solution. In one case I just built the kernel myself.
LTS doesn't work if you want immediate fixes like the current environment requires.
Yep! I remember one of the ISPs I worked for paying like $15K for a Cisco 4500 router with 8 synchronous serial ports and a couple of 10 megabit ethernets. We'd laugh at the sorta bandwidth today. We had a bunch of T1s and a couple of Ascend boxes off of the ethernet.
They work, but the documentation is overwhelming. With my last GCP project, I ran into security theater folks that didn't like predefined roles and demanded custom roles with dozens and dozens of granular permissions. Do you think they audited all those permissions? Nope. The simpler predefined roles were just not permitted by their checklists.
Security may be solved, but IAM is still a nightmare on both GCP and AWS. Nobody understands what all those privileges / actions / conditions / etc. do. Maybe LLMs pretend to.
Unless you're paying millions a month, they don't care. It can take weeks to get AWS SES (Simple Email Service) "approved for production" on a small account, and that's after dozens of emails to prove you're not a spammer. For an enterprise I was working with, I asked and 5 minutes later it was approved. No questions.
The fact that the private IPv4 block is not globally reachable counts for something. If I accidentally give you my private IP (192.168.17.102, by the way!) you can't do anything, absent other details, no matter how much misconfiguration occurs. If I give you my IPv6 GUA, there's a lot more variability.
Opus 5.5 is quite effective at generating Terraform for a "typical" app that needs a load balancer, compute, and a database or two. That's the exact sort of cookie-cutter, rote work that AI is perfect for and no one is really going to miss.
True. There were few (no other?) options for routers back then. I have fond memories of locking myself out of an ISP's core router then having to power cycle it.
Yep. I run into "enterprise" cloud environments where IPv6 is disabled, all the time. The sad thing is IPv6 is easier to understand than v4, just based on subnetting practices alone. The real problem is the average "IT" person doesn't understand hexadecimal.
Blocking /128 is unlikely to block anyone for very long around here. Both the major ISPs give out /56 blocks with prefix delegation. In almost 4 years, mine hasn't changed.
Most IPv4 "security" is a side-effect of NAT. NAT was not intended as a security feature, but it does provide a level of security in the common consumer implementation (PAT, single external IP, unroutable internal network.)