MurphyA/hacker-news huggingface dataset:
by PaulHoule | 2025-08-28 22:08:12+00:00
Auto journalists keep repeating in the same deadpan voice as the brainwashed soldiers from The Manchurian Candidate that Americans exclusively want big vehicles. It's not that there isn't some truth in that but the real truth is that (a) the publications won't get any chance to review vehicles if they don't toe the line [1] and (b) since the 1970s if you went to an American car dealer trying to buy a size S car they would try to sell you an L, looking for a size L they would try to sell you an XXL, etc. I remember going to car dealerships with my dad, there was a brief moment after the 2008 financial crisis that this wasn't the case, but by 2015 the major Japanese brands of Honda and Toyota were doing the same.

[1] One take on the fall of Intel was that they were "high on their own supply" for the last 15 years and journalists were too intimidated to tell them they were wrong with the exception of Charlie Demerjian
by _dain_ | 2025-08-28 22:08:15+00:00
Named arguments don't stop the deeper problem, which is that N booleans have 2^N possible states. As N increases it's rare for all those combinations to be valid. Just figuring out the truth table might be challenging enough, then there's the question of whether the caller or callee is responsible for enforcing it. And either way you have to document and test it.

Enums are better because you can carve out precisely the state space you want and no more.
by paulddraper | 2025-08-28 22:08:19+00:00
> Yes, the syntax isn’t the prettiest, but is it really that hard?

Explain float: clear?

Does that have anything to do with display: flow-root?

And white-space is not actually whitespace?

And when does vertical-align work vs not?

---

^ That is all CSS (and not particularly edgy CSS, except for flow-root).

So....yes, CSS is really that hard. Unless you use the subset of CSS that you have decided to learn + use. Not unlike C++.
by pdonis | 2025-08-28 22:09:23+00:00
Banks and Fannie and Freddie only "create money" to the extent the Fed allows them to. They all have accounts at the Fed, and those accounts govern how much money they can issue as loans. So ultimately the money printer only belongs to the Fed. The fact that what is actually going on is obfuscated by several layers of indirection is a bug, not a feature.
by tombert | 2025-08-28 22:09:37+00:00
It wasn't a laptop, it was a tiny gaming box. I did buy it with the intention of running Linux on it, and it actually worked great with the vanilla setup with the AMD CPU + GPU. I did do research before I bought it to make sure the drivers should work.

I already had an Nvidia GPU and an eGPU case that I had bought for previous projects with AI (on Linux, but headless). I wanted to use it to play some games that are a bit too intense for the little gaming box (specifically the System Shock remake from 2023).

It's mentioned in the blog post, but getting the eGPU case and getting Nvidia stuff working with regular Gnome wasn't too bad on Linux, only took a few hours. The biggest issue was that I wanted to use the SteamOS interface and that was completely corrupted with the stable Nvidia driver. I had to move to the beta driver and it's still a little broken, but usable. The games themselves work fine.

I also had a lot of issues with audio getting increasingly scratchy as I played, to a point of being completely unusable after about an hour, and that required a lot of trial and error but eventually I was able to search my way through NixOS docs and figure it out.

The card was already two years old so I doubt I could have gotten much support from it, and I am even more skeptical that Nvidia's tech support would have known how to do anything with NixOS.
by lifeisstillgood | 2025-08-28 22:09:38+00:00
I’m not sure this is the right conversation right now, but is this thread heading towards “how do we make totalitarian governments become liberal democracies?”

It’s a nice technical question on how to run a VPN but the ultimate goal is not the best technical solution but the ability to avoid detection by the state. And that’s not a technical problem but an opsec one

If someone is participating in online discussions (discord and twitter) to spread local news - then it’s hard to know who is who, and who to trust - and that’s kind of the why Arab spring did not spring “hey wear a red carnation and meet me by the corner” can become a death sentence

The answer to opsec is avoid all digital comms - but at this point you are seriously into “regieme change”, or just as Eastern Europe did, keep your heads down for forty years and hope those who leave you economically behind will half bankrupt them selves bringing you back.

I think in the end, a thriving middle class with a sufficient amount of land reform, wealth taxes which can over a generation push for liberalisation sounds a good idea.

Our job in the very lucky liberal West is to keep what our forefathers won, and then push it further to show why our values are worth the sacrifice in copying
by FlamingMoe | 2025-08-28 22:10:23+00:00
This brings to mind "Still Life", the story of John McClamrock, a high school football star paralyzed during a game, and his mother subsequently devotes her life to taking care of him.

I somehow came across the article in April 2020, the peak covid lockdown, during which I lived alone in my small apartment.

It was one of the most profound things I have ever read: https://www.texasmonthly.com/being-texan/still-life/
by taeric | 2025-08-28 22:10:58+00:00
Oddly, this is a part I'm sticking with on this problem.

