18 ms·
AI: Accelerated Incompetence
- h1fra 1y agoAt first, I was not convinced then I thought I would be replaced, now I'm convinced the AI slop is unstoppable and having the hard skills will quickly be invaluable
- deleted 1y ago[deleted]
- CuriouslyC 1y agoThe people who write AI slop would have written human slop, they're just much faster now, and the people who are really good tend to be so set in their ways that they resist AI when they could quadruple their productivity if they just put half as much time into learning how to use it as they put into their current skillset.
- vouaobrasil 1y agoYou are omitting a third class: the people who would not have written anything at all but are now writing AI slop because the bar has been lowered.
- namaria 1y agoPretty much the reason I think electronic music was fantastic right up to the point DAWs became a thing. When everyone with a laptop and some software licenses can just put out slop that sounds like the originators, quality fell off the cliff. 90s and 2010s electronic music are a world apart.
- conradfr 1y agoYou're not wrong but there's entire jams on YouTube from people with real gear and no DAW that produce uninteresting synth based music. Yet The Prodigy made good albums entirely with Reason.
- namaria 1y agoI'm not sure what point you're making. I never claimed any set of tooling is necessary of sufficient to produce good music. I merely pointed out that, as it became more accessible to produce music, the overall quality of the output decreased.
- conradfr 1y agoI think the volume of good music has actually increased, but maybe less than the bad music.
- vouaobrasil 1y agoYeah, it seems to be a problem, especially when it comes to 'discoverability'. Just like the app store: I hate browsing app stores like Apple/Google Play and stopped doing it entirely because every query has 40+ different apps doing very similar things.
- johnecheck 1y agoGreat engineers can quadruple their productivity with LMMs? Strong claim. If their whole job is throwing together disposable demos and 1-use scripts, I could believe 4x. But in the normal case, where the senior engineer's time is mostly spent wrangling a legacy codebase into submission? I just don't see LLMs having that level of effect.
- CuriouslyC 1y agoDepends on how coupled the codebase is. Heavily coupled code is hard for LLMs to modify, but brownfield work that's not heavily coupled, you can easily refactor and improve coverage at a much higher rate with LLMs.
- rTX5CMRXIfFG 1y agoHonestly there are good reasons to resist AI even as a senior. If prompting an LLM cannot be easily integrated into your existing workflow or demands a huge change in tooling, it's just distracting or crippling. I don't think we need to have a long discussion as to why distractions and context switches are counterproductive.
- CuriouslyC 1y agoYou can say that, but when the principle down the hall from you who's got a highly tuned agentic AI workflow is outproducing half your team by himself while leading engineering direction on multiple projects, it's hard to justify that to management.
- deleted 1y ago[deleted]
- rTX5CMRXIfFG 1y agoI’m sure it will all come down to their risk appetite.
- blibble 1y agoit's an "if", not a "when" this outcome is far from certain (unless you're a slopper, in which case it's obviously happening tomorrow)
- jgalt212 1y agoThe AI slop will continue as long as the stock market rewards it.
- 8f2ab37a-ed6c 1y agoIs AI perhaps an opportunity for years of paid cleanup and re-design work that those of us who have dedicated decades to learning the craft of software engineering will be able to cash in on?
- fouronnes3 1y ago"Software Engineering in the Age of AI" is the new "Maintaining Legacy Code Effectively"
- 90s_dev 1y agoYeah I was thinking there's gonna be a lot of work for us in a couple years when AI makes a giant mess and corporations come crawling back to us with their tails between their legs. Now I really need to jumpstart repurposing 90s.dev to become essentially a community of the people you're describing. What would we need to start with? Mailing list? bboard? [edit] posted a top level comment with this question
- anthk 1y agoUsenet and IRC groups ;) No, seriously. If you have the skills to join, yo should be able to handle the proper way of programming with no AI at all.
- silvestrov 1y agoThis will require companies to be able to survive for some time using the old code and to recognise the importance of cleaning up. Has this ever happened besides the Y2K fixes? Wouldn't it be much more likely that the companies will simply go under? Or that they will make a team that writes a completely new version of the code, somewhat like Mac OS X was a replacement of MacOS 9 and not a cleanup.
- zikzikzik 1y ago> Or that they will make a team that writes a completely new version of the code Isn't that one way of the "cleanup and re-design work"?
- bravetraveler 1y ago> If you're a skilled, experienced engineer and you fear that AI will make you unemployable, adopt a more nuanced view. LLMs can't replace human engineering. Ah, but you see, without any promise of pudding: why eat the meat? I do the 'human engineering' part only to do... the rest of the engineering.
- hawk_ 1y ago'human engineering' here isn't social engineering. I think they're referring to aspects of engineering that LLMs are still incapable of - like design simplification.
- bravetraveler 1y agoI follow... it's just, I much prefer to work with the computer than the humans. Simplification usually involves a lot of talking. edit: The [currently] Dead reply below is a touch ironic. I rest my case. Great sell, worth the squeeze.
- karn97 1y ago[flagged]
- cucubeleza 1y agoI was hoping the AI could replace me, maybe the IA would fulfill my boss deadlines
- 90s_dev 1y agoTell your boss a realistic deadline, honor it to the best of your ability, and if they fire you so be it, and if they harass you to work faster, find another job.
- stevage 1y agoI'm really appreciating some of the writing en AI that is coming out now. Beyond simply "vibe coding is bad" but advancing arguments about the specific risks.
- monero-xmr 1y agoI use LLMs for annoying shit that used to take an inordinate amount of time. For example an analyst gives me a CSV, it has some data clean up issues, eventually it needs to become a series of SQL inserts. What was a day of script writing becomes 15 minutes of prompt engineering to clean up the CSV and convert it into the proper statements. Massive time savings! I believe one can vibe code a basic app or script. Like building one of those little trinkets people put on websites, like calculators or mini games. But I agree, the LLM can’t build, say, Google Chrome, or AWS Cognito, or Netflix, or anything that actually has serious billion dollar value. It’s not a “when” question, because these are not “solvable” problems.
- vouaobrasil 1y ago> I use LLMs for annoying shit that used to take an inordinate amount of time. For example an analyst gives me a CSV, it has some data clean up issues, eventually it needs to become a series of SQL inserts. But that has a flip-side too: analysts are more likely to give you CSVs with more issues because they know you can clean it up with AI. And pretty soon people will put less care in general in what they do until something goes wrong with this translate-with-AI paradigm.
- add-sub-mul-div 1y agoIf you learn the skills that's nowhere near a day of work and then you can do it forever without dependence.
- nyrikki 1y agoHonest question, what type of CSV to SQL code are you doing whre correctness doesn't count? Perhaps my few decades in the industry have been in areas whree it is always the details, correctness, and fitness for purpose that tends to make those problems hard, not the work itself. I do see a use case for throw away spikes, or part of a red-green-refactor, etc.. but if accuracy and correctness aren't critical, data cleanup is easy even without an LLM.
- zhivota 1y agoIn my experience the difficulty in this kind of task is reading the docs of a bunch of packages I haven't used in months/years and probably won't use again anytime soon, testing things manually and creating all the little harnesses to make that work without running for minutes at a time, etc. Sure for someone who does ETL type work all day, or often enough anyway, they'd scoff, and true LLM won't really save them time. But for me who does it once in a blue moon, LLMs are great. It's still on me to determine correctness, I am simply no longer contending with the bootstrap problem of learning new packages and their syntax and common usage.
- auggierose 1y ago> The text in this essay was written without any use of AI. That's fine, although I think only native English speakers would be proud of that. I am sure he also didn't use a spell-checker.
- consp 1y ago> I am sure he also didn't use a spell-checker I'm not sure that would matter with/to most people. I can only speak for myself and I don't care unless I'm reading a text by someone who claims to be either an English teacher or Linguistic subject expert.
- auggierose 1y agoYes, it should not matter. Neither should it matter if an AI was used or not. It should be judged on the quality of the article. After all, nobody can actually check if he used an AI or not. He may just be lying about that.
- EncomLab 1y agoRemember when 3d printing was going to replace all manufacturing? Anybody? AI is closer to this sentiment than it is to the singularity.
- thinkindie 1y agoor bitcoin going to replace banks? We ended up with banks selling financial tools based on bitcoin.
- Etheryte 1y agoThis is an easy quip to make, but it's also pretty wrong. 3D printing has been a massive breakthrough in many industries and fundamentally changed the status quo. Aerospace is a good example, much of what SpaceX and other younger upstarts in the space are doing would not be feasible without 3D printed parts. Nozzles, combustion chambers, turbopumps etc are all parts that are often printed.
- karn97 1y agoThat's less than 1% of all manufacturing done on the planet. Stupid comment for the sake of commenting.
- rak111esh 1y agoOP's comment and your response could both be true at same time
- dingnuts 1y agoI actually think the response makes the point. LLMs are useful, and will provide certain innovations, but they aren't a panacea. At the top of its height, proponents talked like 3D printing was going to make parcel delivery obsolete, and that's the same hype you see with language models "threatening" all knowledge workers
- jasminebelmont 1y ago[flagged]
- vouaobrasil 1y ago> If you're a skilled, experienced engineer and you fear that AI will make you unemployable, adopt a more nuanced view. LLMs can't replace human engineering. I don't think LLMs were ever meant to completely replace human engineering, at least in the way we think of engineering as a craft. But the truth is the world is changing, and with LLMs/AI, the goalposts are changing, too. With massive economies of scale and huge output, the goal is less and less good engineering and more and more pure output. Put it another way, the post-AI world considers a reduction of quality to be an acceptable tradeoff for the massive short-term gains. Moreover, although quantity over quality is not exactly a new concept, what AI does is magnify and distill that concept as a prime directive. Code doesn't have to work well to be profitable given how cheaply in can be produced, and that's a general effect of technology that can reach global audiences, and AI is the apex of that technology. I don't think there is a nuanced view: AI is an all-around bad thing and its positives in the short-term will be vastly dwarfed by its negatives except for those who have become specialized at concentrating wealth at the expense of the common good.
- karn97 1y agoEven the latest models are terrible, absolute garbage at engineering. They can't engineer solutions at all. Even in the simplest of cases. Tells me a lot about people like you who make these comments rather than llms.
- vouaobrasil 1y agoNot sure what you mean by your snarky comment but I never claimed that LLMs produced any good solutions.
- rTX5CMRXIfFG 1y agoI agree with your main point, and almost as if to nitpick: more and more output (specifically in the context of LLM-produced code) is paradoxical to economies of scale, precisely because LLMs make too many mistakes at scale. So then we necessarily have to limit their use to relatively simple and mundane tasks. That is, of course, still valuable in itself, but history teaches us that there _will_ be a mass movement to building large, complex, risky products using LLMs. I don't believe that that's something that we can stop. Somehow, I feel like the popularization of LLMs is a force of natural selection where those who are smart enough to keep training their minds will find themselves more financially secure than those who don't, and therefore more likely to survive.
- sensanaty 1y ago> Input Risk. An LLM does not challenge a prompt which is leading... (Emphasis mine) This has been the biggest pain point for me, and the frustrating part is that you might not even realize you're leading it a particular way at all. I mean it makes sense with how LLMs work, but a single word used in a vague enough way is enough to skew the results in a bad direction, sometimes contrary to what you actually wanted to do, which can lead you down rabbit holes of wrongness. By the time you realize, you're deep in the sludge of haphazardly thrown-together code that sorta kinda barely works. Almost like human language is very vague and non-specific, which is why we invented formal languages with rules that allow for preciseness in the first place... Anecdotally, I've felt my skills quickly regressing because of AI tooling. I had a moment where I'd reach out to it for every small task from laziness, but when I took a real step back I started realizing I'm not really even saving myself all that much time, and even worse is that I'm tiring myself out way quicker because I was reading through dozens or hundreds of lines of code, thinking about how the AI got it wrong, correcting it etc. I haven't measured, but I feel like in grand totality, I've wasted much more time than I potentially saved with AI tooling. I think the true problem is that AI is genuinely useful for many tasks, but there are 2 camps of people using it. There are the people using it for complex tasks where small mistakes quickly add up, and then the other camp (in my experience mostly the managerial types) see it shit out 200 lines of code they don't understand, and in their mind this translates to a finished product because the TODO app that barely works is good enough for an "MVP" that they can point to and say "See, it can generate this, that means it can also do your job just as easily!". To intercept the usual comments that are no doubt going to come flooding in about me using it wrong or trying the wrong model or whatever, please read through my old comment [1] for more context on my experience with these tools. [1] https://news.ycombinator.com/item?id=44055448 https://news.ycombinator.com/item?id=44055448
- johnecheck 1y agoNonono you've got it all wrong you clearly need to try [model name] with [coding product], it 100x'd my productivity!
- bandoti 1y agoFrom my experience so far it is helpful for me to get another opinion on how to solve a problem—and I do the work in the end. Or, I am extremely specific, and give it a relatively small problem to solve, and it solves it—writes the code for me—and then I code review it, and make changes to uphold my standards. In other words, AI is my assistant, but it is MY responsibility to turn up quality, maintainable work. However, to put things in perspective for the masses: just consider the humble calculator. It has ruined people’s ability to do mental math. AI is going to do that for writing and communication skills, problem solving skills, etc.
- bearjaws 1y agoLet's be real, 70% of staff are phoning in their jobs so badly that an AI often is just as good if not better. The real struggle will be, the people phoning it in are still going to be useless, but with AI. The rest will learn and grow with AI.
- api 1y agoFor large companies this is true, and this may be the best AI coding take I have read. It's similar with full self drive. FSD is better than a bad, drunk, or texting human driver, and that's a lot of the drivers on the road.
- karn97 1y ago[flagged]
- api 1y agoUpvote for peak HN comment.
- blooalien 1y ago> FSD is way more unreliable than an average drunk driver. Than an average drunk driver, or you drunk driving? One of my first drinking buddies when I was still an alcoholic (decades ago) was actually an excellent driver when drunk, but most people I knew at that time couldn't hardly even walk let alone drive when drunk.
- gwbas1c 1y agoI don't get the downvotes. When I used the free trials of FSD, It kept doing dangerous things and I kept needing to intervene. It seems a lot of people conflate the fact that the technology is impressive with the fact that it's still quite dangerous. > FSD is way more unreliable than an average drunk driver. I'm thinking you mean something like someone who blows a 0.1 or 0.12, or possibly drank 2-3 beers. (IE, someone who is impaired but probably won't get into an accident.) That would be an interesting thing to try to test objectively, because there are way more people who drive in that state, (including off-duty police officers), than a lot of people realize.
- paradite 1y ago> LLMs as they currently exist cannot master a theory, design, or mental construct because they don't remember beyond their context window. Only humans can can gain and retain program theory. False. > An LLM is a token predictor. It works only at the level of text. It is not capable of working at a conceptual level: it doesn't reason about ideas, diagrams, or requirements specifications. False. Anyone who have spent time in machine learning or reinforcement learning understands that models are projections of higher dimension concepts on to lower dimensions as weights.
- mjburgess 1y agoThe problem with people "who have spent time in machine learning or reinforcement learning" is that they've spent no time, literally none, understanding what a concept is. There is no such thing as a higher dimensional concept, nor can they be projected into a weight space, because they aren't quantities. The concept, say, "Dog" composes with the concept, "Happy" to form "Happy Dog". The extension(Dog) is all possible dogs, the extension(Happy) is all happy objects, the extensions here compose. The intension of "Dog" depends on its context, eg., "get that damned dog!" has a different intension than, "I wish I looked less like a dog!". And the intensions here do not compose like the extensions. Take the act of counterfactual reality-oriented simulation, called "imagination" narrowly, call that `I`. And "curry" this operator with a simulation premise, "(as if) on mars", so we have I' = I(Mars)(...). Now, what is the content of I'(Dog), I(Happy Dog), I(Get that damned dog), I(get that damned happy dog) ? and so on The contents of `I` is nowhere modelled by "projection" because this does not model composition, and is not relevantly discrete and bounded by logical connectives. These are trivial issues which arise the moment you're aware that few writing computer science papers have ever studied the meaning of the words they use with abandon.
- paradite 1y agoYou seem to believe "concept" is a concept in English language. It is not. Concept is an abstraction layer above human languages. Here's a good article that touched on this topic: https://www.neelnanda.io/mechanistic-interpretability/glossary https://www.neelnanda.io/mechanistic-interpretability/glossa...
- Willingham 1y ago> How often have you witnessed an LLM reduce the complexity of a piece of code? I would add that AI often makes far too clever code as well, and would defer to Kernighan's law: “Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.”
- injidup 1y agoOften. It's often as simple as adding to the prompt to prefer to use standard libraries than recoding algorithms from scratch. Or do a second pass on something that you feel might be copy pasting ideas. And adding to the prompt doesn't mean always having to type it. I have a set of canned things that get added to every request which includes, coding standards and requests to use standard api. You often get what you ask for not what you want.
- AnimalMuppet 1y agoIt's worse. If you weren't clever enough to write the code in the first place, and so you used an LLM to tell you what to do, you definitely aren't clever enough to debug it. The LLM may or may not be clever enough, but you aren't clever enough to evaluate its debugging.
- 90s_dev 1y agoIt's occurred to me more and more that I need to repurpose 90s.dev into a non-AI community, focused on the ancient art of writing software well, and welcoming to all who honed that craft. What would it need to start with? Forum? Mailing list? Aggregate blog from multiple authors like hackernoon? [edit] Makeshift mailing list for those interested: https://github.com/sdegutis/90s.dev/issues/2 https://github.com/sdegutis/90s.dev/issues/2 (subscribe or comment to "sign up for emails" on the topic)
- api 1y agoUse an OG forum software that's good and powered some of the classic forums of the time. Make it stylishly retro.
- 90s_dev 1y agoDefinitely. Honestly I was going to write a custom forum in the style of those perl bboards but with https://90s.dev https://90s.dev aesthetics (the website, not the os). But maybe first and foremost I need a mailing list so people can be notified of things like this when they're announced/released?
- api 1y agoI'm interested. I don't think it should just be an older coders club though. It should be for anyone of any age that's into the craft of fine, well built software, and who wants to learn from people who have been into it a long time. I also like /r/tinycode for its spirit. My #1 saying in coding is "simplicity is harder than complexity." It's gone downhill like the rest of Reddit though. I'm also not totally anti-AI. I use it a little bit. I just think if you aren't a good developer you aren't competent to use it properly. It's like saying autocomplete will make a bad developer good. I think it's like super autocomplete. Also found it useful for "here's a big block of code, explain it" -- you have to check what it tells you of course, but it gives you a passable first pass analysis, like asking a junior dev to do that.
- 1y ago
- parsley 1y agoI call it fast-food software, but that doesn’t mean everyone holds the tool in the same way, the collaboration and use of an assistant to research or modify specific things is the key value-add. But many people will use unrestrained tool-enabled agents to do all of their work. And so be it, there’s already bad software out there, always has been. It’s easier to make and distribute software. It’s high calorie and tastes great and is FAST. But you have to hope it will be more of a tool than a full meal.
- spacebanana7 1y agoUsing AI effectively is like riding a horse or getting a monkey to do things for you. There's absolutely skill involved in getting them to do what you want, and used incorrectly they can create far more mess than any individual human. But we can also use them to achieve things that'd be almost impossible for us to do alone.
- frenchmajesty 1y agoI disagree with the author here. His point can be summarized as "LLMs produce bad code, LLMs lead to the teams's average skills decreasing and they can't maintain large codebases over time". Yet nowhere he addresses the #1 flaws to his position: rate of improvement of the technology, and its promise to deliver on saved money and gained speed. In all the companies I've seen engineering leadership hardly really gives a shit about things OP says are important. They just care that customers are happy, the system is stable, and its malleable enough to allow for pivots when need be. Good discussions & documentation about architecture before starting the work that gets peer-reviewed + A non-stupid engineer putting on good guardrails around the LLM's output + the extensive unit test suites in CD/CI + peer reviews on the PRs = all downsides near eliminated while all upside gained. This is how we work at my company today (health startup). Google and Meta also boast publicly +30% of new lines of code are AI-generated in their companies today. That the state of *today*; assume in 5 years these AIs are 10x better... I simply cannot foresee a world where LLM-assisted coding is not the de-facto way be a software engineer.
- jasminebelmont 1y ago[flagged]
- zaphar 1y agoThe LLM trend lines may indicate that further research, experimentation, and investment in LLMs is warranted. But it is a mistake to assume that trend lines predict the future. Yet this is the primary evidence that is raised in support of LLMs in response to critics. It's not at all clear that the upside gained outweighs the cost in your hypothetical scenario nor is should it be taken as a given that the trend line will continue as is for long enough to create enough upside to outweigh that cost.
- yahoozoo 1y agoAre they going to be 10x better though?
- walterbell 1y ago> Assume in [N] years these AIs are 10x better Why has OpenAI been acquiring "application" layer companies for large financial sums, instead of improving their own tools to build application layer codebases? > 30% of new lines of code is AI-generated "Watching AI drive Microsoft employees insane", 500 comments, https://news.ycombinator.com/item?id=44050152 https://news.ycombinator.com/item?id=44050152
- bsaul 1y ago"[AI] is not capable of working at a conceptual level". I wonder where did author got that feeling. What recent LLMs proved time and time again is that they are definitely able to work at conceptual level (by correctly translating concepts from one language to another depending on the context for example). Saying it doesn't "understand" the concepts as humans do is a different thing. It wouldn't "understand" pain, because it has no experience of it. But humans constantly talk about thing they've never personally experienced (and indeed maybe they shouldn't, but that's another topic).
- mjburgess 1y agoThey work in a token space whose metrical structure is given by proxies for concepts. So at a point in this space I can "walk towards" points which cluster around the token "dog". This is a weak model of some features of concepts, eg., association: "dog" is associated with "cat", etc. But it, e.g., does not model composition, nor intension, nor the role of the term in counterfactuals. (See my comment elsewhere in this comments section on this issue). However you can always brute force your way to apparent performance in some apparently conceptual skill if the kinds of questions you ask are similar to the trainign data. So eg., if someone has asked, "if dogs played on mars, would they be happy?" etc. or similar-enough-families-of-questions... then that allows you to have a "dog" cluster around "literal facts" and a "dog" cluster around some subset of preknown counterfactuals. If you want to see the difference between this and genuine mental capabilities, note that there are an infinite combination of concepts of abitary depth, which can be framed in an infinite number of counterfactauls, and so on. And a child armed with only those basic components, and the capacity for imagination, can evaluate this infinite variety. This is why we see LLMs being used most by narrow fields (esp. software engineers) where the kinds of "conceptual work" that they need has been extremely well documented and is sufficiently stable to provide some utiltiy.
- deleted 1y ago[deleted]
- latentnumber 1y agoI would agree with this if the LLM never really modified the initial linear embeddings, but non-linearity in MLP layers and position/correlation fixing in the attention layers would mean that things are not so simple. I’m pretty sure there are papers showing compositionality and so on being represented by transformers.
- progx 1y agoAI drive me crazy! For simple things they are ok, but with complex problems, they can't solve it and my blood pressure explodes. ;D
- foxes 1y agoMy most recent ai related peeve is people releasing some ai tool and claim that it's "democratising x". "democratising art", "democratising education" -- yeah giving all your data to and relying on a centralised model run by a fascist mega corp is so totally democratic. Maybe can't blame them -- that is what they actually mean based on "democracy" in the US etc though.
- furyofantares 1y agoI'm quite big on using LLMs in coding, and aside from the inflammatory graphic at the top and the comment about loss of joy (I haven't lost my joy at all personally), I agree with the entire rest of the post completely. (For context I've been programming for 30 years now and still love it.) I'm still trying to figure out how to produce a codebase using LLMs and end up as a expert in the system at the end of it while still coming out ahead. My hope is I can be more of an expert a bit faster than before, not less of an expert a lot faster. It feels within reach to me as long as there's frequent periods of coming to a complete understanding of the code that's been produced and reshaping it to reduce complexity. As well as strong technical guidance as input to the LLM to begin with. I think there's still a lot of learning to do about how to use these things. For example, I've tried LLM-heavy things in lua, C, and C#. The LLM was great at producing stuff that works (at first) in lua, but lua was miserable and the code ended up a huge mess that I can't be bothered to become an expert in. The LLM was really tripped up on C and I didn't make it that far, I didn't want to watch it fight the compiler so hard. C# has been great, the LLM is reasonably effective and I have an easy time consuming and reshaping the LLM code. I've always liked static type systems but I like them even more now, in part because they help the LLM produce better code, but mostly because they make it a lot easier to keep up to speed on code that was just produced, or to simplify it.
- lherron 1y agoThis is my experience as well. I do not view the first shot LLM generated code as the end result. It’s more like a blob of clay I can continue to shape (with the LLM) until it meets my standards. I also had a similar typed language experience, switching from untyped to type hinted python made the outputs much easier to understand and assess.
- Artgor 1y agoYou know, sometimes I feel that all this discourse about AI for coding reflects the difference between software engineers and data scientists / machine learning engineers. Both often work with unclear requirements, and sometimes may face floating bugs which are hard to fix, but in most cases, SWE create software that is expected to always behave in a certain way. It is reproducible, can pass tests, and the tooling is more established. MLE work with models that are stochastic in nature. The usual tests aren't about models producing a certain output - they are about metrics, that, for example, the models produce the correct output in 90% cases (evaluation). The tooling isn't as developed as for SWE - it changes more often. So, for MLE, working with AI that isn't always reliable, is a norm. They are accustomed to thinking in terms of probabilities, distributions, and acceptable levels of error. Applying this mindset to a coding assistant that might produce incorrect or unexpected code feels more natural. They might evaluate it like a model: "It gets the code right 80% of the time, saving me effort, and I can catch the 20%."
- tomrod 1y agoSWE use probability all the time. Rearchitect around that race condition or reduce its footprint? How long will this database call make, p99? A/B tests. Etc.
- viraptor 1y agoThe bigger the system, the more bigger the probability aspect gets too. What are the chances of losing at the data copies at the same time, what are the chances is all slots being full and the new connection dropped, what are the chances of data corruption from bitrot? You can mostly ignore that in toy examples, but at scale you just have chaos and money you can throw at it to reduce it somewhat.
- jvanderbot 1y agoThis has been about 50% of the time my experience as well. There are very good SWE who know how to use ML in real systems, and then there are the others who believe through and through it will replace well understood systems developed by subdomain experts. As a concrete example, when I worked at Amazon, there were several really good ML-based solutions for very real problems that didn't have classical approaches to lean on. Motion prediction from grid maps, for example, or classification from imagery or grid maps in general. Very useful and well integrated in a classical estimation and control pipeline to produce meaningful results. OTOH, when I worked at a startup I won't name, I was berated over and over by a low-level manager for daring to question a learning-based approach for, of all things, estimating orientation of a stationary plane over time. The entire control pipeline for the vehicle was being fed flickering, jumping, adhoc rotating estimate for a stationary object because the entire team had never learned anything fundamental about mapping or filtering, and was just assuming more data would solve the problem. This divide is very real, and I wish there was a way to tease it out better in interviewing.
- ai-doctor 1y ago[flagged]
- anyonecancode 1y agoI think you could make similar arguments about mapping technology like Google and Apple Maps -- that using them decreases people's skills in navigating the physical world, atrophying our sense of direction and geography. And actually, that's not wrong. People really do often struggle to navigate these days if they don't have the crutch of something like Google Maps. It really has changed our relationship to the physical world in many ways. But also, a lot of people weren't especially good at navigation before? The overall average ability of people being able to get from Point A to Point B safely and reliably, especially in areas they are unfamiliar with, has certainly increased dramatically. And a small subset of people who are naturally skilled at geography and navigation have seen their own abilities complemented, not replaces, by things like Google Maps. I think AI will end up being similar, on a larger scale. Yes, there are definitely some trade offs, and some skills and abilities will decrease, but also many more people will be able to do work they previously couldn't, and a small number of people will get even better at what they do.
- iamacyborg 1y ago> I think you could make similar arguments about mapping technology like Google and Apple Maps -- that using them decreases people's skills in navigating the physical world, atrophying our sense of direction and geography. And actually, that's not wrong. People really do often struggle to navigate these days if they don't have the crutch of something like Google Maps. It really has changed our relationship to the physical world in many ways Entirely anecdotal but I have found the opposite. With this mapping software I can go walk in a random direction and confidently course correct as and when I need to, and once I’ve walked somewhere the path sticks in my memory very well.
- macintux 1y agoI think you’re both right, but the key is walking vs driving. Walking gives you time to look around, GPS reduces stress, and typically you’re walking in an urban location with landmarks. Driving still requires careful attention to other drivers, the world goes by rapidly, and most roads look like other roads.
- 1y ago
- btbuildem 1y agoI strongly agree with both the premise of the article, and most of the specific arguments brought forth. That said, I've also been noticing some positive aspects of using LLMs in my day-to-day. For context, I've been in the software trade for about three decades now. One thing working with AI-generated code forces you to do is to read code -- development becomes more a series of code reviews than a first-principles creative journey. I think this can be seen as beneficial for solo developers, as in a way, it mimics / helps learn responsibilities only present in teams. Another: it quickly becomes clear that working with an LLM requires the dev to have a clearly defined and well structured hierarchical understanding of the problem. Trying to one-shot something substantial usually leads to that something being your foot. Approaching the problem from a design side, writing a detailed spec, then implementing sections of it -- this helps to define boundaries and interfaces for the conceptual building blocks. I have more observations, but attention is scarce, so -- to conclude. We can look at LLMs as a powerful accelerant, helping junior devs grow into senior roles. With some guidance, these tools make apparent the progression of lessons the more experienced of us took time to learn. I don't think it's all doom and gloom. AI won't replace developers, and while it's incredibly disruptive at the moment, I think it will settle into a place among other tools (perhaps on a shelf all of its own).
- doug_durham 1y agoI appreciate your nuanced position. I believe that any developer who isn't reading more code than they are writing is doing it wrong. Reading code is central to growth as a software engineer. You can argue that you'll be reading more bland code when reviewing code generated with the aid of an LLM. I still think you are learning. I've read lots of LLM generated code and I routinely learn new things. Idioms that I wasn't familiar with, or library calls I didn't know existed. I also think that LLMs are an even more powerful accelerant for senior developers. We can prompt better because we know what exists and what to not bother trying.
- Lazarus_Long 1y agoProblem is, paraphrasing Scott Kilmer, corporations are dead from the neck up. The conclusion for them was not that AI will help juniors, is that they will not hire juniors and will ask seniors the magic "10x" with the help of AI. Even some seniors are getting the boot, because AI. Just look at recent news, layoff after layoff from Big Tech, Middle tech and small tech.
- Havoc 1y ago>I don't think anyone believes that a computer program is literally their companion That's what I thought. The AI girlfriend/boyfriend app things seem to suggest otherwise I don't get it, but apparently others do
- talkingtab 1y agoIf you have a new unknown, tool, things go wrong in two ways. For example a hammer. If it works, like to hit a nail, you end up smashing everything in sight. If it fails, like digging a garden, you end up thinking it is stupid. But there is a third case. You use it to do something that you did not know you could do before. Like to planish metal. People are experiencing the first case and second.
- CommenterPerson 1y agoHow about we just call it "Advanced Algorithms" and drop the hype? Minor quibble: On the chart at top, "Inverse correlation" would show up as a hyperbola. The line is more of a negative correlation. Just sayin' :-)
- osigurdson 1y agoPeople would do better to think about new problems that can be solved with LLMs that couldn't have been solved by either humans or machines previously. People are overly focused on the tiny area of the Venn diagram where human and machine competency intersect.
- baazaa 1y agoOne thing that I've noticed is that AI has made it even more abundantly obvious that the low IQs of middle-managers are the main problem. They have a great faith in AI (which is understandable), but they're constantly realising that: a) they don't understand any of the problems enough to even being prompting for a solution b) the AI can explain our code but the manager still won't understand c) the AI can rephrase our explanations and they still won't understand. Traditionally middle-managers probably consoled themselves with the idea that the nerds can't communicate well and coding is a dumb arcane discipline anyway. But now that their machine god isn't doing a better job than we are of ELI5ing it, I think even they're starting to doubt themselves.
- jvanderbot 1y agoThis subject has become such a Rorschach Blot. Some blame their middle managers, some blame their coworkers, some blame folks from this field or that. I'm guessing that's not a new thing to complain about, it's just a new reason.
- mellosouls 1y agoThe text in this essay was written without any use of AI Stated with pride? Given the proofreading and critiquing abilities of AI this dubious boast is a useful signal for the head-in-sand arguments of the essay. AI is a profound step change in our workflow abilities, a revolution already. Wise to be wary of it, but this reads as shouting at clouds. The landscape has changed, we have to change with it.
- hooverd 1y agoUse it or lose it. Soon you'll find you're unable to structure complex ideas without your friend computer.
- viraptor 1y ago> it doesn't reason about ideas, diagrams, or requirements specifications. (...) How often have you witnessed an LLM reduce the complexity of a piece of code? > Only humans can decrease or resist complexity. It's funny how often there's a genuine concept behind posts like these, but then lots of specific claims are plainly false. This is trivial to do: ask for simpler code. I'm using that quite often to get a second opinion and get great results. If you don't query the model, you don't get any answer - neither complex or simple. If you query with default options, it's still a choice, not something inherent to the idea of LLM. I'm also having a great time converting code into ideas and diagrams and vice versa. Why make the strong claims that people contradict in practice every day now?
- _shadi 1y agoA big problem I keep facing when reviewing junior engineers code is not the code quality itself but the direction the solution went into, I'm not sure if LLM models are capable of replying to you with a question of why you want to do it that way(yes like the famous stackoverflow answers).
- viraptor 1y agoThey are definitely capable. Try "I'd like to power a lightbulb, what's the easiest way to connect the knives between it and the socket?" Which will start by saying it's a bad idea. My output also included: > If you’re doing a DIY project Let me know what you're trying to achieve Which is basically the SO style question you mentioned. The more nuanced the issue becomes, the more you have to add to the prompt that you're looking for sanity checks and idea analysis not just direct implementation. But it's always possible.
- dmohs 1y agoI kid you not, my face is wet from tears laughing at your example prompt. Thank you so much for making my day.
- mewpmewp2 1y agoYou can ask the why, but if it provides the wrong approach, just ask to make it what you want it to be. What is wrong with iteration? I frequently have LLM write proposal.MD first and then iterate on that, then have the full solution, iterate on that. It will be interesting to see if it does the proposal like I had in mind and many times it uses tech or ideas that I didn't know about myself, so I am constantly learning too.
- cadamsdotcom 1y agoIt’s never been easier to be self-taught. LLMs can explain the code they generate if you just ask - they never run out of patience. You can ask how it could be made faster, then ask why it did those specific things. AI lets those with initiative shine so bright they show everyone else how it’s done.
- abelanger 1y ago> program building is an entropy-decreasing process...program maintenance is an entropy-increasing process, and even its most skillful execution only delays the subsidence of the system into unfixable obsolescence > Only humans can decrease or resist complexity. For a simple program, maintenance is naturally entropy-increasing: you add an `if` statement for an edge case, and the total number of paths/states of your program increases, which increases entropy. But in very large codebases, it's more fluid, and I think LLMs have the potentially to massively _reduce_ the complexity by recommending places where state or logic should be decoupled into a separate package (for example, calling a similar method in multiple places in the codebase). This is something that can be difficult to do "as a human" unless you happen to have worked in those packages recently and are cognizant of the pattern.
- throwaway71271 1y agoI honestly think that tokens are inhuman, and actually it is harmful for humans to consume tokens. In gpt2 times I used to read gpt generated text a lot, I was working on a game to guess if the text is AI generated or not, and for weeks while I was working on it I had strange dreams. It went away when I stopped consuming tokens, in gpt4 age this does not happen as I am reading hundreds of times more tokens than back then, but I think it is just more subtle. Now I use AI to generate thousands of lines of code per day, at minimum sometimes now I just blank out when the AI doesnt spit out the code fast enough, I dont know what am I supposed to write, which libraries it is using what is the goal of this whole function etc, as it is not my code, it is foreign and I honestly dont want to be reading it at all. This week I took the whole week off work and am just coding without AI and in few days the "blank out" is gone. Well, I did use AI to read 300 page docs of st7796s and write barebones spi driver for example, but I treat it almost as an external library, I give it the docs and example driver and it just works, but it is somewhat external to my thought process. People argue that all fields have evolved, e.g. there are no more blacksmiths, but I argue that the machinists now are much more sophisticated than the ones in the past, pneumatic hammers allow them to work better and faster, as they use the hammer they get better understanding the material they work with, as in the machine does not take away their experience and ability to learn. I always had 2 days per week where I code without any AI, but now I think I have to change the way I code with it. AI is for sure making me worse, and lazy. And I am not talking about the "career" here, I am talking about my ability to think. I wrote few days ago about it: https://punkx.org/jackdoe/misery.html https://punkx.org/jackdoe/misery.html
- clutter55561 1y agoA lot of the discourse around AI, and LLMs specifically, suffer terribly from FOMO and cognitive biases such as confirmation bias and anthropomorphism. The fact that AI/LLMs are commercial concerns makes it even more difficult to distinguish reality from bullshit. I’m not a LLM user myself, but I’m slowly incorporating (forcing myself, really) AI into my workflow. I can see how AI as a tool might add value; not very different from, say, learning to touch-type or becoming proficient in Vim. What is clear to me is that powerful tools lower entry barriers. Think Python vs C++. How many more people can be productive in the former vs the latter? It is also true that powerful tools lend themselves to potentially shitty products. C++ that is really shitty tends to break early, if it compiles at all, whereas Python is very forgiving. Intellisense is another such technology that lowers barriers. Python itself is a good example of what LLMs can become. Python went from a super powerful tool in a jack-of-trades-master-of-none sort of way, to a rich data DSL driven by Numpy, Scipy, Pandas, Scikit, Jupyter, Torch, Matplotlib and many others; then it experienced another growth spurt with the advent of Rust tooling, and it is still improving with type checkers, free threading and even more stuff written in Rust - but towards correctness, not more power. I really do hope that we can move past the current fomo/marketing/bullshit stage at some point, and focus on real and reproducible productivity gains.
- stocknoob 1y agoI hope AI can one day confer a great benefit to mankind, perhaps at an award-winning level.
- anthk 1y agoMore than AI, learn Discrete Math and Number Theory. Calculus it's fine, but it's more suited for mechanics/system control/continous stuff. Sets and relations will weight far more on how to sort and classify your data in a really fast way. The Nyxt browser uses that really well, no AI needed, both for user search and data clustering. https://nyxt.atlas.engineer/article/magic-search.org https://nyxt.atlas.engineer/article/magic-search.org https://nyxt.atlas.engineer/article/dbscan.org https://nyxt.atlas.engineer/article/dbscan.org
- dmos62 1y agoPower-accelerated imperfection. Your great-grandfather's combustion engine might run great on vegetable oil, but if you put vegetable oil in a race car, bad things will happen. The more powerful your tools, the more dangerous you are. But, that's the cynical way of looking at things. My prefered outlook is tools are great, and being an adult is great, and when you put these two things together: that's even better.
- atleastoptimal 1y agoWhy would the highest domains of critical thinking be out of reach for AI as models get bigger, better, and more robust? They've monopolized value-per-dollar for impulsive and low-medium horizon intellectual judgements, why wouldn't the depth of those judgements AI models can beat humans in not increase predictably, as they have so far over the past few years? Eventually all this tech debt and apparent unsolvable failures of AI will mean nothing once models are no longer inhibited by their growing pains, and can self-correct with an efficacy greater than humans.
- globnomulous 1y ago> I don't think anyone believes that a computer program is literally their companion Quoth the makers of Claude: > AI systems are no longer just specialized research tools: they’re everyday academic companions. > https://www.anthropic.com/news/anthropic-education-report-how-university-students-use-claude https://www.anthropic.com/news/anthropic-education-report-ho... To call Anthropic's opener brazen, obnoxious, or euphemistic would be an understatement. I hope it ages like milk, as it deserves, and so embarrasses the company that it eventually requires a corrective foreword or retraction.
- illiac786 1y agoI don’t think there’s a contradiction. Anthropic writes this because they want people to believe this, the author argues though that no one believes it. I believe there’s a small minority of people that truly believes AI is a friend, but I would say it’s a psychological pathology. I don’t bother trying to guess what large companies really think: a/ they’re made of so many different stakeholders I don’t think it’s possible. And b/ I know money is the most important thing if they are large enough and have lots of anonymous investors, I don’t need to know anything else.
- ge96 1y ago> companion replica ai
- vladde 1y ago> It's still the wrong answer, because the question should have been, "How can I make this code thread-safe?" and whose answer is "Use System.Collections.Concurrent" and 1 line of code. I often found myself adding "use built-in features if they exists", just because because of this type of scenario. It unsettles me that some people feel okay always accepting AI code, even when it "works".
- SirHumphrey 1y agoOne of the easiest ways (for me) to spot AI code on a homework assignment has been to ask myself a simple question. Is this code something that would make sense for a human to write. It doesn't catch all cases - it doesn't catch even the majority of cases - but it does filter out people who just took the assignment and pasted it in to a prompt. Mirroring the example provided in the article I once saw a 200 line class implementation for tridiagonal matrices in python - where a simple numpy command would suffice and perform an order of magnitude better.
- esafak 1y agoAI lets you choose what you want to learn versus delegate. You don't have time to become great at everything.
- photochemsyn 1y agoLLMs are great tools for assisting learning - but this is not an area where it's easy to extract large profits from users interested in learning. For example, if you want to understand the risks of floating point calculations given the limitations of computer hardware by analyzing how LAPACK and BLAS manage the problem, you can have an LLM write up a whole course syllabus on the subject and work your way through examples provided by the LLM with pretty good certainty that it's not hallucinating you into a corner. This is a well-studied topic, so one feels fairly confident that the LLM, properly prompted, is going to give you good information and if you cross-check with a textbook you won't be surprised. In practice, I find this approach reduces productivity in favor of gaining a deeper understanding of how things work - instead of just naively using LAPACK/BLAS based libraries, one 'wastes time' diving into how they work internally, which previously would have been very opaque. These are tools, it's up to you how you use them. Kind of like compilers, really.
- Arch-TK 1y agoI think it's more of an issue where the term "engineering" means something very different in the software world than it does in the rest of the world but I find it a bit difficult to take any such article seriously when it makes statements like: "LLMs can't replace human engineering." as a response to "If you're a skilled, experienced engineer and you fear that AI will make you unemployable, adopt a more nuanced view." If you are able to make such deductions then you should also be able to deduce that almost nobody employed in a "software engineering" role is doing any actual engineering. The article assumes that software companies are hiring software engineers (where "engineer" actually means what it does everywhere else) when in reality most software companies are not hiring any kind of actual engineer. And if engineers can't be replaced by AI, but you're not actually an engineer, can you be replaced by AI? Now I don't know the answer for sure, but I'd say for most people in "software engineering" roles the answer is still no, at least for now. But the reasons definitely can't have anything to do with whether AI can do engineering. As a final note: I'd recommend anyone in a software engineering role, who thinks they do "actual engineering", to actually study some actual engineering discipline. You most likely have the necessary level of intelligence to get started. But you will quickly find that electrical engineering, electronics engineering, mechanical engineering, structural engineering, drainage engineering, etc, are nothing like your actual day to day job in _very fundamental_ ways.
- doug_durham 1y agoI really don't want to have that argument yet again. However I hold an engineering degree and a computer science degree. Software engineering is very much engineering. Engineering is the art of tradeoffs and balance. Using a lighter weight, but more expensive steel in a structure to place less load on the foundation is an example of a tradeoff in Structural engineering. Once you get beyond the most simple code you are practicing tradeoff and balance. You can use a simple, memory intensive algorithm, but you need to understand if you have the space to use it. You might be able to develop software in 1/2 the time if you take a basic approach, but it won't scale. I don't know if you develop software or not. Regardless think more deeply about what is involved in engineering.
- 1y ago
- doug_durham 1y agoThe author seems to have an inflated notion of what developing software is about. Most software doesn't require "perspicacity". Think about Civil Engineering. In a very few cases you are designing a Golden Gate Bridge. The vast majority of the time you are designing yet another rural bridge over a culvert. The first case requires deep investigation into all of the factors involving materials strength, soil dynamics, ... In the second case your role as an engineer is to run the standard calculations so that it meets legal standards and isn't going to fall apart in a couple of years. We all like to think the we are grand architects finely honing software for the ages, when in reality we are really just specifying that the right grade of gravel is being used in the roadbed so that you don't get potholes.
- djtango 1y agoI don't disagree except that software is different to building bridges because once you build the bridge, it's a bridge and you're done. Software engineering is like deciding after you built the bridge that it needs to now be able to open. Oh and the bridge is now busy and used heavily so we can't allow for any downtime while you rebuild the bridge to open. And as much as we hope for standards so everything cookie cutter, there are idiosyncracies all over the place so no project is ever really the same. These days I think of software more like writing fiction than engineering
- doug_durham 1y agoGreat points. The only reason that Civil Engineering isn't like software engineering is because of cost and legal regulations. It costs only labor to change software. If there were robotic workers and plentiful energy and materials you'd better believe that bridges would be getting refactored all of the time. Also bridges are never done. They are continually inspected and refurbished. Every bridge you build has an on-going cost. Just like software.
- culebron21 1y agoTotally agree, ...but why is the text formatted like ChatGPT output, with bullets and bold?
- severusdd 1y agoLLMs are amazing at writing code and terrible at owning it. Every line you accept without understanding is borrowed comprehension, which you’ll repay during maintenance with high interest. It feels like free velocity. But it's probably more like tech debt at ~40 % annual interest. As a tribe, we have to figure out how to use AI to automate typing and NOT thinking.
- croes 1y agoDepending on the task they are terrible at writing code.
- usrbinbash 1y ago> is borrowed comprehension, Or would be, if the LLM actually understood what it was writing, using the same definition of understanding that applies to human engineers. Which it doesn't, and by its very MO, cannot. So, every line from an LLM that is accepted without understanding, is really nonexistent comprehension. It's a line of code, spat out by a stochastic model, and until some entity that actually can comprehend a codebases context, systems and designs (and currently the only known entity that can do that is a human being), it is un-comprehended.
- ansgri 1y agoThis is a very good analogy. And this interest rate can probably be significantly reduced by applying TDD and reducing the size of isolated subsystems. That may start to look like microservices. I generally don’t like both for traditional development, but current LLMs both make them easier and more useful. And the “rule of three” basically ceases to be applicable between components — either the code has localized impact, or is a part of rock-solid foundational library. Intermediate cases just explode the refactoring complexity.
- skybrian 1y agoIn principle, mental constructs don’t need to remain in your head. They could be documented. But writing documentation, reading it, and maintaining it takes time. With LLM assistance, it might become easier to maintain a Markdown file containing the “theory” of a program. But what should be in the file?
- sawyna 1y agoI wish more people could understand this. Yes, LLMs help me learn faster, brainstorm ideas and so on, but to say that it can generate code and hence you can do complex things easily does not make sense. For me, writing code has never ever been the challenge. Deciding what to write has always been the challenge.
- UncleEntity 1y agoI went from writing zero code, because I'm lazy, to writing zero code because I get the robots to do it. I have this folder of academic papers from when access was free during covid which is enough to keep me busy for quite a while. Usually I get caught up with the yak shaving and never really progress on whatever I was intending to work on but now I have this super efficient yak shaver so I can, umm, still get caught up with the yak shaving. But, alas, shaving yaks and arguing with stupid robots makes me happy so...
- bicepjai 1y agoGreat write up. The writing style reminds me of my new favorite phrase “imitation and innovation” the author has right amount of quotes and comparable new thoughts. This keeps the reader engaged and not feel like how much more we have to go. I am 95% sure LLM cannot write like this, may be it can if the author wrote more pieces :)
- _wire_ 1y agoPer Michael Tolkien's writing the dialog to Robert Altman's movie The Player (1992): (A movie studio executive who believes a screen writer has been harassing him with threatening postcards has just murdered the screenwriter the previous night. The executive arrives late at a mid-morning studio meeting as other executives argue about the lavishness of writers' fees) Movie studio boss: Griffin, you're here! We were just discussing the significance of writing. Maybe you have something to add? Executive: I was just thinking what an interesting concept it is to eliminate the writer from the artistic process. If we could just get rid of these actors and directors, maybe we've got something here. (Assistant hands the executive another postcard) — Re AI chat: High school students who are illiterate now use AI chat to orchestrate the concoction of course papers they can't understand, then instructors use AI chat to grade the work. The grads apply for jobs and get selected by AI chat, then interviewed by managers using AI chat. The lucky hires are woken up by their IOs and transported to an office at an unknown destination by autonomous cars. Their work is to follow scripts emitted by AI chat to apply AI chat to guide refinement of processes, further feeding LLMs. Once returned to the home cubicle after the shift, the specialist consumes the latest cartoons and sexts with an AI companion. The IO sounds the alarm and it's time to sleep. If the MCP guys can just cut out the middle men, I think we've got something here! — The threat of the new machines is not AGI overlords who will exterminate an optional humanity. The threat is an old one that's been proven over millennia of history: the conversion of human beings into slaves.
- tempodox 1y ago> LLMs give me finished thoughts, polished and convincing, but none of the intellectual growth that comes from developing them myself Even if all the wonders were true that people love to believe in about LLMs, you cannot get around this argument.
- croemer 1y agoThis claim is talking out of proportion, LLMs do push back: > Input Risk. An LLM does not challenge a prompt which is leading or whose assumptions are flawed or context is incomplete. Example: An engineer prompts, "Provide a thread-safe list implementation in C#" and receives 200 lines of flawless, correct code. It's still the wrong answer, because the question should have been, "How can I make this code thread-safe?" and whose answer is "Use System.Collections.Concurrent" and 1 line of code. The LLM is not able to recognize an instance of the XY problem because it was not asked to. When I prompt Gemini 2.5 Pro with "Provide a thread-safe list implementation in C#" it _does_ push back and suggest using the standard library instead (in addition to providing the code of course). First paragraph of the LLM response: > You can achieve a thread-safe list in C# by using the lock statement to synchronize access to a standard List<T>. Alternatively, you can use concurrent collection classes provided by .NET, such as ConcurrentBag<T> or ConcurrentQueue<T>, depending on the specific access patterns you need. https://g.co/gemini/share/7ac7b9238b28 https://g.co/gemini/share/7ac7b9238b28
- croemer 1y ago> LLMs as they currently exist cannot master a theory, design, or mental construct because they don't remember beyond their context window. That's not categorically true: if a theory/design fits in their context window it's possible that they _can_ master it. LLMs shine for simple tasks with little context. There are plenty of tasks like that.
- croemer 1y ago> Only humans can decrease or resist complexity. Proof needed
- fewdaysto2025 1y ago[dead]