MurphyA/hacker-news huggingface dataset:
by bryanlarsen | 2026-01-03 20:24:56+00:00
In other words, in production mode it makes your code faster and less safe; in debug mode it makes your code slower and more safe.

That's a valid trade-off to make. But it's unexpected for a language that bills itself as "The Ergonomic, Safe and Familiar Evolution of C".

Those pre/post-conditions are written by humans (or an LLM). Occasionally they're going to be wrong, and occasionally they're not going to be caught in testing.

It's also unexpected for a feature that naive programmers would expect to make a program more safe.

To be clear this sounds like a good feature, it's more about expectations management. A good example of that done well is Rust's unsafe keyword.
by metadope | 2026-01-03 20:25:39+00:00
This headline is an awful application of the HN algorithm.

The original headline reads On The Fence, which, of course, is a meaningful phrase (though wordy and trite, wsj).

Eliminating the first word On is a dumb mistake.

Might I suggest we allow a little editorial discretion here, and change the headline to read "Debating a Spending Decision? Try the 0.01% Rule" or some such.
by lisdexan | 2026-01-03 20:26:10+00:00
>That would result in the obliteration of France?

To be clear, if we are talking about a salt-the-earth level conventional bombing for pure annexation / genocide of a EU nation the French would:

1. Remind the US via diplomatic means that they have nuclear subs and the will to use them.

2. If ignored, select some non-mainland territory (PR or Hawaii) and make a ultimatum. Mention that if the US does not desist they will wipe it, but will not launch attacks on the continental US.

3. Repeat 2 until they stop or escalate.

The French would absolutely do this, the thing you propose is so beyond the pale (even now) that the only conclusion is that the French would be next.
by lr0 | 2026-01-03 20:26:12+00:00
I'm not sure if you understand how casualty classification works. “not positively identified as combatant” is not logically equivalent to “proven civilian.” No one claims it is. What it does mean is that the IDF has no evidence those people were combatants. And in law, statistics, and every serious conflict dataset, you don’t get to assign lethal status based on vibes.

Also calling Aman “a single unit not tasked with research” is false. It’s Military Intelligence, and Israeli sources say this database is the only one they can stand behind.

If your position requires assuming thousands of unidentified dead people were combatants without evidence, then your position is not analytical rather ideological.
by superlucky84 | 2026-01-03 20:26:22+00:00
That’s a fair point — it can definitely become a footgun if you’re not careful.

This happens because `runPipeResult` defaults its generic parameter to `R = any`.
When type safety matters, the intended solution is to use `pipeSideEffectStrict`, which preserves all possible SideEffect result types as a precise union throughout the pipeline.

The default version prioritizes ergonomics and simplicity, while the strict version prioritizes type safety.

Also, fp-pack is still in an early stage, so the usability and API choices haven’t been fully validated yet.
That’s why feedback like this is especially helpful in shaping the direction of the library.
by tliltocatl | 2026-01-03 20:26:34+00:00
> even C has a tiny runtime

Which functions are required for a C program to run aside from those that it run explicitly? memcpy? It's basically a missing CPU instruction. malloc will never get called unless you call it yourself.

> followed by history of systems programming languages, starting with JOVIAL in 1958.

All system languages (e. g. BLISS, PL/S, NEWT) designed as such before C was vendor-specific. Some of these had nice things missing from C, but none propagated beyond their original platform. And today we have no option but C.

> "Typescript for C" came out in 1983.

C++ is not just "not perfect", it is far worse in every way. Let's let people overload everything. And let's overload shift operator to do IO. And make every error message no less than 1000 lines, with actual error somewhere in the middle. Let's break union and struct type punning because screw you that's why. You say C macros are unreadable? Behold, template metaprogramming! C is not perfect, but it has the justification of being minimal. C++ is a huge garbage dumpster on fire.
by ben_w | 2026-01-03 20:26:36+00:00
What made it a felony under New York law is the claim that the falsified records were intended to conceal another crime, specifically efforts to influence an election.

To a decent approximation, if Trump had not been running for office when he did this, then it wouldn't have been a crime. But then, he wouldn't have cared to cover it up.