Specifically, if you know that one is a girl, then the unordered options seem like they are back on equal footing? That is, it isn't twice as likely if you know that one ordering can't happen? (Or, stated differently, you don't know which version of two girls you are looking at.)

So, for this one, you know that either the youngest is a girl (so, girl-boy is not possible) or that the oldest is a girl (so boy-girl is out). That puts you back to the rest of the possibilities. Boy-boy is out, sure, as you have a girl. But every other path remains? So, you have one of (boy-girl(known), girl-girl(known), girl(known)-boy, girl(known)-girl). Which drops you back to 50/50?
by bigstrat2003 | 2025-08-28 22:11:26+00:00
> He did take the call, but I take your answer to mean that Mitchell and Alex didn't have the right kind of conversation on the call. Is that correct? If so, what ought to occur on a call that follows a large transfer?

I would echo this question. If my bank called me and asked if I needed help, why would I say yes? I got money, the bank is holding it, everything is going great! This really feels like Alex was trying to ingratiate himself with a big client but communicated that really poorly, such that the message of "you are a big deal so I want to give you top tier service" never came across.
by fc417fc802 | 2025-08-28 22:11:35+00:00
Not in the US, at least so far. If that were ever to come to pass I would be in danger of becoming unbanked. I flatly refuse to install third party proprietary software on my phone (I grudgingly accept firmware blobs for lack of a realistic alternative).

Here the majority continue to use SMS based 2FA rather than supporting TOTP or hardware tokens.

Note that TOTP can be handled by any app of the user's choosing, doesn't facilitate attestation or any other user hostile practices, and in practice means that an attack requires physical theft of the device. While the theory might differ, in practice the effective security level is equivalent to other (objectionable) schemes.
by nmsmith | 2025-08-28 22:12:32+00:00
The "Group Borrowing" concept that we're discussing still imposes aliasing restrictions to prevent unsynchronized concurrent access, and also to prevent "unplanned" aliasing. For example, for the duration of a function call, the default restriction is that a mut argument can only be mutated through the argument's identifier. The caller may be holding other aliases, but the callee doesn't need to be concerned about that, because the mut argument's group is "borrowed" for the duration of the function call.

I suppose you could describe the differences from Rust as follows:

- Borrowing happens for the duration of a function call, rather than the lifetime of a reference.

- We borrow entire groups, rather than individual references.

The latter trick is what allows a function to receive mutably aliasing references. Although it receives multiple such references, it only receives one group parameter, and that is what it borrows.

Hope that makes sense!
by pas | 2025-08-28 22:13:20+00:00
> most AI companies are losing money right now

which is completely "normal" at this point, """right"""? if you have billions of VC money chasing returns there's no time to sit around, it's all in, the hype train doesn't wait for bootstrapping profitability. and of course with these gargantuan valuations and mandatory YoY growth numbers, there is no way they are not fucking with the unit economy numbers too. (biases are hard to beat, especially if there's not much conscious effort to do so.)
by DiabloD3 | 2025-08-28 22:13:29+00:00
Most things are developed for standardized APIs, not any specific vendor.

For things that are hyperoptimized for a specific vendor, it is usually for AMD, not Nvidia, because most of that time spent optimizing is not done for enterprise compute (as _very little_ optimization is done, companies just buy more GPUs instead of writing better software, under the mistaken belief that developer time is more expensive than GPU TCO) but for game engines.

Game engines that are highly optimized for hardware are doing it for the consoles, both of which are AMD.

The only thing superior about NV is their marketing department.
by jmyeet | 2025-08-28 22:13:50+00:00
My favorite Java code I've ever seen is:

@Nullable Optional<Boolean> foo;

For when 3 values for a boolean just aren't enough.

Here are two rules I learned from data modelling and APIs many years ago:

1. If you don't do arithmetic on it, it's not a number. ID int columns and foreign keys are excluded from this. But a phone number or an SSN or a employee ID (that is visible to people) should never be a number; and

2. It's almost never a boolean. It's almost always an enum.

Enums are just better. You can't accidentally pass a strong enum into the wrong parameter. Enums can be extended. There's nothing more depressing than seeing:

do_stuff(id, true, true, false, true, false, true);

This goes for returning success from a function too.
by canucker2016 | 2025-08-28 22:13:54+00:00
the USA was worried that Japan would take over/buy up the USA in the late 80s, esp. after Sony bought Columbia Pictures and Mitsubishi bought Rockefeller Center in NYC.

see https://www.businessinsider.com/japans-eighties-america-buyi...

and movies like Gung Ho, and Rising Sun, https://en.wikipedia.org/wiki/Gung_Ho_(film) and https://en.wikipedia.org/wiki/Rising_Sun_(1993_film)
by deathanatos | 2025-08-28 22:14:39+00:00
Pharmacists are a fantastic example. My pharmacy is delivered my prescription by computer. They text me, by computer, when it's ready to pick up. I drive over there … and it isn't ready, and I have to loiter for 15 minutes.

