MurphyA/hacker-news huggingface dataset:
by leejo | 2025-05-16 11:25:58+00:00
> Opting out is still customer hostile if you ask me.

That's debatable - I really dislike my own card issuer's implementation as they will ring me, rather than prompt for a OTP, which is a long process and not always convenient. Other card issuers have other implementations. That's one of the, er, issues with the protocol - a lack of consistency. There are many other problems with it.

I'm using this with a credit card, and that already has strong consumer protections if fraud should happen. I, as the consumer, do not get to opt-out of this poorly implemented protocol.

Merchants are sold the protocol with the argument that it reduces chargebacks, i.e. reduces their costs, not that it is good for their consumers. If I (or someone else) makes a payment with my card, and it passes the 3d Secure process, then the chargeback option is a liability that it taken by the issuing bank - and they shift that liability further by passing it on to the card holder: "This transaction when through 3d Secure, your charge back option for it is revoked".

That's hostile to the customer.

Like I said, I have a tonne of material for a blog post. I just need to be bothered to write it.
by VMG | 2025-05-16 11:26:31+00:00
I get it and I see the same problems as the author.

I'm working on a few toy projects and I am using LLM for 90% of it.

The result is 10x faster than if I coded it "by hand", but the architecture is worse and somewhat alien.

I'm still keeping at it, because I'm convinced that LLM driven code is where things are headed, inevitably. These tools are just crazy powerful, but we will have to learn how to use them in a way that does not create a huge mess.

Currently I'm repeatedly prompting it to improve the architecture this way or that way, with mixed results. Maybe better prompt engineering is the answer? Writing down the architecture and guidelines more explicitly?

Imagine how the whole experience will be if the latency was 1/10th of what it is right now and the tools are 10x better.
by cess11 | 2025-05-16 11:26:50+00:00
The literature on distributed systems is huge. It depends a lot on your use case what you ought to do. If you're lucky you can avoid shared state, as in no race conditions in either end of your executions.

https://www.youtube.com/watch?v=_9B__0S21y8 is fairly concise and gives some recommendations for literature and techniques, obviously making an effort in promoting PlusCal/TLA+ along the way but showcases how even apparently simple algorithms can be problematic as well as how deep analysis has to go to get you a guarantee that the execution will be bug free.
by rafram | 2025-05-16 11:26:53+00:00
Tim Sweeney is good at PR, and the media tends to fall for it.

The judge didn’t say Fortnite had to be let back on the App Store. She said that Apple needed to allow payments through external payment processors. Apple can’t force Epic to use their payment system anymore, but they absolutely still can decide they don’t want to distribute Fortnite on the App Store. It’s their store.
by elzbardico | 2025-05-16 11:27:19+00:00
I prefer to ask LLMs to help me to create highly cohesive functions, and absolutely abhor using agents with their overly verbose code, their tendency to do shotgun surgery and the inevitable regressions.

So I kind of do a top-down design and use the LLM to help me with toil or with unfamiliar things that would require me finding the right documentation, code examples, bug reports, etc, etc... LLMs with web search are great for this kind of toil elimination.

LLMs are useful tools, but they have no notion of hierarchy, of causal relationships, or any other relationship, actually. Any time they seem to have those capabilities in the code they generate, it is merely a coincidence, a very probably coincidence, but still, it is not intentional.
by DHolzer | 2025-05-16 11:27:29+00:00
I see, yeah, i am repairing a 16 channel tape machine right now. it's really nice.

For me it's about the recording and mixing process itself. I have diagnosed ADHD and i have a really hard time to focus on the production when i am working on my PC. I dont commit, i always tweak and i dont really care about the big view of the song because there is always some detail i can polish for the next 3 hours.

On a mixer and tape, i can turn down the lights and just sit there and listen and record. I dont care about the analog sound, i dont care about the inherent noise, i only care about the fact that i can sit down and actually be write music. I can basically do it all without even opening my eyes.
by laserbeam | 2025-05-16 11:27:39+00:00
The statistic is actually wrong, I misremembered. It is from Tantacrul, a designer overseeing the current design of MuseScore and the redesign of Audacity. It's a finding he had while working at microsoft on a revamped version of MS Paint (the man has since moved to greener pastures).

