7 ms·
Automating myself out of development
- noelwelsh 4mo agoI wish people would describe in more detail the tasks they use LLMs to code. My experience is that simple components in an existing architecture are fine, but anything requiring architectural considerations quickly becomes a mess. On my projects (e.g. a ui framework), running multiple agents in parallel would just increase the speed at which it can stuff up the project.
- LtWorf 4mo agoArchitectural considerations are easy. Figuring out what to actually do from the super vague requirements is even worse I think.
- nullbio 4mo agoIt's great for people who are just maintaining something. Less so for someone building something from scratch, in the earlier phases.
- properbrew 4mo agoI used LLMs to develop Whistle Enterprise (https://whistle-enterprise.com https://whistle-enterprise.com) from the ground up, from scratch. It's taken _a lot_ of time and effort, but this is an example of what can be developed using LLMs alone. You have to have dedication and a goal to reach, but you can absolutely build anything if you're building with the right foundations in mind.
- ryaniscool 4mo agoI think the relevant question isn’t what can be built but the amount of effort in comparison to doing this the old fashioned way. What do you think the productivity gain was from using an LLM? This question assumes you’re already an experienced developer.
- andai 4mo agon=1 but, a friend of mine spent the last few months working on an experimental music software with Claude. What he built is amazing and far beyond my abilities (I have been programming for 20 years). He doesn't know any programming. In fact, it's far beyond what I would even attempt, because I've just spent two decades building up a data bank of how hard things are supposed to be. He doesn't know it's supposed to be hard, so he just does it.
- dmortin 4mo agoIs his code maintainable, though? Or is it just a pile of code which happens to work? What if he wants to change something? Does he generate again the whole thing from scratch? Or does he tell Claude to make the changes and doesn't even know when something breaks when a new thing is added? (Assuming the software is complex, having multiple non trivial features.)
- andai 4mo agoWell, maintainable by who? Claude Code does not regenerate an entire project when you ask it to make one change. It just makes the change. He's been working on it for several hours per day for several months. He has occasionally complained to me about the stupidity of AI. Nevertheless, his achievement is remarkable. He simply persisted despite the stupidity. It does occasionally break things when adding new features. I think it does it less often than I do, though. (My "random error" rate is quite high, and scales with the complexity of the code base. Fortunately, the Transformer has a slightly higher working memory than I do.) I will grant though, that he shipped it with zero thought for performance. "Damn, it works so well on my machine though", he said, having the best machine in the world! I'm not sure that's the LLM's fault though. I ran into disregard for performance often, before LLMs!
- sungjinwo0 4mo ago[flagged]
- 4mo ago
- leguy 4mo agoneat. I saw the "no bot joins the call". Is it obvious to others in the virtual meeting that you are using this tool?
- properbrew 4mo agoThank you! No they cannot tell. It is your requirement as per the laws of your country to notify the other party if you're going to use it.
- Npovview 4mo agoThere are hour long youtube videos where people explain the process by using a complex toy project. Search for them.
- davidcann 4mo agoI built this with 94% written by coding agents: https://buildermark.dev/ https://buildermark.dev/ The complete log of all prompts and commits is here: https://demo.buildermark.dev/projects/u020uhEFtuWwPei6z6nbN https://demo.buildermark.dev/projects/u020uhEFtuWwPei6z6nbN
- MonstraG 4mo agoIt seems that pages 2-5 on https://demo.buildermark.dev/projects/u020uhEFtuWwPei6z6nbN/commits/main?page=5 https://demo.buildermark.dev/projects/u020uhEFtuWwPei6z6nbN/... still show content of page 1
- davidcann 4mo agoThanks for the report. I messed up the CDN settings. It looks fixed now.
- wunderlotus 4mo agoThis demo tool is really cool, kudos on that! I clicked that link first even though it’s listed second bc I wanted to see the prompts. I didn’t expect the level of detail or mapping to each commit. It is rad! That being said the landing page is soooo obviously “vibe coded” (read: AI generated). It has that design style that Claude likes to ~ab~use. & if I’m being honest, had I clicked on the website link first, I would never have gotten to the demo bc I would’ve just dismissed it as AI slop.
- germanptr 4mo agoI get this question a lot, and I found it hard to answer briefly, so I ended up writing a longer post about how I work: https://www.trigosec.com/insights/mob-programming-for-one/ https://www.trigosec.com/insights/mob-programming-for-one/ The short version is that I don’t let AI agents work unsupervised on my code. I treat them like participants in a mob programming session instead of autonomous developers. Different agents get different roles (implementer, reviewer, architect, security reviewer, etc.), and I stay involved throughout the process. I also agree with your point about architecture. Generating isolated components is relatively easy; preserving and evolving the architectural boundaries across a larger codebase is much harder. We’re still missing a good way to express and measure architectural quality. Until then, architecture heavy work requires much closer supervision than implementation heavy work
- Swizec 4mo ago> We’re still missing a good way to express and measure architectural quality Architectural complexity[1]! There’s several really good papers on this. Unfortunately it never caught on and we don’t have great automated tools to spit out a number. Also the majority of people just don’t care enough. Research in this field kinda died out when we invented microservices and started treating those as a silver bullet to The Architecture Problem (it’s not [2]) [1] https://swizec.com/blog/why-taming-architectural-complexity-is-paramount/ https://swizec.com/blog/why-taming-architectural-complexity-... [2] https://youtu.be/y8OnoxKotPQ https://youtu.be/y8OnoxKotPQ
- TheBigSalad 4mo agoYou have to make those architectural decisions and feed them to the agents. Be very specific. That's been my experience.
- pipes 4mo agoI found that this guys stuff has really helped me: https://youtu.be/-QFHIoCo-Ko?is=FYYdukWluYX3vdQL https://youtu.be/-QFHIoCo-Ko?is=FYYdukWluYX3vdQL Worth a watch.
- pjmlp 4mo agoMe when not trying to meet management expectations, only as smarter code completion, formatting code, basic code analysis, and helping copy pasting code examples between languages. Me when meeting management expectations, agent orchestration tools like Boomi and Workato calling into tools, doing with AI what a few years ago would be done with BPEL.
- amelius 4mo agoI personally limit LLMs to single files only at the moment. Self-contained components. Using LLMs in a larger scope can sometimes work, but it has the real risk of turning a project into a mess after which you will have to undo the work and lose a lot of time. Also, using LLMs this way with less clear boundaries will make reading and maintaining the code more cumbersome.
- rootusrootus 4mo agoI use this strategy, too. I liken it to limiting the blast radius. If the LLM truly fouls things up it’s easier to pick up the pieces if you keep the scope limited.
- warumdarum 4mo agoThe true test challenges should be how far an AI can minimize a given fucked up codebase and keep full functionality. I also think that writting large codebases into a sort of functional transformer tree as information compression stage would allow them to easier reason about large code bases by having a large lossless overview with minimal token usage.
- zem 4mo agoi've been running claude in what the blog calls phase 0 for the last 6-7 months. i'm perfectly happy with it, my development velocity has increased while i still have a good grasp of the entire app, and i've actually been making decent progress with web development for a personal project, which is something i've bounced off several times in the past. also i do not get stuck as often on stuff like "how do i get django to statically serve up a js bundle with relative imports" which is more about knowing specific APIs of specific frameworks than any feature of my code or architecture. i would not want to go down the "take myself out of the loop" path because yes, i do have to micromanage the claude session, often course-correcting every commit and then doing large scale refactoring every so often. but i'm perfectly happy doing that - i see claude as more of a tool than a coder i can hand work off to.
- zem 4mo agoi just ran into a concrete example of why i would not want to run a tree of unsupervised agents churning out code. i have a project that generates large but repetitive .docx documents. i asked claude to add some graphics to it, it did a very good job of figuring out the xml graphics elements, locating where in the document structure it could insert them, and even printing to pdf and checking visually to get them perfectly lined up with the text. it took some 5 minutes, i would likely have spent an hour doing all that from scratch including several trips to google. then i looked at the code and asked it to benchmark, hinting that it looked like it was doing a lot in the inner loop. and sure enough, adding a few simple graphics to every page more doubled the time it took to generate the largest size of document (~1s -> ~2.2s for ~400 pages). without any more prompting claude figured out that it had an accidentally-quadratic loop, and fixed that. i then had to tell it "look, we are using a template to avoid regenerating boilerplate with every page. you can add a placeholder to the template and replace it with graphics using xml patching code you already wrote for another part of the doc generation". the final code was a lot cleaner and ran in ~1.2s, which claude (again unprompted, to its credit) did fine-grained benchmarking to prove was the unavoidable overhead of simply inserting all those large chunks of xml into the document. i wouldn't even say it was a coincidence that i ran into this right after writing my comment about having to micromanage the LLM, because this sort of thing happens all the time. i can say that i had a much easier time doing this because i looked at the code generated in a single commit and could easily see that it smelt off. i would have not have wanted to do this at the end of 20 commits all building on each other.
- girvo 4mo agoI'm currently using it to do a large migration from one Relay environment to another, but this is possible because 1. We've done it by hand for another route already, which the LLM uses as reference 2. Theres a strong validation setup/harness I've setup for it with storybooks, and component tests 3. It's a _mostly_ mechanical transform. Not entirely, as the two environments/APIs are not 1:1, but it's close enough But! I and my team are still reviewing everything shrug it is "faster" because I get to have this running while I'm in meetings planning other more interesting projects And this isn't really that many agents in parallel. Yeah, plenty of fan-out subagents, but that IMO doesn't count/isn't really the same as what others are talking about
- mattmanser 4mo agoI think a problem here is you're overestimating how hard it is to rewrite something when you have one example of how to do it right. Even in the 2000s, I remember a junior essentially rewriting our entire codebase from old school asp vbscript to .Net in a few months. A 100 or so pages back then. Your team could have done it pre-AI, but you just thought it was hard so you didn't try. I remember migrating a code base from MySQL to SQL Server in the 2010s. I thought it would take me weeks, if not months. It took me a couple of days. Immediately made me sour on the "hot" idea in the 2010s that your data layer should be provider agnostic so you could switch if you needed to. That was never a real thing, it was a made up justification for unnecessary over-engineering, by people who had clearly never tried to port an app from one data source to another. There are other reasons for a clear separation, but switching a few hundred SQL statements is not it. In reality, mechanical ports are not that hard, you can sit down, put some music on and blitz it in a few days. Programmers just over-estimate how hard they will be.
- zeroonetwothree 4mo agoYes if you know exactly how something should work it is fairly quick to implement. The hard and slow parts are when you only have vague requirements or have to experiment and iterate.
- girvo 4mo ago
- Eridrus 4mo agoIn the last week we have done a complete analytics dashboard overhaul with Fable/Opus. The baseline was really bad, for we have no front-end engineers, so we largely felt comfortable not reading anything but the auth code (where we did find one subtle edge case handled incorrectly). The pipelines and data serving design was all human since it did have to deal with some data scale but the javascript/api layer was all slop, and it seems fine and good. If you have a really high quality piece of code that needs to meet a high bar of quality/reliability, then I think the risk of letting the AI loose on it is very high and I wouldn't do it. If you have a pile of code you already know is a pile of garbage despite being human written, well, it can't get much worse :) I also built an agent orchestration meta harness that runs on k8s and uses the k8s agents sandbox for running codex/claude code in the cloud. This was almost entirely just handed over to Fable and I have not asked a single architectural detail. The quality of this product is mediocre, but the fact that it largely works after I went through a few iterations of clicking around is impressive. I would have preferred to buy something off the shelf, but nothing even really came close (though maybe now I would have forked Omnigent)
- yieldcrv 4mo agoI don't know if I’m overly critical but there’s gotta be a middle ground between totally AI pilled people that otherwise have no talents, and control freak veteran developers who cant let go My current process is also using Github projects in a normal scrum style way, with many tickets written or fleshed out and state managed by the LLM, and it doubling as the memory system Completely leapfrogging all these other open and closed source concoctions and being more effective But its effective enough that I don’t need OP’s final form state of still approving everything Auto-mode is fine. Worktrees are built into Claude Code now. I just tell it to classify tickets as sequential or parallel possible and spawn subagents to tackle all of the tickets in the todo list They all get their own context window its pretty perfect now in the meantime I work in a couple tabs of Claude Design for different flows of any client side app. My philosophy has been that devs could pick up graphic and UI/UX design easily, its just still a full time job to make variations of layouts and portray their states. UI/UX is not a full time job anymore. And I use Claude chat to flesh out aspects of the overall idea I think you may be overcomplicating your workflow in the concluding state. Overall I agree that planning and intention is now most of the time, before a 10 subagent precision strike is initiated
- thi2 4mo agoThere are tons of people, those are just not as vocal.
- nisabek 4mo agoCould be (the overcomplicating part), I'm just not yet comfortable loosing the mental model of the final application. At least not in all types of tickets. Are you not seeing that?..
- yieldcrv 4mo agoI focus on one side project at a time, alongside work applications Both are giving me skillsets to excel in the other domain I watch the subagents, push back on some choices, look at commits and glance at pull requests
- ai_fry_ur_brain 4mo ago
- brcmthrowaway 4mo agoMore Yegge tier psychosis.
- lofaszvanitt 4mo agoExactly.
- deleted 4mo ago[deleted]
- chattermate 4mo ago[flagged]
- flo_r 4mo ago[dead]
- gnunicorn 4mo agoInterestingly, despite it being much more detailed and a lot more process and procedure than what I currently do - which is more akin to the version 0 described, but in parallel - we come up at the same final problem: reviews and quality assurance. I sign off the code I merged, part of company policy but also just to be sure it is actually decent. But reviewing has become the real draining bottleneck: even stacked PRs, if that total 5-6k lines is not a 5min job. Even if I brainstormed and set the plan, that's really the part that doesn't scale right now for me in this. But the author is very shy about that: either the changes arent that big in the end or they trust the process enough to review in a more casual manner. Being equally untrusting I can't do that ...
- strogonoff 4mo agoProper review should take longer than writing it yourself, because you need to know the correct solution, understand the proposed solution, and evaluate the difference between the two. When designing it yourself, you just need to know the correct solution and write it, and with modern high-level languages and IDEs with autocomplete writing it is hardly a bottleneck.
- minihat 4mo agoIt is harder to solve a sudoku than verify a solution's correctness. I find similar benefits occasionally when coding with LLMs.
- skydhash 4mo agoSudoku’s constraints are knownn and easy to build an harness for. Software has a more malleable structure. An harness is hard to build and the tests cases for the constraints can be a lot.
- layer8 4mo agoI disagree under the following circumstances, which in my experience is the common case: You don’t know from the outset all relevant considerations that go into implementing something. Coding yourself is an exploration process of those considerations. Being shown a finished solution doesn’t let you see and understand all the considerations and the possible options that you’d have contemplated when implementing it yourself. When reviewing, you still have to do that exploratory thinking to weigh the possible options. And the fact that you have to do that exploration purely mentally rather than in a process of working with code arguably makes it harder (similar to contemplating alternative solutions to a Sudoku purely mentally, actuallu). There rarely is a single correct way of implementing some requirement or feature. It’s a trade-off between compromises, not binary correct or incorrect like a Sudoku puzzle. The insights that the exploration give you may even lead you to implement something significantly different from what you originally set out to.
- pydry 4mo ago>Automating myself out of development >I want to start by saying that I’m neither an AI-fanatic Kind of like saying you are a fanatic before saying you aren't. I don't think theres too much here (e.g. "spec driven development") I haven't seen elsewhere.
- classified 4mo ago> I don't think theres too much here I haven't seen elsewhere. Isn't that the rhyme here. I can't think of any article or discussion on AI here that contains anything new or noteworthy. And yet all those articles we've read before and all those "discussions" we've had before keep coming and coming. I have gotten bored and I'm just waiting for anything decisive to happen.
- general1465 4mo agoI am completely calm regarding AI and development. First nobody sane want to give their domain IP to OpenAI/Anthropic. That's why local AI will eventually prevail and flourish because people who actually have some IP will have no problem to buy 10k+ EUR machine to run some pretty good models on it. However if your main job is just doing CRUD stuff, then you are screwed. Secondly hallucination is really Achilles heel of every LLM. Sure you can recreate an application which exists in thousand of variations on the internet, but the moment you will try to go more into domain knowledge you will start struggling more and more. Try to make CAN driver for ESP32, easy it is probably going to work. Try to make CAN driver for STM32F7xx now the AI will start having a problem but probably will be able to produce something what is working after a lot of debugging. Now let's make CAN driver for MPC5555. AI will start writing fairy tales about registers which do not exist. All of processor above have reference manuals and sometimes example git repositories available on open internet.
- abletonlive 4mo ago> All of processor above have reference manuals and sometimes example git repositories available on open internet. okay? then give those reference manuals and git repositories? I haven't heard something know LLMs can't get around and figure out?
- bonoboTP 4mo agoDid you try this by giving it access to the materials? Human programmers also don't memorize all this stuff. If this is the reason for your calmness it's quite shortsighted. There are problems when you rely too much on AI generated code, but these shallow dismissals are quite annoying.
- general1465 4mo agoI did, the problem is that 1. There can be massive differences between chips which sounds plausibly same and thanks to the way how LLM is working, models are mangling these variations together 2. Registers are often named in very way similar across different manufacturers so models are making up registers in MPC5555 which are coincidentally registers in Renesas processors doing same thing. 3. There are no standard in reference manuals, sometimes there are literally missing chunks of knowledge thanks to translation to English or there are pieces which you can only get from Application Notes which has code as a screenshot. And then you will find out that all those descriptions are wrong and through trial and error you will get it working in 2 weeks time. Bonus point: Random people having public Git repositories for obscure processors, but with bad or completely non working implementation of drivers for them. However LLM will just output variation of this garbage on you, because there are 3 public repositories on the whole internet. Sometimes I have a feeling that this must be on purpose to poison the well.
- uyhgbbhakusho 4mo ago[flagged]
- uyhgbbhakusho 4mo ago[flagged]
- yuuuuuwuu 4mo ago[flagged]
- Supermancho 4mo ago[flagged]
- 2001zhaozhao 4mo agoGood writeup. I think the main difference in my workflow is that I skipped the sandboxing part and accepted the coding agent having access to the entire 24/7 dev machine, so I'm still running on worktrees. Also, the "idea enrich" steps in my workflow are less formal - I tend to write most details in a feature spec myself. I also do my workflow on my own self-hosted custom interface which comes with a kanban board for project tracking, so I don't need Github. The rest of the workflow looks pretty similar.
- uuuuunnnuuu 4mo ago[dead]
- saint-evan 4mo ago*siiiighhh... Slop automation. Removing self from loop, automating brainstorming. It's madness. No way that code is any good, shippable beyond 2 users or even maintainable beyond auto-slapping on more slop. Sad.
- thegrim33 3mo ago"Automating Myself Out of Development" .. "I’m neither an AI-fanatic" Clicks through bio, clicks into their linkedin .. wow, who could have ever guessed .. they're the CTO at an AI company whose sole product is trying to replace workers with AI solutions. Who could have ever guessed? That the person writing a personal blog post about how they're not an AI fanatic and how they can automate their work using AI tools .. is the CTO at an AI company selling products that do exactly that? Wow, what a coincidence. Surely this blog post contains a purely objective, impartial analysis of the topic.
- nisabek 3mo agoI'm not some evil spy trying to make everyone use AI... both the startup and the blogpost are an experiment, a work in progress that I'm sharing I don't think anyone would read my blog and be like "Oh, now I need a tool for my SRE to automate incident management" People are starved for real life examples, this is a real life example. of course I'm not objective. To be objective you'd need to make a large scale study among thousands of companies. I'm sorry I don't have resources for that... just trying to get other people's feedback
- ProllyInfamous 3mo agoI'm in general more supportive of others' comments within this article... but I'm still glad your research/tone is posted here, too. Nobody is entirely correct/wrong about the coming Future changes. Nobody knows what is reasonably believable, anymore...