Covering up that he got off with a porn star isn't the problem. Like Bill Clinton, it's the actual particulars of the coverup rather than generically that there was a desire to cover up an extramarital affair itself that's the problem.
by pegasus | 2026-01-03 20:26:48+00:00
I'm no fan of Trump, and I believe he's basically gone rogue, but, literally, he never said what you say he said. If I missed something, please provide a reference, but I doubt you'll find anything. You simply misheard. He's been extremely brazen in mentioning such a crass topic as American interest in Venezuelan oil, which normally would be pushed vigorously under the rug, but he didn't go as far as saying that's the reason. The official (and preposterous) reason is still the drugs.

My take concords with what @JumpCrisscross said elsewhere in this thread:

"HN sometimes has trouble understanding coalitions.
Some support for oil. Some want to unseat a dictator. Some are concerned about Venezuela being a hive of Chinese, Russian and Iranian activity. Some did it to destabilise Cuba, or lay the groundwork for hitting Iran. Still others are just plain psychopaths and like blowing things up."

I would add that personal pique probably had as big a part in this decision as anything else.
by csdreamer7 | 2026-01-03 20:27:57+00:00
Nadella was the one who fired Microsoft's QA team for Windows. It took a while but those chickens finally came home to roost.

https://www.computerworld.com/article/1626871/microsoft-to-b...

This one youtuber, I forget his name, was fired as part of that layoff. He had a son with severe Autism and Microsoft's health benefits were very important to him.
Show HN: An authority gate for AI-generated customer communications
by bhaviav100 | 2026-01-03 20:28:04+00:00
Many teams now allow AI systems to draft customer-facing messages across support, CRM, and billing workflows.

This introduces a specific failure mode:
AI can generate text that constitutes an irreversible business commitment
(refunds, credits, billing changes, contractual promises).

Once emitted, the commitment exists. Detection after delivery is irrelevant.

This project implements a hard authority boundary.

Model
--------
AI systems propose messages.
They do not decide whether those messages are allowed to commit the company.

A gateway enforces that decision.

AI drafts message
↓
Authority Gateway
↓
Send | Block → Approval

Behavior
---------
For each outbound message:

Inspect text for commitment signals

Classify outcome as reversible or irreversible

If reversible → allow

If irreversible → block and require explicit approval

Log decision and evidence

No attempt is made to assess advice quality, intent, or correctness.
Only enforceability is considered.

API surface
------------
/v1/messages/send
Enforces authority on outbound messages

/v1/support/messages/decide
Decision-only endpoint for support systems
Returns structured reasons and a safe fallback reply

Properties
----------
Deterministic enforcement

Idempotent execution

Explicit approval for irreversible actions

No reliance on prompt discipline or training hygiene

No agent autonomy

This is a sandbox implementation to test whether a narrow authority layer is useful in practice.

Feedback welcome from teams already routing AI-generated messages into real customer workflows.
by apparent | 2026-01-03 20:28:19+00:00
I'll elaborate: if you are worried about being unfaithful, or your spouse being unfaithful, then protecting yourself against one STD might seem like a good idea. And if the risk of unfaithfulness is very high, then it is better to mitigate one STD rather than none.

But the fact remains that you are still at risk of many other STDs, so you can still bring home (or have brought home) plenty of other diseases.

The last point, which I knew some people here would dislike, is that the possibility of HPV transmission could, on the margin, discourage some people from being unfaithful. This is because it would be a telltale sign of infidelity, and would cause the spouse to investigate.

Granted, this is only the case where the spouse knew he/she did not have HPV before (mostly people who remained celibate before marriage). If you had many partners before marriage, this advice probably doesn't resonate, but for people who did it makes perfect sense. It acknowledges the risk of infidelity and creates additional accountability by not shielding one's self from a likely telltale sign.
by sedawkgrep | 2026-01-03 20:28:27+00:00
I left my job as a NE/architect over a 15 years ago, but the show stopper back then revolved around how to handle routing with firewalling. Firewalling being biggest roadblock due to needing traffic symmetry. I'm doing my best to remember why we stopped at just providing v6 at the edge for site-specific Internet hosted services and never pushed it further.

