HNHacker News
TopNewBestAskShowJobs

setr

5,581 karma · joined January 7, 2015

setr@fastmail.com
submissionscomments
setr··on The California state assembly has passed the 'Protect Our Games Act'
If a manufacturer is unwilling to guarantee/monitor the lack of sesame in their food, and you having a presumably severe sesame allergy… isn’t it correct not to be eating that food?

Like previously you trusted their lack of sesame based on vibes, which you probably shouldn’t have been doing, and now they’re explicitly telling you not to trust them on this; this seems to me strictly better. You’ve lost a choice that never really existed in the first place

An actually unintended consequence would be if they introduced sesame because they were going to have to put the label on it anyways

setr··on The Melancholy of Slaying Monsters
The truly correct answer is give the player a mild damage aura/aoe and let the mobs die at your feet on their own. Running away breaks an annoying amount of mechanics, like ingredient farming.

The power fantasy just needs them to die trivially. So just do that.

setr··on Corporations can vote in some Delaware elections, judge says
If you’re a shareholder in 5 companies, each owning 2 parcels of land, each with their own PoA, and you yourself hold land — then you have “influence” into 6 votes, though only direct ownership of 1 vote
setr··on Don't Roll Your Own
Not liking it and having the conceit to replace it (and more importantly, shove your replacement into prod) are entirely different actions. The first is always legal. The second is more often questionable than not
setr··on .NET (OK, C#) finally gets union types
Given that they already made the billion dollar mistake, I find their handling for nulls the best possible thing they could do at this point. I’d hardly call it crazy — rather, it’s exceedingly pragmatic.
setr··on .NET (OK, C#) finally gets union types
I mean, they have to explicitly unpack the error and then choose to do nothing with it. It requires roughly the same amount of code to do the same with discarding an exception.

Except with a Result type the fact that an exception can occur and should be handled in the first place is explicit.

The problem if anything is that you MUST say something about the error case, despite the common scenario being “pass it forward” — the same reason exception do this by default. Which is also why rust for example special cases Result with the ? operator to do exactly that

setr··on The Interview That Ships to Production: replacing whiteboards with pull requests
I don’t understand how those concerns are alleviated having been paid
setr··on Quack: The DuckDB Client-Server Protocol
Trivial deployment model, can avoid owning/managing your own server, easier coding in the sense that no-network means you can do normally-psychotic things like N+1 queries and single-row inserts and get away with it.

SQLite/DuckDB actually enables a bunch of normally-illegal behavior when you compare to normal databases. Backups is just copy&paste of a file; spamming queries willy-nilly becomes cheap; you can version the whole DB in git (can’t diff it properly.. but you can do cross-db queries with SQLite ATTACH); locking concerns goes out the window because it’s single-writer anyways.

But if I were actively trying to support multiple users with a single source of truth, I’d probably default to Postgres. If it’s single-user, default to SQLite/DuckDB. If it’s single-user with multiple devices, default to SQLite + replication.

setr··on Quack: The DuckDB Client-Server Protocol
It’s not, but you could do something like https://litestream.io/ and just continuously replicate it to pretend to be multi-user
setr··on When life gives you lemons, write better error messages
The action on an unhandled / unexpected exception is “please submit this information to your closest administrator”

And then dump whatever you want, with a copy button

setr··on The Self-Cancelling Subscription
If you follow through on there being no goal, there is no working or not-working state, in which case it bears no relevancy on the question of whether "Working" is not the natural state in a complex world!

Or rather, you could say TFA is made more correct, by virtue of “working” not being a natural state in the first place.

But if we allow room to anthropomorphize, we can basically state that the natural goal of a natural system is to keep doing what it do, at least in regards to the larger outcomes. And for some strange reason, these systems are shockingly difficult to influence at meaningful scale in ways that are rarely true for the systems we design. In one sense, they continue to operate despite continuous minor and possibly major (but not catastrophically so, by definition) perturbations to their state

You need to burn ridiculous quantities of dino juice to influence the weather system. You need to look at windows a little funny to bring it to a complete halt. You need to bully only few substations to bring down the electrical grid.

setr··on Sierra Raises $950M at $15B Valuation
I do this with cox all the time… because I also have cellular data plan

Though cox will perpetually try to gaslight me so it doesn’t help anyways

setr··on IBM didn't want Microsoft to use the Tab key to move between dialog fields
Little irritates me more than logging into a new system, opening up code in vim, and witnessing the insanity of tabs-as-8-spaces
setr··on Why TUIs are back
The low latency and instant startup is by far the primary value add imo. Nothing else comes close.

The inherent lack of UI bloat is an added bonus.

setr··on Spirit Airlines canceled all flights and is going out of business
Oh neat; I’ve been calling it the “economy of the poor” since I can’t find any proper conversation on it. This is the first time I’ve seen someone bring it up

But I think the notable aspect is not that they have recourse, it’s that the economics properly scales down. Can’t afford 20 cigarettes? An Indian shop will sell you 10. Can’t afford 10? They’ll sell you 1. Can’t afford 1? They’ll sell you half a cigarette.

Can’t afford clean water? They’ll sell you mildly dirty water. Can’t afford mildly dirty water? They’ll sell you dirty water.

Can’t afford a modern, well built, safe car? How about one with 3 wheels? No doors? No AC? 10 MPG? The crumpling structure of a tin can? An engine with less HP than a lawnmower?

In the US, there’s an arbitrary cutoff where you simply aren't allowed to be sold goods and services by anyone in normal society. It’s not about giving recourse; it’s about not actively trying to ostracize them as a separate class of humanity.

You have to actively work to stop “functional poverty” from existing. In any normal setup, it’s just more of the same economy as otherwise.

setr··on U.S. Debt Tops 100% of GDP
I’ll read that article later, but that doesn’t sound right — there can’t be so many multi-millionaires that them getting free money is stressing out the system.

Quick random googling, I’m seeing the number 3.2% of retirees have more than $1m

https://www.investopedia.com/how-many-people-really-achieve-...

And I can’t imagine social security would become suddenly profitable by a <3% population delta

setr··on Where the goblins came from
I’m fairly positive the Greek alphabet mixed in Latin would measure quite poorly for legibility, if anyone did that study. Long before it’s an issue of pretentiousness
setr··on Pgrx: Build Postgres Extensions with Rust
RDS also has a curated set of extensions?

https://docs.aws.amazon.com/AmazonRDS/latest/PostgreSQLRelea...

Which includes literally all 4 extensions you’ve mentioned.

Every managed service does this, specifically because they need to blacklist extensions that touch on the managed parts of it — eg filesystem

setr··on Clay PCB Tutorial
> The jump you referring to is a quote with a reference attached

I mean, your first complaint was asking the question instead of hunting down the about-me; your second complaint is that I need to recursively resolve all references before querying. At what point is it more reasonable to… simply ask? Or expect that a body of text is roughly self-contained, despite the infinite array of information that could have informed that body of text?

FWIW I googled it and found nothing to explain this. It’s not even clear to me that Ahmed engages in this behavior herself, of inverting the “intersection” from nexus between relating subjects, into a giant umbrella term called feminism

To preempt your next request, I’m not buying/reading the book(s).

> anarchism, so like yeah it wouldn't necessarily be a leap to extrapolate that and plenty of people do

The part I find to be a jump is to subsume it under feminism. The study of slavery and labor inequality can help to inform feminism is reasonable;

the study of slavery and labor inquality help to inform feminism, therefore they’re are really the same thing and feminism refers to both is a wild reasoning. It appears to be pure scope creep.

The basic logic seems to be: a relationship exists, therefore it is feminism. And I don’t see why such a definition won’t eventually consume all information ala 6 degrees.

setr··on An AI agent deleted our production database. The agent's confession is below
In a given run, only the top-k sequences are selected.

Across all runs, any sequence can be generated, and potentially scored highly.

Thus, any sequence can eventually be selected.

setr··on Agentic AI systems violate the implicit assumptions of database design
> The contract goes something like this: the caller is a human-authored application, running deterministic code, issuing predictable queries, reviewed by a developer before deployment. Writes are intentional. Connections are brief. When something goes wrong, a human notices. The database can be dumb and fast because the application layer is smart and careful.

This assumption is that of a non-DBA who happened to get a hold of a database.

When you have sufficient users, your expected set of queries is a complete shit show. Some will be efficient, many will be poorly tested and psychotic, and indistinguishable from a non-deterministic LLM.

Also who said humans can’t query the database directly in prod? If not direct sql access, business users have the next best thing with custom reports and such. And they will very much ask for ridiculous amounts of computation to answer trivial questions.

It was a foundational assumption of SQL that business users would directly access the database and write their own queries.

It’s why row level access and permissions exist. Use them

setr··on Statecharts: hierarchical state machines
Going solely off your description of the scenario; couldn’t you trivially model any history (H,H) node as two nodes —> (A, H’) —-> (H’, H) —> (H, B), and have it be deterministic again

I’m essentially thinking of H’ as a write-ahead-log prefixing any node

setr··on Clay PCB Tutorial
I mean, the technical definition provided “the movement to end sexism, sexual exploitation and sexual oppression'” is expanded quite rapidly into including racism and then labor practices (which I’m very much struggling with the jump; the link appears to be that both involve power relationships?).

And I’m not really clear why this doesn’t extend further into basically all of human suffering in any society. Or perhaps extended upwards and encapsulate systems-thinking and any graph-relationship whatsoever

The term "feminism" as an actual technical definition seems to be quite loose; this strikes me as a 6 degrees of Kevin Bacon definition

setr··on Clay PCB Tutorial
> To which I say - why not?

Because it creates weird, presumably unintentional implications. One such implication:

> They seem to imply that feminist = artistically produced, as opposed to professionally produced PCBs. So masculine = professional? But clearly that wasn’t their intention?

setr··on How to Implement an FPS Counter
Unreadability is the primary information source for this method.

Considering stability is the name of the game:

1. If it’s changing quickly in the ones position because it’s not stable, that’s immediately apparent

2. If it’s changing quickly in the significant digits, specifically hundreds or tens position, that’s immediately apparent

Which is largely all the info a user cares about anyways. It gives them the three important states:

1. Stable

2. Mildly unstable

3. Severely unstable

That is, if the number is entirely unreadable with this strategy, it’s because the game is entirely unplayable.

setr··on DeepSeek v4
First you clone the API of the winner, because you want to siphon users from its install-base and offer de-risked switch over cost.

Now that you’re winning, others start cloning your API to siphon your users.

Now that you’re losing, you start cloning the current winner, who is probably a clone of your clone.

Highly competitive markets tend to normalize, because lock-in is a cost you can’t charge and remain competitive. The customer holds power here, not the supplier.

Thats also why everyone is trying to build into the less competitive spaces, where they could potentially moat. Tooling, certs, specialized training data, etc

setr··on Framework Laptop 13 Pro
If it’s their only value proposition, then every other element is just plain worse. This is the only aspect that makes them not worthless.
setr··on Game devs explain the tricks involved with letting you pause a game
more specifically, the bug is due to a buffer overflow during paused chat, and presumably deviant undefined behavior between the original execution and the replayed execution.

and most importantly, it has nothing to do with the non-deterministic nature of the game -- non-determinism is trivial to account for, because PCRNGs are not actually non-deterministic; they're (pseudo)random, and deterministically so. They're just random enough to be equivalent to non-deterministic to the user.

As long as seeds are synced, it's trivially managed. But this kind of cause-for-desync is the reason deterministic engines are such a PITA to actually write. Any source of actual non-determinism wrecks everything, and there's always some miserably rare cases.

setr··on Game devs explain the tricks involved with letting you pause a game
In that case, animation belongs to the same category as audio — it exists outside the simulation state.

But I’m not 100% that’s even true; in the context of replay, I imagine it’d be more appropriately part of the sim for it to scrub properly.

In the context of networked games with client-side prediction, I think it’d probably be key frames tied to logical time and intermediate frames tied to wallclock

setr··on Game devs explain the tricks involved with letting you pause a game
the notion of using time directly in gamedev has always confused me; it feels like the correct answer should be to simply have a notion of turns, and a real-time game simply iterates over turns automatically. And then so many turns are executed per second

It's a simulation; why should clock time be involved to begin with? The only things that should care about clock time are those that exist outside the sim, e.g audio

← PreviousPage 3 of 34Next →