10 ms·
Agentic Coding Recommendations
- benob 1y ago> This is not an advertisment for Claude Code. It's just the agent I use at the moment. What else is there? Alternatives that are similar in their user experiences are OpenCode, goose, Codex and many others. There is also Devin and Cursor's background agents but they work a bit different in that they run in the cloud. What do you recommand to get a Claude-code-like experience in the open-source + local llm ecosystem?
- yroc92 1y agoI’m also interested to hear ideas for this.
- the_mitsuhiko 1y ago> What do you recommand to get a Claude-code-like experience in the open-source + local llm ecosystem? There is nothing at the moment that I would recommend. However I'm quite convinced that we will see this soon. First of all I quite like where SST's OpenCode is going. The upcoming UX looks really good. Secondly because having that in place, will make it quite easy to put local models in when they get better. The issue really is that there are just not enough good models for tool usage yet. Sonnet is so shockingly good because it was trained for excellent tool usage. Even Gemini does not come close yet. This is all just a question of time though.
- hucker 1y agoHave you tried aider, and if so, how is it lacking compared to Claude Code in your opinion?
- the_mitsuhiko 1y agoI only tried aider with hosted models and it's too expensive compared to Claude Code so I did not give it a real proper try.
- aitchnyu 1y agoHow is it more expensive?
- the_mitsuhiko 1y agoYou pay for aider with per-token pricing. Claude Code comes with a flatrate that gives you deep discounts.
- BeetleB 1y agoReally depends on the type of coding you plan to do and how much. The amusing thing is people normally recommend using aider to save money. With Aider, you can control the size of the context window, and selectively add/drop files from the window. I typically aim for under 25K tokens at a time. With Gemini, that's about 3 cents per prompt (and often much less when I have only, say, 10 tokens). So for me, I'd need to do well over 3000 coding prompts a month to get to $100. I simply don't use it that much. Also, at work, I have Copilot, and one can use Aider with that. So I only pay for my personal coding at home. Getting to the original question - Aider probably lags Claude Code significantly at this point. It's a fantastic tool and I still use it - primarily because it is editor agnostic. But some of the other tools out there do a lot more with agents. To give you an idea - my combined AI use - including for non-code purposes - is well under $20/mo. Under $10 for most months. I simply don't have that much time to do coding in my free time - even with an AI doing it!
- CuriouslyC 1y agoAider is worth some tinkering for slightly different reasons than Claude Code. I find agents do a lot of derpy shit for hard problems but when you've got fairly straightforward things to build it's nice to just spin them up, let them rip and walk away. Aider feels more like pair programming with an agent, it can kind of be spun up and let rip, but mostly it tries to keep a tighter feedback loop with the user and stay more user directed, which is really powerful when working on challenging things. For stuff like codebase refactors, documentation passes, etc that tight loop feels like overkill though.
- peterbraden 1y agoI have tried both, and aider is far less able when it comes to navigating your codebase, and self driving investigation. You are very involved in context management with aider, whereas claude code can use cli commands to do a lot of things itself.
- CuriouslyC 1y agoAider is almost there, in fact it's intentionally "not" there. You can set it up to do things like run test/static analysis automatically and fix errors, and work with it to get a to-do list set up so the entire project is spec'd out, then just keep prompting it with "continue...". It has a hard coded reflection limit of 3 iterations right now, but that can also be hacked to whatever you want. The only thing missing for full agentic behavior is built in self prompting behavior.
- diggan 1y ago> The only thing missing for full agentic behavior is built in self prompting behavior. Correct me if I'm wrong, but Aider still doesn't do proper tool calling? Last time I tried it, they did it the "old school" way of parsing out unix shell commands from the output text and ran it once the response finished streaming, instead of the sort of tool call/response stuff we have today.
- sandinmyjoints 1y agoI think this is still the case. There are some open issues around this. I am surprised they have not moved forward more. I find Aider hugely useful, but would like the opportunity to try out MCP with it.
- CuriouslyC 1y agoYeah, tool/mcp integration isn't great with Aider out of the box.
- Karrot_Kream 1y agoThere's an open PR for MCP integration (actually 2 PRs but one has more community consensus around it) with a Priority label on it but it hasn't been merged yet. Hopefully soon.
- saint_yossarian 1y agoThe Neovim plugin CodeCompanion is currently moving into a more agentic direction, it already supports an auto-submit loop with builtin tools and MCP integration. Yes it's not a standalone CLI tool, but IMHO I'd rather have a full editor available at all times, especially one that's so hackable and lightweight.
- mickeyp 1y agoShameful plug: my upcoming app perhaps? Single-file download, fuss-free and install-less that runs on mac, windows and linux (+ docker of course.) It can run any model that talks to openai (which is nearly all of them), so it'll work with the big guys' models and of course other ones like ones you run privately or on localhost. Unlike Claude Code, which is very good, this one runs in your browser with a local app server to do the heavy lifting. A console app could be written to use this self-same server, too, of course (but that's not priority #1) but you do get a lot of nice benefits that you get for free from a browser. One other advantage, vis-a-vis Armin's blog post, is that this one can "peek" into terminals that you _explicitly_ start through the service. It's presently in closed alpha, but I want to open it up to more people to use. If you're interested, you and anyone else who is interested can ping me by email -- see my profile.
- elpocko 1y ago>run any model that talks to openai (which is nearly all of them) What does that mean? I've never seen any locally run model talk to OpenAI, how and why would they? Do you mean running an inference server that provides an OpenAI-compatible API?
- mickeyp 1y agoSorry, to clarify: OpenAI has an specification for their API endpoints that most vendors are compatible with or have adopted wholesale. So, if your model inference server understands the REST API spec that OpenAI created way back, you can use a huge range of libraries that in theory only "work" with OpenAI.
- diggan 1y ago> OpenAI has an specification for their API endpoints that most vendors are compatible with or have adopted wholesale Worth clarifying that what the ecosystem/vendors have adopted is the "ChatCompletion" endpoint, which most models are under. But newer models (like codex) are only available under the Responses API, which the ecosystem/vendors haven't adopted as widely, AFAIK.
- gk1 1y agoI see a new alternative (or attempt at one) come out every few days, so it shouldn't be long before we have "the one" alternative. https://www.app.build/ https://www.app.build/ was just launched by the Neon -- err, Databricks -- team and looks promising.
- fvdessen 1y agoI find it excellent news that all the techniques that make agentic coding more efficient also make human coding more efficient. There was a worry that code would become big mud balls that only AI understand, but it looks like the opposite. Clear code is important for AI productivity, so it now matters even more, because the difference of productivity is immediately and objectively measurable. Before AIs what code was well factored or not was largely a matter of opinion. Now you can say; look how better Claude works on codebase A vs codebase B, and present your case with numbers.
- v5v3 1y ago"There was a worry that code would become big mud balls that only AI understand, but it looks like the opposite." For now...
- soulofmischief 1y agoAs long as interfaces are well defined, comprehensive tests are written, memory is safely handled and time complexity is analyzable, who cares what the rest of the code looks like. I understand programming for the sake of programming, chasing purity and really digging into the creative aspects of coding. But I get that same kick out of writing perfect interfaces, knowing that the messier the code underneath is, the more my beautiful interface gets to shine. But transformers are offering us a way to build faster, to create more, and to take on bigger complexity while learning deeply about new domains as we go. I think the more we lean into that, we might enter a software golden age where the potential for creativity and impact can enter a whole new level.
- iDont17 1y agoYeh, exactly. Code doesn’t matter. Correct and stable electrical states matter. Energy based models and machines that boot strap from models, organize their state to a prompt are on their way. The analog hole for coders is closing. Most software out there is the layers of made up tools and such to manage and deploy software. We’ll save a lot of cycles pruning it all for generic patterns. 5-10 more years it’s all hardware again. Then no longer need to program a computer like it’s 1970.
- deleted 1y ago[deleted]
- petesergeant 1y agoRandomly, my advice: don't sleep on this. Three or four weeks ago I was posting how LLMs were useful for one-off questions but I wouldn't trust them on my codebase. Then I spent my week's holiday messing around on them for some personal projects. I am now a fairly committed Roo user. There are lots of problems, but there is incredible value here. Try it and see if you're still a hold-out.
- rationalfaith 1y ago[dead]
- phito 1y agoI will definitely sleep on agents. Normal LLM use, fine, but I am not giving up reasoning.
- bananapub 1y agothis is kind of a weird position to take. you're the captain, you're the person reviewing the code the LLM (agent or not) generates, you're the one asking for the code you want, you're in charge of deciding how much effort to put in to things, and especially which things are most worth your effort. all this agent stuff sounded stupid to me until I tried it out in the last few weeks, and personally, it's been great - I give a not-that-detailed explanation for what I want, point it at the existing code and get back a patch to review once I'm done making my coffee. sometimes it's fine to just apply, sometimes I don't like a variable name or whatever, sometimes it doesn't fit in with the other stuff so I get it to try again, sometimes (<< 10% of the time) it's crap. the experience is pretty much like being a senior dev with a bunch of very eager juniors who read very fast. anyway, obviously do whatever you want, but deriding something you've not looked in to isn't a hugely thoughtful process for adapting to a changing world.
- phito 1y agoIf I have to review all code code it's writing, I'd rather write it myself (maybe with the help of an LLM). > anyway, obviously do whatever you want, but deriding something you've not looked in to isn't a hugely thoughtful process for adapting to a changing world. I have tried it. Not sure I want to be part of such world, unfortunately. > the experience is pretty much like being a senior dev with a bunch of very eager juniors who read very fast. I... don't want that. Juniors just slow me down because I have to check what they did and fix their mistakes. (this is in the context of professional software development, not making scripts, tinkering etc)
- EdwardDiego 1y ago"Write the simplest code you can, so the dumb AI can understand it" isn't the massive sell I was expecting. I wonder how that interacts with his previous post? https://lucumr.pocoo.org/2025/2/20/ugly-code/ https://lucumr.pocoo.org/2025/2/20/ugly-code/
- horsawlarway 1y agoHonestly, I find this approach to be useful pretty much anytime you're working with other people as well. There are absolutely times to be extremely focused and clever with your code, but they should be rare and tightly tied to your business value. Most code should be "blindingly obvious" whenever possible. The limit on developers isn't "characters I can type per minute" it's "concepts I can hold in my head." The more of those there are... The slower you will move. Don't create more interfaces over the existing ones, don't abstract early, feel free to duplicate and copy liberally, glue stuff together obviously (even if it's more code, or feels ugly), declare the relevant stuff locally, stick with simple patterns in the docs, don't be clever. You will write better code. Code shouldn't be pretty, it should be obvious. It should feel boring, because the hard part should be making the product not the codebase.
- yuri91 1y agoSo using agents forces (or at least nudges) you to use go and tailwind, because they are simple enough (and abundant in the training data) for the AI to use correctly. Does this mean that eventually in a world where we all use this stuff, no new language/framework/library will ever be able to emerge? Competing with the existing alternatives will be too hard. You won't even be able to ask real humans for help on platforms like StackOverflow because they will be dead soon.
- energy123 1y agoWith maturing synthetic data pipelines, can't they just take one base llm and fine tune it for 20 different niches, and allow user to access the niche with a string parameter in the API call? Even if a new version of a language released only yesterday, they could quickly generate enough synthetic training data to bake in the new syntax for that niche, and roll it out.
- pelagicAustral 1y agoMy best results have been with Ruby/Rails and either vanilla Bootstrap, or something like Tabler UI, Tailwind seems to be fine as well, but I'm still not a fan of the verbosity. With a stable enough boilerplate you can come up with outstanding results in a few hours. Truly production ready stuff for small size apps.
- cpursley 1y agoHow are you getting results when Ruby has no type system? That seems like where half the value of LLM coding agents are (dumping in type errors and it solving them).
- diggan 1y agoBunch of unit, functional and E2E tests, just like before LLMs :) Haven't tried with Ruby specifically but works well with JavaScript and other dynamic languages so should work fine with Ruby too.
- rramon 1y agoElixir looks like agood choice as well, folks have recorded a session building a Phoenix web app with Claude Code and it went quite well for them: https://youtu.be/V2b6QCPgFTk https://youtu.be/V2b6QCPgFTk
- agos 1y agoin the same vein, the closing keynote at this years' ElixirConf EU featured agents building web apps: https://www.youtube.com/watch?v=ojL_VHc4gLk https://www.youtube.com/watch?v=ojL_VHc4gLk
- reedf1 1y agoI have seen multiple articles pushing for GO as agentic language of choice; does anyone else feel like this is quite forced? I have tried agentic coding in several languages and I didn't have a particularly good or productive experience with GO.
- decide1000 1y agoI don't agree with the author on the GO thing. I've created agents that work 24/7 on GH issues for me, in Rust, Python and PHP. I use Claude (api). The result overall is very good. When I wake up there is always a fresh PR waiting for me. I don't like the word "agent" because it is not a blind LLM, small or fast script. It is a complex workflow with many checks and prompting before writing a single line of code. That's also the key to AI powered development; context.
- the_mitsuhiko 1y ago> I've created agents that work 24/7 on GH issues for me, in Rust, Python and PHP. I use Claude (api). The result overall is very good. It's quite possible it's a case of holding things wrong but I think at least the basic evaluation I did that made me come to the conclusion that Go works particularly well isn't too bad. I just get results that I feel good with quicker than with Rust and Python. FWIW I also had really good results with PHP on the level of Go too, it's just overall a stack that does not cater too well to my problem.
- agos 1y agoit's especially forced if you are making frontend or mobile apps
- haiku2077 1y agoOr ML apps, since Go doesn't have native GPU or CUDA support. You can do it via CGO but it's far messier than pure Go.
- sensanaty 1y agoAll of this is forced, yes. There's probably a trillion dollars riding on this all not imploding, so we're getting it shoved everywhere, all the time, incessantly. My own experience with "Agents" (and no, I am not a luddite) has been nothing short of comical in how terrible it's been. We try it every single day at our company. We've tried all the advice. All the common wisdom. They have never, not once, produced anything of any value. All the public showcases of these brilliant "agents" have also been nothing short of spectacular failures [1]. Yet despite all this, I keep seeing these type of posts, and pretty much always it's from someone with a vested interest of some kind when you dig deep down enough. All the managerial types pushing it, you look deep enough it's always because the board or investors or whatever other parasite has a vested interest. I know one thing is for certain, what AI will give us is more and more fucking advertisements shoved into every facet of our lives, except now it sorta talks like a human! [1] https://news.ycombinator.com/item?id=44050152 https://news.ycombinator.com/item?id=44050152
- ceving 1y agoWhen I read "Avoid inheritance" in a text about Go, I can't help but get the impression that the text also comes from Claude.
- the_mitsuhiko 1y agoThis text is not about go, it's about agentic coding. I have and am using this across different languages. On this project (which is a go backend) I still have TypeScript in the frontend and I have some Python based tasks too. The rules apply universally.
- DonHopkins 1y ago[flagged]
- Keats 1y agoI've been trying Claude Code with Sonnet 4.0 for a week or so now for Rust code but it feels really underwhelming (and expensive since it's via Bedrock right now). Everytime it's doing something it's missing half despite spending a lot of time planning at the beginning of the session. What am I missing?
- exfalso 1y agoExact same experience. I have no clue what other people are doing. I was hunting for use cases where it could be used and it kept not working. I don't get it.
- energy123 1y agoIs it only Rust that you've had this experience with or is it a general thing?
- exfalso 1y agoAlso tried it with Python. The autocomplete there was ok-ish(although to me the "wait for it -> review suggested code" cycle is a bit too slow), but getting it to code even standalone well-defined functions was a clear failure. I spent more time trying to fix prompts than it took to write the functions in the first place.
- andyferris 1y agoI had been trying with Rust, but after this article I think I might change tack and attempt a project in Go...
- Keats 1y agoI'm not sure if it's Rust related. It manages to write the Rust code just fine, it's just that it doesn't seem to - think of everything that is needed for a feature (fixable via planning at the beginning) - actually follow that plan correctly I just tried with a slightly big refactor to see if some changes would improve performance. I had it write the full plan and baseline benchmarks to disk, then let it go in yolo mode. When it was done it only implemented something like half of the planning phases and was saying the results look good despite all the benchmarks having regressed.
- hsuduebc2 1y agoCan someone recommended some source for vibe coding eg. how to prompt it properly, what tools to use? Does someone have any experience on anything other than small projects from scratch?
- exfalso 1y agoMy reading of the status quo is that people who use it for toy or greenfield projects written from scratch are having a blast. Until the project reaches a certain complexity in size and function when it starts to break down. People working on existing projects in turn are scratching their heads because it's just not quite working or providing much of a productivity boost. I belong to this camp.
- coffeefirst 1y agoI had the same question because all my experience with this contradicts the hype. I watched Ronacher's demo from yesterday, https://www.youtube.com/watch?v=sQYXZCUvpIc https://www.youtube.com/watch?v=sQYXZCUvpIc, and this is it, a well-regarded engineer working on a serious open source project. There's no wizard behind the curtain, it's the thing I've been asking the promoters for. And you should make your own judgment, but I'm just not impressed. It seems to me the machine takes longer, creates a plan that "is shit," and then has to be fixed by a person who has a perfect understanding of the problem. I'm loving LLMs as research tools, pulling details out of bad documentation, fixing my types and dumb SQL syntax errors, and searching my own codebase in natural language. But if I have to do all the reasoning myself no matter what, setting a robot free to make linguistically probable changes really feels like a net negative.
- Verdex 1y agoThanks for the link. Given the hype and repercussions of success or failure of what LLMs can hypothetically do, I feel like the only way forward for reasonable understanding of the situation is for people to post live streams of what they're raving about. Or at the very least source links with version control history.
- aiiizzz 1y ago
- deleted 1y ago[deleted]
- darkxanthos 1y agoI stumbled into Agentic Coding in VS Code Nightlys with co-pilot using Claude Sonnet 4 and I've been silly productive. Even when half my day is meetings, you wouldn't be able to tell from my git history. My thinking now is removed from the gory details and is a step or two up. How can I validate the changes are working? Can I understand this code? How should it be structured so I can better understand it? Is there more we can add to the AI conventions markdown in the repo to guide the Agent to make fewer mistaken assumptions? Last night I had a file with 38 mypy errors. I turned it over to the agent and went and had a conversation with my wife for 15 minutes. I came back, it summarized the changes it made and why, I debated one of the changes with it but ultimately decided it was right. Mypy passed. Good to go. I'm currently trying to get my team to really understand the power here. There's a lot of skeptics and the AI still isn't perfect and people who are against the AI era will latch onto that as validation but it's exactly opposite the correct reaction. It's really validation because as a friend of mine says "Today is the worst day you will have with this technology for the rest of your life."
- GardenLetter27 1y agoI trust it more with Rust than Python tbh, because with Python you need to make sure it runs every code path as the static analysis isn't as good as clippy + rust-analyzer.
- diggan 1y agoI agree, had more luck with various models writing Rust than Python, but only in the case where they have tools available so one way or another it can run `cargo check` and see the nice errors, otherwise it's pretty equal between the two. I think the excellent error messages in Rust also help as much humans as it does LLMs, but some of the weaker models get misdirected by some of the "helpful" tips, like some error message suggest "Why don't you try .clone here?" when the actual way to address the issue was something else.
- redman25 1y agoThat's true typed languages seem to handle the slop better. One thing I've noticed specifically with rust is that agents tend to overcomplicate things though. They tend to start digging into the gnarlier bits of the language much quicker than they probably need to.
- tonnydourado 1y agoGotta say, 100/200 bucks monthly feels prohibitively expensive for even trying out something, particularly something as unproven as code-writing AI, even more particularly when other personal experiences with AI have been at the very least underwhelming, and extra particularly when the whole endeavor is so wrapped up in ethical concerns.
- dukeyukey 1y agoYou can use Claude Code either pay-as-you-go with an API key, or subscribe to the $20 Pro subscription.
- jononor 1y agoOne month at 20 USD seems like it should be plenty to try it out on a small project or two to decide wether it is worth trying 100 bucks/month? Or one can just wait a couple of months as people report their learnings.
- BeetleB 1y agoTry Aider with API usage. Learn how to control context size (/clear, /add, /drop). Limit context to 25K. Use whatever model you want (Sonnet 4 or Gemini 2.5 Pro). For simple scripts, it often costs me under $1 to build. I'm working on a bigger tool these days, and I've done lots of prompts, a decent amount of code, over 100 tests, and my running total is right now under $6. I'd suggest learn the basics of using AI to code using Aider, and then consider whether you want to try Claude Code (which is likely more powerful, but also more expensive unless you use it all the time).
- Karrot_Kream 1y agoYeah I've been using Aider mostly and just started using Codex, very similar to Claude Code, yesterday. Aider is more manual and requires more guiding but it's also an order of magnitude cheaper. The monkey brain part of me that really doesn't trust an LLM and trusts my decades of hard-won programming experience also prefers using Aider because the usage flow generally goes: 1. Iterate with Aider on a plan 2. Tell Aider to write code 3. Review the code 4. Continue hacking myself until I want to delegate something to an LLM again. 5. Head back to Step 1. Codex automates this flow significantly but it's also a lot more expensive. Just the little bits of guiding I offer an LLM through Aider can make the whole process a lot cheaper. It's unclear to me whether the full agentic Claude Code/Codex style approach will win or whether Aider's more carefully guided approach will win in the marketplace of ideas, but as a pretty experienced engineer Aider seems to be the sweet spot between cost, impact, and authorial input.
- jedisct1 1y agoPretty much my experience as well, although I would highly recommend Roo Code + Claude (via the API) to build entire projects, and Claude for "batch" tasks or finalization. AI models are trained on data that can be 1 or 2 years old. And they're trained of what the saw the most. So, language changes, breaking API changes, dependencies that don't work any more, name changes, etc. are going to get them super confused. Go indeed works well because of its standard library that avoids the need for many dependencies, and its stability. I found PHP to actually be the best target language for coding agents. For the same reasons, and also for the ton of documentation and example code available. That doesn't prevent agents from automatically using some modern PHP features, applying static analysis tools, etc. For frontend stuff, agents will almost always pick React + Tailwind because this is what they saw the most. But Tailwind 4 is very different from Tailwind 3, and that got them super confused.
- gk1 1y agoNice to see container use mentioned (https://github.com/dagger/container-use https://github.com/dagger/container-use). I work with the team that made it (a lot of ex-Docker folks including the creator of Docker.) Running agents in parallel will be a big deal as soon as we learn (or the agents learn) how to reliably work with just one. Even before then, if you're trying to get work done while the agent is doing its own thing or you find yourself watching over the agent's "shoulder" out of fear it'll change something you didn't ask it to change, then it's useful to run it in a containerized dev environment. Container use is definitely early but moving quickly, and probably improved even since this post was published. We're currently focused on stability, reducing git confusion, better human<>agent interaction, and environment control.
- swah 1y agoMeta: this hits differently because the author of this post created an awesome, popular Python web framework some 15 years ago. I miss those times dearly (using Python for web stuff).
- jpadamspdx 1y agohttps://github.com/dagger/container-use https://github.com/dagger/container-use (cu) is improving daily. Happy to help get it working if you're hitting anything (we're all in dagger.io discord). Last night I tried it with Amazon Q Developer CLI chat (with claude-3.7-sonnet), which I hadn't touched before (will PR how-to to the README today). MCP integration just worked for me. Figured out where to put the agent rules for Q and how to restrict to just the tools from cu. I kicked off three instances of Q to modify my flask app project with the same prompt in parallel (don't step on the local source) and got three variants to review in short order. I merged the one I liked into the repo and tossed the rest.
- bgwalter 1y agoWell, the author's previous blog posts were shorter (e.g., https://lucumr.pocoo.org/2022/1/30/unsafe-rust/ https://lucumr.pocoo.org/2022/1/30/unsafe-rust/) and more succinct. I've no idea what he is saying here. It is all about vaguely defined processes and tools and people increasingly adopt an LLM writing style.
- the_mitsuhiko 1y ago> and people increasingly adopt an LLM writing style. If you are insinuating that this is written by an LLM: it is not.
- bgwalter 1y agoNo, I didn't try to claim that. I seem to see the influence in many people's writing and verbosity though. It could be as simple as a counter reaction: If an LLM is allowed to be verbose, so are humans. It could also be that people who use LLMs a lot subconsciously adopt the style. I infer that you are the author of the post. Take it as a compliment, I think you have written many good pre-LLM articles.
- haiku2077 1y ago> Context system: Go provides a capable copy-on-write data bag that explicitly flows through the code execution path, similar to contextvars in Python or .NET's execution context. Its explicit nature greatly simplifies things for AI agents. If the agent needs to pass stuff to any call site, it knows how to do it. I believe this is considered a bad practice: the general attitude is that the only sane use case for values in context.Context is tracing data, and all other data should he explicitly passed via arguments.
- the_mitsuhiko 1y agoI'm really not an expect in Go, but the data that I'm passing at the moment via context is the type of data which is commonly placed there by libraries I use: database connections, config, rate limiters, cache backends etc. Does not seem particularly bad to me at least.
- haiku2077 1y agoIf you use context.Context for this you give up a lot of type safety and generally make your data passing opaque. It's totally fine to put multiple values into a different data bag type that has explicit, typed fields. For example, the Echo framework has its own strongly typed and extensible Context interface for request scoped data: https://pkg.go.dev/github.com/labstack/echo#Context https://pkg.go.dev/github.com/labstack/echo#Context
- the_mitsuhiko 1y ago> If you use context.Context for this you give up a lot of type safety and generally make your data passing opaque. The data passing maybe, not sure how you lose type safety. The value comes from the context with the right type just fine. The stuff that I'm attaching to the context are effectively globals just that this way you can enable proper isolation in tests and else. From my limited experience with echo, the context there is not at all the same thing.
- 1y ago
- unshavedyak 1y agoOn the note of language choice, i've been experimenting with Claude Code recently and thought the other day how happy i am to be using Rust with it and how afraid i'd be in Python, JS, etc. I've noticed Claude Code introduces quite a few errors and then walks through the compile errors to fix things up. Refactors/etc also become quite easy with this workflow from CC. I'm sure it does well in dynamic languages, but given how much the LLM leans into these compile errors i get the feeling it would simply miss more things if there was none/less. So far though my #1 concern is finding ways to constraining the LLM. It produces slop really, really quick and when it works more slowly i can avoid some of the review process. Eg i find stubbing out methods and defining the code path i want, in code, rather than trying to explain it to the LLM to be productive. Still in my infancy of learning this tool though. It feels powerful, but also terrifying in hands of lazy folks just pushing through slop.
- linguistbreaker 1y agoMy take on choice of language: 1) Java has the largest, oldest and most explicit data set for the LLM to reference, so it's likely to be the most thorough, if not the most correct. 2) Go with the language YOU know best because you'll be able to spot when the LLM is incorrect, flawed in its 'reasoning', hallucinating etc.
- Macha 1y agoI always assumed the LLMs had the most python code to reference, as they seem to default to Python most often if you don't specify
- diggan 1y ago> Java has the largest, oldest and most explicit data set for the LLM to reference That seems to be a recommendation for coding with LLMs that don't have access to tools to look up APIs, docs and 3rd party source-code, rather than something you'd chose for "Agentic Coding". Once the tooling can automatically figure out what is right, what language you use matters less, as long as source code ends available somewhere the agent can read it when needed. Agree much with your 2nd point though, all outputs still require careful review and what better language to use than one you know inside-out?
- tough 1y agoI have been learning Go, Swift, and Rust with the help of LLM/ Agents. basically the terser/safer syntax and runtime compilation errors are a great tight feedback loop for the agent to fix stuff by itself.
- deleted 1y ago[deleted]
- fibers 1y agoWhy is this? is there just a insanely large codebase of open source projects in Java (the only thing i can think of is the entire Apache suite)? Or is it because the docs are that expressive and detailed for a given OSS library?
- linsomniac 1y agoI had a recent discussion with another member of the Python community (OA is written by a big name in Python). He started off saying "learning to code with AI is like learning to cook by ordering off the menu". I know he meant "an AI being the way you learn how to code", but there's another meaning that I've been thinking a lot about because my 16yo son is really into coding and I'm trying to come up with how I can help him be successful in the world at the horizon where he starts doing it professionally. In that way, "learning how to work together with an AI to code" is a really, really interesting question. Because the world is going to look VERY different in 2-6 years. The thread in question: https://bsky.app/profile/alsweigart.bsky.social/post/3lr6guvhkvc2t https://bsky.app/profile/alsweigart.bsky.social/post/3lr6guv...
- bgwalter 1y agoI think this discussion boxes new students into the mediocre category right from the start. Do we really want to tell Fabrice Bellard that he isn't productive enough? If you want to train people to become fungible factory workers on the other hand, train them to work on the conveyor belt.
- linsomniac 1y agoI get your point, but I'm envisioning a different endpoint. Let's take your factory example: Factories are just a fact of life right now, almost nobody is producing bespoke cars or phones or clothing. So given that my son is basically 100% likely to be working with an automation line, how do I get him on the track to being a machine operator or a millwright rather than doing conveyor belt work?
- robertlagrant 1y ago> Likewise with AI I strongly prefer more code generation over using more dependencies. I wrote about why you should write your own code before, but the more I work with agentic coding, the more I am convinced of this. This is an interesting statement!
- mountainriver 1y agoPackages have communities though.
- Leynos 1y agoSomething I like to do is get Gemini Deepresearch to write a single file manual for any uncommon dependency and include that in my docs/ directory. Helps a bunch. I also ask it to write specialized guides on narrow topics (e.g., testing async SQLAlchemy using pytest-async and pytest-postgresql).
- maqnius 1y ago'Many hallucinations' may become the new 'poorly documented' when it comes to tech stack decisions. I'm asking myself if it could slow down adoption of new tech in future, since it's harder to provide the equivalent learning material of 10 years of Stack Overflow than writing equally good documentation.
- Imustaskforhelp 1y agoA suggestion that maybe the dark mode shouldn't be on the end of the page and maybe on the top of the page, I personally would've loved it and do it with some of my html blogs, maybe personal preference but yeah I think I agree golang is pretty cool but the knowledge base of python feels more and I sometimes just use uv with python and ai gemini pro right within the browser to create one off cool scripts. Pretty cool!
- apwell23 1y agoanthropic just released ai fluency course https://www.youtube.com/watch?v=JpGtOfSgR-c https://www.youtube.com/watch?v=JpGtOfSgR-c this is best set of vidoes on the topic i've seen
- anonymid 1y agoneovim has AI integration! (and a pretty damn good one if I say so myself (I wrote it)) https://github.com/dlants/magenta.nvim https://github.com/dlants/magenta.nvim
- revskill 1y agoPrompt engireering is a deep art.