The actual moment is a few minutes into the section about shortcuts (of a long video trashing a piece of discontinued music software). The actual bit was that undo/redo was the most clicked button in the MS Paint interface, and that people overwhelmingly prefer the button over the shortcut. No actual number is specified.

https://youtu.be/Yqaon6YHzaU?si=uDFFQgrbZuYFifhS&t=1580

The correct statistic (which I associated with the other example in my mind) was that only 17% of users use more than 20 shortcuts.
by chapliboy | 2025-05-16 11:28:29+00:00
I am always fascinated by the kind of tech that Bret Victor works on. While I can grasp a lot of the things and how to apply them from his previous work (like 'Stop Drawing Dead Fish' etc) this newest stuff is beyond my understanding.

I would love to know more about how this whole system works and why it is so much easier to work with. Code and computation is generally so reliant on the specifics and the details, so this approach seems to be touching on something that has a fundamentally different design, and it is just really fascinating.
by mafriese | 2025-05-16 11:28:43+00:00
I never doubted that it's possible but it's way harder than identifying bank accounts. There is a massive business behind crypto tracking, that's why companies like MasterCard have acquired CipherTrace. Some years ago there was a really good article / case study from them. I think it was related to a ransomware gang and they were able to identify the threat actor's wallets through crypto tumblers and chain hopping. It's just a matter of how much money and time are you willing to invest into finding out and not a matter of possibility.
by kleiba | 2025-05-16 11:28:57+00:00
I also work in Germany and the code-switching has nothing to do with the question of precision, but simply because English is the technical language for CS. Also, Germans apparently like everything American, so some of their own words which originally existed in German (and have exactly the same meaning as their English counterpart) have pretty much fallen out of use, cf. computer / Rechner.

It's not that German lacks precision per se but most of the jargon originated in the US or even England, and rather than coming up with German translations, it has become custom to use the original English. Which, frankly, makes everyday tasks like looking up documentation or debugging a lot easier.

