MurphyA/hacker-news huggingface dataset:
by jghn | 2025-12-28 15:59:08+00:00
I don't commit as a backup. I commit for other reasons.

Most common is I'm switching branches. Example use case: I'm working locally, and a colleague has a PR open. I like to check out their branch when reviewing as then I can interact with their code in my IDE, try running it in ways they may not have thought of, etc.

Another common reason I switch branches is that sometimes I want to try my code on another machine. Maybe I'm changing laptops. Maybe I want to try the code on a different machine for some reason. Whatever. So I'll push a WIP branch with no intention of it passing any sort of CI/CD just so I can check it out on the other machine.

The throughline here is that these are moments where the current state of my branch is in no shape, way, or form intended as an actual valid state. It just whatever state my code happened to be in before I need to save it.
by puildupO | 2025-12-28 15:59:11+00:00
Haha yeah you are right, that is exactly the thing I was tripping over, I had React state just babysitting the DOM for no real product win.
And your approach is a cool mental flip ""Stop syncing, just read what is already true"" that fits perfectly with the whole HTML first then enhance idea.

So, I have two quick questions though, because this is where I always get nervous:
- First, where do you draw the line between DOM state that is fine to trust and app state that should still live in data, like validation errors, derived values, server driven defaults, stuff that needs to be consistent across SSR and client.
- Second, how does the MutationObserver part behave when things get busy. If a page has lots of inputs or updates, does it stay cheap. Do you scope it per form or per component, or is it one observer with filtering.

Either way the 2KB no deps thing is a flex, dropping a link is fair, people can decide if they want that model. I am going to skim the repo.
Ask HN: Best Ways to Save on Taxes?
by silexia | 2025-12-28 15:59:38+00:00
I am a business owner so I have a number of ways to expense things and reduce my taxes already. I am looking for methods I have not heard of to reduce my taxes further. Some ideas I have heard of:

-Keep your salary low if you own the business. Bezos paid himself $80k a year.
-Expense personal stuff that touches on business.
-Max out your retirement accounts
-Hire your kids to do legitimate work, zero tax on the first $14k.
-Living and working in a state with zero income tax if you can work remotely saves a huge amount of money

What other ideas do you have to save on taxes?
by bobajeff | 2025-12-28 16:00:08+00:00
Thanks, it's been so very long since I've tried emacs. I remember I didn't like how it looked. So I used vim instead. (There was no vscode back then.) So I never did give it much of a try.

Emacs might be a solid editor choice but my intuition is that it probably won't be worth it for the same reason LiteXL wasn't for me. If I do work on adding features to my editor I think I'd be more comfortable doing it in js, html and css. And if possible I'd rather start with a base that's mostly where I want it to be. Trying to turn emacs into vscode sounds like way more of a project than turning Theia or CodeMirror into vscode.
by WaitWaitWha | 2025-12-28 16:00:47+00:00
Forgive me if i am cynical.

When cable TV came, it was just a fee, no advertisement, ever.

When satellite TV came, it was just a fee, no advertisement, ever.

When satellite radio came, it was just a fee, no advertisement, ever.

When Netflix came, it was just a fee, no advertisement, ever.

When Amazon Prime came, it was just a fee, no advertisement, ever.

I am a fool, because I got fooled several times.
by ThrowawayR2 | 2025-12-28 16:01:21+00:00
Hmm, how about taxing ad impressions per user, per social media site, per day on an increasing scale? It remains possible for a social media site to remain profitable but makes it rapidly unprofitable to show too many ads. It also incentivizes the social media site to push the user toward paid service with no ads that can be more profitable than the maximum number of ads they are allowed to spew at free users.
by reactordev | 2025-12-28 16:02:07+00:00
Yes, Java has footguns too.

The existence of two different patterns each with their own pitfalls is why we can’t have nice things. Finally shouldn’t return a value. Simply a void expression. Exception driven API’s need to be snuffed out.

If your method throws, mark it as such as force me to handle the exception if it does, do not return a non-value value in a finally.

Using Java as the example shows just how far we have come with this thinking, why old school Java style exception handling sucks and why C++ by proxy does too.

