MurphyA/hacker-news huggingface dataset:
by rvrb | 2026-01-24 20:29:16+00:00
`extern` and `packed` container types have well defined layouts. a regular `struct` is an "auto" layout - and the compiler can and will rearrange whenever it wants.

if you need a well defined layout, use `extern`. if your struct makes sense to represent as an integer, use `packed`. I think it is often ill advisable to use `packed` otherwise.

you can explore this yourself on the Type info returned from @TypeInfo(T):

https://ziglang.org/documentation/master/std/#std.builtin.Ty...

https://ziglang.org/documentation/master/std/#std.builtin.Ty...

https://ziglang.org/documentation/master/std/#std.builtin.Ty...
by mrandish | 2026-01-24 20:29:24+00:00
+1 on MOCA 2 being excellent to solve gaps in wiring. We bought a 6000 sqft 2001 house built with in-wall RJ11, lots of coax runs and some Cat5e runs (but not enough). Due to the size the house, the electrical, HVAC and cabling is roughly divided into two halves with separate electrical panels, HVAC pads, etc.

Unfortunately, all the RJ11 and alarm wiring runs to a closet in one half while all the coax and Cat5e run to a closet in the other half - with no RJ11 endpoints near the Cat5e/Coax closet and not Cat5e/Coax endpoints near the RJ11 closet (sigh). I tried Powerline data and it only works well in adjacent rooms and not at all between the halves due to separate electrical panels. Fortunately, there were a lot of coax runs set up for two separate nets (18-inch satellite and a huge attic antenna for OTA broadcast). So, by repurposing the now-unneeded antenna coax, MOCA 2.5 gbps mostly saved the day by filling in where the Cat5e should have gone but didn't.
by kelnos | 2026-01-24 20:29:54+00:00
Right. Unfortunately, people have overwhelmingly voted with their wallets, and prefer to pay with their time and attention (and ignore the fact that they're being psychologically manipulated into buying random products and services) than with actual cash.

I expect you could get some people to pay for a messaging platform, but it would be a very small platform, and your business would not grow very much. And most of your users will still have to use other (proprietary, closed) messaging services as well, to talk to their friends and family who don't want to pay for your platform. While that wouldn't be a failure, I wouldn't really call that a significant win, either.

This is why legislation/regulation is the only way to make this happen. The so-called "free market" (a thing that doesn't really exist) can never succeed at this, to the detriment of us all.
by dghlsakjg | 2026-01-24 20:29:54+00:00
It isn’t about the birthday card. It is about someone with power over you demonstrating through actions that they don’t care about you. As an alternative think of this scenario: I prepared a presentation and arranged for the entire team to attend specifically for a manager above mine who had asked for it. He ghosted the meeting, and asked for a TLDR. Every single person in that meeting felt disrespected personally, and stopped taking the issue that we were meeting about seriously.

Note: If your workplace celebrates birthdays and you don’t want yours celebrated, just ask, they will almost certainly accommodate you.
by ninkendo | 2026-01-24 20:31:34+00:00
> and you think it’s not OK to be angry?

no, it’s perfectly fine to be angry, I would be very concerned with anyone’s mental health who isn’t angry about this.

> You think we just shouldn’t discuss it at all because people are angry?

Well, if we just want to discuss how angry we are, that’s just called venting. That’s fine, vent. But don’t confuse that with discussion. I don’t find venting about how angry something makes you to be all that compelling most of the time. Sometimes someone distills the issue at hand into something very poetic and poignant, and that can sometimes be cathartic, but other than that it’s just pure emotion being tossed around and it just amplifies hatred.

> Putting our heads in the sand will not help.

Not sure where you’re drawing this conclusion that I’m putting my head in the sand. Or that people posting their outrage on HN are somehow not sticking their head in the sand, as if the dispensing of internet hot takes is somehow “doing your part” (hint: it’s not.)
Show HN: JSciPy – SciPy-inspired signal processing library for Java and Android
by hissain | 2026-01-24 20:31:41+00:00
jSciPy is an open-source Java signal processing and scientific computing library inspired by SciPy.

It focuses on FFT, filters, PSD, STFT, DCT and Android compatibility, aiming to fill the gap for DSP-heavy workloads on JVM and Android.
by reify | 2026-01-24 20:31:46+00:00
The hippo's real name is, "One Hung low", some zoo keepers called him by his nickname "One".

Other zoo keepers called him "Neo" or "The One", from the matrix, "You are Neo. You are the One" quote. Neo is after all an abbreviation of One.

A few weeks after the castration, The zoo keeper caught "The One" firing blanks over the fence at the female hippo's.

At the same time "The One" was heard shouting over the fence "Dodge this" (Another Matrix quote) to the female hippo's.

Poor old "One" was put down a few weeks later.
by UncleMeat | 2026-01-24 20:31:57+00:00
They haven't just tolerated it. They've decided that cops are deserving of nearly unlimited reverence and they've actively supported the increased funding and militarization of cops. Police unions have become right wing political agitators from within the state apparatus.

Cops are doing what they were doing in the jim crow era: enforcing a strict caste system with violence.
by daxfohl | 2026-01-24 20:32:04+00:00
I want it to generate better code but less of it, and be more proactive about getting human feedback before it starts going off the rails. This sounds like an inexorable push in the opposite direction.

I can see this approach being useful once the foundation is more robust, has better common sense, knows when to push back when requirements conflict or are underspecified. But with current models I can only see this approach as exacerbating the problem; coding agents solution is almost always "more code", not less. Makes for a nice demo, but I can't imagine this would build anything that wouldn't have huge operational problems and 10x-100x more code than necessary.
by zahlman | 2026-01-24 20:32:32+00:00
Direct multiple-paragraph quote:

> The Department of Homeland Security (DHS) posted on X further details about what led up to the shooting. "DHS law enforcement officers were conducting a targeted operation in Minneapolis against an illegal alien wanted for violent assault, an individual approached US Border Patrol officers with a 9 mm semi-automatic handgun, seen here," the post reads.

> O'Hara said that Pretti was a “lawful gun owner” with a permit.

> "The officers attempted to disarm the suspect but the armed suspect violently resisted. More details on the armed struggle are forthcoming."

> The DHS wrote that when a federal agent feared for his life, "an agent fired defensive shots." The post also noted that the "suspect" had "2 magazines and no ID."

By any ordinary reading of prose, the article is attributing the quote to O'Hara.
by input_sh | 2026-01-24 20:32:40+00:00
Okay, what about three sentences above that one?

> Before Haiket, Alex founded a number of technology start-ups and helped develop innovative voice solutions for Facebook and Google.

At the very least, I think it's safe to say he has some connections within Meta that he utilised for this purpose. He's definitely not a complete outsider whose startup (with no actual product) just happened to be picked by Meta.
by nickpsecurity | 2026-01-24 20:33:07+00:00
A one-way link (data diode) transmits it to a box with simplified hardware (eg RISC architecture). The box has a dedicated monitor and keyboard. Once you're finished, you sell the box on Craiglist. Then, buy a new, sealed replacement from Best Buy.

Pay per view was an expensive, business model for cable. For PDF's, it's even more expensive.

Note: It's more convenient than full, per-app, physical security.
by toomuchtodo | 2026-01-24 20:33:54+00:00
One should expect substantial flux of data available under the current administration.

https://hn.algolia.com/?q=data.gov

https://news.ycombinator.com/item?id=42974533

https://news.ycombinator.com/item?id=42970039

https://news.ycombinator.com/item?id=42881367

https://news.ycombinator.com/item?id=42876055
by prewett | 2026-01-24 20:34:45+00:00
The individual dynasties, however, lasted about 250 years each, like the others listed. China also got taken over by the Mongols in the mid-1200s, (retaken by Han Chinese a century later), and then by the Manchurians in the mid-1600s. Chinese civilization, not just the government, got taken over by European rationalism/modernism in 1940s with the Communist Revolution. (It's ironic that the Chinese government talks complains about "Western influences", when their whole governmental ideology is based on European ideas.)
by BenjiWiebe | 2026-01-24 20:35:02+00:00
'man bash'. Type G. Press PgUp until you see the FILES heading (took one press for my terminal size). There's your list of files. Alternatively, instead of G and PgUp, type /FILES<Enter>.

Of course, this doesn't help at all when software either doesn't have manpages, or doesn't include the list of files in the manpage. Just nitpicking your bash example.
by kxbnb | 2026-01-24 20:35:31+00:00
Nice approach - fail-closed decision logging is the right default. Too many systems treat audit as best-effort, which defeats the purpose when you're investigating an incident.

The framework-agnostic design makes sense for adoption. One thing we've found tricky at keypost.ai is policy composition - when you have overlapping constraints (rate limits + role-based access + cost caps), determining which rule "wins" needs explicit precedence. Does SudoAgent have opinions on conflict resolution, or is that left to the Policy implementation?

Also curious about the human approval latency in practice - do you see teams using it for truly synchronous gates, or more as a "review queue" pattern where work gets batched?
Show HN: I built a no-sign up extension to help tab hoarders(Vanilla JavaScript)
by sanjayreddy571 | 2026-01-24 20:35:56+00:00
It's called ADHD Tabs. I'm a student with 3 months left to graduate, but no job yet. I must be on my toes, apply to jobs, and stay consistent, etc. However, with ADHD, it's just not easy to stay focused. I built this free Chrome extension to mitigate mine and my peers' impulsive tab opens. Hope it helps you, too!
by sensanaty | 2026-01-24 20:35:58+00:00
Or I mean, just treat people as human beings and let them deal with family emergencies? I'm in the Netherlands and I don't think I've ever had a manager that would say anything other than "Take all the time you need" (and genuinely meant it) for a family member who either died or is in hospital/got injured etc. I'm sure there's a minuscule chance of someone abusing this by lying, but I find that if you don't treat people like shit in the first place, they're not gonna lie about stuff like this.
by krapp | 2026-01-24 20:36:19+00:00
But people on HN are angry in non-political threads all the time, to the point that there are several items in the guidelines about it (the latest being "don't be curmudgeonly".)

And not everyone in every political thread is simply expressing anger. The majority of comments in this very thread are reasonable. The ones that aren't have been flagged, which is proper.

But flagging all political threads for "anger," regardless of the actual anger on display, while being far more lenient towards it elsewhere (no one is flagging every thread where someone expresses rage about javascript or AI or the modern web) seems hypocritical.
by dang | 2026-01-24 20:36:21+00:00
People have been making a version of this argument for as long as I've been doing this job. There is always a feeling of this-time-is-different, how-can-you-not urgency. I'm not saying that's wrong, but there's a counterargument. The counterargument is that political flames have a way of consuming everything they touch and that if we had listened to this argument in the past, HN would have ceased to exist years ago.

I believe that the bulk of this community favors the counterargument, and that it would be a big mistake to let political passions dominate how the site is operated, since it would be the end of the site. We think a website that's not dedicated to politics and political battle has a right to exist, and I believe most people here agree with us about that and are grateful that we haven't pulled the plug at moments of pressure.

I'm not saying anything radical here - this is the standard way that HN has always operated, and I'm repeating what I've always said:

https://news.ycombinator.com/item?id=26253103 (Feb 2021)

https://news.ycombinator.com/item?id=25785791 (Jan 2021)

https://news.ycombinator.com/item?id=23380817 (June 2020)

https://news.ycombinator.com/item?id=20453883 (July 2019)

https://news.ycombinator.com/item?id=16968668 (May 2018)

https://news.ycombinator.com/item?id=16581518 (March 2018)

https://news.ycombinator.com/item?id=16402648 (Feb 2018)

https://news.ycombinator.com/item?id=15948011 (Dec 2017)
by pbhjpbhj | 2026-01-24 20:36:43+00:00
Gimp would have to be the extreme example of this. I used to recommend Krita to people, despite it being less appropriate for photo editing, just to avoid using 'Gimp' in work/polite scenarios.

I agree - "Birdy" is the name used with infants when talking about birds, or is a bird toy that photographers use to distract people ... which is a bit too close to the truth, perhaps.

To me it also suggests 'a toy version of Twitter'; and Twitter already had enough negativity around it for me.
by 93po | 2026-01-24 20:36:47+00:00
> but rather clarify the reasoning why this specific story was not considered as one of the few stories where such action was taken.

i think if you read more past discussions around moderation (including one dang directly linked) the reason for this would be obvious. read the search results for flags being turned off.

moderators try, as they said, to let the community moderate itself. they try to impress very little bias into the system. but they do try to promote constructive and interesting conversation, and the more things deviate from that mission, the less likely it is to be actively encouraged to be on HN

the likelihood of the conversation around this news post is very unlikely to be interesting and constructive. people have very entrenched beliefs and no one's mind is going to get changed from emotionally loaded comments on this post

additionally, this is now also the third post of this nature to be on HN in the past weeks, and there's unlikely to be anything new to the conversation added this time that wasn't covered by the previous thousands of comments on previous submissions

they are not actively reducing the visibility of this post. they're just declining to artificially inflate its visibility above the same criteria 99% of submissions also have
by Bender | 2026-01-24 20:37:00+00:00
Would you trust an AI coworker with shell access to your infrastructure?

I would not, most legal departments would not, all CSO's and compliance officers would not if someone explained it to them honestly. I have no doubt some will be tricked into approving such a thing and will try to back-peddle when it backfires on them.

Would you ever try something like this?

No I would not but I have only worked for companies with highly sensitive data, financial data, credit card data, proprietary code and data.

What safeguards would you absolutely require?

The entire AI stack would need to be written and maintained by the same company it is running in and all of the data must be stored in that companies data-centers. The interface must be behind multi-factor authentication and a corporate VPN running in the data-center. It would need to be audited by internal auditors, red team pen testers, external 3rd party code and infrastructure pen-testers and would have to go through the strictest change control. Every action by the AI must be highly audited real time and every action must be predictable and reproducible. No third party connections whatsoever. Any attempts to connect outbound must trigger and immediate mandatory all hands on deck response. The entire stack both client, agent and servers must run entirely within the data-center and not someones laptop regardless of how locked down their workstation or laptop is.

And that is even before factoring risks such as hallucinations, confidently accepting its own incorrect decisions. Blaming the AI for downtime, leaking customer data, leaking intellectual property would not be acceptable.
by cajazzer | 2026-01-24 20:37:12+00:00
Yes — definitely interested in the client side, especially where it intersects with core system design rather than just presentation.

Both native markdown rendering and non-linear / branching conversation models are areas I’ve been thinking about as well, particularly as systems move beyond linear chat and into more exploratory or agent-driven workflows.

Would be curious to hear more about what you experimented with and what tradeoffs you ran into, especially on the data model and UI side.
by serial_dev | 2026-01-24 20:37:14+00:00
Well, it certainly depends on the culture of the team and organization.

Where you have shared ownership, meaning once I approved your PR, I am just as responsible of something goes wrong as you are and I can be expected to understand it just as well as you do… your code will get reviewed.

If shipping is the number one priority of the team, and a team is really just a group of individuals working to meet their quota, and everyone wants to simply ship their stuff, managers pressure managers to constantly put pressure on the devs, you’ll get your PR rubber stamped after 20s of review. Why would I spend hours trying to understand what you did if I could work on my stuff.

And yes, these tools make this 100x worse, people don’t understand their fixes, code standards are no longer relevant, and you are expected to ship 10x faster, so it’s all just slop from here on.
by troyvit | 2026-01-24 20:37:30+00:00
> forking is easy, sustaining is hard. Forking code is cheap, sustaining a living project is not.

This what I wish people would remember before they complain that some feature they can barely verbalize isn't in the codebase. They deserve the "just fork it" slam because they can't imagine that actually, a maintainer's life is already hard enough.
by kelnos | 2026-01-24 20:37:40+00:00
Is it? My experience with it has been middling at best, and I communicate with exactly zero people through Matrix outside of the context of open source projects.

The UX is still pretty bad, with many rough edges around sign-in and device verification. The message/encryption story has gotten better (it's been a long time since I've gotten spurious errors about being unable to decrypt messages), but it's still not particularly easy to use. Performance-wise I've found it to still be fairly bad; loading messages after I've been offline takes a noticeable amount of pause, something I rarely see with other messaging platforms.

On the plus side, Matrix does have many chat features that many people like (or even require) in a chat platform, like formatting, emojis, message reactions, threads, etc.
by user5994461 | 2026-01-24 20:37:50+00:00
Old houses should have 1 extra socket in the master bedroom at the very least, because the master of the house was expected to plug a phone in there, back in the days. (my parents and grandparents all have one).

Incidentally, this is likely to be the furthest room on the furthest floor, so it can be a good place to add a wifi access point for coverage.
by kxbnb | 2026-01-24 20:37:58+00:00
We're building this at keypost.ai - the enforcement point is a proxy that sits between the agent and MCP servers. Tool calls go through the proxy, get evaluated against policy, and either pass or get blocked before reaching the actual tool.

The key insight: policy evaluation has to happen outside the agent's context. If the agent can reason about or around the policy, it's not really enforcement. So we treat it like a firewall - deterministic rules, no LLM in the decision path.

What we've found works:
- Argument-level rules, not just tool-level ("github.delete_branch is fine, but only for feature/* branches")
- Rate limits that reset on different windows (per-minute for burst, per-day for cost)
- Explicit rule priority for when constraints conflict

The audit trail piece is critical too. Being able to answer "why was this blocked?" after the fact builds trust with teams rolling this out.

Curious what failure modes people have actually hit - is it more "agent tried something it shouldn't" or "policy was too restrictive and blocked legitimate work"?
by kxbnb | 2026-01-24 20:38:35+00:00
The middleware proxy approach unop mentioned is the right pattern - you need an enforcement point the agent can't bypass.

At keypost.ai we're building exactly this for MCP pipelines. The proxy evaluates every tool call against deterministic policy before it reaches the actual tool. No LLM in the decision path, so no reasoning around the rules.

Re: chrisjj's point about "fix the program" - the challenge is that agents are non-deterministic by design. You can't unit test every possible action sequence. So you need runtime enforcement as a safety net, similar to how we use IAM even for well-tested code.

The human-in-the-loop suggestion works but doesn't scale. What we're seeing teams want is conditional human approval - only trigger review when the action crosses a risk threshold (first time deleting in prod, spend over $X, etc.), not for every call.

The audit trail gap is real. Most teams log tool calls but not the policy decision. When something goes wrong, you want to know: was it allowed by policy, or did policy not cover this case?
by kxbnb | 2026-01-24 20:39:18+00:00
Nice work - the "deploy-friendly guardrails" framing resonates. Too many MCP tools assume local dev only.

To your question about what bites first: in our experience at keypost.ai, the order is usually:

1. *Auth* - OAuth token refresh edge cases, especially when agents run long tasks that span token expiry
2. *Rate limits* - not having them, then having them but too coarse (per-tool vs per-endpoint vs per-argument)
3. *Observability* - specifically, correlating agent intent with actual tool calls when debugging why something failed
4. *Sandboxing* - usually comes up after the first "oops" moment

One pattern we've found useful: separating "can this identity call this tool" (auth) from "should this specific call be allowed" (policy). They're often conflated but have different failure modes and different owners (security team vs product team).

Curious how you're handling policy in PolyMCP - is it config-driven or code-driven?
by wiether | 2026-01-24 20:39:28+00:00
Because manager have budgets that are translated in human hours/days of work.
So they need to know the cost of each feature to decide which they're going to pick with their budget and deadlines.

Think of managers as kids in a toy/candy shop with a $X bill in hand.

If items don't have price, how are they suppose to choose? They want everything, but they are limited by their budget.
by randito | 2026-01-24 20:39:55+00:00
Great link. I've always been drawn to sqlite3 just from a simplicity and operational point of view. And with tools like "make it easy to replcate" Litestream and "make it easy to use" sqlite-utils, it just becomes easier.

And one of the first patterns I wanted to use was this. Just a read-only event log that's replicated, that is very easy to understand and operate. Kafka is a beast to manage and run. We picked it at my last company -- and it was a mistake, when a simple DB would have sufficed.

https://github.com/simonw/sqlite-utils
https://litestream.io/