MurphyA/hacker-news huggingface dataset:
by infecto | 2025-05-16 11:56:23+00:00
These all-or-nothing takes on LLMs are getting tiresome.

I get the point you’re trying to make, LLMs can be a force multiplier for less experienced devs, but the sweeping generalizations don’t hold up. If you’re okay with a higher tolerance for bugs or loose guardrails, sure, LLMs can feel magical. But that doesn’t mean they’re less valuable to experienced developers.

I’ve been writing Python and Java professionally for 15+ years. I’ve lived through JetBrains IDEs, and switching to VS Code took me days. If you’re coming from a heavily customized Vim setup, the adjustment will be harder. I don’t tolerate flaky output, and I work on a mix of greenfield and legacy systems. Yes, greenfield is more LLM-friendly, but I still get plenty of value from LLMs when navigating and extending mature codebases.

What frustrates me is how polarized these conversations are. There are valid insights on both sides, but too many posts frame their take as gospel. The reality is more nuanced: LLMs are a tool, not a revolution, and their value depends on how you integrate them into your workflow, regardless of experience level.
by cbm-vic-20 | 2025-05-16 11:56:31+00:00
I've got over 30 years of professional development experience, and I've found LLMs most useful for

* Figuring out how to write small functions (10 lines) in canonical form in a language that I don't have much experience with. This is so I don't end up writing Rust code as if it were Java.

* Writing small shell pipelines that rely on obscure command line arguments, regexes, etc.
by knome | 2025-05-16 11:56:38+00:00
if they're going to be arbitrarily against env vars, like CURL_HOME, CURL_SSL_BACKEND, CURL_CA_BUNDLE, or the other dozen-ish variables curl already checks, an option in could .curlrc seem reasonable.

of course, having a CURL_ALLOW_ONION would allow the oniux program to set it, which would very easy and straight forward for both sides.

alternately, oniux could itself run a proxy and set the appropriate proxying environment variable, like HTTPS_PROXY. This would have the advantage of curl not having to do anything, but would add a rather ugly bit of complication to oniux.

seeing as the ability to run and inform curl of a proxy means oniux can already bypass the onion blocking with an envvar, adding one specifically to do that is convenient for callers, and does not expose the user to parent programs controlling onion exposure any more than it already does.

at best you could argue that requiring a full proxy makes it slightly harder for naive users to accidentally expose themselves since it would raise the bar for exposure from what curl knows, being the env var, to what curl has, in the form of an available proxy endpoint, but this isn't really a great excuse not to implement the CURL_ALLOW_ONION env var.

it's nice that curl is helpful for blocking by default, but having curl require the user to jump through hoops to unblock onion is a bit much.
by cmcaleer | 2025-05-16 11:56:45+00:00
> it would be great if we discussed the substance of the points.

Sure, just read the sentence from my response that you skipped over.

To be clear: I didn't implicitly suggest that your mindset of people who use crypto somehow ceding their right to protection from the state was inappropriate, I stated outright that it was a disturbing and callous mindset.

It's like suggesting that people who protest against police brutality shouldn't get protection from the police in emergency situations, or believe people who are racist to healthcare workers should lose all right to healthcare. The type of mindset held by those who care more about retribution against those who hold different views than a just society.
by meander_water | 2025-05-16 11:57:18+00:00
The thing most LLM maximalists don't realize is that the bottleneck for most people is not code generation, it's code understanding. You may have doubled the speed at which you created something, but you need to pay double that time back in code review, testing and building a mental model of the codebase in your head. And you _need_ to do this if you want to have any chance of maintaining the codebase (i.e. bugfixes, refactoring etc.)
by diggan | 2025-05-16 11:57:32+00:00
I basically learned programming by ExpertSexchange, Google (and Altavista...), SourceForge and eventually StackOverflow + GitHub. Many people with more experience than me at the time always told me I was making a deal with the devil since I searched so much, didn't read manuals and asked so many questions instead of thinking for myself.