Compare this to French where the Académie Française makes sure that you don't have to use these nasty English words! Yikes. And if there isn't a good French translation, they just make one up - my favorite example: the word "bug" (as in programming) has a made-up "French" alternative: "bogue". As far as I understand, no-one uses it, but it exists.
by orwin | 2025-05-16 11:29:23+00:00
Yeah, I know two French people who did it (one of them avoided UK taxes as he was paid in crypto while working in the UK, the other it's muddier). I know three people in the space, and only those two were on the financial side, so to me, while Blockchain is still a legit tech, anybody using cryptocurrency I peg as a tax evader.
by moring | 2025-05-16 11:29:42+00:00
Two things that come to my mind:

1. Sometimes "lock-free" actually means using lower-level primitives that use locks internally but don't expose them, with fewer caveats than using them at a higher level. For example, compare-and-set instructions offered by CPUs, which may use bus locks internally but don't expose them to software.

2. Depending on the lower-level implementation, a simple lock may not be enough. For example, in a multi-CPU system with weaker cache coherency, a simple lock will not get rid of outdated copies of data (in caches, queues, ...). Here I write "simple" lock because some concepts of a lock, such as Java's "synchronized" statement, bundle the actual lock together with guaranteed cache synchronization, whether that happens in hardware or software.
by AStonesThrow | 2025-05-16 11:30:01+00:00
Reaching escape velocity is surely achievable without the special alignment.

The point of the alignment, and the point of the Voyager program, was to visit the outer planets.

The alignment permitted unique trajectories that facilitated close fly-bys of each planet in order to collect a maximum amount of data with each visit.

The alignment was merely a very opportune moment to jump on the gravity-assists. The extra velocity was icing on the cake.

Without the alignment and without gravity assists, you could probably reach a direct escape velocity. Gemini (the LLM) tells me that that's about 42.1 km/s. More than would get you to the Moon, for sure. But a special planetary alignment is not strictly necessary to bail out of the solar system, just some powerful rocketry. But ask yourself, who or what would leave the solar system without visiting our planets first? That seems a silly way to go!

Pioneer 10 and Pioneer 11 are out there as well, and New Horizons has only been launched in 2006.

https://en.wikipedia.org/wiki/New_Horizons

https://en.wikipedia.org/wiki/List_of_artificial_objects_lea...
by rco8786 | 2025-05-16 11:30:15+00:00
> So I do a “coding review” session. And the horror ensues.

Yup. I've spoken about this on here before. I was a Cursor user for a few months. Whatever efficiency gains I "achieved" were instantly erased in review, as we uncovered all the subtle and not-so-subtle bugs it produced.

Went back to vanilla VSCode and still use copilot but only when I prompt it to do something specific (scaffold a test, write a migration with these columns, etc).

Cursor's tab complete feels like magic at first, but the shine wore off for me.
by throwaway519 | 2025-05-16 11:30:23+00:00
> This is like the early days when people didn’t trust buying things over the internet

If you like bad analogies, why not do car analogies? For example, at least this one's accurate:

I wouldn't trust Sam Altman any more than a used car salesman. The only difference is, Sam Altman's persuaded me to pay him to sell me as a the product.
by bowsamic | 2025-05-16 11:31:14+00:00
Coding and writing is like arithmetic and algebra, use it or lose it. You don’t gain fluency by throwing everything into Mathematica.

Of course the real question is, is there any reason to be good at coding and writing, if LLMs can just do it instead? Of course it’s hard to sell that we should know arithmetic when calculators are ubiquitous.

Personally, I value being skilled, even if everyone is telling me my skills will be obsolete. I simply think it is inherently good to be a skilled human
by immibis | 2025-05-16 11:31:41+00:00
In March 2024 in Berlin, an elderly man sped down a bike lane, murdering a woman from Belgium and her 4-year-old child: https://apnews.com/article/germany-road-accident-belgium-1d3...

The punishment: His driving license was revoked: https://www.berlin.de/generalstaatsanwaltschaft/presse/press...

Germany has a reputation as strict and bureaucratic, and yet, it's apparently still legal to murder people with your car.
by maerch | 2025-05-16 11:32:05+00:00
Exactly my thoughts. It seems there’s a lot of all-or-nothing thinking around this. What makes it valuable to me is its ability to simplify and automate mundane, repetitive tasks. Things like implementing small functions and interfaces I’ve designed, or even building something like a linting tool to keep docs and tests up to date. All of this has saved me countless hours and a good deal of sanity.
by sholladay | 2025-05-16 11:32:09+00:00
It’s worth noting that, on its own, dynamic range compression (DRC) merely reduces the volume of loud sounds above a certain threshold. But it’s not usually used on its own. The added headroom provided by DRC enables the use of additional makeup gain (MG), which turns up the volume of the whole signal after the compressor, including the noise floor. The end result is that the loud sounds are just as loud as they would’ve been before DRC+MG, but the quiet sounds are louder than they would’ve been, making the overall average volume over time also higher, which is what we tend to perceive as “loud”.

Beyond any potential health effects, DRC also just sounds bad after listening for more than a few seconds. It kills the liveliness of the audio and the signal-to-noise ratio.

So why is it used? Loudness is like candy to your ears, we are drawn to it and people tend to perceive louder music as sounding better, even if it’s exactly the same except for a change to the volume knob. DRC+MG is a bit like turning up the volume knob on your behalf, except it’s worse in almost every way.

One legitimate use case for DRC+MG, and in fact one of the original justifications for its widespread use, was the rise of portable music, where you want to be able to hear all of the instruments even though you are in a loud environment like the subway, for example. But this devolved into the “Loudness Wars”.

Tasteful use of DRC, perhaps without much MG, can also help “glue” an instrument within an audio mix. I might use it on a bass guitar, for example, to keep its volume under control so it stays in the background, providing rhythm, and doesn’t accidentally become the lead.

Ideally, the base format for all audio would have little to no DRC, but there would be other versions or built-in metadata to help playback devices adjust the listening experience to the environment by enabling DRC when it makes sense to do so or if the user wants it. Just as movies can be watched with or without HDR and subtitles. Unfortunately, the audio world hasn’t progressed much in that direction.
by percyding99 | 2025-05-16 11:32:42+00:00
Thanks for the feedback! We've had a few inbounds from early stage startups that try to sell to regulated industry so our assumption here is small startups might need our tool if they are targeting highly regulated industries(we could be completely wrong tho)

Joke or not, it actually made me consider reaching out to vibe coders, but yeah we are still validating the need
by jacob019 | 2025-05-16 11:32:50+00:00
It's very fustrating when you end up spending more time tracking down bugs and cleaning up inconsistent code then it would have taken to do it right yourself in the first place. It's an important lesson. That said, there are still massive productivity gains available. If you let the model mess with your existing code base, or if it get's past a small size, it will shit all over it. The LLM needs limited scope. I find it's great for frontend work, which is what I hate doing myself. I've been having it build webcomponents, paired with targeted backend functions that wrap internal libraries that I wrote for db and API calls. Then I compose things. Careful instructions, internal documentaion for the model and well contained isolated tasks are best. The models get confused and distracted by existing code, it's ofen better to document function interfaces and use rather than showing it the source. If the code is going into production you have to read it line by line and clean it up. I've been using Aider, mostly.
by mg | 2025-05-16 11:33:21+00:00
What I witness is that many people pick a random model and expect a prompt they wrote in 10 seconds to replace an hour of coding. And then are disappointed and go back to coding manually.

For me, the magic of LLMs is that I already get an hour of coding via 30 minutes of prompting and finetuning the generated code. And I know that the ratio will constantly improve as LLMs become better and as I finetune my prompts to define the code style I prefer. I have been coding for pretty much all my life and I never felt more excited about it than I do now.

It would be cool if people shared their prompts and the resuling commits. If someone here is disappointed by the commits LLMs make, I would love to see the prompt, the commit, and which model made it.
by thunder-blue-3 | 2025-05-16 11:33:25+00:00
Mexico has so many greater problems to discuss than a few people learning the ancient tongue. 2 days ago a beauty influencer was shot dead on a live stream, and female (and male) mayors have been gunned down regularly. I couldn't care less about what they're speaking over there, I hope they take care of their basic human rights and giving their citizens dignity first.
by matheusmoreira | 2025-05-16 11:33:27+00:00
Oh people absolutely do this.

Here's a 2018 example.

https://github.com/mruby/mruby/commit/180f39bf4c5246ff77ef71...

https://github.com/mruby/mruby/issues/4062

while (l >= bsiz - blen) { bsiz *= 2; if (bsiz < 0) mrb_raise(mrb, E_ARGUMENT_ERROR, "too big specifier"); }

> bsiz*=2 can become negative.

> However with -O2 the mrb_raise is never triggered, since bsiz is a signed integer.

> Signed integer overflows are undefined behaviour and thus gcc removes the check.

People have even categorized this as a compiler vulnerability.

https://www.kb.cert.org/vuls/id/162289

> C compilers may silently discard some wraparound checks

And they aren't wrong.

The programmer wrote reasonable code that makes sense and perfectly aligns with their mental model of the machine.

The compiler took this code and screwed it up because it violates compiler assumptions about some abstract C machine nobody really cares about.
by dev_l1x_be | 2025-05-16 11:33:28+00:00
I think LLMs are great for generating the structure of your code. The only issue is that these models are amazing when you are navigating in very well documented, talked about, etc. subjects, and start to go off the rail when you are using somewhat esoteric things. The speed boost I get by generating Terraform and HTML, CSS, JS with Deepseek and Grok (sometimes asking one to review the others code) is pretty significant. My biggest disappointment is Claude. I have purchased a subscription from them but I need to cancel it. The usual ouput from 3.7 is horrenndous. I am not even sure why. The same prompt works very well with Deepseek and fails miserably with Claude.
by decafninja | 2025-05-16 11:34:21+00:00
One thing I don’t understand about modern warships - why do they carry so few offensive weapons?

American ‘Burkes and peer destroyers from some Asian navys have a shitload of VLS cells, but my understanding is that the majority of these hold anti-aircraft (defensive) missiles?

Russian ships seem to have an extremely powerful, but limited load of anti-ship and cruise missiles.

But most other navys (see - especially Europe) have rather poor armament.

In the case of the USN, you could argue that a ‘Burke’s primary role is carrier escort, and that the carrier air wing is the real offensive punch. But most other navies don’t have carriers.
by hexomancer | 2025-05-16 11:34:50+00:00
Here are some objective issues with this page that I don't think is really up to taste (honestly these are so obvious that I assume you viewed the website on mobile which is fair, I never used the mobile version. Because I don't think anyone in good conscience would argue with the terribleness of the desktop version of the website). Note that I will not include many taste-based issues with the website (like the god-awful mouse cursor) because they could be attributed to taste. The following issues are objective issues though:

- Low performance. Because the website steals cursor rendering, moving the cursor feels bad and laggy. - The icon for the "menu" looks exactly like the mouse cursor. I don't think this constitutes good design.

- Also the icon for the menu doesn't look like the extremely established menu icon (even though it changes to that when you hover over it). Initially I th ought maybe it is a dark/light mode toggle.

- Speaking of the dark mode, the page flashbangs you halfway through scrolling the page for absolutely no reason.

- The link texts are borderline unreadable in the "light" section of the page when you hover over them.
by qwertox | 2025-05-16 11:34:56+00:00
Go to AI Studio, select Gemini Pro, give it your code, or describe a problem you want to solve, and then tell it that you want to --> discuss <-- the code. That you don't want it to generate code for you, but that you want to discuss it, that you want it to comment on your code or on how to solve the problem.

This is the best way to get Gemini to be a really good assistant, unless you want to add System Instructions which precisely describe how it should behave.

Because if you just say it should solve some problem for you, it eagerly will generate a lot of code for you, or add a lot of code to the clean code which you provided.
by a7fort | 2025-05-16 11:35:09+00:00
I hope we get to that "10x better" point. I think the problem right now is people advertising LLMs as if we're there already. And it's not just the providers, it's also the enthusiasts on X/Reddit/etc that think they have found the perfect workflow or prompt.