Also, after the prescription ends, they're still filling it. I just never pick it up. The autonomous flow has no ability to handle this situation, so now I get a monthly text that my prescription is ready. The actual support line is literally unmanned, and messages given it are piped to /dev/null.

The existing automation is hot garbage. But C-suite would have me believe our Lord & Savior, AI, will fix it all.
by ascorbic | 2025-08-28 22:15:00+00:00
The point is that the providers aren't burning money by subsidising inference costs. On the contrary, if this article is to believed they're charging healthy margins on it.

So there are two answers: for the model providers, it's because they're spending it all on training the next model. For the API users, it's because they're spending it all on expensive API usage.
by flatline-84 | 2025-08-28 22:15:54+00:00
Here in Australia, Mustang V8s hold their value pretty well. When I was looking for a sports car (which I've now learnt is very different to a muscle car), the Mustang was top of the list because there was nothing else out there with:

- manual - V8 - 2 doors - under <$100k

I spent a week with one, and while I quite enjoyed it, it required you to really rev out the engine to feel anything (which is nice!). Except that would push you into 130km/h+ which means instant loss of license for 6 months and a forever tarnished record meaning insurance is much more expensive for the rest of your life.

Settled for an ND2 MX-5 that I throw around corners now. It means I have to have a "normal" car as a daily (as the MX-5 isn't that practical) but it also means I can have fun without getting pulled up by the gestapo
by glaucon | 2025-08-28 22:16:00+00:00
Almost certain that I was using the mouse.

I just went and tried to do the same thing again and it worked as expected. This may be due to you having made changes but if you haven't there was something else I was going to mention which may be relevant. When I started the 'How to play' section on the first occasion I got the 'Would you like cookies with that?' dialog which I responded to before starting the 'How to play'. When the 'How to play' behaved oddly I did just wonder whether it was somehow related to the cookies dialog. The reason I mention this is because having gone back to try it today I was, understandably, not prompted by the cookies dialog so (just maybe) the 'how to play' getting stuck is related to the cookies dialog ? Just an idea.
by beepbooptheory | 2025-08-28 22:16:35+00:00
Thinly veiled economic propaganda aside, I am dealing with a different AI mess everyday. Technical debt is exploding everywhere I turn. There is an ever larger part of me these days that wishes I could just call the bluff all at once and let all the companies in question learn the inevitable lessons here the hard way.

The worst thing for me would be just needing to get a job like I had before being a dev, the stakes are so much grander for all the companies. It's only really existential for the side of this that isn't me/us. I've been working since I was 15, I can figure it out. I'll be more happy cutting veggies in a kitchen than every single CEO out there when all is said and done!
by tombert | 2025-08-28 22:17:43+00:00
Even though I have over four hundred Blu-rays, I would of course NEVER condone breaking the DRM and putting them on Jellyfin no matter how easy it is or how stupid I think that law is because that would be a crime according to the DMCA and I'm a good boy who would never ever break the law.

That said, I have lots of home movies that just so happen to be at the exact same bitrates as Blu-rays and after the initial setup, I've never really had any issues with them choking or any bandwidth weirdness. Minecraft doesn't use a ton of disk IO, especially since it is rare that anyone plays on my server other than me.

I do occasionally do stuff that requires decent bandwidth though, enough to saturate a WiFi connection at the very least, and the USB3 + USB SS + Thunderbolt never seems to have much of an issue getting to Wifi speeds.
by terminalshort | 2025-08-28 22:17:52+00:00
The dominance of the West came from the industrial revolution. The countries that industrialized first could generate such a massively higher economic output per capita that they could easily dominate all pre-industrial nations. This level of advantage hadn't been seen since the last fundamental change in human society from hunter-gatherer to agrarian. China may well be the dominant state of the 21st century, but their advantage will be incremental unless there is some similar breakthrough waiting to happen that will occur in China first.
by gck1 | 2025-08-28 22:18:11+00:00
Also sing-box [1]. I don't use it for its primary use case of censorship circumvention, but rather for some highly complex routing configurations it supports.

My use case consists of passing some apps on my Android through interface A (e.g. banking apps through my 5G modem), some apps through US residential proxy (for US banks that don't like me visiting from abroad), and all the rest through VPN. And no root required!

It's wild that GFW triggered creation of this and nothing like it existed / exists.

[1]: https://github.com/SagerNet/sing-box
by dpkirchner | 2025-08-28 22:18:57+00:00
At what point does it make sense to sign up for private banking? I've been happy with our credit union for day to day stuff but we don't keep a ton of cash around (most of our money is in a brokerage account (ETFs)). Is private banking just for folks that want to have a lot of cash around but not have it in an easy to use account?
by AdrianB1 | 2025-08-28 22:19:08+00:00
I think the explanation is wrong. It is based on the probability of having combinations of boys and girls and then counting the combinations that have at least one girl, but this is not the situation: there is no probability in question for one of the kids, it is a confirmed, past event and the only other probability is the sex of the other kid.

Otherwise you can derive any probability as a branch of a probability tree that contains it and calculate the probabilities of the tree and then the one of the branch. This makes no sense.

For example, a family has a kid and the kid is a girl. The family wants another kid; what is the probability to be a girl? Is it 1/4 because having 2 girls is 1/4? No, it is 1/2 as it is for any new kid.
by hinkley | 2025-08-28 22:19:13+00:00
This has been simmering for a very long time. The first I heard of it was violence that broke out after the defacement of a Buddhist temple statue. That would have been almost 20 years ago. Buddhists murdering people tends to lead one to ask a lot of questions.

At that time I think the government was hands off, let it happen rather than tried to stop it.

Regardless of who was behind the violence, the whole region has thought about what to do in such situations and they aren’t the same answers the West would choose.
by xienze | 2025-08-28 22:20:07+00:00
Unions work in physical domains that need labor “here and now”, think plumbers, electricians, and the like. You can’t send that labor overseas, and the union can control attempts at subversion via labor force importation. But even that has limitations, e.g. union factory workers simply having their factory shipped overseas.

Software development at its core can be done anywhere, anytime. Unionization would crank the offshoring that already happens into overdrive.
by nothrabannosir | 2025-08-28 22:20:13+00:00
if this is true we will have to trust committing prompts not code.

I don’t worry about assembly because the abstraction layer is reliable. I don’t worry about ISAs, ucode, transistors, etc. the abstraction layer is reliable.

The same is not true for LLMs today. Circumstantial evidence: people commit the lower layer. That’s not an abstraction any more than an IDEs tab complete or “new project template” is an abstraction.

When someone stops reading the output entirely and has a codebase that is only prompts, I’ll hear them out on skill obsolescence.

(Edit: changed to hypothetical)
by rconti | 2025-08-28 22:20:17+00:00
Even outside of EVs, cars have gotten to the point where you're barely driving them anymore, anyway, you're more of a "human in the loop". You can't really see out of them anymore (other than the windshield, of course), so most people have stopped trying and just rely on the "systems".

* Don't change lanes if the blinky light on your side mirrors tells you not to

* Don't back up unless the image in the backup camera tells you it's safe

* Stop reversing when the beeping from the park distance sensors get too insistent

* AEB, lane departure warning, rear traffic assist radar, etc.

Don't get me wrong, people have used this "old man yells at cloud" point of view to call "real cars" dead for many decades; fuel injection, ABS, automatic transmissions, whatever. But we've definitely gotten to a tipping point where most of the fun is gone.

I'm not saying we should go back to x% more deaths per year by getting rid of XYZ nanny system, I'm just saying car enthusiasm is largely dead in new cars.
by alisonatwork | 2025-08-28 22:22:01+00:00
One of the problems with authoritarianism is that even though most dodgy Daves will be fine because the political apparatus doesn't have the time or energy to arrest everyone for everything, they retain the ability to arrest anyone for anything.

The moment your dodgy Dave offends your local cadre, even for reasons entirely other than being dodgy, they'll throw the book at him. And because there is now unpredictability around who will be arrested and for what reason, it acts as a chilling effect for everyone who values some degree of stability in their lives. So the arc of dodgy Daves bends toward compliance.
by kelnos | 2025-08-28 22:22:38+00:00
> @Nullable Optional<Boolean> foo;

To be (somewhat facetiously) fair, that's just JSON. The key can be not-present, present but null, or it can have a value. I usually use nested Options for that, not nulls, but it's still annoying to represent.

In Rust I could also do

enum JsonValue<T> { Missing, Null, Present(T), }

But then I'd end up reinventing Option semantics, and would need to do a bunch of conversions when interacting with other stuff.
by hnbad | 2025-08-28 22:22:38+00:00
It's explained in the Wikipedia article linked in TFA.

If the family was picked at random, a GG family is twice as likely to have resulted in us finding out one of the children is a girl as a BG or GB family (and a BB family would be ruled out by observation) so you end up with the intuitive but in this case also entirely correct 1/2 chance.

If the family was picked from only those that have at least one girl, a GG family is equally likely as a BG or GB family (and a BB family would be ruled out again but in this case by definition) you end up with the very unintuitive 1/3 chance the article describes.

So the initial filtering is necessary to create this "paradox" (it's actually not a "paradox" but a "problem", as others have mentioned). Without it, the intuitive answer is actually the correct answer.