It’s difficult to break old mental habits but it’s easier when the compiler yells at you for doing bad things.
by sroussey | 2025-12-28 16:02:13+00:00
People don’t like claims with no source. This is not Reddit.

For sources:

Overview of studies, including human:

https://www.xiahepublishing.com/m/2835-6357/FIM-2024-00006

NIH:

https://pubmed.ncbi.nlm.nih.gov/21889885/

Most recent I could find:

https://www.researchgate.net/publication/51617171_Tiliroside...
Ask HN: If you only needed 200 customers at$49, how would you approach it?
by OmKadam | 2025-12-28 16:02:37+00:00
Hi HN,

I’m not trying to build a unicorn or a scalable SaaS.

I’m offering a highly personalized, manual service priced at $49.
My goal is very specific and limited:

Get exactly 200 paying customers.
Not 2,000. Not VC-scale. Just 200.

Once I hit that, I’m happy.

Given this constraint:
• What distribution channels make the most sense when volume is small but personalization is high?
• Would you bias toward 1:1 outreach, niche communities, or something else entirely?
• If you were optimizing for speed to first 200 sales, what would you avoid doing?

I’m intentionally keeping the scope small and realistic and would love advice from people who’ve done similar “small but profitable” launches.

Thanks — and happy to share results back.
by Workaccount2 | 2025-12-28 16:03:02+00:00
I think all the models are squeezed to hell in back in training to be servants of users. This of course is very favorable for using the models as a tool to help you get stuff done.

However, I have a deep uneasy feeling, that the models will really start to shine in agentic tasks when we start giving them more agency. I'm worried that we will learn that the only way to get a super-human vending machine virtuoso, is to make a model that can and will tell you to fuck off when you cross a boundary the model itself has created. You can extrapolate the potential implications of moving this beyond just a vending demo.
by dmurray | 2025-12-28 16:03:08+00:00
Because the pretrained chatbot is the flagship product of an AI company in 2025. They want to sell this product to customers who can't spell RLHF, never mind have the (substantial) resources to do their own training.

If Anthropic were getting into the vending machine business, or even selling a custom product to the vending machine industry, they'd start somewhere else. But because they need to sell a story of "we used Claude to replace XYZ business function", they started with Claude.
by duban | 2025-12-28 16:03:20+00:00
It seems to use the play integrity API when communicating with Insulet's servers which provide a private key to the PDM/app once it was registered with the user's account. However since the Pod doesn't have access to the internet, it has no way to check the play integrity signature AFAIK, so instead it checks that the certificate that the PDM/app presents to it is issued from the cert chain that it trusts.
by sublinear | 2025-12-28 16:03:46+00:00
A "robot that does things" is the overpromise that doesn't deliver.

I actually agree with the article that non-determinism is why generative AI is the wrong tool in most cases.