Mind you, our team discussed this numerous times over a few years and never came up with a solution that didn't look like it would require us to completely fork-lift what we were doing. The whole team was FOR getting us to v6, so there was no dogmatic opposition.

Consider this:

25k employee company. Four main datacenter hubs spread out across the USA with 200 remote offices evenly dual-homed into any two of the four.

All four of the DCs had multi-ISP Internet access advertising their separate v4 blocks and hosting Internet services. The default-route was redistributed into the IGP from only two locations, site A and B. e.g. two of the four DCs were egress for Internet traffic from the population of users and all non-internet-facing servers. IGP metrics were gently massaged as to fairly equally use of both sites.

All outbound traffic flowed naturally out of the eastern or western sites based on IGP metrics. This afforded us a tertiary failover for outbound traffic in the event that both of the Internet links into one of the two egress sites was down. e.g., if both of site A's links (say, level-3 and att) were down, the route through site A was lost, and all the egress traffic was then routed out site B (and vice-versa). This worked well with ipv4 because we used NAT to masquerade all the internal v4 space as site X's public egress block. Therefore all the return traffic was routed appropriately.

BGP advertisements were either as-path prepended or supernetted (don't remember which) such that if site A went down, site B, C, or D would get its traffic, and tunnel it via GRE to the appropriate DC hub's external segment.

The difficulty was that traffic absolutely had to flow symmetrically because of the firewalls in place, and easily could for v4 because NAT was happening at every edge.

With v6 it just didn't seem like there was any way to achieve the same routing architecture / flexibility, particularly with multi-homing into geographically disparate sites.

I'm not sure anymore where we landed, but I remember it being effectively insurmountable. I don't think it was difficult for Internet-hosted services, but the effort seemed absolutely not worth it for everything on the inside of the network.
by sph | 2026-01-03 20:29:21+00:00
Zig feels too much in flux, has some incredible ideas, but I really don't like it syntactically wise, and I really don't like how the author is so stubbornly in favour of unused-variables-as-errors which I believe it's the worst thing to ever have been invented and drives me up the wall. Documentation was still pretty bad last I checked, and that's the bare minimum before I can seriously adopt a new language.

C3 feels like home for C developers, there is a real market for language evolutions rather than revolutions (imagine Typescript). The issue is that pretty much nobody knows about C3, most posts about it never get any traction on HN, and it's hard to choose a language with no mind share for anything more serious than toys.

Odin is quite nice, has some hype behind it, deservedly. Feels like a nice improvement over C without completely throwing the baby away with the bathwater; perhaps one negative thing might be that it's so opinionated it feels less of a general purpose language than others (with the main dev focused on graphics, there's a lot of syntax sugar for that use case which feels out of place for anyone that is not writing desktop UI or games). Also, while I agree with the author's choice on not rewriting the compiler itself in Odin, as most other languages do, it doesn't strike much confidence that the author would rather develop in C++ than eat his own dog food.

I must admit I don't keep up with alternative languages much any more because I believe the Lindy effect to be a force multiplier, and for serious applications it's better to stick with something that is known to work, despite its shortcomings. You only have a few points you can spend on innovation, and if you're developing a complex application, at the very least you want a rock-solid base to build upon. This is why I'm still sticking with C for very low-level programming.

Still, all three languages are worth your time.
by superlucky84 | 2026-01-03 20:29:42+00:00
Good question.

Early termination is the most common use case, but it’s not the only thing SideEffect represents.
The name is intentionally a bit broader — it’s meant to model “effects where normal composition should stop”.

In practice, that includes things like validation failures, logging or notifications at pipeline boundaries, and error reporting or metrics.
That said, the scope is deliberately conservative.

SideEffect isn’t meant to be a general-purpose effect system.
If it were, it would quickly turn into something very close to a monad or effect framework, which I’m intentionally avoiding.
by OhMeadhbh | 2026-01-03 20:29:49+00:00
Meh. IPv4 is used to deliver Netflix to the masses and act as a tunnel for your IPv6 network. It's not how I would have set things up, but since content delivery is the primary use case for most ISPs, they're unlikely to support v6. Contrary to the "Comcast is shit" narrative, I had a GREAT experience a couple living situations ago where I got dual stack from Comcast. It just sort of worked out of the gate and whenever I had to call the support line, I was immediately transferred to someone who knew what they were talking about because I had this exotic / non-standard service.

