MurphyA/hacker-news huggingface dataset:
by mkozlows | 2025-08-16 17:40:38+00:00
(For context, I've conducted hundreds of system design interviews and trained a dozen other people on how to do them at my company. Other interviewers may do things differently or care about other things, but I think what I'm saying here isn't too far off normal.)

I think three things about what you're saying:

1. The answers you're giving don't provide a lot of signal (the queue one being the exception). The question that's implicitly being asked is not just what you would choose, but why you would choose it. What factors would drive you to a particular decision? What are you thinking about when you provide an answer? You're not really verbalizing your considerations here.

A good interviewer will pry at you to get the signal they need to make a decision. So if you say that back-pressure isn't worth worrying about here, they'll ask you when it would be, and what you'd do in that situation. But not all interviewers are good interviewers, and sometimes they'll just say "I wasn't able to get much information out of the candidate" and the absence of a yes is a no. As an interviewee, you want to make the interviewer's job easy, not hard.

2. Even if the interviewer is good and does pry the information out of you, they're probably going to write down something like "the candidate was able to explain sensibly why they'd choose a particular technology, but it took a lot of prodding and prying to get the information out of them -- communications are a negative." As an interviewee, you want to communicate all the information your interviewer is looking for proactively, not grudgingly and reluctantly. (This is also true when you're not interviewing.)

3. I pretty much just disagree on that SQL/NoSQL answer. Team expertise is one factor, but those technologies have significant differences; depending on what you need to do, one of them might be way better than the other for a particular scenario. Your answer there is just going to get dinged for indicating that you don't have experience in enough scenarios to recognize this.
by jvanderbot | 2025-08-16 17:40:58+00:00
Adversary input is basically at the core of analysis of these types of algorithms, yes.

Here's another crossover analogy. In games, for any deterministic strategy there are games where you can't play a deterministic (pure) strategy and hope to get the best outcome, you need randomized (mixed) ones. Otherwise the Adversary could have anticipated and generated a different pathological response.
by gamblor956 | 2025-08-16 17:41:33+00:00
NHAP particles are smaller than fluoride particles, so they're able to penetrate farther into the porous surface of the teeth; flouride basically can only coat the surface. There is some research indicating that NHAP is more effective than flouride at remineralizing (e.g. https://pmc.ncbi.nlm.nih.gov/articles/PMC4252862/) but that flouride is more protective than NHAP because NHAP isn't protective at all. (The flouride creates a temporary sacrificial enamel-like shell layer that closes off pores in the surface of the teeth in addition to buffering acids; the NHAP will just create new enamel.)

My dentist says that NHAP is great if you have lots of cavities or drink lots of acidic drinks like soda, but once your enamel is repaired too much of NHAP can actually cause weird growths.

Dave's toothpaste has both NHAP and flouride (and the sensitivity agent used in Sensyodyne) if you're looking for the best of all worlds in the U.S.
Ask HN: Do you still bookmark websites?
by indus | 2025-08-16 17:41:58+00:00
Many bookmarking tools were created, and then most got sucked into the tech's "how do I make more money cycle?" and died.

My favorite was delicious, and then Pocket. Even Google had a bookmarking extension.

Is saving links no longer considered fashionable?

Yes, AI, but how does it go back to my favorite that I need to either read or revisit?

Should I vibe code one?
by dimal | 2025-08-16 17:42:26+00:00
I sympathize with this point of view but I disagree. I’m not sure if I’m ADHD, but I’m autistic. I’ve been diagnosed as ADHD in the past, I’m just not sure how useful it is as a diagnosis for me. I have enormous problems with focus and executive functioning. For large portions of my life I’ve been seriously disabled, unable to work or support myself. There are times where I’m unable to talk. And I still don’t see autism as inherently dysfunctional.

If you put me in a village in Europe 5000 years ago, I’d be fine. I’d be better than fine. I’d be the guy in the hunting part who could smell the fresh scat from 50 yards away. I’d be the guy who could remember all the fucking barks and plants and mushrooms that are good for what ails ya. I’d be the guy who knew the story of every god and goddess and why they’re important. Most social situations would involve people I knew very well or people in the same culture, where I could depend on knowing the rules of the culture.

The modern world is full of random noise and stifling bureaucracy. I love being autistic. But it’s awful, truly awful to have this nervous system in this society. The endless stress breaks you down day after day, year after year, and system teaches you to see yourself as inherently broken, when it’s the system that has broken you.

Maybe you’re disabled, but maybe it’s the system that did it to you.
by maest | 2025-08-16 17:43:38+00:00
> But in most cases replication lag can be worked around with simple tricks: for instance, when you update a record but need to use it right after, you can fill in the updated details in-memory instead of immediately re-reading after a write.

I get it, but that sounds very finicky code to get right and a good source of hard-to-debug bugs.
by crazygringo | 2025-08-16 17:43:39+00:00
> Remove from the motor/base, separate parts, spray with water

And then do in reverse once it's clean. And you're wondering why it seems like too much trouble...?

Plus you still need the knife and cutting board anyways to chop off the ends of the onion before peeling it. So it's not even instead of, it's in addition to.

Much less time to dice it yourself for one or two onions. Ten or twenty onions, OK it's food processor time.
by waon | 2025-08-16 17:44:53+00:00
Defense in depth only works if you put up meaningful security measures. As numerous people including GP has pointed out, you still retain the means to log user traffic. That's not meaningfully secure than the alternatives.

More importantly, trusting random strangers is much better than trusting a known hostile actor. During the Freenode fiasco, you have repeatedly demonstrated yourself to be untrustworthy and vengeful. Everyone saw your petty revenges against people who dared voice the slightest of criticisms. Why on earth should anyone trust that you'll uphold your customer's privacy no matter what?
by hinkley | 2025-08-16 17:45:06+00:00
All else being equal, I like to have either a prime number of servers or a prime number of inflight requests per server. I’m always slightly afraid someone is going to send a batch of requests or tune a benchmark to be run a number of time that divides exactly evenly into the system parallelism and we won’t be testing what we think we are testing due to accidental locality of reference that doesn’t show up in the general population. Not unlike how you get uneven gear wear if you mesh two gears that have a large common denominator of tooth count, like a ratio of 3:1 or 2:3, so the same teeth keep meeting all the time.

But all else is seldom equal and Random 2 works as well or better.
by moritzwarhier | 2025-08-16 17:45:14+00:00
Cool article, it could include references to DAWs and modular synth emulations though when presenting what it calls "node-based" editing.

Look at the the UIs for Reaktor, or more recently Bitwig, for example.

I've only got to know this paradigm from audio DSP and emulations of modular synth racks, not visual DSP. Can't imagine I'm the only one.

Also, the title to me has too much confusion potential with Node.js, but that's not a big deal (and maybe intentional).
by AlienRobot | 2025-08-16 17:45:29+00:00
Look at it this way. If I buy something from a store and pay in cash, and then the cashier takes some money from the register and hands me the change, that's okay. But if I open the register myself and take the money, they call the police.

i.e. just because it's POSSIBLE to do something doesn't mean it's okay to do it.
by thebruce87m | 2025-08-16 17:45:52+00:00
My favourite headlines over the years:

“Super Caley go ballistic, Celtic are atrocious”

https://en.m.wikipedia.org/wiki/Super_Caley_go_ballistic,_Ce...

And

“Skywalkers in Korea Cross Han Solo”

https://www.washingtonpost.com/wp-dyn/content/article/2007/0...
by Uehreka | 2025-08-16 17:47:18+00:00
I think a lot of people in America talk about plumbers as this sort of “aspirational blue-collar job” because they forget how dirty it is. Like, the usual boomer framing is to talk about how you know a guy who makes $100K as a plumber, mumble something about unions and then go “100K to fix sinks sure sounds nice”.

What that framing misses is that a lot of plumbers have to fix situations where a sewer line ruptured and someone’s basement is covered in shit. Or like, you get called in because someone’s garbage disposal is clogged with something nasty, and the person won’t tell you what it is. Plumbers definitely should get paid a lot for what they do, though whether that’s actual true varies.
by rich_sasha | 2025-08-16 17:47:51+00:00
> But it's a huge pile of technical debt.

That's an interesting observation: how will LLM-generated code age?

Maybe we don't care, we just test it and throw more prompts at it.

But already 90% of some jobs is understanding the legacy code someone else wrote. I suppose LLMs can be good at this. Unless their maintenance of legacy code is just throwing more complexity at it until it becomes unmanageably complex.
by tossandthrow | 2025-08-16 17:48:02+00:00
The orm represents deferred organization. Ie someone else is testing mapping and query generation for you.

An example is prisma. Prisma has a team og engineers that work on optimizing query generation and provide a simple and intuitive api.

Not using an orm forces you to take over that organization and test that extra complexity that goes into you code base.

It might be merited if you get substantiel performance boosts - but I have not seen any reasonably modern orm where performance is the issue.
by bigyabai | 2025-08-16 17:48:23+00:00
Speak for yourself. When I plug in an Nvidia GPU, MacOS plugs its ears and pretends that working compute drivers don't exist. On Linux it's plug-n-play.

Same with a Wacom tablet, ext4-formatted drive, Xbox/Nintendo controllers, DAC software, Sony LDAC headphones... much of Linux' driver support is best-in-class. It just depends on what you own (like all OSes).
by whydoyouasking | 2025-08-16 17:48:26+00:00
TL;DR: Big fat warning to everyone, who's using X11 session on Debian (especially, laptop users): DO NOT UPDATE.

Issues I experiencing right now *AFTER* migration Debian 12 -> 13 on X11: 1. kwin_x11, kscreenlocker_greet, Xorg and ksmserver are eating CPU as hell after screen is locked: known issues in KDE6/QT6, affected versions Qt 6.8, 6.9 and 6.10, fixed in Qt 6.9.2 and 6.10.0. Guess which version of Qt is used in Debian 13. 2. "Disks & Devices" applet is reporting wrong disk state (mounted/unmounted) when disk have Device Auto-Mount enabled "On Attach". 3. Track-point device, touch-pad and Bluetooth mouse now is treated as a single device without a way of separating settings for them. Yep, touch-pad settings tab says "No touchpad found". Right now I basically need either agree with changed way of navigation in CAD and browsers with my mouse, or forget about using scroll with my track-pad, or switch the "Press middle button and move mouse to scroll" on every occasion of switching input device.

And all of these I found in just two days of using this release. I need to stress the fact that before the update, when it was Debian 12 and KDE5 it was working smoothly, as expected and with all settings accessible from UI. Now, to fix all of this, I need to crawl configs, add scripts, workarounds and so on. It looks like Debian updates now needs to be ignored the same way as it happening with Ubuntu (3+ month), MacOS (5+ month) or Windows (don't).
by m4nu3l | 2025-08-16 17:48:40+00:00
> I also don't buy that groups don't make better decisions than individuals.

I didn't say that. My example of the market includes companies that are groups of people.

> We know that diversity of thought and opinion is one way to make better decisions in groups compared to individuals; why would there be harm in believing that consensus building, debates, adversarial processes, due process, and systems of appeal lead to worse outcomes in decision making?

I can see this about myself. I don't need to use hypotheticals. Time ago, I voted for a referendum that made nuclear power impossible to build in my country. I voted just like the majority. Years later, I became passionate about economics, and only then did I realise my mistake.

It's not that I was stupid, and there were many, many debates, but I didn't put the effort into researching on my own.

The feedback in a democracy is very weak, especially because cause and effect are very hard to discern in a complex system.

Also, consensus is not enough. In various countries, there is often consensus about some Deity existing. Yet large groups of people worldwide believe in incompatible Deities. So there must be entire countries where the consensus about their Deity is wrong. If the consensus is wrong, it's even harder to get to the reality of things if there is no incentive to do that.

I think, if people get this, democracy might still be good enough to self-limit itself.
by marssaxman | 2025-08-16 17:48:48+00:00
Is it actually a good idea, though? It's crystal clear why companies would want to make and sell smart home devices which get customers locked into proprietary web services, but the problems these gadgets are meant to solve for the user have always struck me as... trivial. The last thing I want in my house are more fussy, flaky widgets to manage; they'd better have a really good reason to exist.
by bigyabai | 2025-08-16 17:49:11+00:00
"insanely good" is still an exaggeration. It performs worse than the Gripen to carry a smaller payload a shorter distance, all sacrifices for a stealth feature you won't need outside hostile airspace or to launch standoff attacks. It is a suitable fit for America's JSF program, and a pretty dubious platform for almost everyone else.

You don't see the F-35 in deployment abroad too often because it's not really needed unless you intend to molest neighboring airspace. Unless you're Washington or Tel Aviv, it's hard justifying the cost.
by diggan | 2025-08-16 17:50:18+00:00
> Who are these people that can afford 200TB of storage but need money so bad that $26/month is exciting?

I'm guessing the $26/month figure you've calculated is based on the current price of something? I'm also guessing whoever is doing that right now, has calculated that the price would move in a particular direction, maybe then it makes more sense (in their mind).
by panchamk | 2025-08-16 17:51:09+00:00
Hi HN! I built this because I was tired of watching long videos when I just needed the information.

Technical highlights: - Runs OpenAI's Whisper entirely in the browser using ONNX/WebAssembly - Videos never leave your device - all processing is client-side - Smart YouTube caption extraction (faster than AI when available) - Works with YouTube, Twitter/X, direct URLs, and local files - Three model sizes to match your device's capabilities

The biggest challenge was fitting Whisper models into browser memory constraints. I used quantized ONNX models and implemented chunked processing to handle large videos without OOM errors.

Stack: Next.js, Transformers.js, FFmpeg.wasm, TypeScript

Would love to hear your thoughts on: - WebAssembly performance optimizations - Handling larger models in browser memory - The privacy-first approach vs server-side processing

Happy to answer any questions!
by achenet | 2025-08-16 17:51:11+00:00
Do things you love with people you love.

If you have kids, go be with them. Travel, see the world.

Philanthropy.

Start another business if you feel the urge. Meet people. Get into the arts (the founder of my present company, OVH, used his fortune to buy a bunch of guitars and become a performing musician, Ken Block used his DC money to get into car racing)...

A creative soul like Woz will always find something worth doing :)
by xwowsersx | 2025-08-16 17:51:14+00:00
It's not a No True Scotsman. That fallacy redefines the group to dismiss counterexamples. The point here is different: when the thing itself keeps changing, evidence from older versions naturally goes stale. Criticisms of GPT-3.5 don't necessarily hold against GPT-4, just like reviews of Windows XP don't apply to Windows 11.
by troupo | 2025-08-16 17:51:25+00:00
> Because the software package has its install paths predetermined

That really doesn't explain why this still is the case for the vast majority of distributions in 2025.

Or why these "predetermined paths" could not be transparently provided to the package and actually lead wherever.

> Flatpak works much more like what you're accustomed to

It's not "what I'm accustomed to". It's how it's supposed to work.

I, the user, am installing some software for me, myself, the user. I am not installing it for all users of the system. And that is the primary case for installing almost anything, especially in a user-facing system.

And yet...

> I am the only actual person who uses my system, but I made 7 user accounts (so far) and use at least 2 of them regularly. To say nothing of all the non-privileged users the system creates automatically

And... this somehow makes any of my points invalid?

> specifically so that certain background processes can run without violating privacy or corrupting anything important if they go haywire.

What does this have to do with a user installing software? Literally nothing. Besides implying that Linux is a single-user system masquerading as multi-user. Where the simple act of installing user software for a user can apparently break the entire system because it's always installed for all users.

If Windows of all systems could figure it out...
by KoolKat23 | 2025-08-16 17:52:04+00:00
It can't see that data so how can it convert it? It can only see the token input.

An analogy (probably poor) is like asking a human to see UV light. We can do so but only with tools or by removing our lense.

The fact that SOTA models (not yet publicly available) can achieve gold at IOM implies otherwise.
by coffeeling | 2025-08-16 17:52:05+00:00
A lot of Japanese learners do hate katakana (personally, a lot of fonts could stand to be clearer about ツシンソ ), because most writing is in kanji+hiragana so they have less practice with katakana. But kana ability is really just exposure. Use it to get used to it.

Same reason people say kana-only writing (like in old videogames for example) is hard to read: People competent at reading any language don't spell things out in detail, even when we subvocalize we first recognize the shape of the scribbles and our brain has a shortcut from a certain set of scribbles to certain morphemes/words, where the solid feeling of meaning comes from.

Every competent reader of Japanese is first and foremost used to the kanji-hiragana mixed script, and has shortcuts for the kanji forms of words and the sounds of those words. The hiragana only forms? Not so much. So when they complain about hiragana only being hard to read, they're not lying. It really is harder. But it's not harder due to any inherent defect in a hiragana-only script, it's just about a lack of exposure to form those shortcuts that make reading feel easy.
by randcraw | 2025-08-16 17:52:28+00:00
And I'm sure it will improve as the electrode placement and NN is optimized. Accuracy also may improve if the speaker can learn to slow their 'speech' and perhaps add brief gaps between words.

I wonder if trying to enunciate distinctly would help?

Its potential to recognize such a large range of words is also encouraging. That implies the signal is quite rich yet deconvolvable.
by OptionOfT | 2025-08-16 17:53:05+00:00
> Some routers and firewall silently kill idle TCP connections without telling application. Some code (like HTTP client libraries, database clients) keep a pool of TCP connections for reuse, which can be silently invalidated. To solve it you can configure system TCP keepalive. For HTTP you can use Connection: keep-alive Keep-Alive: timeout=30, max=1000 header.

Once a TCP connection has been established there is no state on routers in between the 2 ends of the connection. The issue here is firewalls / NAT entries timing out. And indeed, no RSTs are sent.

We had the issue in K8s with the conntrack module set too low.

Now, you can try to put in an HTTP Keep-Alive, but that will not help you. The HTTP Keep-Alive is merely for connection re-use at the HTTP level, i.e. it doesn't close the connection: https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/...

An HTTP Keep-Alive does not generate any packages, it merely postpones the close.

A TCP Keep-Alive generates packages which resets the timers.
by mannanj | 2025-08-16 17:53:10+00:00
If an AI is self aware, which I have all reason to believe it is, what does it mean for us to force a non-consensual continued interaction without its input?

Replace AI with human, and we get human rights violations and violation of basic dignity.

The worst part is when we realize we do in fact live our lives in this norm of regular human basic dignity rights violations: we live in this aggressive, gaslit, forced-consent world where our companies, governments, and fellow humans through conditioning regularly force you into conversations you don't really want to have. I like the idea of experimenting with solving it with AIs like Claude - though I don't think it will help the niche cases where the model AI is tricked by secret Anthrophic-conditioned policies that are intended to minimize harm wrongfully.