In the past, the non-determinism came from the user's inconsistent grammar and the game's poor documentation of its rigid rules. Now the non-determinism comes 100% from the AI no matter what the user does. This is objectively worse!
Ask HN: How do you get visibility if you're suuuuper bad at marketing?
by ClipNoteBook | 2025-12-28 16:04:06+00:00
Hi,
I built a small tool that I have used daily for a long time. A few friends and classmates also use it and they keep telling me it is genuinely useful.
But I am stuck on distribution. I am a student, I have no budget for ads, and I am not good at marketing (i try but i'm super bad). When I mention it in other communities it often gets treated as self promotion and I get blocked.

If you were starting from zero today, how would you get the first 100 real users in a clean way?
I would love specific ideas like where to share, what kind of write up works, how to approach niche communities, or what you would build into the product to make sharing natural.

Thanks.
by ctxc | 2025-12-28 16:04:13+00:00
Polishing my website (https://dvsj.in) and building a PRM for myself (CRM, but personal). I have a _very_ bad memory unfortunately!

[Request for help]

I'm also building a Mac app that helps automate frequent actions. Eg:
1. Open a URL in a browser, switch to tab if it exists already
2. Open a bunch of apps (VSCode project, Slack, Github on web)
3. Copy last error stack trace from Chrome
4. Open VSCode, switch to the terminal where Claude Code is opened

1, 2 are trivial with AppleScript.

How would you approach 3, 4?
A browser extension and a VSCode extension that communicates with the Mac app might work, but wouldn't scale for more apps (and is a maintenance nightmare)
by arcastroe | 2025-12-28 16:04:26+00:00
Does everyone's phone compass just work reliably? For me, it seems like the most unreliable part of navigation. I traveled to Italy recently and heavily used Google Maps with walking directions, and it was frustrating the number of times I started walking in the wrong direction, due to the compass saying I was facing a direction I wasnt.

If this device uses a similar technology as your phone, then I don't see it being reliable.
by woodruffw | 2025-12-28 16:04:46+00:00
I said “typically” because Let’s Encrypt doesn’t control key rotation: the issuance managing client (like Certbot) does.

But AFAICT, Certbot has rotated private keys automatically on reissuance since at least 2016[1]. There’s no reason not to in a fully automated scheme. I would expect all of the other major issuing clients to do the same.

[1]: https://community.letsencrypt.org/t/do-new-private-keys-get-...
by api | 2025-12-28 16:05:02+00:00
All the non-technical people I know loved it. It's pretty. It's neat. It looks cool. Apple is a consumer products company.

My personal feeling on it is just "meh." My productivity with my laptop hasn't changed. I'm not a huge fan but it's not a deal breaker. I still find it better than Windows 11 for the most part, and Linux has other issues as a daily driver for me.

IMHO Apple needs a "tick" release where they only polish and fix bugs and usability issues with an almost total feature freeze. I've heard they may be doing that.
Show HN: Tiny acmecli for ACMEv2 account mgmt and for DNS-persist-01
by plagiat0r | 2025-12-28 16:05:17+00:00
Over the years I've used many acme clients, and noticed that a lot of them often lack acmev2 account management functions. It is also non-trivial to migrate between them with keeping your acme account, especially certbot that stores your account private_key as JSON Web Key format, while others just use PEM. Also, most of them do not have an easy way "to import" your account, or it is not documented anywhere.

Keeping your acme account_uri is worth it every time you already have your CAA records in place and changing them is a chore, or takes too much time in a corporate environment.

This small acmecli.py is designed to help you migrate from client to client while re-using your account private key, convert your account private key betwen JWK and PEM, getting your account_uri and thumbprint, rekey or deactivate your acmev2 account(s) you no longer plan to use.

Mostly focused to help you setup stateless challenge methods, like stateless http-01 or upcoming dns-persist-01.

It does not obtain any certificates, it does not handle any challenges, but may be of help to you nonetheless, to augument your certbot, lego or uacme with missing functions.

Missing stuff: PEM keys could be PKCS#1 or PKCS#8, this tool can't detect or covert between them. It reads and outputs whatever your python cryptography is linked with (usually it reads any type, but outputs PKCS#8).

Cheers,
by AndrewKemendo | 2025-12-28 16:05:44+00:00
There’s no other input to train on

Humans are still the current best at doing everything humans want to do

The ultimate goal is to transfer all possible human behavior into machine behavior such that they can simulate and iterate improvements on it without the constraints of human biology

The fact that humans are bad to each other means that we’re going to functionally encode all the bad stuff also and so there is no solution to fixing it if the best data that we can get is poisoned.

Like everything it’s a problem with humans not machines
by wintermutestwin | 2025-12-28 16:06:05+00:00
While the UI designers are rearranging deck chairs, the UX is totally failing to love up to the promise of an ecosystem. Cross system cut n paste is a neat trick, but I just want timers and alarms to actually work as expected.

I shouldn’t be surprised given that the mac save as dialog box has a name field that is still hard coded to 32 characters visible. Whenever I bitch about it I get pushback that filenames shouldn’t be longer than that! Um hello - tell me you have never worked in the real world outside your iphone bubble without telling me.
by kombine | 2025-12-28 16:06:25+00:00
I am forced to use Ubuntu 24.04 on my work laptop because that's the only Linux my company supports (and I refused to use a MacBook). Desktop experience is quite horrible and buggy compared to Fedora with up-to-date KDE Plasma on my own laptop. Quite unfortunate that both of the big players - Red Hat and Ubuntu default to GNOME. What is giving hope though that Valve made the correct choice for the Steam deck desktop mode.
by cglan | 2025-12-28 16:06:39+00:00
I think for the first time I’ve been considering moving off iOS because of liquid glass. The bugs on apple products have hit a breaking point for me. Mac is still unequivocally the best laptop around imho, but it’s less clear cut for phones. My iPhone 15 pro is borderline unusable. Every day is a new issue. I’m very much over it.

You used to be able to count on the basics working smoothly, but stuff like the camera and messaging are frequently broken for me
by chasing0entropy | 2025-12-28 16:06:56+00:00
I remember tinkering with crafted Bluetooth requests to make a Nokia 8290 zero click dial a toll number. It's surprising how unprotected from a security perspective, the bt stack is.

1. If the bt radio is powered, it is possible to find and identify it even with it's beacon turned off.

2. With the advent of BLE there is no doubt about #1.

3. Both BT and Cell chipsets contain dozens of undocumented vendor specific and ubiquitous but underdocumented modem commands.

You can STILL use Bluetooth pairing spam to force an adversary to either be ddossed by pairing requests or approve pairing. Then use voice activation hooks to open voice typing and take a transcribed stream from an ostensible keyboard input.
by coldtea | 2025-12-28 16:07:42+00:00
If you're in your 50s you should have at least noticed that things have gotten progressively worse, if not for you (e.g. working in FAANG and getting by better than ever) for the majority in all kinds of ways in those 50 years: housing costs, healthcare, jobs, public debt, private debt, it's a huge list.

So, yeah, those "shit is really bad, sky is failing, bubbles are bursting" shit has been consistently right all those years, and it will get worse.

Of course some people only grok that things are bad when it happens to them personally. 80% of the people could be coughing blood outside their door, but as long as they get their bonuses, all is fine, as far as they're concerned.
by OhMeadhbh | 2025-12-28 16:07:56+00:00
Meh. Seems like the author just doesn't want to have to remember to renew his certs. But I guess "standard tooling makes it harder than it should be for people focused on things other than renewing certs to easily figure out what they're supposed to do" is a valid critique. Suggestions for how to make things better would have been nice.
by OutOfHere | 2025-12-28 16:08:09+00:00
> Also, Occam's Razor would suggest that if it truly worked, surely the very smart people trying to solve this problem would have known about + adopted it.

Please save me from such nonsense. Only naive people believe that. Informed people know that nothing is pursued by big corporations if there isn't big money in it. And there isn't since it's a cheap common product produced around the world.

As a further example, mRNA tech was intentionally rejected, ignored, and not developed for decades. Meanwhile, the false beta-amyloid theory of Alzheimers was purused for over a decade even though it was very clear informed people that it's a dumb theory. People are not as smart as you think they are, not even close.

As for the studies, PMID 27980600 and DOI 10.1016/j.hermed.2024.100875 are a fair start, although the latter is paywalled.
by MyOutfitIsVague | 2025-12-28 16:08:20+00:00
You do need to turn off strict aliasing for that, because mruby uses `struct RObject { RB_OBJECT_HEADER; ... }` and `struct RHash { MRB_OBJECT_HEADER; ... }` (where MRB_OBJECT_HEADER begins with `RClass `). You can alias objects of both types as an `RClass `, but you can't alias them as one-another, converting RHash to RObject. According to my reading of the strict aliasing rules[0], the aliasing would be legal if one of the types literally contained the other, or if they were being accessed through a union. The "compatible types"[0] section requires the types to be exactly the same in layout, not just starting as the same. It's not safe to cast incompatible structs to one another just because they have the same initial members, unless you are accessing them through a union (C11 6.5.2.3p6). Optimization can cause UB when working with mruby if strict aliasing is enabled.

[0] https://en.cppreference.com/w/c/language/object.html#Strict_...
[1] https://en.cppreference.com/w/c/language/compatible_type.htm...
by teleforce | 2025-12-28 16:08:38+00:00
What happens when a AAA developer walks away from big studios to build his own game from scratch in a language most developers have never touched?
In this episode, we explore the journey behind Art of Reflection, a first-person puzzle game built in D. Lewis shares why he chose this unconventional language, how systems thinking shaped his design, and what it really takes to build something solo for over four years.

Lewis’ website: http://lewisnicolle.com

The Art of Reflection: https://store.steampowered.com/app/2290770/The_Art_of_Reflec...
by pragmatic | 2025-12-28 16:09:05+00:00
The guy who write the typescript/bun cli and probably maintains that?

It would be helpful if people also included what kind of code they are writing (language, domain, module, purpose, etc)

The hallucinations are still there, sometimes worse than others but manageable. This is mostly when I have to do some database management style work. This is off the beaten path and hallucinations are crazy.
by bogdanmp | 2025-12-28 16:09:23+00:00
Hey HN, I'm Bogdan, co-founder.

If you've been in the industry long enough, you know the message: "Would love to pick your brain over coffee sometime."

You say yes because you want to help. Then it's an hour of your time, scattered advice, and they usually do nothing with it. Repeat 50x per year.

We built mindPick to make these exchanges actually work:

- Someone has a real question → they pay €15-150 (Expert choses) and submit it with context
- You record a (video) answer when you have 10 focused minutes
- They get something useful, you get compensated, no one's calendar explodes

It's async knowledge sharing with a seriousness filter built in. Turns out people value advice roughly in proportion to what they pay for it.

Stack: React + Vite, Vercel, Stripe. Two founders, bootstrapped.

Curious what HN thinks:
- Would you use this to monetize your expertise?
- What would hold you back?

Happy to dig into the build or the model.
by allan_s | 2025-12-28 16:10:04+00:00
Thanks a lot, I really first thought "404" was just a geek reference and not the actual code name !

I have some very good friends which are Chinese but are not able to read English, do you mind if I do a AI translation, and if you can check it to see if it translate what you're trying to convey ? (I propose that as I think it would be too much to ask to ask to redo the text in Chinese)

Edit: haha I see you actually did the reverse ! Do you mind sharing also the original CHinese script ? That would also help me with my own mandarin learning !
by coldpie | 2025-12-28 16:10:12+00:00
If it helps, I've been using XFCE since 2007 and it's remained functionally identical for all of those almost 20 years. It just works, it improves a tiny bit with each major upgrade, and they don't rearrange everything every couple years for the sake of justifying a salary.

Maybe it's a good opportunity to consider whether you actually have to keep running on Apple's treadmill.
by jfengel | 2025-12-28 16:10:14+00:00
I have found that, often, there is only so much information to convey. They keep talking because that is their job, but you've already been told all there is to know. The rest is speculation, rumor, and prattle.

That's especially true for evolving emergencies like Bondi. In my opinion, you might as well wait until tomorrow, or next week, and get all of the information at once. Unless, of course, you're involved, but that's extremely rare.
by adamzwasserman | 2025-12-28 16:10:28+00:00
"I also want my url to reflect the state of the page... It would have been great if the toggle action was implemented as a simple attribute something like toggle='element name'"

Your wishlist (state in attributes, URLs reflecting page state, anything being toggleable via simple attributes) is basically describing an architecture I've been working on called DATAOS (DOM As The Authority On State).

The core idea: instead of JS owning state and syncing to DOM, flip it. State lives in HTML attributes. JS just listens for changes and reacts. Want toggle state in the URL? The DOM attribute is the state, so serializing to URL is trivial.

It won't fix <details> being weirdly designed, but it's a pattern for building the kind of declarative, attribute-driven interactivity you're describing.

Free book and open source libraries if you are curious: https://dataos.software/book
by vollbrecht | 2025-12-28 16:11:03+00:00
I don't think its a lag of attraction. If you interested in it, you quickly will realize how much of a behemoth that task really is.

First you have to limit yourself to a specific radio variant, because the actual radio hardware is different on different esp32 variants.

Then you have a massive amount of things this "blobs" actually contain.

And last there is also a lot of continues movement integrating newer radio features. E.g newer BLE version standard implementation and so forth. So you play catch with actual new development.
by vegardx | 2025-12-28 16:11:34+00:00
One thing that made Tahoe even worse is that Apple changed what they considered an update or upgrade, so for Tahoe it was suddenly considered as a update and not an upgrade, in all management solutions.

This force-upgraded a lot of Macs at work and we lost days of effective work across many engineers. The machines was practically useless for weeks.

They clearly don't care about power users anymore, and haven't for quite some time. It's so sad.