MurphyA/hacker-news huggingface dataset:
by nyarlathotep_ | 2025-04-14 13:53:34+00:00
This is an important point.

Especially overt the last two (three now?) years, it's become pretty apparent many software jobs are superfluous, even those that are ostensibly "skilled" or "difficult."

I do wonder what the actual "needed" number of technical staff these companies would have in a perfectly "efficient" environment. Let's hope we don't have to find out.
by thesuitonym | 2025-04-14 13:53:36+00:00
Any style of layoff is going to be bad for morale, but rumors floating around tank morale for as long as those rumors exist, and then moral takes another hit on the actual day. In that way it makes sense to just rip the Band-Aid off.

Of course, if you ask me, a more sensible plan to keep morale and lower costs would be getting rid of a few executives, but what do I know? I'm just a number on a spreadsheet.
by steinuil | 2025-04-14 13:53:48+00:00
Some points about the introduction, but otherwise this seems like an interesting collection of (slightly deranged?) patterns in C.

> The truth is that any reasonably complicated software system created by humans will have bugs, regardless of what technology was used to create it.

"Drivers wearing seatbelts still die in car accidents and in some cases seatbelts prevent drivers from getting out of the wreckage so we're better off without them." This is cope.

> Using a stricter language helps with reducing some classes of bugs, at the cost of reduced flexibility in expressing a solution and increased effort creating the software.

...and a much smaller effort debugging the software. A logic error is much easier to reason about than memory corruption or race condition on shared memory. The time you spend designing your system and handling the errors upfront pays dividends later when you get the inevitable errors.

I'm not saying that all software should be rewritten in memory-safe languages, but I'd rather those who choose to use the only language where this kind of errors regularly happens be honest about it.
by duxup | 2025-04-14 13:53:49+00:00
The issue with TurboTax that the author ran into:

>I’d entered my ISO info in two different forms in TurboTax – once after searching TurboTax Help for ISO and AMT, and again when TurboTax asked me about ISOs near the end. I’d originally assumed it was just validating or overwriting the numbers I’d already put in, but it was actually creating duplicates! (C’mon, how does software like TurboTax not validate against duplicate entry???)

That's pretty astonishing and I guess their testing missed it too or assumed the usual ISO field and searching help about ISO were different ... but that maybe should have raised questions for them. You would think just a couple extra sets of human eyes would catch that one.
by timeon | 2025-04-14 13:54:54+00:00
> Because it's where important information gets distributed and discussed

This seems less relevant each day. Even here on HN, Twitter used to be on front page almost every day. Now it is pretty rare. Which makes sense when most people are not able to see Twitter threads (if it works for non-logged at all).

> when literally every other social media platform is worse

This is based on?
by nobleach | 2025-04-14 13:55:00+00:00
I just had this same thought this morning. I sure do with OCaml was far more popular. Right now, if you're planning a startup, you want something that you can just snap together a bunch of well-tested libraries. You want DB libraries, S3, message queue stuff, Kafka stream stuff. OCaml does have a lot of these things but they just aren't well known. If they exist, they're just poorly documented. This is why people opt for Java/Typescript/Ruby/Python. It's easy to hire devs, and the tools they'll use are fairly well understodd.

OCaml suffers greatly from a lack of unified practice. There's a YouTube playlist, a Udemy course... an Apress book and those two other ones with camels on the cover. That's about it for stock OCaml. If you want to learn Jane Street flavored OCaml, there's Real World OCaml.
by alkonaut | 2025-04-14 13:55:02+00:00
This is hardly surprising given the attack on knowledge by populists in recent years. If you aren't subscribing to the populist views of science, knowledge and experts, you aren't going to trust the people you need to trust (experts such as doctors, economists and scientists). Likewise if I entered a doctors' office and saw or heard signs they themselves subscribe to these beliefs (e.g. are anti vaccine like ) then it would be pretty natural to distrust this doctor. So the bottom line is that this works both ways, but one way is correct and the other isn't.
by duxup | 2025-04-14 13:55:39+00:00
>Doctors routinely refuse care for religious beliefs or recommend needless procedures and medications¹ for profit

