7 ms·
A.I. is prompting an evolution, not extinction, for coders
- deleted 2y ago[deleted]
- deleted 2y ago[deleted]
- bushido 2y agohttps://archive.ph/ugmW4 https://archive.ph/ugmW4
- fzeroracer 2y ago> To do so, Mr. Giorgi has his own timesaving helper: an A.I. coding assistant. He taps a few keys and the software tool suggests the rest of the line of code. It can also recommend changes, fetch data, identify bugs and run basic tests. Even though the A.I. makes some mistakes, it saves him up to an hour many days. > Still, nearly two-thirds of software developers are already using A.I. coding tools, according to a survey by Evans Data, a research firm. > So far, the A.I. agents appear to improve the daily productivity of developers in actual business settings between 10 percent and 30 percent, according to studies. At KPMG, an accounting and consulting firm, developers using GitHub Copilot are saving 4.5 hours a week on average and report that the quality of their code has improved, based on a survey by the firm. We're in for a really dire future where the worst engineers you can imagine are not only shoveling out more garbage code but the ability to assess it for problems or issues is much more difficult.
- sirsinsalot 2y agoI made good money cleaning up after the 2000s outsourcing boom. It was lucrative cleaning up shit code from Romania and India. I'm hoping enough people churn out enough hot garbage that needs fixing now that I can jack up my day rate. I remember when the West would have no coders because Indian coders are cheaper. I remember when nocode solutions would replace programmers. I remember.
- ethagnawl 2y agoIf you missed this recent post, I think you'll appreciate it: https://defragzone.substack.com/p/techs-dumbest-mistake-why-firing https://defragzone.substack.com/p/techs-dumbest-mistake-why-... > Now, let’s talk about the real winners in all this: the programmers who saw the chaos coming and refused to play along. The ones who didn’t take FAANG jobs but instead went deep into systems programming, AI interpretability, or high-performance computing. These are the people who actually understand technology at a level no AI can replicate. > And guess what? They’re about to become very expensive. Companies will soon realize that AI can’t replace experienced engineers. But by then, there will be fewer of them. Many will have started their own businesses, some will be deeply entrenched in niche fields, and others will simply be too busy (or too rich) to care about your failing software department. > Want to hire them back? Hope you have deep pockets and a good amount of luck. The few serious programmers left will charge rates that make executives cry. And even if you do manage to hire them, they won’t stick around to play corporate politics or deal with useless middle managers. They’ll fix your broken systems, invoice you an eye-watering amount, and walk away.
- rybosworld 2y agoThis entire article reads like hopium. And it seems predicated on the false belief that companies are going to try to replace their entire workforce with AI overnight: > "Imagine a company that fires its software engineers, replaces them with AI-generated code, and then sits back" It should go without saying this is not even possible at the moment. Will it be possible one day? Yes, probably. And when that day comes, the fantasies this author has dreamed up will be irrelevant. I've said it before and I'll say it again: It shocks me that a forum filled with tech professionals, is so blindly biased against AI that they refuse to acknowledge what changes are coming. All of these conversations boil down to: "The LLM's of today couldn't replace me." That's probably true for most folks. What's also true is that ChatGPT was released less than 3 years ago. And we've seen it go from a novelty with no real use, to something that can write actually decent research papers and gets better at coding by the month. "B-b-but there's no guarantee it will continue to improve!" is one of the silliest trains of thought a computer scientist could hold.
- JumpCrisscross 2y ago> We're in for a really dire future where the worst engineers you can imagine are not only shoveling out more garbage code but the ability to assess it for problems or issues is much more difficult It will probably still be more productive. IDEs, Stack Exchange...each of these prompted the same fears and realised some of them. But the benefits of having more code quicker and cheaper, even if more flawed, outweighed those of quality. The same way the benefits of having more clothes and kitchenware and even medicine quicker and cheaper outweighed the high-quality bespoke wares that preceded them. (Where it doesn't, and where someone can pay, we have artisans.) In the mean time, there should be an obsolescence premium [1] that materialises for coders who can clean up the gloop. (Provided, of course, that young and cheap coders of the DOGE variety stop being produced.) [1] https://www.sciencedirect.com/science/article/abs/pii/S016517651930429X https://www.sciencedirect.com/science/article/abs/pii/S01651...
- fzeroracer 2y agoThe problem with 'more code, quicker and cheaper' is that when you fall behind a baseline of quality it actually ends up costing you and your business, significantly. Companies learned this the hard way during the outsourcing booms, and the usage of AI amplifies this problem 10 fold much like it's doing with spam.
- slothtrop 2y agoGrowing pains. Reviewing carefully is still less work.
- JumpCrisscross 2y ago> Companies learned this the hard way during the outsourcing booms Sure. Then we learned how to do it and in which contexts. Since WFH trained executives state-side how to communicate asynchronously and over Zoom, I've seen engineering offshoring done quite productively, possibly for the first time in my career.
- fzeroracer 2y ago
- deadbabe 2y agoI don’t think that future will happen, because eventually someone will realize there is a competitive advantage in building a truly good product with people who actually know what they’re doing, and when other companies catch on they will start doing that and bad prompt kiddy engineers will be gone.
- cootsnuck 2y ago> because eventually someone will realize there is a competitive advantage in building a truly good product with people who actually know what they’re doing Doesn't / Shouldn't that competitive advantage inherently exist already? But don't we still see a small group of big players that put out broken / mediocre / harmful tech dominating the market? The incentives are to make the line keep going up – nothing else. Which is how we get search engines that don't find things, social media that's anti-social, users that are products, etc. I'm not at all hopeful that an already entrenched company that lays off 50% of its workers and replaces them with an AI-slop-o-matic will lose to a smaller company putting out well-made principled tech. At least not without leveraging other differentiating factors. (I say all of this as someone that is excited about the possibilities AI can now afford us. It's just that the possibilities I'm excited about are more about augmentation, accessibility, and simplicity rather than replacement or obsolescence.)
- slothtrop 2y agoThe increase in productivity means you need fewer inexperienced and/or bad engineers to a project. On the other hand, they may be retained to go after bolder, more numerous targets.
- nyarlathotep_ 2y ago> At KPMG, an accounting and consulting firm, developers using GitHub Copilot are saving 4.5 hours a week on average and report that the quality of their code has improved, based on a survey by the firm. I don't have any specific experience with KPMG, but considering the other "big name" firms' work I've encountered, there's, uh, lots of room for improvement.
- toprerules 2y agoPeople are absolutely insane with their takes on AI replacement theory. The complexity of our stacks has grown exponentially since the 70s. Very few people actually comprehend how many layers of indirection, performance, caching, etc. are between their CRUD web app and bare metal these days. AI is going to increase the rate of complexity 10 fold by spitting out enormous amounts of code. This is where the job market is for developers. Unless you 100% solve the problem of feeding every single third party monitoring tool, logging, compiler output, system stats down to the temperature of RAM, and then make it actually understand how to fix said enormous system (it can't do this even if you did give it the context by the way), then AI will only increase the amount of engineers you need.
- theGnuMe 2y agoI wonder if anyone is applying AI to cobol…
- Blackthorn 2y agoThere's no readily available Stack Overflow answers for Cobol, so it'll do about as good there as it does digital signal processing.
- stray 2y agoI think IBM is using LLM to rewrite COBOL code into Java.
- bigbones 2y agoI expect pretty much the opposite to happen: it makes sense for languages, stacks and interfaces to become more amenable to interfacing with AI. If a machine can act more reliably by simplifying its inputs at a fraction of the cost of the equivalent human labour, the system has always adjusted to accommodate the machine. The most obvious example of this already happening is in how function calling interfaces are defined for existing models. It's not hard to imagine that principle applied more generally, until human intervention to get a desired result is the exception rather than the rule as it is today. I spent most of the past 2 years in "AI cope" mode and wouldn't consider myself a maximalist, but it's impossible not to see already from the nascent tooling we have that workflow automation is going to improve at a rapid and steady rate for the foreseeable future.
- arisAlexis 2y agoNice cope from programmers. But reality hits hard.
- deleted 2y ago[deleted]
- deleted 2y ago[deleted]
- aerhardt 2y agoThere's always one in the comments. Even way before AIs, with any discussion on low code, hiring tech turns, etc. What did programmers do to you to trigger such deep-felt insecurities thusly?
- arisAlexis 2y agoI am a programmer for 20 years and I'm just not blind with bias my friend. it's just the way it is. Some see it, some are late.
- agentultra 2y agoI'd really like to know the parameters are. I hear claims like, "it saves me an hour a day," or, "I'm 30% more productive with AI." What do these figures mean? They seem like proxies for fuzzy feelings. When I see boring, repetitive code that I don't want to look at my instinct isn't to ignore it and keep adding more boring, repetitive code. It's like seeing that the dog left a mess on your carpet and pretending you didn't see it. It's easier than training the dog and someone else will clean it... right? My instinct is to fix the problem causing there to be boring, repetitive code. Too much of that stuff and you end up with a great surface area for security errors, performance problems, etc. And the fewer programmers that read that code and try to understand it the more likely it becomes that nobody will understand it and why it's there. The idea that we should just generate more code on top of the code until the problem goes away is alien to me. Although it makes a lot more sense when I probe into why developers feel like they need to adopt AI -- they're afraid they won't be competitive in the job market in X years. So really, is AI a tool to make us more productive or a tool to remove our bargaining power?
- mschild 2y agoWell to give to a concrete example. I use it to write test cases for the CRUD applications that I sometimes have to work on. Some test cases already exist and I feed the tests and actually code including additional instructions into a model and get relatively decent output. We also use a code review bot that we feed repository relevant instructions to and get decent basic PR comments. It even caught an edge case that 3 other developers didn't consider. I think AI can be yet another tool that takes some repetitive tasks off my hands. I still obviously check all the code it generated.
- qwertox 2y ago> So really, is AI a tool to make us more productive or a tool to remove our bargaining power? Don't you notice how it makes you more productive, that you can solve problems faster? It would be really odd if not. And regarding the bargaining power: that's not the other side of the scale, it's a different problem. If your code monkey now gets as good as your average developer, the average developer will have lost some relative value, unless he also upped his game by using AI. If everyone gets better, why would you see this as something bad, which makes us lose "bargaining power"? Because you no longer can put the least effort which your employer expects from you? Even then: it's not like AI makes things harder, it makes them better. At least for me software development has become more enjoyable. While 5 years ago I was asking myself if I really want to do this for the rest of my career, I now know that I want to do this, with this added help, which takes away much of the tedious stuff like looking up solution-snippets on Stack Overflow. Plus, I know that I will have to deal less and less with writing code, and more and more with managing code solutions offered to me.
- atlantic 2y agoI've found that AI has saved me time consulting Stack Overflow. It combines thorough knowledge of the documentation with a lot of practical experience gleaned from online forums It has also saved time producing well-defined functions, for very specific tasks. But you have to know how to work with it, going through several increasingly complex iterations, until you get what you want. Producing full applications still seems a pipedream at this stage.
- fhd2 2y agoThat's kinda still how I get the most out of it - search, more or less. Claude gives me great starting points from which I can do some refining/confirming searches and documentation lookups. _Starting_ with search feels like a drag now. But the information and code I get is unreliable at least 20 % (just a guess, frankly, did no statistics) of the time, so I treat the output as things to try or investigate, rather than things to ship. You'll probably get a few responses from folks that happily tab complete their software and don't sweat the details. Some get away with that, I'm generally not in a position where it's OK to not fully understand the system I'm building. There's a lot of stuff that's better to find out during development than in a late night production system debugging session.
- itsoktocry 2y ago>Producing full applications still seems a pipedream at this stage. Do you mean like: "write me an app that does XYZ?" Well, it's a pipedream because you probably couldn't even get a room of developers to agree on how to do it. There are a million ways. But this isn't really how programmers are expecting to use AI, are they?
- gosub100 2y agoSort of off-topic, but is there any generative AI for code? From my limited understanding, the code is trained on human written code, and the model adapts it to what most closely matches. What I'm curious about is, can it find innovative ways to solve problems? Like the infamous Quake 3 inverse-sqrt hack? Can it silently convert (read: optimize) a std::string to a raw char* pointer if it doesn't have any harmful side effects? (I don't mean "can you ask it to do that for you?" , I mean can it think to do that on its own?) Can it come up with trippy shit we've never even seen before to solve existing problems? That would truly impress me. Take a bloated electron app, analyze the UI, and output the exact same thing but in C++ or Rust. Work with LLVM and find optimizations a human could never see. I remember seeing a similar concept applied to physical structures (like a small plane fuselage or a car) where the AI "learns" to make a lighter stronger design and it comes out looking so bizarre, no right angles, lots of strange rounded connections that almost like a growth of mold. Why can't AI "learn" to improve the state of the art in CS?
- jcranmer 2y ago> Take a bloated electron app, analyze the UI, and output the exact same thing but in C++ or Rust. Work with LLVM and find optimizations a human could never see. I remember seeing a similar concept applied to physical structures (like a small plane fuselage or a car) where the AI "learns" to make a lighter stronger design and it comes out looking so bizarre, no right angles, lots of strange rounded connections that almost like a growth of mold. Why can't AI "learn" to improve the state of the art in CS? So such things already exist, and for me, the most frustrating thing about LLMs is that they just suck the oxygen out of the room for talking about anything AI-ish that's not an LLM. The term for what you're looking for is "superoptimization," which tries to adapt the principles of mathematical nonconvex optimization that AI pioneered to the problem of finding optimal code sequences. And superoptimization isn't new--it's at least 30 years old at this point. At this point, it's mature enough that if I were building a new compiler framework from scratch, I'd design at least the peephole optimizer based around superoptimization and formal verification. (I kind of am putting my money where my mouth is there--I'm working on an emulator right now, and rather than typing in the semantics of every instruction, I'm generating them using related program synthesis techniques based on the observable effects on actual hardware.)
- jdashg 2y agoI always thought hacking scenes in sci-fi were unrealistic, but if you're cooking up AI-fortified code lasagna at your endpoints, there are going to be a mishmash of vulnerabilities: Expert robust thought will be spread very thin by the velocity that systemic forces push developers to.
- TrackerFF 2y agoI'm a big user of LLM tools. The problem, so far, is that they're still...quite unreliable, to say it least. Sometimes I can feed the model files, and it will read and parse the data 100 out of 100 times. Other times, the model seems clueless about what to do, and just spits out code on how to do it manually, with some vague "sorry I can't seem to read the file", multiple times, only to start working again. And then you have the cases where the models seem to dig themselves into some sort of terminal state, or oscillate between 2-3 states, that they can't get out off - until you fire up a new model, and transfer the code to it. Overall they do save me a ton of time, especially with boilerplate stuff, but very routinely even the most SOTA models will have their stupid moments, or keep trying to do the same thing.
- crmd 2y agoYou could be describing the performance of me and most of my friends and colleagues over the past five years. It’s insane how similar non-deterministic software systems already are to biological. Maybe I’ve been wrong and consciousness is a computation.
- codr7 2y agoAre you including the time you spend fighting the model?
- reverendsteveii 2y agoPeople got wildly out of hand thinking that AI would do what we currently do without us. The real truth is AI is gonna do 10x what we currently do with us.
- jenkstom 2y agoIt seems like AI will generate opportunities for fixing code. Both in reducing internal technical debt ("code maintenance", which is a specialized skill already) and external technical debt (architecture, which is being built by AI also). Eventually AI will be good enough for both of these things as well, and then we may just become the priests of the Temples of Syrinx.
- polishdude20 2y agoOur great computers fill our hollow halls.
- deleted 2y ago[deleted]
- rickspencer3 2y agoIn my Python programming, I have found that ChatGPT makes me something like 10x more productive. From learning to use a new API to tracking debugging, and especially things finding errors in my code from stack traces. Getting results goes SO MUCH FASTER. However, it has not alleviated any responsibility from me to be a good coder because I have question literally everything little dang thing suggests. If I am learning a new API, it can write code that works, but I need to go read the reference documentation to make sure that it is using the API with current best practices, for example. A lot of code I have to flat out ask it why it did things in a certain way because they look buggy inefficient, and half the time it apologizes and fixes the code. So, I use the code in my (personal) projects copiously, but I don't use a single line of code that it generates that I don't understand, or it always leads to problems because it did something completely wrong. Note that, at work, for good reasons, we don't use AI generated code in our products, but I don't write production code in my day job anyway.
- m2spring 2y agoBusiness wants short term-solutions. The long-term effects it doesn't care, even if it clearly bites them in the ass.
- monicaliu 2y agoNew to AI assisted coding, but I'm finding myself spending a lot of time debugging its convincingly wrong output.
- FredPret 2y agoAt some point in the past, tools like Wordpress et al made it easy for the average person to roll out their own website. This probably increased the overall demand for professional website makers and messed-up-Wordpress-fixers. Now the argument goes that the average business will roll out their own apps using ChatGPT (amusing / scary), or that big software co's will replace engineers with LLMs. For this last point, I just don't see how any of the current or near-future models could possibly load enough context to do actual engineering as opposed to generating code.
- kittikitti 2y agoMicrosoft uses the ability to replace software engineers to sell their own AI.
- bigtimesink 2y ago> Mark Zuckerberg, Meta’s chief executive, stirred alarm among developers last month when he predicted that A.I. technology sometime this year would effectively match the performance of a midlevel software engineer Either Meta has tools an order of magnitude more powerful than everyone else, or he's drinking his own koolaid.
- notnullorvoid 2y agoI've been choosing not to use most of the AI code assistant stuff for a while, I try it every now and then. Each time it's the same outcome, it actively reduces my productivity by a fair amount. I suspect this is due to a mix of the majority of my programming being non-trivial (library building, complex-ish algos), and that I'm a bit of a perfectionist coder who enjoys programming. LLMs are useful tools for programming, as a kind of search engine and squeaking rubber duck. AI as a programmer is worse than a junior, it's the junior that won't actively learn and improve. I think current AI architecture limits it from being much more than that.