7 ms·
From this commit: https://github.com/cloudflare/workers-oauth-provider/commit/60197d5e7038c4f4a316c2a6d9edcfb6f66077c7 https://github.com/cloudflare/workers-oau
by infinitebattery 1y ago
From this commit: https://github.com/cloudflare/workers-oauth-provider/commit/60197d5e7038c4f4a316c2a6d9edcfb6f66077c7 https://github.com/cloudflare/workers-oauth-provider/commit/...
===
"Fix Claude's bug manually.
Claude had a bug in the previous commit. I prompted it multiple times to fix the bug but it kept doing the wrong thing.
So this change is manually written by a human.
I also extended the README to discuss the OAuth 2.1 spec problem."
===
This is super relatable to my experience trying to use these AI tools. They can get halfway there and then struggle immensely.
- nisegami 1y agoSame. But I personally find it a lot easier to do those bits at the end than to begin from a blank file/function, so it's a good match for me.
- SkyPuncher 1y agoSame here. Sometimes you just need time to stew in the problem/solution space. LLMs let me be ultraproductive upfront then come in at the end to clean up when I have a full understanding.
- diggan 1y ago> They can get halfway there and then struggle immensely. Restart the conversation from scratch. As soon as you get something incorrect, begin from the beginning. It seems to me like any mistake in a messages chain/conversation instantly poisons the output afterwards, even if you try to "correct" it. So if something was wrong at one point, you need to go back to the initial message, and adjust it to clarify the prompt enough so it doesn't make that same mistake again, and regenerate the conversation from there on.
- eikenberry 1y agoI thought Claude still has a problem generating the same output for the same input? That you can't just rewind and rerun and get to the same point again.
- diggan 1y ago> I thought Claude still has a problem generating the same output for the same input? I haven't used Anthropic's models/software in a long time (months, basically forever in AI ecosystem), so don't know exactly how it works now. But last time I used Claude, you could edit the first message, and then re-generate the assistants next message based on your edit. Most of the LLM interfaces has one or another way of doing this, I can't imagine they got rid of that feature. What I'm suggesting isn't to use the exact same input (the first message), but rather change it so you remove the chances of something incorrect happening later after that.
- throwaway314155 1y ago> can't just rewind and rerun and get to the same point again Why would you want to? The whole point of a retry is that your previous conversation attempt went poorly.
- eikenberry 1y agoGood engineering? You want automated steps to be repeatable so you know your tweak to the previous conversation have the effect you desire. Though using an AI for coding is probably closer in spirit the the art of writing code than the engineering of writing code and art is pretty much unrepeatable by definition.
- throwaway314155 1y agoFair enough. Use the respective API or Google Gemini which will let you set temperature to zero resulting in deterministic output barring FP errors accumulating when paired with non-standard GPU/TPU configurations. Likely not to differ by much in the vast majority of cases though.
- dingnuts 1y agoCan you imagine if Excel worked like this? the formula put out the wrong result, so try again! It's like that scene from The Office where Michael has an accountant "run it again." It's farcical. They have created computers that are bad at math and I will never forgive them. Also, each try costs money! You're pulling the lever on a god damned slot machine! I will TRY AGAIN with the same prompt when I start getting a refund for my wasted money and time when the model outputs bullshit, otherwise this is all confirmation and sunk cost bias talking, I'm sure if it.
- diggan 1y ago> Can you imagine if Excel worked like this? I mean, why would I imagine that? Who would want that? It's like the argument against legal marijuana, and someone replies "But would you like your pilot to be high when flying?!". Right tool for the right job, clearly when you want 100% certainty then LLMs aren't the tool for that. Just because they're useful for some things don't mean we have to replace everything with them. > Also, each try costs money! I guess you're using some paid API? Try a different way then. I mostly use the web UI from OpenAI, or Codex lately, or ran locally with my own agent using local weights, neither is "each try costs money" more than writing data to my SSD is costing me money. It's not a holy grail some people paint it, and not sure we're across the "productivity threshold" (https://news.ycombinator.com/item?id=44160664 https://news.ycombinator.com/item?id=44160664) yet, but it's worth trying it out probably before jumping to conclusions. But no one is forcing you either, YMMV and all that.
- int_19h 1y agoChatbot UIs really need better support for conversation branching all around. It's very handy to be able to just right-click on any random message in the conversation in LM Studio and say, "branch from here".
- diggan 1y agoMaybe it's contrarian, maybe it's not, but I don't think Chat UIs are well suited for software engineering/programming at all, we need something completely different. Being able to branch conversations and such would be useful, but probably not for the way I do software. Besides, I'm rarely beyond 3 messages (1 system, 1 user, 1 assistant) in any usage of the chat UIs. Maybe it's more useful to people with different workflows.
- int_19h 1y agoI don't see how you'd avoid using chat if you need the bot to work on some bug end-to-end. I usually have many rounds in a chat session, first asking it to identify the overall approach, reviewing and approving that, then one or more rounds for coding, and several more to request edits as needed. If you only ever ask it for trivial changes that don't require past context to make sense, then chat is indeed overkill. But we already have different UX approaches for that - e.g. some IDEs watch for specially formatted comments to trigger code generation, so you literally just type what you want right there in the editor, exactly where you want the code to go.
- diggan 1y agoYeah, I'd agree you want to iterate, but I'm not sure the UX of "Log of messages, where some of yours, some are tool calls, others are the assistant" and the workflow of "Add more messages into the log of messages"/"Change existing messages" is the right broad UX for this type of work. I'm sorry I can't substantiate it more than that, as my own head is still trying to wrap itself around what I think is needed instead. Still, sounds very "fluffy" even when I read it back myself.
- carlosjs23 1y ago
- viktorcode 1y agoIt can be done, but for my environment the sum of all prompts that I end up typing to get the right result ends up being longer than the actual code. So now I'm using LLMs as crapshoot machines for generating ideas which I then implement manually
- mysterydip 1y agoThis to me is why I think these tools don't have actual understanding, and are instead producing emergent output from pooling an incomprehensibly large set of pattern-recognized data.
- diggan 1y ago> these tools don't have actual understanding, and are instead producing emergent output from pooling an incomprehensibly large set of pattern-recognized data I mean, bypassing the fact that "actual understanding" doesn't have any consensus about what it is, does it matter if it's "actual understanding" or "kind of understanding", or even "barely understanding", as long as it produces the results you expect?
- sceptic123 1y ago> as long as it produces the results you expect? But it's more the case of "until it doesn't produce the results you expect" and then what do you do?
- diggan 1y ago> "until it doesn't produce the results you expect" and then what do you do? I'm not sure I understand what you mean. You're asking it to do something, and it doesn't do that?
- dingnuts 1y agoif you give an LLM a spec with a new language and no examples, it can't write the new language. until someone does that, I think we've demonstrated that they do not have understanding or abstract thought. they NEED examples in a way humans do not.
- Powdering7082 1y agohttps://openreview.net/pdf?id=GTHD2UnDIb https://openreview.net/pdf?id=GTHD2UnDIb
- krooj 1y agoThe comment in lines 163 - 172 make some claims that are outright false and/or highly A/S dependent, to the point where I question the validity of this post entirely. While it's possible that an A/S can be pseudo-generated based on lots of training data, each implementation makes very specific design choices: i.e.: Auth0's A/S allows for a notion of "leeway" within the scope of refresh token grant flows to account for network conditions, but other A/S implementations may be far more strict in this regard. My point being: assuming you have RFCs (which leave A LOT to the imagination) and some OSS implementations to train on, each implementation usually has too many highly specific choices made to safely assume an LLM would be able to cobble something together without an amount of oversight effort approaching simply writing the damned thing yourself.
- nicce 1y agoI am waiting for studies whether we have just an illusion of production or these actually save man hours in the long term in creation of production-level systems.
- arendtio 1y agoOne way to mitigate the issue is to use tests or specifications and let the AI find a solution to the spec. A few months ago, solving such a spec riddle could take a while, and most of the time, the solutions that were produced by long run times were worse than the quick solutions. However, recently the models have become significantly better at solving such riddles, making it fun (depending on how well your use case can be put into specs). In my experience, sonnet 3.7 represented a significant step forward compared to sonnet 3.5 in this discipline, and Gemini 2.5 Pro was even more impressive. Sonnet 4 makes even fewer mistakes, but it is still necessary to guide the AI through sound software engineering practices (obtaining requirements, discovering technical solutions, designing architecture, writing user stories and specifications, and writing code) to achieve good results. Edit: And there is another trick: Provide good examples to the AI. Recently, I wanted to create an app with the OpenAI Realtime API and at first it failed miserably, but then I added the most important two pages of the documentation and one of the demo projects into my workspace and just like that it worked (even though für my use-case the API calls had to be use quite differently).
- fxnn 1y agoThat's one thing where I love Golang. I just tell Aider to `/run go doc github.com/some/package`, and it includes the full signatures in the chat history. It's true: often enough AI struggles to use libraries, and doesn't remember the usage correctly. Simply adding the go doc fixed that often.