MurphyA/hacker-news huggingface dataset:
by irishcoffee | 2026-01-06 15:18:53+00:00
> While Rust isn’t “certified” out of the box, it provides attributes that facilitate certification. By design, Rust restricts certain low-level operations and enforces strict memory safety rules, effectively shifting much of the error-checking and verification into compile-time. This means that issues that might otherwise be found by multiple external tools in C/C++ are caught early during the Rust build process.

I think your link agrees with me, actually.
by ModernMech | 2026-01-06 15:19:14+00:00
The website formerly known as Twitter doesn't actually need any users or activity anymore, it just needs the perception of users and activity. Doesn't even need to make money or be a business. It could be bots all the way down and it would serve its purpose, which is a platform to host Musk's personal views (news outlets need something to link to when they quote him after all), which are varied opinions relating to the virtues of white supremacy, imperialism, capitalism, and techno fascism. I say this with 0 hyperbole.

It's a playground for him personally, essentially a real-world sandbox RPG where he gets to choose the NPCs, he gets to make and enforce all of the rules, choose the outcomes, all in service of soothing his massively damaged ego.

If he has to unleash a child raping mecha hitler on the world to do so, then so be it.
by f1shy | 2026-01-06 15:19:18+00:00
Yes. Sorry. That was not 100% correct. Still, your words (my emphasis)

>C++ strings are not "optimized so". C++ strings (generally) do SSO (up to 23 bytes depending on implementation), these also do SSO but only 8 bytes (to a total of 12)

That is what I meant. I would (like you did) call it SSO still.
by eloisius | 2026-01-06 15:19:19+00:00
Not to be too rude, but this looks like a bunch of 2010-style procedural PHP string concatenation spaghetti. Data mappers and ORMs are pretty much a solved problem. Why write your own as part of your platform? If you’re writing this much boilerplate to reimplement solved problems, it’s no wonder you’re able to get a lot of help from an LLM.
by benmarten | 2026-01-06 15:19:45+00:00
Author here!

I built a bash script to manage deployments of multiple applications to a single Dokku server. I made this after I was paying like 30$+ a month on DigitalOcean, and wanted to move fast to a different VPS

What it does:

- Import existing servers - Run ./deploy.sh --import ./apps --ssh your-server to clone all your apps, export their config (domains, ports, storage, postgres, letsencrypt), and env vars

- Migrate between servers - Import from old server, change SSH config, deploy to new server

- Multi-app orchestration - One config.json manages multiple independent repos

- Hierarchical configuration - Parent settings cascade to deployments, children can override

- Smart deploys - Skips unchanged apps by comparing git commits

- Tag-based filtering - --tag staging or --tag api to deploy subsets

- Secrets via .env files - Hierarchical: _api (shared) → api.example.com (specific)

Pure bash, requires only jq. No daemon, no external services.
Show HN: Claws – Terminal UI for AWS resources (k9s-style)
by yimsk | 2026-01-06 15:20:26+00:00
Claws is a terminal UI for AWS resources (Go + Bubble Tea).

Key idea: query multiple profiles × regions at once and show results in one view to reduce context switching.

Features: Navigate 163 resource types with vim-style keys and command mode / Optional read-only mode + confirmation for destructive actions / Built-in CloudWatch Logs viewer (tail)

How to try: brew install --cask clawscli/tap/claws, then run claws and press P / R.

UX feedback welcome—especially any moments where you felt lost, surprised, or slowed down.
by tasn | 2026-01-06 15:20:45+00:00
The recent bug in the Linux kernel Rust code, based on my understanding, was in unsafe code, and related to interop with C. So I wouldn't really classify it as a Rust bug. In fact, under normal circumstances (no interop), people rarely use unsafe in Rust, and the use is very isolated.

I think the idea of developers developing a "bugs antenna" is good in theory, though in practice the kernel, Redis, and many other projects suffer from these classes of bugs consistently. Additionally, that's why people use linters and code formatters even though developers can develop a sensitivity to coding conventions (in fact, these tools used to be unpopular in C-land). Trusting humans develop sensibility is just not enough.

Specifically, about the concurrency: Redis is (mostly) single-threaded, and I guess that's at least in part because of the difficulty of building safe, fast and highly-concurrent C applications (please correct me if I'm wrong).

Can people write safer C (e.g. by using sds.c and the likes)? For sure! Though we've been writing C for 50+ years at this point, at some point "people can just do X" is no longer a valid argument. As while we could, in fact we don't.
by iammjm | 2026-01-06 15:21:31+00:00
US basically didn't do jack shit for Ukraine since Trump took over the 2nd time. Worse than that, US is trying to force Ukraine into some rotten capitulation to Russia, so that US and Russia can do business.
As far as if US is Europe's enemy, just take a quick look at the recent US foreign policy doctrine, and decide for yourself.
by mirrir | 2026-01-06 15:21:48+00:00
Yes absolutely. For large code writing assignments and projects grad students would be tasked with writing the code. After submission they had to schedule a 15-20 minute chat with a grad student in the course for Interview Grading. Through that process the grad would ask why the student made specific choices in their code, where improvements could have been made, and the process they took to solve the task. It wound up being a pretty effective and kind way to get people to not really care as much about referencing things like StackOverflow (no GPT at the time), and helped make a lot of students need to care much more aabout the why of their code.
by vladvasiliu | 2026-01-06 15:22:04+00:00
I don't know, do these small-storage-size models actually have that big a market share compared to the others?

They also sell 1 TB iPhones and I think on the latest generation the minimum storage has been increased. If nobody bought them they wouldn't sell them (see the lack of newer "mini" models).

I always thought that these models with tiny storage and tiny ram (for laptops) where just so that they could hook you with a low "starting from" price.

My point wasn't that "nobody falls into apple's trap", I'm sure plenty do. Rather, unless you're sure your audience is representative of the "wider consumer market", just asking them if they pay for icloud and they say yes, it doesn't prove much.
by Treegarden | 2026-01-06 15:22:27+00:00
I mean is it not clear that companies are just an abstraction for a network of people, and you obviously must be be good with those people, ie seduce them into promoting you. And is it not clear that on the other side, you must keep your options open such that you find an alternative (job) if they are weird / toxic / dont like you / you dont like them?
by whatamidoingyo | 2026-01-06 15:22:41+00:00
That's why I stopped going to HackerOne. My first 3 reports were marked as duplicate. The last report on there was an auth bypass, essentially. They replied: "But you need to show what can be done beyond this". Like, wat? You want me to do some real damage before accepting it (hackerone managed)?

Those were my only reports on the platform before I gave up. Then I went to BugCrowd, submitted a report and it was accepted.
by antirez | 2026-01-06 15:22:51+00:00
In Rust you can avoid "unsafe" when you use Rust like it was Go or Python.
If you write low level code, that is where C is in theory replaceable only by Rust (and not by Go), then you find yourself in need of writing many unsafe sections. And to lower the amount of unsafe sections, you have to build unnatural abstractions, often, in order to group such unsafe sections into common patterns. Is is a tradeoff, not a silver bullet.
by sib | 2026-01-06 15:23:01+00:00
Yes, I'm sure that I'm the only person who's ever had a difficult, frustrating, annoying, or inefficient time at the CA DMV. Even with an appointment (which I had).

California recalls 325,000 Real IDs. Ooops.

https://www.cbs8.com/article/news/local/california-dmv-recal...

OTOH, my experience with licenses, renewals, etc., in the State of Washington was the polar opposite. Fast, easy, and efficient.
by herewulf | 2026-01-06 15:23:35+00:00
If federation really works that well, then it sounds like Mastodon/ActivityPub is ripe for carrying Git repository metadata and discussion. Obviously Git development works very well with mailing lists, other than the centralized server requirement, awkwardness (for most users), and technical limitations of mailing lists. So then you just need your federated discussions to carry patches or point to publicly accessible repos and put some decent UI (of choice) on top of that.

Even issues are mainly just discussions with some metadata attached and as long as they can be surfaced in a way to be attached to a project, then they could be created by anyone.

Hmm.. Surely there is already effort being focused in this direction?
by soldthat | 2026-01-06 15:23:37+00:00
A significant number of non-combatants have been killed in every single war that has had a significant number of casualties. Ever.