~15 years later, I don't think I'm worse off than my peers who stayed away from all those websites. Doing the right searches is probably as important as being able to read manuals properly today.
by nottorp | 2025-05-16 11:57:42+00:00
I'll raise you 7. If i recall correctly. At my tiny workplace we once hired someone to do a simple industrial web site that wasn't likely to ever have more than 2000 users and 10k "entities" in the database.

7 is the number of different AWS services he managed to use for just a prototype.

We thanked him and rewrote the thing.
by arp242 | 2025-05-16 11:57:50+00:00
The thing is I can understand wine tasting, or microtonal music, or poetry, or lots of other things. I don't really "get" those things either, but I can see how it's something that other people do "get". I do understand it on some level.

But this kind of stuff ... I don't really understand how anyone can say something like that with a straight face. But maybe that's just a failure of empathy on my part *shrug*
by mrighele | 2025-05-16 11:57:53+00:00
I have been trying LLMs in a couple of new small projects recently.

I got more success that I hoped for, but I had to adjust my usage to be effective.

First of all, treat the LLM as a less experienced programmer. Don't trust it blindly but always make code review of its changes. This gives several benefits.

1) It keeps you in touch with the code base, so when need arise you can delve into it without too much trouble

2) You catch errors (sometimes huge ones) right away, and you can have them fixed easily

3) You can catch errors on your specification right away. Sometimes I forget some detail and I realize it only when reviewing, or maybe the LLMs did actually handle it, and I can just tell it to update the documentation

4) You can adjust little by little the guidelines for the LLM, so that it won't repeat the same "mistakes" (wrong technical decisions) again.

In time you get a feeling of what it can and cannot do, where you need to be specific and where you know it will get it right, or where you don't need to go into detail. The time required will be higher than vibe coding, but decreases over time and still better than doing by myself.

There is another important benefit for me in using an LLM. I don't only write code, I do in fact many other things. Calls, writing documentation, discussing requirements etc. Going back to writing code requires a change of mental state and to recall into memory all the required knowledge (like how is the project structured, how to use some apis etc.). If I can do two hours of coding it is ok, but if the change is small, it becomes the part where I spend the majority of time and mental energy.

Or I can ask the LLM to make the changes and review them. Seeing the code already done requires less energy and will help me reminding stuff.
by anonzzzies | 2025-05-16 11:57:57+00:00
> until you've learned to use it

You have the copilot mode which takes no learning at all which might give you some speedup, especially if you are doing repetitive stuff, it might even 10x+ you.

You have cmdk mode which you need to prompt and seems to he a lobotomized version of chat. I find putting comments and waiting for the copilot mode to kick in better as then the way we got there is saved.

Then there is agentic editing chat: that is the timewaster you speak off I believe, but what is there to learn? Sometimes it generates a metric ton of code, including in legacy massive code bases, that help, and often it just cannot do whatever.

I don't think these cases you make, or at least, when the second one goes beyond the basics, are different. There is nothing to learn except that you need read all the code, decide what you want in tech detail and ask that of the agentic chat. Anything else fails beyond the basics and 'learning to use it' will be that but if you didn't know that after 5 minutes you definitely didn't do any 'fine tuned pycharm ide', ever.

It is a tool that customizes code it ingested for your case specifically, if it can. That is it. If it never saw a case, it won't solve it, no matter what you 'learn to use'. And I am fine doing that in public: we use LLMs a lot and I can give you very simple cases that, besides (and often even that doesn't work) typing up the exact code, it will never fix with the current models. It just gets stuck doing meaningless changes with confidence.
by Octoth0rpe | 2025-05-16 11:58:00+00:00
> How did these clowns manage to make my mouse cursor laggy?

FWIW, the link is to basically a glorified demo page _of the design_ of material 3, not a real world implementation of that design. So, that page's performance is not at all reflective of what you'd see when using a relatively recent android app that uses flutter's material components (https://docs.flutter.dev/ui/widgets/material) or one of the many web component libraries that implement MD.

The lag you're noticing is also likely entirely due to their weird cursor behavior. If they simply removed that, I suspect the page's performance wouldn't be at all noticeable.
by hayst4ck | 2025-05-16 11:58:10+00:00
> depended entirely on whose side they were own

