Hacker News .hnnew | past | comments | ask | show | jobs | submit | troglodynellc's commentslogin

I make my entire living modernizing various firms' perl stacks.

There is a never-ending amount of work for people who are good at modernizing older mod_perl/cgi stacks into psgi, and profiling/optimizing stuff.

Where I see perl going:

I see the big firms running away from it as fast as they can, and getting pikachu face when they inevitably get second-system effect, but nevertheless doubling down, because admitting failure is a no-no unless during a reorg.

I see the mittlestand and small biz expanding their existing use of perl, as they cannot afford to re-tool. Perl programmers will continue to have active careers for another 20 years, which is at least as long as I need to remain employed.

The language itself will continue to evolve at a snails' pace due to being design-by-committee since our BDFL retired. Thankfully this doesn't seem to be a particularly serious problem, as no advances in programming language design have come forth which are the kind of quantum leap in either dev productivity or performance to matter for our use cases.


A lot of the "dogmatically tied" comes from experience; it's why the common refrain is that IDE means "It Doesn't Exist" (where you have to fix the code). E.G. a "this is why we can't have nice things" situation.

This is why a lot of us still use vi/emacs; it's just what's available where we have to fix the problems.

I'll give you an example. I used to contract with booking.com, where they gave us a crippled little windows "amazon workspace" over vnc which we had to use to talk to their systems. They're transitioning from a perl shop into a java one, so naturally they use an IDE. Unfortunately, they have configured this little workspace such that SSH mounting your dev VM into an IDE isn't possible (due to it not having a workable ssh agent), and you can't install anything not pre-approved (so x11 forwarding a locally installed IDE is right out).

Minor changes could have been made to these workspaces to address this; requests for which went ignored for years.

The only thing I could rely on was what I am used to writing perl in. An SSH console session with vim and tmux.

I was quite glad to have java experience from before the days when java IDEs were any good. I'd have been screwed if I didn't know how to use the debugger and javac directly.

We've all had to work with our hands tied behind our backs often enough we just "skip to the end" and use the tools we know for a fact will always be available.

It's probably that same reason that perl persists to the level of popularity it has. Like vi, I know it's going to be there on basically any server I have to work on, and the client probably doesn't care/want or even know how to provision me something less primitive.


The constitution makes no reference to citizens with regards to what congress can and cannot do. Nearly all these things are couched with "congress shall pass no law" -- the focus is restricting the behavior of congress rather than the citizenry.

This is a totally bunk argument. If you want an argument that does work against the constitution, SCOTUS' "empty shell" or Lysander Spooner's "Constitution of no authority" are of far more weight, but have more disturbing implications (e.g. You can disregard it completely; our system is precisely the "odious arbitrariness" the founders denounced).


The core problem with DNSSEC adoption has always been what happens when your ZSK/KSK expires, which it ought to for the same reason SSL certs expire.

Rolling this over in an automated fashion is desirable, as if this just happens to slip your mind, too bad, NXDOMAIN

This is obviously a non-starter for most people; otherwise this would just be automagic like letsencrypt is now.

CDS and CDNSKEY records basically solve this problem, but last I checked only a tiny minority of registrars implement them. Even then, some of them require things like 3-day windows in which the CDS/CDNSKEY must not change before they obey. It's basically a recipe for raising your blood pressure 10mmHg.

So, everyone ignores it for this very good reason. As long as it's essentially installing a landmine in your office chair nobody will touch it.


> The core problem with DNSSEC adoption has always been what happens when your ZSK/KSK expires, which it ought to for the same reason SSL certs expire.

For most users there's really no reason for a ZSK/KSK split or rolling keys, much the same as there's no need for rolling SSH keys for most users.


Back when I worked at TI we had a neat machine that used X-Rays to map and reverse competitor chips (mostly to discover they were duping ours). It would work down to just short of a 10nm resolution.

You'd need to use gamma spectrography to map out more modern chips. I'm sure someone's got the equipment somewhere; the chip manufacturers themselves must verify they got a good etch somehow.


Most of the bickering about this or that programming language is no different than "should I buy the bosch or craftsman table saw".

Use whatever has the lowest TCO to you that lets you get the job done.

Perl is usually that tool for me, but yanno TIMTOWTDI. Basically every programming language is quite expressive and has adequate tooling to profile, test, cover, format and lint & run thru CI these days.

I have noticed pretty much everyone using X language still thinks the others don't have said features though. Good for a chuckle in dev chats.


> "should I buy the bosch or craftsman table saw"

Good question!

https://www.garagejournal.com/forum/threads/table-saws-recom...

I too care about my tools. Some feel good in the hands. Some get the job done better. Some I reject outright, despite their ability to get the job done. I care deeply about my tools.


Bad example, really. Tools do matter.


> Bad example, really. Tools do matter.

Personally, I'm inclined to suggest that there are definitely "good enough" tools out there and you can get stuff done with those too, instead of spending a lot of money and time looking for the best out there, or getting attached to them. Kind of a utilitarian look, I guess.

As an example, I got a Chinese chainsaw (marketed as Lithuanian, but most likely just a white-label product) for cutting trees and prepping firewood, for about 100 EUR. It won't last me decades like a fancy Stihl saw, it will have more engine vibration and the fuel economy won't be great. Yet, none of that matters to me much, because it has the critical set of features that I need (it cuts wood, starts well, has decent throttle response and has a functional saw brake).

Whether the same applies to programming and how much is probably quite subjective. Personally I like something like IntelliJ IDEA or other JetBrains tools, but one get by with Eclipse or NetBeans or whatever. In my eyes, the same applies to programming languages - you most likely can write a decent codebase in Rust, Go, Java, .NET, Python, Node, Ruby, as well as languages like Perl and PHP.