Just like you're mentioning "maybe better prompt engineering", I feel like we're being conditioned to think "I'm just not using it right" where maybe the tool is just not that good yet.
Ask HN: Anyone with experience using scoped CSS?
by cies | 2025-05-16 11:35:15+00:00
In my experience CSS is still a major time sink on large web projects. The main things being:

1) CSS links to HTML based on strings (ids and class names) so we cannot catch typos or automate rename-refactorings, and

2) CSS is not scoped (every rule works on every element).

The lack of scoping aggravates the pain of the string based nature of CSS' coupling.

With the new @scope directive [1], which is now available in all major browser [2] (only FF lacks support), it is possible to scope CSS to a specific element. I expect this could reduce a lot of pain points in working with CSS, and hope to use it for future project.

Is there anyone here who can share their experience using @scope?

[1]: https://www.w3.org/TR/css-cascade-6

[2]: https://caniuse.com/css-cascade-scope

[3]: https://developer.mozilla.org/en-US/docs/Web/CSS/@scope

[4]: https://medium.com/@emperorbrains/mastering-css-a-deep-dive-into-the-power-of-scope-for-enhanced-styling-control-b6ea6a82a6d1
by jeremyjh | 2025-05-16 11:35:40+00:00
This tracks for me. Its tempting to see LLMs as a superpower that makes it possible to use any programming language or platform, but I have much better results in platforms I know intimately...and I think this is largely because I'm using them in much more limited ways. When I've tried to pick up new tools and frameworks and heavily use LLMs to do early scaffolding, I have experiences similar to the author.

So someone could come along and say "well don't do that then, duh". But actually a lot of people are doing this, and many of them have far fewer fucks to give than the author and I, and I don't want to inherit their shitty slop in the future.
by skdotdan | 2025-05-16 11:35:49+00:00
Personally, I use LLMs to write code that I would have never bothered writing in the first place. For example, I hate web front-end development. I'm not a web dev, but sometimes it's cool to show visual demos or websites. Without LLMs, I wouldn't have bothered creating those, because I wouldn't have had the time anyway, so in that case, it's a net positive.

I don't use LLMs for my main pieces of work exactly due to the issues described by the author of the blogpost.