I don't believe in 'side-ism'. A crackdown on the GOP would be a benefit for the rule of law while it still being in a perilous position, while a crackdown on the DNC is very a much a prelude to destroy the idea of rule of law altogether.

Destroying the opposition isn't obviously bad. Referencing side-ism implies that removing all the nazis from your government is a bad thing because it gives non-nazis unchecked anti-nazi political power. I view that as a good thing if the definition of nazi reflects reality (like in germany) rather than unreality (like russia/urkaine).
by jmyeet | 2025-05-16 11:58:19+00:00
We ahve numerous, well-doocumented cases of LLMs being just plain wrong and/or hallucinating. There is an epidemic of LLM usage in college (and even high school) to the point where lack of critical thinking is becoming a massive problem and will only get worse.

This represents a huge security threat too if code is uncritically applied to code bases. We've seen many examples where people try and influence LLM output (eg [1][2]). These attempts have generally varied from crude to laughably bad but they'll get better.

Is it so hard to imagine prompt injection being a serious security threat to a code base?

That aside, I just don't understand being "all in" on LLMs for coding. Is this really productive? How much boilerplate do you actually write? With good knowledge of a language or framework, that tends to be stuff you can spit out really quickly anyway.

[1]: https://www.theguardian.com/technology/2025/may/16/elon-musk...

[2]: https://www.theguardian.com/technology/2025/jan/28/we-tried-...
by rfoo | 2025-05-16 11:58:28+00:00
> Does free-threaded Python provide the same guarantees

Mostly. Some of the "can be pre-empted on the boundary between any two bytecode instructions" bugs are really hard to hit without free-threading, though. And without free-threading people don't use as much threading stuff. So by nature it exposes more bugs.

Now, my rants:

> have any other effects on multi-threaded Python code

It stops people from using multi-process workarounds. Hence, it simplifies user-code. IMO totally worth it to make the interpreter more complex.

> Complicates C extensions

The alternative (sub-interpreters) complicates C extensions more than free-threading and the top one most important C extension in the entire ecosystem, numpy, stated that they can't and they don't want to support sub-interpreters. On contrary, they already support free-threading today and are actively sorting out remaining bugs.

> Causes single-threaded code to run slower

That's the trade-off. Personally I think a single digit percentage slow-down of single-threaded code worth it.
by chuckadams | 2025-05-16 11:58:32+00:00
I delegate all kinds of deep analysis to the AI, but it's to create detailed plans with specific implementation steps and validation criteria, backed by data in reproducible reports (i.e. "generate a script to generate this json data and another to render this data"). Plans have a specific goal that is reflected in the report ("migrated total should be 100%"). It's still an iterative process, the generators and plans have to be refined as it misses edge cases, but that's plans in general, AI or no.

It takes a good hour or two to draw up the plans, but it's the kind of thing that would take me all day to do, possibly several as my ADHD brain rebels against the tedium. AI can do yeomans work when it just wings it, and sometimes I have just pointed at a task and did it in one shot, but they work best when they have detailed plans. Plus it's really satisfying to be able to point at the plan doc and literally just say "make it so".
by criddell | 2025-05-16 11:58:37+00:00
87% of young people prefer expressive designs? Over what? If something is not expressive, what is it? Maybe Bauhaus-Modernist?

Looking at their list of expressive attributes — energetic, emotive, positive vibe, creative, playful, friendly — it sounds exhausting. Who wants their spreadsheet and email to be more like a slot machine?

But then I'm in the 55-64 group, so it wasn't designed for me. Give me the Bauhaus design where form follows function and ornamentation is restrained (which I think makes it more impactful).
by mattlondon | 2025-05-16 11:58:45+00:00
So the end game for this is, to a certain extent, does the code quality matter if it does what it is needed?

In the past the quality mattered because maintenance and tech-debt was something that we had to spend time and resources to resolve and it would ultimately slow us down as a result.