Some might be more comfortable with one language over another for a variety of reasons and surely the average codebases will be a bit better/worse depending on the language, ecosystem and the community as a whole. But if it lets you pay bills and ship features, then I would be okay with someone picking PHP/Perl/whatever over one of the more favorable languages.


It's to distinguish between references and non-references. pass-by-reference rather than only COW (such as in some languages) is quite useful.

You would prefer *ref like in C? You can actually do that (it's a GLOB type).

The place people get tripped up is that $scalar can be a string, or a ref.

You check that easily with ref $scalar eq 'ARRAY' or whatever guard you want.


Double colon would make talking about perl even worse (:: is namespace separator) -- it's already bad enough that any namespace starting with D becomes an emoticon in pretty much all online editors.

This stuff should just stop. Operating Systems / Browser vendors should instead standardize on a hotkey to bring up an emoji selector that steals focus to filter via typing and inserts on enter key.


Code should be quoted upfront.

Finding some sequence that also isn’t a valid Perl substring is impossible, in any case.


Indeed. Replace scroll lock with emoji lock


Drop the therapy and start lifting weights. I'm not kidding.

If the problem is that you feel things are gonna be a slow decline from here, then fight it. Make that your new goal, even if you know it to be a losing battle. It will focus your mind on demonstrable milestones like hitting new deadlift personal best.

Even if you do something else, at the very least recognize that you've gotten to the point where you don't need to focus on the "work" and "money" part of life; as such treat this as an opportunity to focus on something new. After all, we only have a limited time on this earth to experience the things you want to do. This crisis is your mind's way of saying "I haven't done something I wished I had done." It isn't bad, it's just cognitive dissonance. Find the root of that dissonance and do that which would resolve the problems keeping you from finding fulfillment. This process will be emotionally painful but also cathartic.

Best of luck; know that every man has it within them to pull through this and come out the other end happy and fulfilled. So long as you are willing to question everything about why you are the way you currently are, you will eventually seek out the truths you need to proceed.


Absolutely never under any circumstances attempt to take people away from their safety net, therapist or otherwise.

You have no understanding of their wider life and concerns, and people asking for big life change help can be surprisingly susceptible to advice.


Every couple years some new trend pops up that people start claiming will fix everyone's mental health issues. One of the current ones seems to be weight lifting. I have no doubt it can be massively helpful for mental health for a lot of people, but it's awfully condescending and detached from reality when people show up say "lmao drop therapy, all you have to do is pick up heavy things".


Does your statement apply to “get therapy” itself?

I’m not trying to be snarky, I’ve seen way more advices on getting therapy rather than start lifting weight. I don’t have an opinion one way or another, but when I read the GP advice, I thought it was the one being unusual rather than common


If the claim is "just go to therapy once a week and you'll be cured", then I would say yes. Depression is multi faceted and there's no single solution. It would likewise be ridiculous for somebody to say "stop weight lifting, all you need is therapy".


Yes, but the thing is, the right therapist might help with the self-reflection you're talking about in paragraph 3. "Therapy" isn't one thing.


Absurd to ever suggest to a stranger that they stop therapy. You don’t know them. Awful, awful thing to do.


terrible advice, never tell someone who has depression or any other mental health issue to stop going to therapy.


telling them to keep going to therapy would be equally good/bad advice

...unless you care to show me clear evidence that therapy is effective in aggregate

https://onlinelibrary.wiley.com/doi/full/10.1111/acps.12713


Better yet: keep going to therapy and start lifting weights!


I thought "Therapy or Crossfit (though the skill tree allows you to choose only one)." from

https://www.mcsweeneys.net/articles/a-scathing-review-of-you... was a joke until I read this comment.


Ignore the other commenters this is good advice to give a man in a tough spot. If you find it yourself you'll be stronger. That's it. Life is tough and not fair, sometimes the people you rely on won't be there. The less dependent you are on others to get yourself out of a hole the better off you are.


Not sure about the suggestion to "drop the therapy"—if op's current therapy isn't helping so much, a different therapist/approach can make all the difference in the world. It took a lot of time for me to discover that kind of therapy worked best for me, and it also took some determination for me to find a therapist with whom I could really connect. My current therapist has helped me so much.


If you do start lifting, I would recommend Starting Strength (Rippetoe). The 3x5 squats, deadlift, press routine got me out of a deep depression. It gave me life. I saw that the mind is supported by the body, and without health the mind is a turmoil.


Woah, toxic masculinity alert!

By all means give weights (or running, cycling, whatever) a go, but stay with the therapy.

Better to listen to professionals rather than some rando on the web.


No no no. Never tell someone you do not know to stop going to therapy. Please be careful


> Drop the therapy

NEVER, EVER, suggest dropping therapy to someone with depression.


Terrible suggestion. Full stop. OP: Do not stop therapy.


Puppeteer does a few more things, but only works for chrome.

Both of them are essentially wrapping devtools protocols. AFAIK, much of the playwright approach was guided by trying to Hew as closely to the puppeteer approach, but cross-platform. Both the APIs are very similar.


Does playwright work out of the box in CI systems (github actions) or we have to explicitly install the browser binaries? I am planning to use playwright-java (https://playwright.dev/java/docs/intro)


Playwright will install the browsers seamlessly, also you can opt into using the browsers that are already installed on CI. See https://playwright.dev/docs/ci and https://playwright.dev/docs/browsers for more details.


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: