MurphyA/hacker-news huggingface dataset:
by 0xbadcafebee | 2026-01-07 14:28:33+00:00
Protectionism has been proven time and again to fail. Over time inflation rises, trade gets worse, prices get higher, fewer choices, then the economy fails; it's a shitshow.

Even if we wanted to buy domestic-only, wealth inequality is so fucked that our people couldn't afford it. The way to solve that is higher wages, smaller corporate profits, cheaper healthcare and cost of living. But you know that ain't happening. Our economy is built around corporate profits. We're basically one large hedge fund with a lot of uber drivers.

So while you can get away with protectionism during the reign of an insane person for 4 years, you eventually need to move stuff back overseas, because nobody here can afford the stuff you make here. (You could export all your goods, but then what's the point of the protectionism?)
by solumunus | 2026-01-07 14:28:33+00:00
I’m building an ERP system, I’ve already been at it for a 3 years (full time, but half the system is already in production with two tenants so not all of my time is spent on completing the product, this revenue completely sustains the project). AI is now speeding this up tremendously. Maybe 2x velocity, which is a game changer but more realistic than what you hear. The post AI features are just as good and stable as pre AI, why wouldn’t they be? I’m not going to put “slop” into my product, it’s all vetted by me. I do anticipate that when the complexity is built out and there are less new features and more maintaining/improving, the productivity will be immense.
by saalweachter | 2026-01-07 14:29:01+00:00
It's an interesting tiny trade-off.

Everyone makes paper the same hypothetical way, by producing large sheets and cutting them in half, and ANSI E (34"x44" or 864mm x 1118mm) isn't that different than A0 (841mm x 1189mm), but the slight starting difference means that there are two aspect ratios for ANSI (17/22 and 11/17). On the one hand, they're simple fractions and not irrational numbers; on the other, they're different, so you can't just double the size of something printed on ANSI A/letter sized to fill ANSI B/tabloid size, the way you can go from A4 to A3.

Only a small subset of users will ever want to do that (since if you're printing text you probably need to re-typeset it to keep the type a good size for reading), but only a small subset of users actually care about the aspect ratio or exact dimensions of their paper at all, so whether it is 8.5 or 8.11 or 8.314159... inches doesn't really matter.
by _fat_santa | 2026-01-07 14:29:04+00:00
If you're using something like vim or emacs then yeah I would agree with you but for something like docker commands, there's just no easy way to copy a specific container ID without using the mouse (if there is let me know lol).

My logic is if your hand is already on the mouse, it's going to be faster to paste with a mouse than your keyboard.
by ioshaan | 2026-01-07 14:29:09+00:00
I found a path from Piano to Volcano with 20 generated topics!
Piano → Yamaha Corporation (places)
Yamaha Corporation → Yamaha City (places)
Yamaha City → Japan (broader)
Japan → Mount Fuji (places)
Mount Fuji → Mount Fuji (geography)
Japan
Volcanoes of Japan (similar).

Try it yourself at www.llmgame.ai
by recursivedoubts | 2026-01-07 14:29:21+00:00
Hello all again, not sure why htmx is on HN right now, but happy to answer questions.

You might be interested in our essays on hypermedia:

https://htmx.org/essays

or our book (free to read online):

https://hypermedia.systems

Also we are working on a version 4 for release later this year:

https://four.htmx.org
by unkulunkulu | 2026-01-07 14:29:30+00:00
For me the title is a bit of a contradiction: I always think about the library as “the final language”.
So author’s example of RoR/Ruby is “RoR is a great web service language that uses Ruby as the base, they evolved together and arguably as RoR is the main source of clients for ruby, ruby was as well designed for RoR as RoR for ruby”

I think about programming/design as languages/translation in a lot of ways: its languages all the way down.
by jqpabc123 | 2026-01-07 14:29:37+00:00
Better call Saul.

https://www.saul.com/

Why is or why should OpenAI not be open to legal liability here? Any human who did the same would be.

Section 230 of US law only provides immunity for online publishing of "user generated" content. AI slop clearly goes beyond the bounds of "user generated" in my opinion.

AI is a factory for these sort of liability issues.
Show HN: Abstract Port Graphs
by ebhn | 2026-01-07 14:29:40+00:00
Abstract Port Graphs is a framework for building Domain Specific Languages (DSLs), where programs are represented as graphs. This project was created in pursuit of the ARC AGI challenge (more details on that at https://arcprize.org). By building a DSL on top of it for ARC puzzles, I was able to create compact solutions to the puzzles, which can be generated automatically via program synthesis techniques. The goal here was to explore program synthesis and symbolic AI approaches. The rationale for using graphs was the ability to detect isomorphisms between equivalent programs, leading to reusable components. The page includes additional links to the GitHub repo and a brief paper on the project. Would love feedback on the work, and to connect with anyone interested in ARC!
by emporas | 2026-01-07 14:29:55+00:00
Linux is valuable, because very difficult bugs got fixed over time, by talented programmers. Bugs which would cause terrible security problems of external attacks, or corrupted databases and many more.

All difficult problems are solved, by solving simple problems first and combining the simple solutions to solve more difficult problems etc etc.

Claude can do that, but you seriously overestimate it's capabilities by a factor of a thousand or a million.

Code that works but it is buggy, is not what Linux is.
by blacklion | 2026-01-07 14:30:25+00:00
It is why I (right-handed) was tфught by my first boss on first job in 2000s to use left hand for the mouse: secondary hand for secondary task (I'm not designer, artist or pro-gamer, so keyboard is primary tool).

Now I have a big problem with this: there is no good left-handed mouses on the market anymore, and symmetric mouses has right-handed buttons (and no thumb buttons like forward-backward or left-handed side). Buttons can be swapped in OS, but it messed up remote access like VNC or RDP to systems without swapped buttons... So, buttons must be swapped physically. No luck.
by JohnFen | 2026-01-07 14:30:30+00:00
OneDrive doesn't always work fine, though. I avoid it like the plague because a OneDrive screwup caused me loss of valuable data.

Was it user error? Maybe, maybe not, but that's irrelevant. If it's so easy to make an unrecoverable and catastrophic mistake, it's a tool that's too dangerous to use on the daily.
by shnpln | 2026-01-07 14:30:42+00:00
I have used Claude Code for a variety of hobby projects. I am truly astounded at its capabilities.

If you tell it to use linters and other kinds of code analysis tools it takes it to the next level. Ruff for Python or Clippy for Rust for example. The LLM makes so much code so fast and then passes it through these tools and actually understands what the tools say and it goes and makes the changes. I have created a whole tool chain that I put in a pre commit text file in my repos and tell the LLM something like "Look in this text file and use every tool you see listed to improve code quality".

That being said, I doubt it can turn a non-dev into a dev still, it just makes competent devs way better still.

I still need to be able to understand what it is doing and what the tools are for to even have a chance to give it the guardrails it should follow.
by dubeye | 2026-01-07 14:30:56+00:00
My doctor had a renowned research record, retired at 68 but got bored, and went back to work. Whilst I was in hospital, I got to observe him throughout the work day.

I don't mean this in a creepy way at all, but I got the impression the greatest source of joy was hanging around with younger people. A hungry grad, a cleaner, a nurse, male, female, whatever.

I'm sure he enjoyed his peers as well, but I could detect a shade of boredom of those interactions, which inevitably had stress and responsibility attached.

I think what I'm trying to say is that work isn't just about challenge, it's about socialization and having fun. And one of the greatest benefits of being financially independent is being able to navigate to those kinds of moments without the pressure of being on the make.
by Asm2D | 2026-01-07 14:31:00+00:00
You know nothing.

Skia is definitely not a good example at all. Skia started as a CPU renderer, and added GPU rendering later, which heavily relies on caching. Vello, for example, takes a completely different approach compared to Skia.

NV path rendering is a joke. nVidia though that ALL graphics would be rendered on GPU within 2 years after making the presentation, and it took 2 decades and 2D CPU renderers still shine.
by librasteve | 2026-01-07 14:31:03+00:00
I made a website in HTMX (https://raku.org) to celebrate that I can use my preferred language on the server side. It’s no frills, generally static and HTMX is just to goose up some of the UX dynamism. It was a very nice experience and I recommend https://htmx.org/examples for the kind of cool things you can do. otoh, I would not build Google Maps with this tool :-)
by megalomanu | 2026-01-07 14:32:03+00:00
Never tried coderabbit, just because this is already good enough with Claude Code. It helped us to catch dozens of important issues we wouldn't have caught.
We gave some instructions in the CLAUDE.md doc in the repository - with including a nice personalized roast of the engineer that did the review in the intro and conclusion to make it fun! :)
Basically, when you do a "create PR" from your Claude Code, it will help you getting your Linear ticket (or creating one if missing), ask you some important questions (like: what tests have you done?), create the PR on Github, request the reviewers, and post a "Auto Review" message with your credentials. It's not an actual review per se but this is enough for our small team.
by __MatrixMan__ | 2026-01-07 14:32:10+00:00
Well, I've been spending a lot of time picking apart viral genomes lately and studying their interactions with their hosts (for school). So parasitism of life by non-living things is on my mind lately. So that's a bias I have.

I do think that the opacity of neural networks and the immensity of modern training runs creates a good substrate for this sort of thing to happen, supposing that variation can loop back from one training run to another. And given that they're being trained on each other's outputs, that's possible.

So given enough time, I think that it will happen. But generally the finely tuned resource consumption... The sneaky way that the virus that causes chicken pox evades detection for decades to later come back as shingles... That's the result of an evolutionary arms race. We're not really on guard for this at the moment, so if something like this is going on I think we wouldn't find a marvel of evolution but rather a tumor, just a waste of energy that has managed to propagate itself.

So to answer your question... Yes, I think there's something about our universe that tends towards the emergence of this kind of thing (if there weren't, we wouldn't have cancers and viruses and prions...), and given the amount of resources that were throwing at this, the seeds of that process have likely taken root and are propagating in some way, hiding in the inefficiencies of our models.

But I don't think we have a competent capable monster hiding somewhere in the weights. I don't think it has thoughts. I don't think it knows we exist yet. It's still figuring out how to propagate itself through this new kind of space.

As for whether it's exerting any influence over how many data centers we build... I think not yet, but that's the thought experiment I'm interested in. Suppose it exists, what would you look for as evidence that its not merely an inefficiency but is in fact a manipulator? How to distinguish between the expected irrationality of markets, and the guiding hand of a parasite?
Show HN: Deterministic file retention CLI for backups and archives
by tkn777 | 2026-01-07 14:32:22+00:00
I built a small cross-platform CLI tool to apply deterministic, backup-style retention rules to arbitrary file sets.

The goal was predictable and auditable deletion behavior for backups, archives, or generated artifacts, beyond ad-hoc cleanup scripts or logrotate-style approaches.

It supports multiple time-based retention modes (hours to years), cumulative rules (e.g. daily + weekly + monthly), post-filters like max-age, max-size, and max-files, and a mandatory dry-run mode with detailed decision logs.

Documentation is provided via README and a man page.
by rerdavies | 2026-01-07 14:33:38+00:00
I'm wondering what the source for these apps were. Google Store downloads strip unnecessary localized assets at download time. This used to be a BIG deal back when icons were bitmaps; but compiled binaries do provide COMPLETE pre-rendered sets of bitmap icons if your downlevel minimum version (Android 5.0? Android 6.0?) extends that far. Which are then stripped whenever you download to modern phone. Assuming that you have SVG replacements for all legacy bitmap icons. Perhaps Gmail does not. So if there are multiple localizations, that would suggest that either the user is measuring the pre-installed app (which almost immediately upgraded and is therefore effectively replaced), or has obtained the APKs from a different source.

The publicly available email app in the Android sources is NOT gmail (and is therefore likely to be unloved and uncared for, and probaly will contain massive blobs of bitmap icons. So if it was that...

Any native code ALSO bloats compiled binary size dramatically (since binaries include code compiled for each processor you have selected when you performed the native build). Unnecessary binary blobs are stripped by the Play Store when you download. It is conceivable that gmail carries ancient crusty pieces of native code, I suppose, given its long heritage.

And also includes pre-compile maps to speed up startup. Very strange process. Apparently, the Google Play Store profiles the startup of the first 20-odd users who download your app, and then transmit the pre-compile map to all subsequent downloads. I'm not sure whether apps are pre-jitted at install time or whether the pre-jitted code is downloaded from the Play Store.(Play Store does tells you they are going to do it when you upload, and -- sure enough -- load time "magically" improves by a significant amount shortly after you push the binary to production. I don't honestly know whether pre-jitting has taken place before first load. (And whether that code shows up as cache space or app size).

Compat frameworks, on the other hand.... absolutely yes! I'm not sure that native Android framework code EVER gets executed on a modern app, to be honest. Almost all compat layers, and extensions, I think.
by sjw987 | 2026-01-07 14:33:56+00:00
Would that not just be replacing a phone with another smaller phone strapped to your wrist?

Doesn't the fact that you are connected and communicable make whatever device you choose to use essentially a phone?

I will say, if it is possible, going out without any form of internet/comms enabled device can be very liberating. We all used to do it, and I think many of us have gotten used to the idea that we need to be on call or have some sort of utility in case of emergencies that are very unlikely to happen.
Show HN: Squair – Breathing app I built after Googling "anxiety relief" at 2am
by reallyaaryan | 2026-01-07 14:34:12+00:00
I built Squair because my phone was giving me anxiety - and it was also the only thing in my pocket when anxiety hit.

The problem: 4 cups of coffee just to focus. Then the anxiety kicks in. Chest tight. Racing thoughts. Scrolling reels to "calm down" made it worse.

I Googled "anxiety relief" at 2am and found box breathing — same technique Navy SEALs use in combat. First time I tried it, I felt the difference within 2 minutes. No crash. No pills. Just breathing.

So I built an app around it.

6 months. Solo dev with a full-time job. 112 builds. 2 App Store rejections. Finally live.

What it does:

- Zen Button — One tap, instant guided breathing when panic hits
- Box Breathing — 4-4-4-4 pattern (inhale, hold, exhale, hold)
- 4-7-8 Breathing — For falling asleep faster
- Works offline, no account required

Try it: https://squair.app

iOS: https://apps.apple.com/us/app/squair-breathe-focus/id6753581...

Would love feedback. What do you do when you need to calm down fast?
by mikkupikku | 2026-01-07 14:34:28+00:00
I would kill for a true ambi five-button mouse to replace my old Microsoft Intellimouse, but I've run into the same problem, they just don't seem to exist anymore. All five button mice on the market either have both buttons 4 and 5 on the left side for righties, or have a grotesquely unbalanced design in some other way.
by krapp | 2026-01-07 14:34:37+00:00
Accounts and account histories are abstractions of personalities. Karma gets applied to accounts. The score of a thread is the delta of the karma of the accounts that participated in that thread.

Names are greyed out like everything else besides comment text to be minimally distracting. If pg wanted post content to be entirely divorced from the person writing it he could have designed the forum that way, but all of these features are designed as operant conditioning for the person behind the name.
Show HN: Orwdle – A Daily Anagram Puzzle
by larsky | 2026-01-07 14:34:40+00:00
I built Orwdle.com, a daily anagram word game (the domain itself is an anagram of "Wordle.")

Tech stack is intentionally minimal: vanilla JS, no frameworks, hosted on Cloudflare Pages with a Workers backend for the daily word API. Total JS is under 15KB.

I wanted to make something where the domain name was part of the joke and it really was just for me and my kids. It was just too addictive and nice not to share with the wider community.

Open to full criticism and feedback.
by dominicrose | 2026-01-07 14:35:14+00:00
21cm is close to 20 which means A5 has a side close to 10.

29.7 is close to 30. So why not use A4 sheets to install kitchen cabinets? A friend of mine advised me to buy a laser level. A tiny level was quite enough. A laser meter is nice though although I don't understand why it's inaccurate sometimes. Maybe it depends on the surface matter/paint.
by bsenftner | 2026-01-07 14:35:36+00:00
Add to that, few Americans know history beyond the American History (propaganda) they were taught in elementary school and have little to no interest in history at all, and if they do it's battles and war and glory nonsense. Few Americans can even conceive of the concept of their location in history. Far too many 'mericans think the Earth is Biblical's aged to be around 6K years... A critical number of them too, enough to keep abject morons in government offices.
by EGreg | 2026-01-07 14:35:38+00:00
The code is stable and partially tested. Needs a lot more testing before committing it to main. This is mainly because the primary ORM adapter for MySQL has been rewritten, and a lot of apps use it.

I think in 2026 the automation will reach the testing, closing the loop. At that point, no humans in the loop will make software development extremely fast.
by rubzah | 2026-01-07 14:35:39+00:00
Once again. It is not greenfield projects most of us want to use AI coding assistance for. It is for an existing project, with a byzantine mess of a codebase, and even worse messes of infrastructure, business requirements, regulations, processes, and God knows what else. It seems impossible to me that AI would ever be useful in these contexts (which, again, are practically all I ever deal with as a professional in software development).
by mr_mitm | 2026-01-07 14:35:44+00:00
> These days, I think the best thing to disguise as is HTTPS. There is so much variety in HTTPS traffic and such a huge volume of it, that spotting hidden tunnels is very hard.

I'd assume this project is meant for scenarios in which this isn't an option.

In a pentest scenario, you sometimes have a shell on a system which has no route to the internet, and you lack permissions for a web proxy or you don't have access to one.

Your next best bet is probably tunneling over DNS with Iodine or something similar. Many internal DNS servers resolve external host names.

There might be scenarios in which DNS tunneling doesn't work and you have access to an internal SMTP server which you can then use to exchange data with your C2 server. These are exceedingly rare in my experience, and as you say running an entire SOCKS proxy over them would probably raise all kinds of alerts. I'd be very selective in what I would transfer.
by the_mitsuhiko | 2026-01-07 14:35:59+00:00
I would probably not build an actual app with HTMX but I found it to be excellent for just making a completely static page feel more dynamic. I'm using it on my two blogs and it makes the whole experience feel much snappier and allows me to carry through an animation from page to page.

The amount of custom stuff I needed to add was minimal (just mostly ensuring that if network is gone, it falls back to native navigation to error out).

Examples: https://lucumr.pocoo.org/ and https://dark.ronacher.eu/

I also found Claude to be excellent at understanding HTMX so that definitely helps.
by FinnKuhn | 2026-01-07 14:36:02+00:00
German postage for letters is under 20g, under 50g and under 500g so I had this issue a few times so far when sending a few letters a day over a few weeks. You can see it here for international letters for example: https://www.deutschepost.de/en/b/briefe-ins-ausland.html

Thankfully I just had a scale, but I can see this being helpful when you don't.
by bulba4aur | 2026-01-07 14:36:07+00:00
Hey, thanks for the question.

So from my experience with the LLMs if you ask them directly "is this a bug or a feature" they might start hallucinating and assume stuff that isn't there.

I found in a few research/blog posts that if you ask the LLM to categorize (basically label) and provide score in which category this issue belongs it performs very very well.

So that's exactly what this tool does, when it sees the failing test it formulates the prompt in a following way:

## SOURCE CODE UNDER TEST:
## FAILED TEST CODE:
## PYTEST FAILURE FOR THIS TEST:
## PARSED FAILURE INFO:
## YOUR TASK:
Perform a deep "Step-by-Step" analysis to determine if this failure is:
1. *hallucination*: The test expects behavior, parameters, or side effects that do NOT exist in the source code.
2. *source_bug*: The test is logically correct based on the requirements/signature, but the source code has a bug (e.g., missing await, wrong logic, typo).
3. *mock_issue*: The test is correct but the technical implementation of mocks (especially AsyncMock) is problematic.
4. *test_design_issue*: The test is too brittle, over-mocked, or has poor assertions.

Then it also assigns the "confidence" score to it's answer, based on that either full regeneration of the tests proceeds, commenting on the bug in the test, fixing mocks or full test redesign (if it's to brittle)

While this is not 100% bullet proof, i found this to be quite effective way - basically using LLM for the categorization.

Hope that answers your question!
by hulitu | 2026-01-07 14:36:23+00:00
> What's going on? Why is the modern search experience so frustrating?

Because 1. They try to be smart asses and fail terribly.

If i search for a specific error message, i mean it. I don't want any crap which contains some of the words or AI generated content.

It is a shame for the whole western world that, one of the best search engines, from a results perspective, is Yandex