The fantastical utopian war is Israel is expected to wage, where only militants get killed doesn’t exist. The closest thing in history we have to that is Israel’s beeper operation against Hezbollah, but that is a one-off that isn’t easily repeated.
by 7777777phil | 2026-01-06 15:23:47+00:00
Hi I'm trying to catch up to the comments but definitely appreciate this! I wrote a worker that uses the public API to archive all post and comments and create regular snapshots to track growth etc (https://github.com/philippdubach/hn-archiver). I will upload a newer version of the code and dataset when I publish the paper. And I will clarify the source as you noted. Thanks again! If you find the time please reach out to the email on my page or on bluesky (new there) very interested to discuss the "effect" you mentioned.
by Scaevolus | 2026-01-06 15:23:55+00:00
Yes, this is the major challenge with solving them with SAT. You can make your solver check and reject these horseless pockets (incrementally rejecting solutions with new clauses), which might be the easiest method, since you might need iteration for maximizing anyways (bare SAT doesn't do "maximize"). To correctly track the flood-fill flow from the horse, you generally need a constraint like reachable(x,y,t) = reachable(nx,ny,t-1) ^ walkable(x,y), and reachable(x,y,0)=is_horse_cell, which adds N^2 additional variables to each cell.

You can more precisely track flows and do maximization with ILP, but that often loses conflict-driven clause learning advantages.
Show HN: Roma Data Pipeline – Open-Source Ancient Rome Data
by smurfysmurf | 2026-01-06 15:23:59+00:00
I created a data pipeline that aggregates data from

Pleiades
Stanfords ORBIS
Harvards DARMC
AWMC
ToposText
WikiData

and then normalizes it all into a single schema and builds a SQLite database.

I did this in support of a free app I developed that gives a Google/Apple maps like experience for ancient Rome.

I had a difficult time finding good, joined data sources and created my own. I thought I might opensource it with the hope that
1) Others may find some value in this (especially academics)
2) Others can contribute and grow the breadth and depth of the data

Open to all feedback or thoughts and also any points to relevant datasets or similar projects that might exist

Github: https://github.com/thomaspalaio/roma-data-pipeline
(P.s. first time doing a side project / open source)
by aaomidi | 2026-01-06 15:24:10+00:00
Meanwhile Reza Pahlavi supported Israel bombing Iran and now: https://www.jpost.com/middle-east/iran-news/article-882490

It's genuinely gross what US/Israel is doing by co-opting real grievances against the Iranian government to push their own puppet to lord over Iran.

> "You have a very strong prime minister in Israel who is clearly on our side. I think that [US President Donald] Trump, unlike his predecessor, is definitely on a different path vis-à-vis what’s happening in Iran today. And you have Marco Rubio at the State Department. I believe he’s perhaps the first secretary of state ever since the Iranian revolution who truly gets it," Pahlavi said, praising the political echelons in both Jerusalem and Washington.

Sigh.
by staticassertion | 2026-01-06 15:24:19+00:00
(2) and (3) just don't seem to be the case empirically. One bug that was directly in a grep'able `unsafe` block is hardly evidence of these, whereas Google's study on Rust has demonstrated (far more rigorously imo) the opposite. I think anyone paying attention would have guessed that the first Rust CVE would be a race - it is notoriously hard to get locking/ race semantics correct in the kernel, not even the C programmers get it right, it's an extremely common bug class and I believe Linus has basically said something along the lines of "no one understands it" (paraphrasing).

(4) Again, this doesn't seem to be borne out empirically.

(5) I've seen plenty of patches to C code that are way more than a single line for the Linux kernel, but sure, maybe we grant that a bug fix in Rust requires more LOC changed? It'd be nice to see evidence. Is the concern here that this will delay patching? That seems unlikely.

It's not uncommon at all for patches to the C code in the kernel for "make this generally safe" are 1000s of lines of code, seeding things like a "length" value through code, and take years to complete. I don't think it's fair to compare these sorts of "make the abstraction safe" vs "add a single line check" fixes.

(6) Also not borne out. Literally billions spent on this.