But if we have LLMs do we even have "resources" any more? Should we even care if the quality is bad if it is only ever LLMs that touch the code? So long as it works, who cares?

I've heard this positioned in two different ways, from two different directions, but I think they both work as analogies to bring this home:

- do engineers care what machine code a compiler generates, so long as it works? (no, or at least very, very, very rarely does a human look at the machine code output)

- does a CEO care what code their engineers generate, so long as it works? (no)

Its a very very interesting inflection point.

The knee jerk reaction is "yes we care! of course we care about code quality!" but my intuition is that caring about code quality is based on the assumption that bad code = more human engineer time later (bugs, maintenance, refactoring etc).

If we can use a LLM to effectively get an unlimited number of engineer resources whenever we need them, does code quality matter provided it works? Instead of a team of say 5 engineers and having to pick what to prioritise etc, you can just click a button and get the equivalent of 500 engineers work on your feature for 15 minutes and churn out what you need and it works and everyone is happy, should we care about the quality of the code?

We're not there yet - I think the models we have today kinda work for smaller tasks but are still limited with fairly small context windows even for Gemini (I think we'll need at least a 20x-50x increase in context before any meaningfully complex code can be handled, not just ToDo or CRUD etc), but we'll get there one day (and probably sooner than we think)
by tesch1 | 2025-05-16 11:58:47+00:00
No shoes, no shirt, no service.

Epic wanted their own store and they got their own store. It cost them and Apple a bunch of money, which indirectly is not good for anyone's customers... my sense of justice is not perplexed as to why they are not allowed back in.

Would you want to do business with someone who just sued you after breaking their previous contract with you?
by gus_massa | 2025-05-16 11:59:17+00:00
I played a few games. The important part is to learn how to use A and D in a collision to avoid falling down, but I had no time/patience to learn that. So I had like a 50% chance to die in each collision. So my strategy was to hide in a corner and wait until there are only a few sheeps left, and then try to be lucky only in the last few collisions.

It's important to reward the fun strategies. My recommendation is to modify the sheep model to make it more stable in head collisions and less stable in side collisions. For example put the front legs closer and the back legs more open. Or something like that. You have to try it until the model gets more stable and the best strategy is to head the other sheeps.

Also, when there are only 10 sheeps, they chase each other in circles, A to B and B to A, C to D and D to C, ... It would be nice to make the bots get bored and choose a random sheep to go after, to break the circles.
by WillAdams | 2025-05-16 11:59:36+00:00
I'm most of the way through:

https://www.goodreads.com/book/show/166433.Empires_of_the_Wo...

which has a very interesting discussion of how the native usage of these languages was affected by the Catholic Church and the children/descendants of immigrants.

Ages ago, there was an article on how earthen homes were traditional in many parts of South America (_not_ Pueblo) and the advantages of them --- folks lived quite well in this part of the world for millennia before Columbus and those who followed him --- and it is due to their innovations that Malthus' math was incorrect, which we should all recall the next time we have a potato chip, or eat anything made of maize.
by jillyboel | 2025-05-16 11:59:45+00:00
I'm explaining that gene modification will not be considered illegal or bad because the rich will have a vested interest in it being legal. This is a reply to GP saying:

> use legal mechanisms to discriminate and persecute people who are genetically modified

I believe there is no way this will happen, because legal mechanisms are driven by the whims of the rich, and they will want gene editing to be legal. So there will beno legal mechanisms to discriminate against those who have been edited.
by sylware | 2025-05-16 12:00:01+00:00
Like the latest assassin's creed (in order to run at reasonable speed since they ship RT emulation).

Had a look at some streams: look the same than those before. And many games look more beautifull without RT.

I think we have a case of 101 planned obsolescence.

Additionnally, I _SKIMMED_ thru the chips and cheese article (filthy good, sad their home page is hostile to noscript/basic (x)html browsers, or their cloud is dg s...) about AMD RDNA 4 RT, and if you want proper RT support, the "BVH" is hardware specific, namely you must have the 3D artists manually design the "BVH" for each hardware the game will support. This is significant additionnal technical work for 3D artists, with a stellar hardware cost, for, let's be honnest, not that much of a difference in perceptive rendering quality.

There is probably a "generic" and "low performance" BVH. I wonder how they do that in vulkan3D, I do disable RT in my AMD driver since mesa implementation is literally hrse sh... (pulling that c++ abomination of glslang instead of fine tuned optimized GPU assembly compute shaders).

That said, if the hardware is able to compute 100%, and I mean 100%, of the lighting of a modern and nice looking game at _MINIMUM_ 80+ fps... well, that's another story as the work for the 3D artists related to baked lighting (required for a nice looking game) would be fully replaced with BVH design and that would be a clear win. If even a "1kW GPU" would be unable to do that with the latest silicon process... I am afraid but this really look like more of a planned obsolescence gimmick than anything else.
by blibble | 2025-05-16 12:01:15+00:00
this showed up in the recent court case too:

> In Slack communications dated November 16, 2021, the Apple employees crafting the warning screen for Project Michigan discussed how best to frame its language. Mr. Onak suggested the warning screen should include the language: “By continuing on the web, you will leave the app and be taken to an external website” because “‘external website’ sounds scary, so execs will love it.” [...] One employee further wrote, “to make your version even worse you could add the developer name rather than the app name.” To that, another responded “ooh - keep going.”

from https://storage.courtlistener.com/recap/gov.uscourts.cand.36... (page 36)

these people should be jailed for contempt
by AStonesThrow | 2025-05-16 12:01:17+00:00
In my last job, I was paid hourly wages, but the work we were doing was piecework. They could have structured our pay around how many pieces we finished during a shift.

It was indeed WFH and, during the lockdowns, more or less a dream job. The supervisors were lasseiz-faire and there was minimal surveillance of our activities. They repeatedly explained that the quality and attention to our work was more important than the speed or efficiency we could achieve.

However, I was operating at a rather advanced level, and my talents permitted me to absolutely burn through that piecework at an accelerated rate compared to anyone else. I could do dozens, hundreds in an hour if they were uncomplicated. And I could finish them with accuracy, attention to detail, and a personal touch in the feedback each time.

But going at the speed I did, there were mistakes made, and I tended to be a bit sloppy in overlooking things, when reading for comprehension would've improved if I slowed down. My colleagues offered gentle feedback about this between the lines, except the main feedback was focused on their KPIs and metrics, which I was far exceeding by every standard. But the haste took its toll on my intellect. I could barely catch my breath after some long sessions. I could fill a Slack channel before anyone else had a chance to chime in. I felt numb and drained, and I forgot every student's name, and they all blurred into one.

Thankfully, we rarely came together for meetings. They just weren't seen as necessary and it was true. Meetings were reserved for special trainings. At one point, some of the coworkers were putting together short self-care sessions, like yoga instruction, which was really cool of them!

But I was being paid by the hour! If I finished 50 pieces of work, I was paid the same as a guy who plodded through three of them! Was that unfair? I don't know. Because the time scale did matter; we were often slammed with a huge amount of work, and we did operate with deadlines. But other than kudos and verbal recognitions, there was never an incentive to clear backlogs or work priority tasks as they were publicized.

So in the end, I felt a little underappreciated, you know? But, I loved the company so much, and my colleagues and supervisors were great, and it wasn't really about the money at the end of the day for me; it was about the company's mission and my own fulfillment by doing something valuable for them.
by DanielHB | 2025-05-16 12:01:49+00:00
> The other massive improvement has been moving most conversations to text or recorded calls. It has been a chainsaw to the sociopaths who used to get in the way of real productivity.

This is probably the biggest productivity shift I seen in my career, async communication is just so much more normal these days and it is enough for ~80% of the cases.

And this is not only about text chat, but the tools and practices like issue tracking, PR reviews, shared file drives, collaborative editing (google-docs/ confluence/notion/etc).

Issue tracking has always been there since I started but it feels it has gotten a lot better compared to back then. Even Jira is not nearly as bad as some of the tools we used to use.