It's sort of interesting dude says Security and Plug-and-Play weren't available in v6 since SLAAC and IPSec are mandatory parts of the spec. But sure, AH and ESP options are never as simple as they should have been and it's not impossible to pick options for your organization that don't match what a remote organization supports. I still prefer it to the crap-shoot that is TLS ChangeCipherSpec. (Though 1.2 and 1.3 aren't as bad as the old days.)

Contrary to the narrative about your parents not being able to cope with anything technical, my mom was able to configure her mac to speak to the family VPN with no problem. Of course, my mom taught me code in Lisp in the 70s and used a Sun 3/60 as her daily driver in the late 80s, so maybe that's not the best example.

Sure. V6 didn't take over the world, but neither did SNA or IPX/SPX, though I would argue v6 is MUCH more common these days than either IBM or Novell protocols. V6 is used in the corner of the internet by people who want to use V6. Maybe there's a "those who know don't tell, those who tell don't know" narrative here. I've sort of stopped evangelizing. If the main thing you worry about is watching Netflix, MMORPGing and commenting on Reddit, you don't need V6 and it does require a different bit of knowledge than setting up V4.

#OldManYellsAtClouds
by wwweston | 2026-01-03 20:29:56+00:00
Effectively no one was using XSLT at any point (certain document pipelines or Paul Ford like indie hackers being the exceptions that proved the rule). Browsers keep all kinds of legacy features, of course, and they could well have kept this one, and doing so would’ve been a decision with merit. But they didn’t, and the market will ratify their decision. Just like effectively no one was using XSLT, effectively no one will change their choice of browser over its absence.
by WarOnPrivacy | 2026-01-03 20:30:07+00:00
> Who hired former nazi torturers to kill the left wing.

I can't tell if this is a question or an assertion.

If it's a question, Pinochet utilized Nazis to torture people (ex:Colonia Dignidad) and had lots of leftists tortured and disappeared (too many to list here).

If it's an assertion, yeah.
Ask HN: What do you think of reality check based behaviour corrector app?
by tbhaxor | 2026-01-03 20:30:27+00:00
I can work on a task for hours without distraction, if I find it intriguing. But it happens in bursts, not as pre-planned day, week or month. Because of this, most planning tools fail for me, leaving me disappointed and sad. I don’t know if this is ADHD, poor discipline, or just how some people work, but I doubt I’m unique.

So here's the rough working of tool that I’m building that only records what already happened, using natural language or voice (“worked on X for Y hours”). The system parses this into structured time data and compares it against a stated goal, producing a blunt “reality check” about where time actually went and how misaligned it is. No scheduling, no timers, no gamification, just story based analysis and some steps for course correction to align with your goal.

I am not planning to profit from it; I am an engineer, not a businessman. It will be a free and open-source Telegram bot (since I've been using it a lot lately). But if someone doesn't want managed service, I'll charge just enough to cover the hosting costs and a small cut for my motivation, or I'll hire someone to work on it.
by piker | 2026-01-03 20:30:40+00:00
It’s surprising how hard it is for some people to understand this. Yes oil blah blah. A few billion bucks, but the much bigger picture is (at least in this theory) Venezuela gets a democracy and the U.S. gets a stable strategic partner in an important part of its back yard. I’m not evaluating it yet, but there is definitely a bull case for this move on the geopolitical level.
by apetresc | 2026-01-03 20:32:38+00:00
Bug report: I got to a late-middlegame position and then the bot crashed because it tried to castle illegally (after its queenside rook had already moved):

```
Uncaught Error: Invalid move: {"from":"e8","to":"c8"}
at Chess.move (chess.js:2530:23)
at cm-chessboard/:75:23
```

There didn't seem to be a way to recover besides refreshing.
by Gareth321 | 2026-01-03 20:32:42+00:00
> Is Chrome's PWA support on Android a massive glow to Android Play Store's bottom line?

Probably, but Android allows side-loading. iOS does not.

> What's iOS missing for PWA's to be a viable money-maker for companies?

Brace yourself.

1. Notifications are hobbled. This is HUGE. Silent pushes, rich notifications, NSE, reliable badge counts, and reliable delivery. This is made worse by:

2. Hobbled background priority. PWAs are aggressively suspended and killed. No long running processes. No guarantee of process execution. IndexedDB and in-memory state may be wiped at any time.

3. PWAs can’t access most system frameworks. Bluetooth (CoreBluetooth). NFC (Core NFC). Background location tracking. HealthKit. HomeKit. CallKit / VoIP. Siri Shortcuts / App Intents. AirDrop. Apple Pay (full API). CarPlay. System share extensions.

4. No access to native rendering pipelines. Performance is severely limited.

5. PWAs have unstable, purgeable memory. No persistent file storage.

6. Limited UX and lifecycle control. No termination callbacks. No suspend notifications. Reloaded arbitrarily. Back/forward gestures conflict with browser.

7. No access to native UI components like FaceID, native text fields, drag and drop across apps, context menus, and haptic feedback.

Apple has done everything they possibly can to ensure PWAs are broken on iOS.
by TimTheTinker | 2026-01-03 20:33:06+00:00
> parents don't care to protect their children. They're busy.

That is horrifying. Dictatorial takeovers feed on vulnerable and naive kids. Mao's Red Guard, Hitler Youth, the Bolsheviks, the Komsomol ... the spread of communism and other evil forms of government has always been fueled in large part by youth organizations and organizing efforts.
by tejas_dev | 2026-01-03 20:33:11+00:00
SEEKING WORK | Worldwide(India Based) | Remote

I’m a full-stack developer with 3+ years of experience building, shipping, and maintaining production web applications for startups. I work end-to-end across frontend, backend, and cloud, and I’m comfortable owning features or complete systems.

Stack: React, Next.js, Node.js, NestJS, Python (FastAPI, Django), PHP
E-commerce & CMS: Shopify, WordPress
Databases: MySQL, MongoDB, PostgreSQL
Cloud: AWS, GCP (basic), Azure (basic)
Rate: $35/hr

Remote-friendly. Open to short- or long-term freelance work.

Contact: singhkumartejas1234@gmail.com
by robomartin | 2026-01-03 20:33:59+00:00
The reaction on HN to what just happened in Venezuela is exhausting and revealing. People who have never lived under socialism, communism, dictatorship, or military rule speak with total confidence while dismissing those who have.

More than 8 million Venezuelans have fled their country, one of the largest forced migrations in modern history. They are celebrating. You are being critical. That alone should give pause.

Those condemning this action (and almost defending the oppressors) have never:

- Lived under a dictatorship where dissent leads to prison, torture, rape or disappearance
- Watched the military and police become criminal enterprises
- Seen private property and entire industries seized by the state, as happened under Chávez and Maduro
- Experienced the collapse that follows decades of corruption, repression, and ideological control

Latin America knows this story well. Argentina, Chile, Cuba, Venezuela have followed different paths with the same outcomes: repression, exile, fear, and destroyed civil society. Venezuela didn’t “fail suddenly.” It was dismantled over decades through nationalization, purges, censorship, and military collusion with organized crime.

If you claim to care about migrants, human rights, or the oppressed, you cannot only care after people escape. You cannot oppose every serious attempt to end regimes that jail, torture, and kill their own citizens while calling yourself humanitarian. That is not morality, it’s distance.

Is oil involved? Of course. Venezuela’s oil industry, built with foreign investment, was expropriated, looted, and mismanaged into ruin. But this is also about state-backed criminal networks, narcotrafficking, and regional destabilization that have killed hundreds of thousands beyond Venezuela’s borders.

If you had lived under these conditions, if your family had been broken by fear, disappearance, or exile, you would not be citing abstract “international law” to defend your oppressors. You would be hoping, every night, that someone powerful enough would intervene.

What’s missing here isn’t compassion. It is context.

Before defending dictators from the safety of a functioning democracy, have the self-awareness to ask whether you understand the reality you’re judging. Otherwise what comes through isn’t moral clarity, it’s ignorance dressed up as virtue.

https://www.youtube.com/results?search_query=venezuelan+cele...

https://www.youtube.com/results?search_query=reacciones+de+v...