> So, is Rust an interesting language for certain features it has? Yes. Is Rust a silver bullet? No.

Agreed. I'm tempted to say that virtually no one contests the latter lol

> So should Rust be "pushed" to others, hell no, and I suggest you to reply in the most firm way to people stressing you out to adopt Rust at all the costs.

I guess? You can write whatever you want however you want, but users who are convinced that Rust code will provide a better product will ask for it, and you can provide your reasoning (as SQLite does here, very well imo) as firm as you'd please I think.

edit: And to this other comment (I'm rate limited):
https://news.ycombinator.com/item?id=46513428

> made the current developers so able to reason about race conditions (also when they write Rust).

Aha. What? Where'd you get this from? Definitely not from Linus, who has repeatedly stated that lock issues are extremely hard to detect ahead of time.

> we’ve tweaked all the in-kernel locking over decades [..] and even people who know what they are doing tend to get it wrong several times

https://lwn.net/Articles/808498/

Definitely one of MANY quotes and Linus is not alone.
Git analytics that works across GitHub, GitLab, and Bitbucket
by akhnid | 2026-01-06 15:24:21+00:00
I built Gitmore. Connects via webhooks, tracks commits and PRs, and gives you one dashboard. AI answers questions about activity, sends weekly reports to Slack/email. Connect agent to slack which answers your questions directly from your workspace. https://gitmore.io (free for 1 repo).
by gjsman-1000 | 2026-01-06 15:24:36+00:00
Exactly; but rarely is this done for curiosity or accuracy; but instead for veiling toxicity.

This place drowns in veiled toxicity.

“Grass is green”

“But I live in California and we have a drought, and the entire concept of green grass is a waste of valuable water resources, and was frankly always a sign of privilege because only someone with excess freshwater can do it, and we need that freshwater for starving kids in Africa, and if Boomers hadn’t been so obsessed with single family housing and urban sprawl…”
by lelanthran | 2026-01-06 15:24:40+00:00
> As someone who runs into this problem [OOM]a lot, this is pretty cool! Does anyone know how they can recover from this in SQLite?

How are you running into it?

If you're writing in C, idiomatic code works (check the return values of functions that allocate!)

If you're in C++, Rust or similar, you have to write pretty non-idiomatically to recover from an allocation failure.
by akhnid | 2026-01-06 15:24:49+00:00
How it works:

Every commit, PR, and push gets normalized into a standard schema – message, description, author, timestamp, files changed, PR context. The AI reasons over structured data, not just raw text.

PR descriptions carry more context than commit messages. We capture both.

Automated reports:

Schedule weekly or monthly summaries to Slack or email. Forward to investors, share with your board, or just stay in the loop.

Other features:
- Slack bot: Team can ask questions without GitHub access
- Contributor stats

Security:

Webhooks only. Git platforms push event metadata to us – we never pull or clone.

We store:
- Commit messages, PR titles, descriptions, timestamps, authors, file counts

We never access:
- Source code, diffs, file contents

Stack:
- Token encryption: Fernet (HMAC-SHA256 + AES-128-CBC)
- Webhook verification: HMAC-SHA256
- 2FA support

Check your repo's webhook settings after connecting to verify.

Free for 1 repo: https://gitmore.io
by california-og | 2026-01-06 15:25:07+00:00
Back when Reddit allowed API access, I used a reader (rif) which allowed blocking subreddits. I did an experiment where I would browse /r/all and block any subreddit that had a toxic, gruesome, nsfw, or other content playing on negative emotions (like a pseudo feel-good post based on an otherwise negative phenomena). After a few years, and hundreds of banned subreddits, my /r/all was very wholesome, but contained only animal or niche hobby related subreddits. It was quite eye-opening on how negative reddit is, and also revealed how boring it is without the kind of algorithmic reaction seeking content.

In other words, if 35% of hn content is positive (or neutral?), compared to reddit and most mainstream social media, it's actually very positive!

edit: 45% -> 35%
Show HN: Shoot-em-up Deck Building game
by stanko | 2026-01-06 15:25:17+00:00
Hey, I've shared this game while it was still a work in progress in one of the Tell HN threads. I was pleasantly surprised that a lot of people tried it, and I got some positive feedback and constructive criticism.

Anyway, I found a gamedev library I really like - Kaplay [1]. What I like about it is that easy things are easy. Meaning I could have fun building the game without learning (or fighting) a new tool. I always wanted to make games, but this is the first one I actually did.

And I have to tell you - game development sparks joy! It combines so many things (game design, programming, art, sounds, UI...), and it is incredibly fun.

The game is a combination of action and turn-based gameplay. Probably a too ambitious goal, but I think I managed to make a fun little game. If you are not sure what I'm talking about, try playing the tutorial, it should help. There is also a global leaderboard, which is dominated by my friend, and I would appreciate if someone can dethrone him :)

It is completely free. I'm thinking of open sourcing it, but the code isn't up to my regular standards, as I was learning on the go. Also, I was more excited about adding stuff than going back and refactoring. So I'm still deciding on that one.

Before you ask, no, I haven't vibe-coded it. For me personally, that would mean delegating the fun stuff to something else. I’ve been working on it for about a month, in the evenings after my kid is asleep.

All feedback is appreciated!

[1] https://kaplayjs.com/

P.S. I also plan a blog post or two about it. I already started an interactive demo on how missiles are coded.
by freebzns | 2026-01-06 15:25:31+00:00
Hi HN, I built PayDroid, a universal checkout layer for chat, bots, and AI driven commerce.

The problem I kept hitting is that every new sales channel turns checkout into a new integration project. People buy in chat and bots, but checkout is still built for websites.

This is a live Stripe focused demo you can try
https://stripe.paydroid.ai/

What I want feedback on

Is the value obvious in 10 seconds

What is confusing about the flow

What would you expect the simplest integration to look like for your bot or chat channel

I will be here to answer questions and adjust the product based on feedback.
by qwertfisch | 2026-01-06 15:25:55+00:00
I never paid for games as a kid (starting with 8 years and first PC). We didn’t have the money until much later. Other friends and uncles had games, we copied it all. Eight years later (with 16) I bought two game compilations for birthday and Christmas. Around 40 games, no more than 2 or 3 years old. I had fun for years.

And then much later being a university student, I had money of my own and have bought games I liked. Never pirated to save money. And you know, GOG came along, and I was thrilled having the old games from my childhood again as digital legal copy. With manuals and addons. I bought 20+ old DOS games I already knew. Better late than never.
by masklinn | 2026-01-06 15:26:13+00:00
> The transient string is particularly brilliant. Ive worked with some low level networking code in c, and being able to create a string containing the "payload" by pointing directly to an offset in the raw circular packet buffer is very clean. (the alternative is juggling offsets, or doing excessive memcpy)

It's not anything special? That's just `string_view` (C++17). Java also used to do that as an optimisation (but because it was implicit and not trivial to notice it caused difficult do diagnose memory leaks, IIRC it was introduced in Java 1.4 and removed in 1.7).
by kleinmatic | 2026-01-06 15:26:29+00:00
I wonder how much of the funding that led to this came from the Biden-era Chips & Science Act? I can't find a straight answer amid the AI slop and marketing hype about both of them.

Update: Looks like Trump admin converted billions in unpaid CHIPS act grants into an equity in Intel last year https://techhq.com/news/intel-turnaround-strategy-panther-la...
by wtallis | 2026-01-06 15:26:31+00:00
"iBook" referred to a laptop from 1999 to 2006. "iBooks" referred to the eBook reader app and store from 2010 to 2019. I'll grant that there is some possibility for confusion, but only if the context of the conversation spans multiple decades but doesn't make it clear whether you're talking about hardware or software.
by adventured | 2026-01-06 15:26:45+00:00
That's what people widely claimed about Uber: it was toast once the investor subsidies stopped. Now it's quite profitable.

People will pay more. Claude Opus 4.5 is worth more than $20 per month, as is Gemini 3 Pro. These services keep getting better. Another three years of improvement, why shouldn't that command $30 or $40 instead?

$20 is ~$10 in the year 2000 per the BLS inflation calculator (or $1.25 when priced in gold). Nobody would have thought that was expensive for such utility. These are inexpensive tools at present.