I've never experienced the first part and the latter seems far less likely if you're doing a regular checkup / going in for a vaccine.

Either way the benefits of vaccines are obvious, proven, and I suspect the decision to not do it is something other than day of "I don't like my doctor".
by next_xibalba | 2025-04-14 13:55:43+00:00
The media's use of the the term "far right" for democratically elected politicians is actually a really useful tell. They are unintentionally signaling how biased they are.

Either: "This politician, who received millions of votes is very far right of me (I am very far to the left)."

Or: "I am the center of the left-right spectrum, and this politician who received millions of votes is quite a ways to the right of me (the center), so they are obviously far right."
by rhdunn | 2025-04-14 13:55:55+00:00
I agree. It would be useful to include additional metrics on things like new/active projects/number of commits/etc. that give a better idea/representation of how active a programming language is.

Search queries will only really reflect news around a language, such as an AI paper, Ladybird announcing it is adopting Swift, a language conference (like Google's I/O conferences referencing Kotlin), etc.
by grishka | 2025-04-14 13:56:44+00:00
Yes. In one instance I used Java 17 in an app that ran on as low as Android 4.2, and it did work just fine on an actual Galaxy Nexus. My current app's minSdk is Android 6. Though there are caveats: you can't use records (because they extend the new class java.lang.Record that desugaring library doesn't contain) and sealed classes (presumably because they require extra checks by the class loader).

edit: records actually work now, with compileSdk set to 35

edit2: and sealed classes now work too. I tested both on a Samsung Galaxy S9 running Android 10, but the decompiled code looks very much Java 6 compatible so it should run on anything
by nzach | 2025-04-14 13:56:45+00:00
Isn't 'doctors political beliefs' just another axis(proxy) people can use to make a guess about the competency level of said doctor?

If you 1 - think X and also 2 - think that everyone who doesn't hold the same belief is "dumb"/evil. Isn't logical to think a doctor is less "capable" (whatever that means to you) if he/she doesn't hold the same beliefs that you do ?

My take is that the polarization/radicalization that is happening in the last 10 years made the second point pretty common (i.e. to think everyone who doesn't agree with you is dumb/evil) and this is just the consequence of this kind of thinking.
by Ygg2 | 2025-04-14 13:56:47+00:00
> In fact, people were baffled.

Yes, but what is FCC supposed to look for?

If it's just Dark Matter, and Matter/Anti-matter asymmetry, what theoretical framework is it going to explain it? Will it explain it, or will it just do "Your asymmetric partners are in another Order of Magnitude collider"? Or maybe there are actually 34 dimensions and not like four.
by red75prime | 2025-04-14 13:56:59+00:00
Organizations face a similar problem: how to make reliable/secure processes out of fallible components (humans). The difference is that humans don't react in the same way to the same stimulus, so you can't hack all of them using the same trick, while computers react in a predictable way.

Maybe (in absence of long-term memory that would allow to patch such holes quickly) it would make sense to render LLMs less predictable in their reactions to adversarial stimuli by randomly perturbing initial state several times and comparing the results. Adversarial stimuli should be less robust to such perturbation as they are artifacts of insufficient training.
by Ozarkian | 2025-04-14 13:57:01+00:00
I hear all kinds of complaints about the IRS. But my experience with them is that they are reasonable.

I had a tax situation when I did a same-day sale of some nonqualified stock options. What happened is that my employer put the net gain as income on my W2. In addition, the stockbroker sent me a 1099 for the total value of the options sold. This wasn't quite correct, because the income was already reported on my W2 and the broker should have known that and not 1099'd me for it.

I filed my tax return correctly, only including the W2 income and disregarding the 1099.

The IRS added the 1099 back into my income on their end after I filed, and sent me a bill for around $190,000 for the tax on the 1099 income.

I sent them letter with a clear and correct accounting for the difference. They agreed and sent me back a letter admitting that I was correct and that my tax due was now $0.

It was a bit nerve-racking, but I'm glad they did the right thing in the end.

The California Franchise Tax Board, on the other hand, is a whole different beast. Those people are a bunch of idiotic uncouth goons.
by Braxton1980 | 2025-04-14 13:57:10+00:00
>It should be unsurprising that people don't want to entrust their health to people who don't share the same values as them regardless of what those values are.

It's surprising and stupid.

>There's already a litany of incentives inherent to the modern medical workplace that ever so slightly tug doctors toward goals other than what is best for the customer,

Like what?
by gh0stcat | 2025-04-14 13:57:22+00:00
Typethon will fix everything :p

But yeah I can't stop myself from eye-rolling when I'm using python (which honestly is very useful for a lot of data manip that is one-off for my job) and there's just tiny syntax differences for seemingly no reason, like not instead of !, X if Y else Z, len(x) instead of it being a member... it's all very fast to look up, but easy to miss when you're also working in C++ or Rust.
by mstef | 2025-04-14 13:57:28+00:00
btw it is perfectly fine to circumvent a paywall with archive.ph and then to snapshot it with omnon so your bookmark never linkrots away. also when i say "js manipulation" i also mean stuff like captchas, or dynamic documents that you change by interacting with it, or even private services like e.g. rocket chat hidden behind some barrier like http auth, or private vpn. archive.ph will never have access to what your browser might have access to.
by echelon | 2025-04-14 13:57:45+00:00
We used to do this for every earnings call.

We printed up bingo cards filled with buzzwords, products, trends, things we thought the analysis might say, etc. We charged $15 per card, all of which was pooled and given to the charity of the winner's choice. When the CEO caught on, he started matching the donations.

There was a reverse version of this played too. We voted in Slack for some weird word or phrase that the CEO or CFO had to say during the earnings calls. They were super awkward and totally unrelated, and the goal was they had to weasel the phrase in somehow. It was pretty funny.

(For someone else in the know, without giving away the company, do you remember any of the wacky phrases?)
by toomuchtodo | 2025-04-14 13:57:46+00:00
> Considering the number of doctors who refuse to assist women with miscarriages or any kind of abortion even when the women’s life is in danger, I wouldn’t trust that presumption.

To note, recently, doctors are refusing this care due to their concern over legal liability in states with harmful policy prioritizing flawed belief systems over healthcare.

https://www.propublica.org/series/life-of-the-mother

> When the Supreme Court overturned Roe v. Wade in 2022, doctors warned that women would die, but lawmakers who passed state abortion bans didn’t listen. The worst consequences are now becoming clear.

https://news.ycombinator.com/item?id=42111924 (citations from a comment I wrote previously in a dead thread, linked for brevity vs wall of text)
by bgwalter | 2025-04-14 13:57:50+00:00
I don't deny that there are some good packages, but I cannot see that it is easy to write robust software on Python in general, especially with the incompatibilities and bugs introduced between releases. Anyway, for the purpose of the TIOBE discussion new people flooding GitHub with software will likely not have internalized best practices.

(Google also phases out Python for new software.)
by solardev | 2025-04-14 13:57:56+00:00
I think yorwba said it best... if an organic community develops naturally around one language or another, cool, encourage it and make it easier for them however you can!

But no need to "fake it" with preemptive translations of your own (especially if you're going to do it automatically) if it's going to take time and effort away from other parts of the project. It's more important to have good and thorough documentation in ONE language rather than a barebones readme in ten.
by FirmwareBurner | 2025-04-14 13:57:58+00:00
It's been public knowledge since the 2013 Snowden leaks that the US spied on EU allies, even though this was probably an open secret in the gov circles way before that since all allies spy on each other constantly to keep themselves accountable("trust but verify").

Why are they pretending like this is something new for them when they knew about this way before? Burner phones at this point in time feels like trying birth control when your kid is already 13 years old.
by toss1 | 2025-04-14 13:58:32+00:00
Huh?

Across decades, I've heard of many cardiac events from shoveling the driveway, but absolutely zero from scraping ice off a car windshield. This correlates to the vast difference in effort required by each action — scooping, lifting and moving tons of snow, vs scraping at a few ounces of ice (which is even easier if you let the car run a few minutes with the windshield defrost on).

Now, if we had car (not trucks setup for plowing) that could automatically clear the driveway, that would be a must-have feature in areas with winter climates...
by armoredkitten | 2025-04-14 13:58:38+00:00
Exactly. In particular, when I train a model, I have a defined process for training, and I can flip the switch between "learning" and "not learning" to define exactly when the model adjusts its weights as a result of inputs. Humans can't do that with their brains. Thus, for humans, learning can't be decoupled from viewing, but it absolutely can be for AI.
by rand0m4r | 2025-04-14 13:58:39+00:00
> GLSL is dead end, Khronos is on the record they aren't going to develop it further, even for Vulkan, HLSL and now slang, are the way forward.

I've been seeing more comments like yours saying GLSL is a dead end, and it’s making me question whether I should keep learning it.

But at the same time, it’s still very accessible, well-documented, and used in OpenGL demos and educational content. Would you say there's still a case for GLSL in hobby projects, demoscene work, or rapid prototyping? Or is it really time to move on even in those contexts?
by therealpygon | 2025-04-14 13:58:58+00:00
As it should be, but emotional people make emotional choices. The trusted and valued employee yesterday can turn on a dime and become malicious when they feel they have been wronged regardless of whether that is independently true. Their resulting actions can include anything from theft of IP to hand over to a competitor, to destruction of records or property. Worse, it is impossible to tell when someone will choose to feel they have been wronged, even when the employee could have had chronic absenteeism or underperformance that they justify with personal excuses. (I’m not suggesting there shouldn’t be compassion, rather that most people will almost always make mental excuses to justify their behavior regardless of whether that reasoning is sound.)

Companies generally don’t become militant about a subject unless they have experienced the other side of the equation. It’s not just with layoffs, it can happen with protecting source code, licensing, network security, etc. I concede that a company could replace destroyed property and should be able to recover deleted data, then prosecute/sue to recover damages which could cost tens or hundreds of thousands(or millions depending on the level of access), but the disruption to business can be significant in some cases. Moreover, it is impossible to put an IP cat back in the bag.

For me, it seems easy to understand both sides on this one; compassion vs risk.
by bluGill | 2025-04-14 13:59:12+00:00
Sort of. Chasing the latest everything is always a bad thing. Chasing ONE latest anything may be a good thing. Staying to far back can be a big negative - COBOL may pay the bills, but you will have a hard time hiring someone willing to work with it, and there are some things we have learned since COBOL that really are worth having.

You should always keep an eye out on what is happening elsewhere. Sometimes those things are enough better you should switch. Sometimes those things are better but you should just add them to what you have. If you write COBOL you should be writing the 2023 version today which has a lot of things not in the original 1959 version (what I don't know what since I don't write COBOL).

There is a cost to switching/rewriting everything. There is a cost to whatever downsides of your language/frameworks have. The other language/framework options also have their own downsides - often they are unknown. Most of the problems you are having are not caused by the language, rewriting to a better architecture in the current language would solve a lot of problems (I recommend you put the money for a big rewrite into a refactor in place effort, the costs long term is similar, but you are always shippable which means if budgets are a concern you can scale back and extend the schedule)

If the language is popular that is a big advantage. I can teach you whatever programming language you choose to use, but if the language you choose is popular you can hire "experts" while if the language is unique you will spend years training people before they are experts. This is a big advantage of something popular.
by Aurornis | 2025-04-14 13:59:41+00:00
> Why must every engineer have an opinion on every technical decision if there are no hard requirements?

This isn’t what anyone is suggesting.

Committing doesn’t mean everyone needs an opinion on everything.

> It seems pretty clear to me that not every engineer must have an opinion on every technical decision to which they should commit when sometimes

Again, not what’s being discussed.

You don’t need an opinion on everything.

Your team does need to commit to something and move on.

The phrase “disagree and commit” is commonly used when engineers have opinions on everything and are struggling to commit.

Committing != having opinions on everything.
by aarroyoc | 2025-04-14 13:59:49+00:00
I like Kotlin and I use it at $dayjob but I'm not doing Android development, just backend. I'm at a big company and most new code is Kotlin, many colleagues like it too.

Most people think Kotlin = Android, but it would be interesting to know the exact proportion of Android vs the rest of Kotlin developers. Even frameworks like Spring Boot officially support Kotlin, so I think there's a significant user base, maybe too silent.
by aetherson | 2025-04-14 14:00:04+00:00
I'm honestly stunned that people here are performatively math-illiterate.

Some companies experience liquidity events. Therefor the value of equity in those companies is positive. Some companies go out of business. Therefor the value of equity in those companies is zero.

If N is the ante hoc chance that a company will experience a liquidity event, then:

N * X + (1 - N) * 0 = value of liquidity

X is positive. 0 < N < 1.

Therefor the value is positive.
by dmoy | 2025-04-14 14:00:12+00:00
I've gotten 4 CP2000 over the years from RSU. Since they're non-covered shares, IRS gets data with a $0 basis.

Some my fault (missed a page of 1099-B), some the broker's fault (missing one of two forms).

In every case you just send a cover letter with a couple sentences of prose explaining the error and a corrected form (8949, schedule B, whatever). Maybe a check if you still owe something. Or not, they will calculate and rebill you too. Maybe a copy of your 1099-B (I sent it 3 out of 4 times but forgot once, didn't make a difference)

It's slow as molasses, but the IRS is actually pretty damn reasonable about things.
by TrapLord_Rhodo | 2025-04-14 14:00:28+00:00
I don't really follow what you are arguing here. You starting with long hours is the same as hiring two times the amount of people, then you say that the european companies are all to old to innovate? There are plenty of european startups in the space race, they just can't compete... because europeans have a distain for "Fetishizing long work hours"
by boomlinde | 2025-04-14 14:00:34+00:00
1. If you mean @fieldParentPtr, the first argument is a compile time-known name of a field, the second argument is a pointer to a field of that name in the parent type, which is inferred from the left hand side of the assignment

2. Then you're screwed. In Zig, using @fieldParentPtr on a field that doesn't have the given parent is unchecked illegal behavior, meaning that there are no checks that can catch it at compile time. This change basically guarantees that there will be a pretty serious foot gun every time you iterate over the items of a standard library list.
by dzikimarian | 2025-04-14 14:00:40+00:00
On technical level - nothing. Thing is, that payment card is basically private key, that's derived from master key controlled by the bank. This key signs your transactions. Tokenization adds some extra steps (eg. single use keys), but it's fundamentally the same.

What it means - you cannot obtain working card profile if bank doesn't issue it to you. Therefore you need blessing from bank & card scheme to be connected to this ecosystem.

If you want to go deeper into this rabbit hole I can recommend two sources:

* https://developer.mastercard.com/product/mdes - Mastercards framework for tokenization

* https://developer.verestro.com/books/token-requestor - actual solution. It focuses on offering for single issuer, because market for Google Pay competition is pretty narrow, but technically it's mostly the same + way more red tape.

If you ever decide to try - ping me, I happen to know a few guys there :-)
by bbqfog | 2025-04-14 14:00:45+00:00
I have and this poster is spot on, he needs to go higher up the chain though. Investors hate employees, even founders. Founders are out to get rich. Executives are out to get rich but don't have what it takes to be founders. All of these people detest labor. They are the enemy you must work with to buy food. Treat them as such.
by nobleach | 2025-04-14 14:00:47+00:00
Kotlin really got lucky with Google choosing it for Android dev. While Google is known for relegating some of its tech to the dust bin, Android is too big at the moment. Flutter + Dart was a little surprising though. If they hadn't chosen Kotlin, I couldn't have seen a real path forward for JetBrains. It was basically a much nicer Scala (and I'd argue, a really nice Java) But they keep it locked up with IntelliJ. This, by the way, is why none of us are writing SmallTalk these days. Having to purchase and use a particular IDE is not how we do software these days. (Feel free to tell me how AMAZING IntelliJ is... it's not my cup of tea)