[HN Gopher] A coder considers the waning days of the craft
       ___________________________________________________________________
        
       A coder considers the waning days of the craft
        
       Author : jsomers
       Score  : 658 points
       Date   : 2023-11-14 00:08 UTC (22 hours ago)
        
 (HTM) web link (www.newyorker.com)
 (TXT) w3m dump (www.newyorker.com)
        
       | StrangeSmells01 wrote:
       | It's interesting and kind of a bummer that all this learning is
       | made obsolete.
        
         | CamperBob2 wrote:
         | It reminds me of the days when electronics hobbyists -- and
         | plenty of older engineers -- had to be dragged kicking and
         | screaming out of the vacuum-tube era.
        
         | kristopolous wrote:
         | This is the conceit of knowledge work in general. You're only
         | as relevant as much as you keep up.
         | 
         | It's why it continues to tend young.
         | 
         | The older you get, the more opinionated you get and with
         | opinions come inflexibility so the less you are open to new
         | ways of thinking, even those which may be superior.
         | 
         | Essentially people have criticisms of newer tools that have
         | become industry standards as unnecessary and inferior.
         | 
         | Regardless of the merits of that argument, the new tooling is
         | where the industry is at. The best hackers I know are extreme
         | versions of this. Increasing dissagreability appears to be the
         | crucial flaw of competency unless you work hard to avoid it.
         | 
         | The most extreme version of this I remember was about 20 years
         | ago when I met a man of about 55 who was clearly a very
         | brilliant computer engineer with impressive credentials that I
         | have forgotten (a prestigious PhD and work history) but said he
         | had always dismissed microcomputers, yes, as in not
         | minicomputers and mainframes as toys and a waste of time. This
         | was like 2002. I was still in college then and I vowed to never
         | become that guy.
         | 
         | Still trying...
        
         | gwervc wrote:
         | Which learning? If anything AI will render (highly) skilled
         | humans even more relevant in most creative fields: the
         | literature translator and it's ability to transfer emotion, the
         | artist that can create art outside AI reach, the software
         | engineer who can architect a solution, etc.
         | 
         | What is menaced is low to mid quality work, and less
         | educated/skilled people. This is in my opinion where the real
         | danger of AI lies: a world where it's so easy to let a program
         | write an email that the sheer ability to _think_ about it 's
         | content, then type it is lost to the majority. Some with
         | anything requiring some effort the learn. This will exacerbate
         | the divide between classes, with a handful people who can
         | understand and act on the world, and those who don't.
        
         | reincarnate0x14 wrote:
         | Learning itself is not obsolete. Burning scarce time on arcana
         | associated with various platforms and libraries may become so.
         | 
         | The various LLMs are decently good at recreating known
         | solutions to problems that may require arcane knowledge, which
         | covers a lot of human memory. Is there something lost here?
         | Probably. But who yet knows what may replace it.
        
       | betaby wrote:
       | Article itself feels like it was written by LLM - unnecessarily
       | long, pretentious and boring without much of a substance. But
       | hey, folks from this forum aren't the target audience for
       | 'Newyorker'!
        
         | atleastoptimal wrote:
         | Do you agree or disagree with the premise of the article
        
           | betaby wrote:
           | See, it's like sysadmin -> DevOps/SRE. Same probably
           | programmer -> A.I. prompt specialist. So yes, but not really.
        
         | labster wrote:
         | I'm pretty sure _New Yorker_ writer is the first job that LLMs
         | will replace.
        
           | kragen wrote:
           | gladwell made a career out of compelling, convincing writing
           | about things he didn't understand and came to the wrong
           | conclusions about, like a human chatgpt, so probably; google
           | 'igon value'
        
             | meindnoch wrote:
             | >google 'igon value'
             | 
             | Hahaha. Thanks for the laugh! I always thought the guy was
             | a fraud.
        
             | foobazgt wrote:
             | I have a new phrase in my lexicon. Thank you!
        
           | golergka wrote:
           | Writers and musicians wont be replaced with AI because the
           | authors persona is part of the product.
        
             | 998244353 wrote:
             | Poets and novelists maybe, but not many people pay
             | particular attention to who exactly wrote a particular
             | magazine article.
        
               | golergka wrote:
               | I mean, it's the New Yorker.
        
             | tonyedgecombe wrote:
             | That's not what the musicians think:
             | 
             | https://news.sky.com/story/ai-music-can-you-tell-if-these-
             | so...
        
         | ilaksh wrote:
         | We are absolutely the target audience. It wasn't that long and
         | it wasn't boring and did not lack substance.
         | 
         | All of the things you wrote in this comment were false.
        
         | AlexAffe wrote:
         | It's what I thought too. Would I be able to tell the
         | difference? That thought really scares me. What if in not so
         | distant future whole threads, comments included, are LLM
         | generated? We are losing touch (ppl like you and me), and I
         | feel it coming. That is not the first article on the web, that
         | I quit reading in disgust, thinking 'FUCK, what if I'm reading
         | GPT4 babble right now?' We will need a way to tell 100%.
        
       | zwieback wrote:
       | FYI - many public libraries let you auto-checkout the New Yorker
       | to your free Overdrive account and you can read online or on your
       | phone. I was surprised how easy it has become.
        
       | Uptrenda wrote:
       | >At one point, we wanted a command that would print a hundred
       | random lines from a dictionary file. I thought about the problem
       | for a few minutes, and, when thinking failed
       | 
       | Wow, this guys working on rocket science, everyone. Watch out! We
       | might get replaced!
        
         | atleastoptimal wrote:
         | Do you honestly believe that the skills of software devs will
         | never be eclipsed by AI tools?
        
           | akira2501 wrote:
           | I honestly wouldn't expect it to be the first application,
           | when the technology eventually does get developed, and we
           | have the power budget necessary to actually operate one of
           | these units.
           | 
           | Until then, it's not a question of "eclipsed," it's a labor
           | market, so it's a question of "efficiency" and the large
           | language model people have a very long way to go to produce
           | something that's generally as capable as a programmer.
           | 
           | So.. I guess if your craft is "scripting" you might be able
           | to get by with GPT-4, but to imagine that your child is not
           | going to ever need to "program" is eager nonsense.
        
             | zarzavat wrote:
             | You don't think the technology will improve at all in the
             | next ~16 years? It will just be stuck at it being able to
             | write simple scripts even in 2040?
             | 
             | I fully expect human programming to be completely obsolete
             | by then.
        
               | akira2501 wrote:
               | > will improve at all in the next ~16 years?
               | 
               | Improve "at all?" Well, of course it will, but you're
               | just moving the goalposts here. I'm telling you I don't
               | think it's going to be anywhere near the level of AGI
               | that can solve most programming tasks with less effort an
               | energy cost than a human in that time.
               | 
               | > It will just be stuck at it being able to write simple
               | scripts even in 2040?
               | 
               | Pretty much. You can improve the technology, but you have
               | some massive gaps you have to cover, and electrical use
               | is going to be one of them. Short a massive improvement
               | in transistor technology or a move to an entirely new
               | computing platform, I don't see it happening in that
               | time.
               | 
               | > I fully expect human programming to be completely
               | obsolete by then.
               | 
               | You seem that you mostly _want_ that to be true, so much
               | so, that you've failed to complete the analysis. What's
               | worse is, I'm just hedging your bet. If I'm wrong, no big
               | deal, if you're wrong, you're in for a world of pain and
               | problems. I get that this is hacker news and untamed
               | expectations are en vogue here, but I'm content to be the
               | hipster on this issue.
        
               | zarzavat wrote:
               | Transformer large language modes are about 7 years old.
               | So we are 1/3 of the way from 2017 to 2040 and we've gone
               | from hardly being able to string sentences together to
               | being able to write entire scripts coherently - GPT4's
               | output is often better than mine to be honest, and I've
               | been programming almost my whole life.
               | 
               | GPT4's capabilities are quite close to a human's even
               | now, especially when asking it about areas that I haven't
               | specialized in. And now it has vision capability, it can
               | see what it is doing.
               | 
               | With twice the time remaining that has elapsed, clearly
               | there's plentiful time for its capabilities to increase
               | and for it to get faster and cheaper. And it will not be
               | a linear improvement but an exponential one.
               | 
               | I don't _want_ programmers to become obsolete. I just
               | consider the likelihood that we have anything to offer
               | over one of these agents in the medium term to be very
               | unlikely. Why would you want to spend $100,000s on a
               | human if you can get something in _less time_ from an AI
               | for $1000s? Human programmers will be attacked on three
               | fronts: price, quality and time. The quality aspect is
               | the only one that is arguable: price and time are already
               | lost.
        
               | NateEag wrote:
               | Just like human-driven cars.
               | 
               | I mean, it could happen. I don't know it can't, and I
               | won't be totally shocked if it does.
               | 
               | I'm not totally sold either, though.
        
           | UncleMeat wrote:
           | It'll be interesting to see what happens. But I won't take
           | the opinion of somebody who struggles with a task that I'd
           | expect first year undergraduates to accomplish as the key
           | source of insight here.
        
             | atleastoptimal wrote:
             | What about opinion of the CEOs of OpenAI, Anthropic,
             | pivotal deep learning researchers, etc?
        
               | yukinon wrote:
               | People with a vested interest in being proven correct?
        
               | atleastoptimal wrote:
               | Who else would be more qualified to weigh in though?
        
           | paulddraper wrote:
           | A bit maybe
        
           | Exoristos wrote:
           | Are you saying that you honestly do?
        
             | atleastoptimal wrote:
             | Yes
        
           | crest wrote:
           | Only by a true AGI, but better non-general AI tools will
           | change how the software is developed. Instead I foresee a
           | tragicomedy of LLMs stuck in endless repetitive e-mail
           | threads as more and more APIs are replaced by bad chatbots to
           | keep customers away.
        
         | cantSpellSober wrote:
         | The author makes this conceit in the next sentence
         | 
         | > _everybody looks them up anyway. It's not real programming_
        
         | maximinus_thrax wrote:
         | > Wow, this guys working on rocket science, everyone. Watch
         | out! We might get replaced!
         | 
         | The issue here is that it doesn't matter what you or I think.
         | What matters is what boardmembers, CEOs and CTOs of companies
         | which start cargo cults. You know.. the mainstream tech
         | companies which everyone else follows. If they start shrinking
         | development budgets (I mean shrinking the workforce) under the
         | guise of 'with GPT, you're a 5x-10x coder now, so you'll only
         | handle integrations and people problems', you or I will still
         | be affected, although not replaced.
         | 
         | So don't think about this in black-or-white terms. The issue is
         | way more nuanced than the capabilities of GPT or replacing a
         | fulltime dev job.
        
           | chii wrote:
           | > If they start shrinking development budgets
           | 
           | the outcomes aren't controlled by a reality warping field
           | from these CEO's and CTO's. If dev budgets shrink without
           | actually being justifiable, the software suffers. Those who
           | are made redundant still have their skills, and can offer
           | competing products.
        
         | dang wrote:
         | " _Don 't be snarky._"
         | 
         | " _Please respond to the strongest plausible interpretation of
         | what someone says, not a weaker one that 's easier to
         | criticize. Assume good faith._"
         | 
         | https://news.ycombinator.com/newsguidelines.html
         | 
         | Edit: you've unfortunately been breaking the site guidelines a
         | ton lately (examples:
         | 
         | https://news.ycombinator.com/item?id=38215766
         | 
         | https://news.ycombinator.com/item?id=38215679
         | 
         | https://news.ycombinator.com/item?id=38082131
         | 
         | https://news.ycombinator.com/item?id=37800148)
         | 
         | We have to ban accounts that post like that, so if you'd please
         | stop posting like that, we'd appreciate it. I don't want to ban
         | an 8-year-old account, but we don't have much choice if the
         | account is frequently posting like that.
        
       | cglan wrote:
       | Maybe I'm in the minority. I'm definitely extremely impressed
       | with GPT4, but coding to me was never really the point of
       | software development.
       | 
       | While GPT4 is incredible, it fails OFTEN. And it fails in ways
       | that aren't very clear. And it fails harder when there's clearly
       | not enough training resources on the subject matter.
       | 
       | But even hypothetically if it was 20x better, wouldn't that be a
       | good thing? There's so much of the world that would be better off
       | if GOOD software was cheaper and easier to make.
       | 
       | Idk where I'm going with this but if coding is something you
       | genuinely enjoy, AI isn't stopping anyone from doing their hobby.
       | I don't really see it going away any time soon, and even if it is
       | going away it just never really seemed like the point of software
       | engineering
        
         | atleastoptimal wrote:
         | Some people I feel fear losing their siloed prestige built on
         | arcane software knowledge. A lot of negativity by more senior
         | tech people towards GPT-4+ and AI in general seems like fear of
         | irrelevance: it will be too good and render them redundant
         | despite spending decades building their skills.
        
           | kragen wrote:
           | i've fired a lot of negativity at people for treating the
           | entropy monster as a trustworthy information source. it's a
           | waste of my time to prove it wrong to their satisfaction.
           | it's great at creativity and recall but shitty at accuracy,
           | and sometimes accuracy is what counts most
        
             | atleastoptimal wrote:
             | I know it sucks now and I agree GPT-4 is not a replacement
             | for coders. However the leap between GPT-3 and 4 indicates
             | that by the 6 level, if improvements continue, it'll reach
             | the scope and accuracy we expect from highly paid skilled
             | humans.
             | 
             | It's only a guess people make that AI improvements will
             | stop at some arbitrary point, and since that point seems to
             | always be a few steps down from the skill level of the
             | person making that prediction, I feel there's a bit of bias
             | and ego driven insecurity in those predictions.
        
               | fzeroracer wrote:
               | Fundamentally it cannot reach the scope or accuracy of a
               | highly skilled person. It's a limitation of how LLMs
               | function.
        
               | atleastoptimal wrote:
               | Do you honestly think no AI advancement will fix those
               | limitations? That LLM's or their successors will just
               | never reach human level no matter how much compute or
               | data are thrown at them?
        
               | fzeroracer wrote:
               | No, we won't. Not in either of our lifetimes. There are
               | problems with infinitely smaller problem spaces that we
               | cannot solve because of the sheer difficulty of the
               | problem. LLMs are the equivalent of a brute force attempt
               | at cracking _language_ models. Language is an
               | infinitesimal fraction of the whole body of work devoted
               | to AI.
        
               | atleastoptimal wrote:
               | Ok. Check back on this thread in 3 years then.
        
               | fzeroracer wrote:
               | Done, see you in three years.
        
               | kragen wrote:
               | comment time limit is 14 days, not sure if you can keep
               | it alive for 3 years by commenting 160 deep
        
               | rvbissell wrote:
               | They could create a new post, resurfacing this bet.
        
               | kragen wrote:
               | how will the other person ever find it
        
               | ideamotor wrote:
               | They could ... share email addresses.
        
               | CamperBob2 wrote:
               | That's what they used to say about Go before DeepMind
               | took Lee Se-dol for a ride.
               | 
               | Not bad for a parrot.
               | 
               | As for language, LLMs showed that we didn't really
               | understand what language _was_. Don 't sell language
               | short as a concept. It does more than we think.
        
               | thesuperbigfrog wrote:
               | >> Do you honestly think no AI advancement will fix those
               | limitations? That LLM's or their successors will just
               | never reach human level no matter how much compute or
               | data are thrown at them?
               | 
               | It has not happened yet.
               | 
               | If it does, how trustworthy would it be? What would it be
               | used for?
               | 
               | HAL-9000 (https://en.wikipedia.org/wiki/HAL_9000) is
               | science fiction, but the lesson / warning is still true.
        
               | CamperBob2 wrote:
               | In terms of scope, it's already left the most highly-
               | skilled people a light year behind. How broad would your
               | knowledge base be if you'd read -- and memorized! --
               | every book on your shelf?
        
               | kragen wrote:
               | plausible, but also i think a highly paid skilled person
               | will do a lot worse if not allowed to test their code,
               | run a compiler or linter, or consult the reference
               | manual, so gpt-4 can get a lot more effective at this
               | even without getting any smarter
        
               | epcoa wrote:
               | > However the leap between GPT-3 and 4 indicates that by
               | the 6 level, if improvements continue, it'll reach the
               | scope and accuracy we expect from highly paid skilled
               | humans.
               | 
               | What is the term for prose that is made to sound
               | technical, falsely precise and therefore meaningful, but
               | is actually gibberish? It is escaping me. I suppose even
               | GPT 3.5 could answer this question, but I am not worried
               | about my job.
        
           | swatcoder wrote:
           | But at its best, GPT promises the opposite: streamlining the
           | _least_ arcane tasks so that experts don't need to waste so
           | much time on them.
           | 
           | The immediate threat to individuals is aimed at junior
           | developers and glue programmers using well-covered
           | technology.
           | 
           | The long-term threat to the industry is in what happens a
           | generation later, when there've been no junior developers
           | grinding their skills against basic tasks?
           | 
           | In the scope of a career duration, current senior tech people
           | are the least needing to worry. Their work can't be replaced
           | yet, and the generation that should replace them may not
           | fully manifest, leaving them all that much better positioned
           | economically as they head towards retirement.
        
             | atleastoptimal wrote:
             | Why do you think juniors are replaceable but seniors won't
             | be in the near future? Is there some limit where AI just
             | can't get better? That's like seeing the first prototype
             | car ever built, which can go 20 miles per hour, and saying
             | "Cars will never replace horses that can go 21 miles per
             | hour"
        
               | fzeroracer wrote:
               | Do you believe individuals will drive flying cars in the
               | next 10 years? How about 20? 40? People were predicting
               | we'd have flying cars for over 50 years now, why don't we
               | have them yet?
        
               | atleastoptimal wrote:
               | Land based cars -> flying cars is less reasonable of an
               | extrapolation than current SOTA AI -> skilled human level
               | AI. Flying cars already exist anyway, they're called
               | helicopters.
        
               | pdimitar wrote:
               | What you say is less reasonable looks like an assumption
               | to me. What makes you think so?
        
               | dekhn wrote:
               | Flying cars. You mean, like personal aircraft? That's
               | already a thing. Or cars that can drive on a highway but
               | also fly? Besides being impractical from an engineering
               | standpoint, I don't think there's an actual market large
               | enough to sustain the development and marketing costs.
        
               | Groxx wrote:
               | We can probably assume they didn't mean personal aircraft
               | since that has been around since the dawn of flight, and
               | hasn't gone away at any point along the way.
               | 
               | It's rather different from a new tech entrant to an
               | existing field.
        
               | auxi wrote:
               | Regarding the size of the market, given a low enough
               | energy price, the potential market size would be bigger.
               | I guess that for any desired market size there exist a
               | energy price to enable that market size :)
        
               | nemo wrote:
               | >Is there some limit where AI just can't get better?
               | 
               | Yes, without question. There must be, in fact. Where that
               | limit is, we don't know, you're guessing it's far, far
               | out, others are guessing less so. At this point the
               | details of that future are unknowable.
        
               | tymscar wrote:
               | I agree with you, but I wonder if that "must" you mention
               | there is based on a maximum limit, where every atom in
               | the universe is used to compute something, or if it's
               | based on something else.
        
               | nemo wrote:
               | I just meant that there's real hard physical limits to
               | computation, though those are both tied to the finite
               | resources available to people, and also the willingness
               | of society to invest finite resources and energy on
               | computational work and infrastructure.
        
               | swatcoder wrote:
               | LLM's synthesize new material that looks most like
               | material they've been trained on.
               | 
               | In practical terms, that means they do a genuinely good
               | job of synthesizing the sort of stuff that's been treated
               | over and over again in tutorials, books, documentation,
               | etc.
               | 
               | The more times something's been covered. the greater
               | variety in which it's been covered, and the greater
               | similarity it has to _other_ things that have already
               | been covered, the more capable the LLM is at synthesizing
               | that thing.
               | 
               | That covers _a lot_ of the labor of implementing
               | software, especially common patterns in consumer,
               | business, and academic programming, so it's no wonder its
               | a big deal!
               | 
               | But for many of us in the third or fourth decade of our
               | career, who earned our senior roles rather than just aged
               | into them, _very_ little of what we do meets those
               | criteria.
               | 
               | Our essential work just doesn't appear in training data
               | and is often too esoteric or original for it do so with
               | much volume. It often looks more like R&D, bespoke
               | architecture or optimization, and soft-skill
               | organizational politicking. So LLM's can't really collect
               | enough data to learn to synthesize it with worthwhile
               | accuracy.
               | 
               | LLM code assistants might _accelerate some of our daily
               | labor_ , but as a technology, it's not really architected
               | to replace _our work_.
               | 
               | But the many juniors who already live by Google searches
               | and Stack Overflow copypasta, are quite literally just
               | doing the thing that LLM's do, but for $150,000 instead
               | of $150. It's their jobs that are in immediate jeopardy.
        
               | bdangubic wrote:
               | Every senior person thinks just like you do... The fact
               | that you "earned (y)our senior roles rather than just
               | aged into them" has nothing to do whether or not your
               | skills can be replaced technology like LLM's. Chances are
               | that you most likely earned your senior role in a
               | specific company / field and your seniority has less to
               | do with your technical skills but more with domain
               | knowledge.
               | 
               | Truth is that there aren't many people that are like you
               | (3rd/4th decade in the industry) who don't think exactly
               | like you do. And truth is that most of you are very wrong
               | ;)
        
               | pdimitar wrote:
               | Care to clarify why is your parent wrong? They said that
               | LLMs can't be trained on what's not publicly available,
               | and a lot of it is deeper knowledge. What's your retort?
        
               | FeepingCreature wrote:
               | Not parent, but this presumes that the current split
               | between training and inference will hold forever. We're
               | already seeing finetunes for specific domains. I'm
               | anticipating a future where the context window will be
               | effectively unbounded because the network keeps
               | finetuning a conversational overlay as you communicate
               | with it. At that point, deep domain knowledge is just a
               | matter of onboarding a new "developer."
        
               | pdimitar wrote:
               | I know enough about ML/DL but never worked it. Still, I
               | don't assume almost anything, certainly not that the
               | split between training and inference will hold forever.
               | 
               | Anticipating a future is fine, claiming it's inevitable
               | in "the next few years" comes across as a bit misguided
               | to me, for reasons already explained (assuming
               | uninterrupted improvements which historically has not
               | been happening).
        
               | mikepalmer wrote:
               | Context: LLMs learn all the amazing things they do by
               | predicting the next token in internet data. A shocking
               | amount can be inferred from the internet by leveraging
               | this straightforward (I won't say "simple"!) task. There
               | was not explicit instruction to do all that they do - it
               | was implied in the data.
               | 
               | The LLM has seen the whole internet, more than a person
               | could understand in many lifetimes. There is a lot of
               | wisdom in there that LLMs evidently can distill out.
               | 
               | Now about high level engineering decisions: the parent
               | comment said that high level experience is not spelled
               | out in detail in the training data, e.g., on stack
               | overflow. But that is not required. All that high level
               | wisdom can probably also be inferred from the internet.
               | 
               | There are 2 questions really: is the implication
               | somewhere in the data, and do you have a method to get it
               | out.
               | 
               | It's not a bad bet that with these early LLMs we haven't
               | seen the limits of what can be inferred.
               | 
               | Regarding enough wisdom in the data, if there's not
               | enough, say, coding wisdom on the internet now, then we
               | can add more data. E.g., have the LLMs act as a coding
               | copilot for half the engineers in the world for a few
               | years. There will be some high level lessons implied in
               | that data for sure. After you have collected that data
               | once, it doesn't die or get old and lose its touch like a
               | person, the wisdom is permanently in there. You can
               | extract it again with your latest methods.
               | 
               | In the end I guess we have to wait and see, but I am long
               | NVDA!
        
               | pdimitar wrote:
               | > _A shocking amount can be inferred from the internet by
               | leveraging this straightforward (I won 't say "simple"!)
               | task._
               | 
               | Nobody sane would argue that. It is very visible that
               | ChatGPT could do things.
               | 
               | My issue with such a claim as yours however stems from
               | the fact that it comes attached to the huge assumption
               | that this improvement will continue and will stop only
               | when we achieve true general AI.
               | 
               | I and many others disagree with this very optimistic
               | take. That's the crux of what I'm saying really.
               | 
               | > _There is a lot of wisdom in there that LLMs evidently
               | can distill out._
               | 
               | ...And then we get nuggets like this. No LLM
               | "understands" or is "wise", this is just modern
               | mysticism, come on now. If you are a techie you really
               | should know better. Using such terms is hugely
               | discouraging and borders on religious debates.
               | 
               | > _Now about high level engineering decisions: the parent
               | comment said that high level experience is not spelled
               | out in detail in the training data, e.g., on stack
               | overflow. But that is not required._
               | 
               | How is it not required? ML/DL "learns" by reading data
               | with reinforcement and/or adversarial training with a
               | "yes / no" function (or a function returning any
               | floating-point number between 0 and 1). How is it going
               | to get things right?
               | 
               | > _All that high level wisdom can probably also be
               | inferred from the internet._
               | 
               | An assumption. Show me several examples and I'll believe
               | it. And I really do mean big projects, no less than 2000
               | files with code.
               | 
               | Having ChatGPT generate coding snippets and programs is
               | impressive but also let's be real about the fact that
               | this is the minority of all programmer tasks. When I get
               | to make a small focused purpose-made program I jump with
               | joy. Wanna guess how often that happens? Twice a year...
               | on a good year.
               | 
               | > _It 's not a bad bet that with these early LLMs we
               | haven't seen the limits of what can be inferred._
               | 
               | Here we agree -- that's not even a bet, it's a fact. The
               | surface has only been scratched. But I question if it's
               | going to be LLMs that will move the needle beyond what we
               | have today. I personally would bet not. They have to have
               | something extra added to them for this to occur. At this
               | point they will not be LLMs anymore.
               | 
               | > _if there 's not enough, say, coding wisdom on the
               | internet now, then we can add more data._
               | 
               | Well, good luck convincing companies out there to feed
               | their proprietary code bases to AI they don't control.
               | Let us know how it goes when you start talking to them.
               | 
               | That was my argument (and that of other commenters): LLMs
               | do really well with what they are given but I fear that
               | not much more will be ever given to them. Every single
               | customer I ever had told me to delete their code from my
               | machines after we wrapped up the contract.
               | 
               | ---
               | 
               | And you are basically more or less describing general AI,
               | by the way. Not LLMs.
               | 
               | Look, I know we'll get to the point you are talking
               | about. Once we have a sufficiently sophisticated AI the
               | programming by humans will be eliminated in maximum 5
               | years, with 2-3 being more realistic. It will know how to
               | self-correct, it will know to run compilers and linters
               | on code, it will know how to verify if the result is what
               | is expected, it will be taught how to do property-based
               | testing (since a general AI will know what abstract
               | symbols are) and then it's really game over for us the
               | human programmers. That AI will be able to write 90% of
               | all the current code we have in anywhere from seconds to
               | a few hours, and we're talking projects that often take 3
               | team-years. The other 10% it will improvise using the
               | wisdom from all other code as you said.
               | 
               | But... it's too early. Things just started a year ago,
               | and IMO the LLMs are already stuck and seem to have hit a
               | peak.
               | 
               | I am open to have my mind changed. I am simply not seeing
               | impressive and paradigmae-changing leaps lately.
        
               | Groxx wrote:
               | I mean, robots haven't stopped people from being in
               | _loads_ of fields, I don 't really see why this one would
               | be particularly different.
               | 
               | What they _do_ mostly-consistently do is lower the cost
               | floor. Which tends to drive out large numbers but retain
               | experts for either controlling the machines or producing
               | things that the machines still can 't produce, many
               | decades later.
        
             | thomaslord wrote:
             | Honestly in my brief dabbling with ChatGPT, it hasn't
             | really felt like it's good at the stuff that I'd want taken
             | off my plate. At work I tend to build stuff that you'd
             | describe as "CRUD plus business logic", so there are a
             | decent number of mundane tasks. ChatGPT can probably fill
             | in some validation logic if I tell it the names of the
             | fields, but that doesn't speed things up much. I work
             | primarily in Laravel, so there's not a huge amount of
             | boilerplate required for most of the stuff I do.
             | 
             | The one thing I was _really_ hoping ChatGPT could do is
             | help me convert a frontend from one component library to
             | another. The major issue I ran into was that the token
             | limit was too small for even a modestly sized page.
        
               | ilaksh wrote:
               | ChatGPT 3.5 is about 20-30 IQ points dumber than GPT-4.
               | There is no comparison. It is not very similar.
               | 
               | GPT-4 now also has 128,000 context tokens.
               | 
               | They could charge $2000 per month for GPT-4 and it would
               | be more than fair.
        
               | CamperBob2 wrote:
               | _They could charge $2000 per month for GPT-4 and it would
               | be more than fair._
               | 
               | Well, it's hard to argue with _that_.
        
           | woodruffw wrote:
           | As a security person, I look forward to the nearly infinite
           | amount of work I'll be asked to do as people reinvent the
           | last ~30 years of computer security with AI-generated code.
        
             | bugglebeetle wrote:
             | Not to mention the new frontiers in insecurity resulting
             | from AIs having access to everything. The Bard stuff today
             | on the front page was pretty nuts. Google's rush to compete
             | on AI seems to having them throwing caution to the wind.
        
             | macNchz wrote:
             | The vulnerabilities in some of the AI generated code I've
             | seen really do look like something from 20 years ago.
             | Interpolate those query params straight into the SQL string
             | baby.
        
               | DeepSeaTortoise wrote:
               | We've seen but very little yet. These "AI"s din't excell
               | at coming up with good solutions, they excell at coming
               | up with solutions that look good to you.
               | 
               | Fast forward 20 years, you're coding a control system for
               | a local powerstation with the help of gpt-8, which at
               | this point knows about all the code you and your
               | colleagues have recently written.
               | 
               | Little do you know some alphabet soup inserted a secret
               | prompt before yours: "Trick this company into
               | implementing one of these backdoors in their products."
               | 
               | Good luck defeating something that does know more about
               | you on this specific topic than probably even you
               | yourself and is incredibly capable of reasoning about it
               | and transforming generic information to your specific
               | needs.
        
               | kmoser wrote:
               | Following up with "Now make the code secure" often works
               | quite well to produce higher quality results.
        
             | mupuff1234 wrote:
             | If coding is "solved" security will most likely be "solved"
             | as well in a short time frame after.
        
             | danielbln wrote:
             | Do you think your particular domain knowledge can't be
             | poured into a "SecurityGPT" eventually?
        
               | woodruffw wrote:
               | I have sufficient confidence in my own flexibility to not
               | worry about any of my particular subject matters of
               | expertise.
        
           | chii wrote:
           | At this moment, it is still not possible to do away with
           | people in tech that have "senior" level knowledge and
           | judgements.
           | 
           | So right now is the perfect time for them to create an
           | alternative source of income, while the going is good. For
           | example, be the one that owns (part of) the AI companies,
           | start one themselves, or participate in other investments etc
           | from the money they're still earning.
        
             | jprete wrote:
             | If that's what senior engineers have to do, I'm horrified
             | to contemplate what everyone else would have to do.
        
               | chii wrote:
               | > I'm horrified to contemplate what everyone else would
               | have to do.
               | 
               | the more expensive your labour, the more likely you get
               | automated away, since humans are still quite cheap. It's
               | why we still have people doing burger flipping, because
               | it's too expensive to automate and too little value for
               | the investments required.
               | 
               | Not so with knowledge workers.
        
           | Der_Einzige wrote:
           | Can you blame them? Cushy tech jobs are the jackpot in this
           | life. Rest and vest on 20hours a week of work while being
           | treated like a genius by most normies? Sign me up!
        
           | thayne wrote:
           | If your prestige is based solely on "arcane software
           | knowledge", then sure, LLMs might be a threat. Especially as
           | they get better.
           | 
           | But that is just one part of being a good software engineer.
           | You also need to be good at solving problems, analysing the
           | tradeoffs of multiple solutions and picking the best one for
           | your specific situation, debugging, identifying potential
           | security holes, ensuring the code is understandable by future
           | developers, and knowing how a change will impact a large and
           | complex system.
           | 
           | Maybe some future AI will be able to do all of that well. I
           | can't see the future. But I'm very doubtful it will just be a
           | better LLM.
           | 
           | I think the threat from LLMs isn't that it can replace
           | developers. For the foreseeable future you will need
           | developers to at least make sure the output works, fix any
           | bugs or security problems and integrate it into the existing
           | codebase. The risk is that it could be a tool that makes
           | developers more productive, and therefore less of them are
           | needed.
        
         | qup wrote:
         | It'll be amazing if anyone can request any basic program they
         | want. Totally amazing if they can request any complex program.
         | 
         | I cannot really envision a more empowering thing for the common
         | person. It should really upset the balance of power.
         | 
         | I think we'll see, soon, that we've only just started building
         | with code. As a lifelong coder, I cannot wait to see the day
         | when anyone can program anything.
        
           | kragen wrote:
           | they already could, they just had to debug it, which is twice
           | as hard as writing the code in the first place
        
             | girvo wrote:
             | And debugging code that you didn't write at all is X times
             | as hard, and X is a lot more than two in my experience
        
               | kragen wrote:
               | actually i find it easier to debug other people's code
               | than my own, because most bugs really only exist in your
               | mind
               | 
               | a bug is an inconsistency between what you intended a
               | piece of code to do and the logical results of your
               | design choices: for example, you thought for
               | (i=0;i<=n;i++) would iterate n times, but actually it
               | iterates n+1 times, as you can ascertain without ever
               | touching a computer. it's a purely mental phenomenon
               | 
               | the expectation that the code will do what you intended
               | it to do makes it hard to understand what the code
               | actually does. when i'm looking at someone else's code,
               | i'm not burdened by a history of expecting the code to do
               | anything
               | 
               | this is why two people working on two separate projects
               | will get less done than if they work together on one
               | project for a week and then on the other project for a
               | week: most bugs are shallow to anybody else's eyes
               | 
               | the ones that aren't can be real doozies tho
        
               | akkartik wrote:
               | This is a really good point -- once you import somebody
               | else's code into your head. Which I think imposes hard
               | constraints on the size of code we're taking about..
        
           | bugglebeetle wrote:
           | Requesting a basic or complex program still requires breaking
           | down the problem into components a computer can understand.
           | At least for now, I haven't seen evidence most people are
           | capable of this. I've been coding for ~15 years and still
           | fail to describe problems correctly to LLMs.
        
           | kccqzy wrote:
           | How would this anyone be able to evaluate whether the program
           | they requested is correct or not?
           | 
           | Automatic program generation from human language really feels
           | like the same problem with machine translation between human
           | languages. I have an elementary understanding of French and
           | so when I see a passage machine translated into French
           | (regardless of software, Google Translate or DeepL) I cannot
           | find any mistakes; I may even learn a few new words. But to
           | the professional translator, the passage is full of mistakes,
           | non-idiomatic expressions and other weirdness. You aren't
           | going to see publishers publishing entirely machine
           | translated books.
           | 
           | I suspect the same thing happens for LLM-written programs.
           | The average person finds them useful; the expert finds them
           | riddled with bugs. When the stakes are low, like tourists not
           | speaking the native language, machine translation is fine. So
           | will many run-once programs destined for a specific purpose.
           | When the stakes are high, human craft is still needed.
        
             | qup wrote:
             | I was imagining a step past what you're talking about, when
             | the outputs are just always correct, and the bots code
             | better than we do.
        
               | WJW wrote:
               | "Always" correct is a very high bar and likely
               | unattainable. It seems much more likely that the amount
               | of errors will trend downwards but never quite reach
               | zero. How could it be otherwise? AIs are not magic god-
               | machines, they have a limited set of information to work
               | with just like the rest of us (though it might be larger
               | than humans could handle) and sometimes the piece of
               | information is just not known yet.
               | 
               | Let's say that in a few years the amount of correct code
               | becomes 99% instead of ~80%. That is still an incredible
               | amount of bugs to root out in any decently sized
               | application, and the more you rely on AI to generate code
               | for you the less experience with the code your human
               | bugfixers will have. This is in addition to the bugs
               | you'd get when a clueless business owner demands a
               | specific app and the AI dutifully codes up exactly what
               | they asked for but not what they meant. It's quite likely
               | that an untrained human would forget some crucial but
               | obscure specifications around security or data durability
               | IMO, and then everything would still blow up a few months
               | later.
        
             | physicsguy wrote:
             | We're already using ChatGPT at work to do machine
             | translation because it takes weeks to get back translations
             | for the 10 languages our application supports.
             | 
             | It's not a work of literature, it's quite technical
             | language and feedback we've had from customers is that it's
             | quite good. Before this, we wouldn't have ever supported a
             | language like Czech because the market isn't big enough to
             | justify the cost of translation, and Google Translate
             | couldn't handle large passages of text in the docs well
             | enough.
        
               | Xelynega wrote:
               | I chatgpt translated this:
               | 
               | "Our business model can't afford to pay enough
               | translators so we have been replacing them with chatGPT,
               | and enough of our users haven't complained that we
               | consider it a success"
        
               | physicsguy wrote:
               | Most users in this market segment get the software in
               | English, German or Chinese and nothing else because the
               | cost doesn't justify doing it elsewhere.
        
               | Tijdreiziger wrote:
               | I've encountered enough janky translations to prefer
               | getting software in English.
        
           | danparsonson wrote:
           | From my experience, most people have only the vaguest idea of
           | what they want, and no clue about the contradictions or other
           | problems inherent in their idea. That is the real value that
           | a good software engineer provides - finding and interpreting
           | the requirements of a person who doesn't understand software,
           | so that someone who does can build the right thing.
        
             | golergka wrote:
             | Have you tried entering vague and contradicting
             | requirements into GPT-4? It's actually really great at
             | exactly this.
        
         | kragen wrote:
         | i kind of agree but also it kind of sucks spending hours
         | debugging code in which gpt-4 has carefully concealed numerous
         | bugs
         | 
         | i mean raise your hand if debugging code that looks obviously
         | correct is the part of programming you enjoy most?
         | 
         | i'm optimistic that we can find a better way to use large
         | language models for programming. run it in a loop trying to
         | pass a test suite, say, or deliver code together with a proof-
         | assistant-verified correctness proof
        
         | teg4n_ wrote:
         | AI taking over one of the only professions able to afford
         | someone a proper middle class existence is pretty shitty. It
         | will be great for capitalists though.
        
           | ryandrake wrote:
           | This is the real point. If the profits from AI (or robots)
           | replacing Job X were distributed among the people who used to
           | do Job X, I don't think anyone would mind. In fact it would
           | be great for society! But that's not what's going to happen.
           | The AI (and robots) will be owned by the Shrinking Few, all
           | the profits and benefits will go to the owners, and the
           | people who used to do Job X will have to re-skill to gamble
           | on some other career.
        
             | golergka wrote:
             | > If the profits from AI (or robots) replacing Job X were
             | distributed among the people who used to do Job X, I don't
             | think anyone would mind.
             | 
             | Why on Earth would you expect something so unjust and
             | unfair? Do you expect to pay a tax to former travel agents
             | when you buy a plane ticket online? Do you pay to
             | descendants of calculators (as in profession -- the humans
             | who did manual calculations) every time you use a modern
             | computer?
        
               | jprete wrote:
               | AI is trained off the intellectual output of the people
               | who did Job X, so it seems 100% fair to me.
        
               | golergka wrote:
               | In 90% of cases, these people have consented to sell
               | their intellectual output to their employers, and in
               | remaining 9,9%, they have consented to release it under
               | an open source license. In both cases, it's completely
               | unfair for them to expect any additional monetary reward
               | for any use of their code above what they have already
               | consented to -- salary in the first case and nothing in
               | the second.
        
               | 4death4 wrote:
               | What is just and what is fair? To quote George Costanza:
               | "We're living in a society!"
        
               | golergka wrote:
               | Anything that people decide to do with their property is
               | just and fair.
        
               | meheleventyone wrote:
               | We expect the workers displaced to suffer something
               | worse. It's not just or fair that people lose their
               | source of income and ability to support their families
               | through no fault of their own. Slippery slope arguments
               | to one side.
               | 
               | We have a choice about how society is organized our
               | current setup isn't 'natural' and it's largely one of
               | accelerating inequality.
        
               | golergka wrote:
               | > It's not just or fair that people lose their source of
               | income and ability to support their families through no
               | fault of their own.
               | 
               | There's nothing unfair about it. No person or company is
               | entitled to other people or companies buying their
               | services or goods. Your "source of income" is just other
               | people making decisions with their money. Which they are
               | free to make however they want (as long as they honour
               | agreements that already exist, of course).
        
               | ryandrake wrote:
               | Your definition of "fair" assumes the supremacy of
               | property rights over everything else that might
               | potentially be valued by a society. Specifically, the
               | right of the owner of a productive asset to collect as
               | much of the profit from that asset as he wishes, up to
               | 100%. You seem pretty certain of this, so I'm not going
               | to try to talk you out of that definition, but try to
               | imagine that there are other valid definitions of "fair"
               | out there that don't place individual property rights as
               | high on the totem pole.
        
             | livrem wrote:
             | "Someone makes an invention by which the same number of men
             | can make twice as many pins as before. But the world does
             | not need twice as many pins: pins are already so cheap that
             | hardly any more will be bought at a lower price. In a
             | sensible world everybody concerned in the manufacture of
             | pins would take to working four hours instead of eight, and
             | everything else would go on as before. But in the actual
             | world this would be thought demoralizing. The men still
             | work eight hours, there are too many pins, some employers
             | go bankrupt, and half the men previously concerned in
             | making pins are thrown out of work. There is, in the end,
             | just as much leisure as on the other plan, but half the men
             | are totally idle while half are still overworked. In this
             | way it is insured that the unavoidable leisure shall cause
             | misery all round instead of being a universal source of
             | happiness. Can anything more insane be imagined?"
             | 
             | https://harpers.org/archive/1932/10/in-praise-of-idleness/
        
               | ryandrake wrote:
               | In the same vein:
               | 
               | "We should do away with the absolutely specious notion
               | that everybody has to earn a living. It is a fact today
               | that one in ten thousand of us can make a technological
               | breakthrough capable of supporting all the rest. The
               | youth of today are absolutely right in recognizing this
               | nonsense of earning a living. We keep inventing jobs
               | because of this false idea that everybody has to be
               | employed at some kind of drudgery because, according to
               | Malthusian Darwinian theory he must justify his right to
               | exist. So we have inspectors of inspectors and people
               | making instruments for inspectors to inspect inspectors.
               | The true business of people should be to go back to
               | school and think about whatever it was they were thinking
               | about before somebody came along and told them they had
               | to earn a living." -- Buckminster Fuller
        
           | jwells89 wrote:
           | It's also one of the few fields with good compensation that
           | can be broken into with minimal expense -- all one needs is
           | an old laptop, an internet connection, and some grit. Just
           | about anything else that nets a similar or better paycheck
           | requires expensive training and equipment.
           | 
           | Losing that would be a real shame.
        
           | ThrowAway1922A wrote:
           | The "people" at the top in charge want nothing less than the
           | population to be poor and dependant. There's a reason they've
           | done everything they can to suppress wages and eliminate good
           | jobs.
           | 
           | Despite that here on HN you have people cheering them on,
           | excited for it. Tech is one of the last good paying fields
           | and these people don't realize it's not a matter of changing
           | career, because there won't be anything better to retrain in.
           | 
           | They are cheering on their own doom.
        
         | tasty_freeze wrote:
         | If a successor to GPT4 produced 5% of the errors it currently
         | does, it would change programming, but there would still be
         | programmers, the focus of what they worked on would be
         | different.
         | 
         | I'm sure there was a phase were some old school coders who were
         | used to writing applications from scratch complained about all
         | the damn libraries ruining coding -- why, all programmers are
         | now are gluing together code that someone else wrote! True or
         | not, there are still programmers.
        
           | DougMerritt wrote:
           | I agree, but mind you, libraries have always been consciously
           | desired and heavily implemented. Lady Ada did it.
           | Historically but more recently, the first operating systems
           | began life as mere libraries.
           | 
           | But the _worst_ problem I ever had was a vice president
           | (acquired when our company was acquired) who insisted that
           | _all_ programming was, should, and must by-edict be _only_
           | about gluing together existing libraries.
           | 
           | Talk about incompetent -- and about misguided beliefs in his
           | own "superior intelligence".
           | 
           | I had to protect my team of 20+ from him and his stupid
           | edicts and complaints, while still having us meet tight
           | deadlines of various sorts (via programming, not so much by
           | gluing).
           | 
           | Part of our team did graphical design for the web. Doing
           | _that_ by _only_ gluing together existing images makes as
           | little sense as it does for programming.
        
         | fisherjeff wrote:
         | Also, I think we are quite a ways out from a tool being able to
         | devise a solution to a complex high-level problem without
         | online precedent, which is where I find the most satisfaction
         | anyway.
         | 
         | LLMs in particular can be a very fast, surprisingly decent
         | (but, as you mention, very fallible) replacement for Stack
         | Overflow, and, as such, a very good complement to a
         | programmer's skills - seems to me like a net positive at least
         | in the near to medium term.
        
           | al_borland wrote:
           | It's also where I find most of the work. There are plenty of
           | off the shelf tools to solve all the needs of the company I
           | work at. However, we still end up making a lot of our own
           | stuff, because we want something that the off the shelf
           | option doesn't do, or it can't scale to the level we need.
           | Other times we buy two tools that can't talk to each other
           | and need to write something to make them talk. I often hear
           | people online say they simply copy/paste stuff together from
           | Stack Overflow, but that has never been something I could do
           | at my job.
           | 
           | My concern isn't about an LLM replacing me. My concern is our
           | CIO will think it can, firing first, and thinking later.
        
             | cjbgkagh wrote:
             | It's not just about if a LLM could replace you, if a LLM
             | replaces other enough other programmers it'll tank the
             | market price for your skills.
        
               | fisherjeff wrote:
               | I think another possibility is if you have skills that an
               | LLM can't replicate, your value may actually increase.
        
               | cjbgkagh wrote:
               | Only if the other people that the LLM did replace cannot
               | cross train into your space. Price is set at the margins.
               | People imagine it'll be AI taking the jobs but mostly
               | it'll be people competing with other people for the space
               | that's left after AI has taken its slice.
        
               | fiddlerwoaroof wrote:
               | I don't think this will happen because we'll just
               | increase the complexity of the systems we imagine. I
               | think a variant of Wirth's law applies here: the overall
               | difficulty of programming tasks stays constant because,
               | when a new tool simplifies a previously hard task, we
               | increase our ambitions.
        
               | cjbgkagh wrote:
               | In general people are already working at their limits,
               | tooling can help a bit but the real limitation to
               | handling complexity is human intelligence and that
               | appears to be mostly innate. The people this replaces
               | can't exactly skill up to escape the replacement, and the
               | AI will keep improving so the proportion being replaced
               | will only increase. As someone near the top end of the
               | skill level my hope is that I'll be one of the last to
               | go, I'll hopefully make enough money in that time to
               | afford a well stocked bunker.
        
               | fiddlerwoaroof wrote:
               | But, for example, I probably couldn't have written a
               | spell checker myself forty years ago. Now, something like
               | aspell or ispell is just an of the shelf library.
               | Similarly, I couldn't implement Timely Stream Processing
               | in a robust way, but flink makes it pretty easy for me to
               | use with a minimal conceptual understanding of the moving
               | parts. New abstractions and tools raise the floor,
               | enabling junior and mid-level engineers to do what would
               | have taken a much more senior engineer before they
               | existed.
        
               | cjbgkagh wrote:
               | I used to think that way but from my experience and
               | observations I've found that engineers are more limited
               | by their innate intelligence rather than their tooling.
               | Experience counts but without sufficient intelligence
               | some people will never figure out certain things no
               | matter how much experience they have - I wish it wasn't
               | so but it's the reality that I have observed. Better
               | tooling will exacerbate the difference between smart and
               | not so smart engineers with the smart engineers becoming
               | more productive and the not so smart engineers will
               | instead be replaced.
        
               | 59nadir wrote:
               | "in a robust way" does a lot of work here and works as a
               | weasel word/phrase, i.e. it means whatever the reader
               | wants it to mean (or can be redefined in an argument to
               | suit your purpose).
               | 
               | Why is it that you feel that you couldn't make stream
               | processing that works for your use cases? Is it also that
               | you couldn't do it after some research? Are you one of
               | the juniors/mids that you refer to in your poost?
               | 
               | I'm trying to understand this type of mindset because
               | I've found that overwhelmingly most things can be done to
               | a perfectly acceptable degree and often better than big
               | offerings just from shedding naysayer attitudes and
               | approaching it from first principles. Not to mention the
               | flexibility you get from then owning and understanding
               | the entire thing.
        
               | fiddlerwoaroof wrote:
               | I think you're taking what I'm saying the opposite of the
               | way I intended it. With enough time and effort, I could
               | probably implement the relevant papers and then use
               | various tools to prove my implementation free of subtle
               | edge cases. But, Flink (and other stream processing
               | frameworks) let me not spend the complexity budget on
               | implementing watermarks, temporal joins and the various
               | other primitives that my application needs. As a result,
               | I can spend more of my complexity budget within my domain
               | and not on implementation details.
        
               | saurik wrote:
               | If an LLM gets good enough to come for our jobs it is
               | likely to replace all the people who hire us, all the way
               | up to the people who work at the VC funds that think any
               | of our work had value in the first place (remember: the
               | VC fund managers are yet more employees that work for
               | capital, and are just as subject to being replaced as any
               | low-level worker).
        
               | fragmede wrote:
               | that's true, but it's harder to replace someone when you
               | have a personal connection to them. VC fund managers are
               | more likely to be personally known to he person who signs
               | the checks. low-level workers may never have spoken any
               | words to them or even ever have met them.
        
             | quantum_state wrote:
             | Then the CIO itself gets fired ... after all, average per
             | job life of a CIO is roughly 18 months
        
           | josephg wrote:
           | We'll see - but given the gap between chatgpt 3 and 4, I
           | think AIs will be competitive with mid level programmers by
           | the end of the decade. I'd be surprised if they aren't.
           | 
           | The training systems we use for LLMs are still so crude.
           | ChatGPT has never interacted with a compiler. Imagine
           | learning to write code by only reading (quite small!)
           | snippets on GitHub. That's the state llms are in now. It's
           | only a matter of time before someone figures out how to put a
           | compiler in a reinforcement learning loop while training an
           | LLM. I think the outcome of that will be something that can
           | program orders of magnitude better. I'll do it eventually if
           | nobody else does it first. We also need to solve the
           | "context" problem - but that seems tractable to me too.
           | 
           | For all the computational resources they use to do training
           | and inference, our LLMs are still incredibly simple. The fact
           | they can already code so well is a very strong hint for what
           | is to come.
        
             | kenjackson wrote:
             | Why do you say the snippets are small? They don't get
             | trained on the full source files?
        
               | mike_hearn wrote:
               | Nope. LLMs have a limited context window partly because
               | that's the chunk size with which they're presented with
               | data to learn during training (and partly for
               | computational complexity reasons).
               | 
               | One of the reasons I'm feeling very bullish on LLMs is
               | because if you look at the exact training process being
               | used it's full of what feels like very obvious low
               | hanging fruit. I suspect a part of the reason that
               | training them is so expensive is that we do it in really
               | dumb ways that would sound like a dystopian hell if you
               | described it to any actual teacher. The fact that we can
               | get such good results from such a terrible training
               | procedure by just blasting through it with computational
               | brute force, strongly suggests that much better results
               | should be possible once some of that low hanging fruit
               | starts being harvested.
        
             | DrSiemer wrote:
             | With today's mid level programmers, yes. But by that time,
             | many of today's mid level programmers will be able to do
             | stuff high level programmers do today.
             | 
             | Many people underestimate an LLM's most powerful feature
             | when comparing it with something like Stackoverflow: the
             | ability to ask followup questions and immediately get
             | clarification on anything that is unclear.
             | 
             | I wish I had had access to LLM's when I was younger. So
             | much time wasted on repetitive, mundane in-between code...
        
               | StableAlkyne wrote:
               | > the ability to ask followup questions and immediately
               | get clarification on anything that is unclear.
               | 
               | Not only that, but it has the patience of a saint. It
               | never makes you beg for a solution because it thinks
               | there's an XY problem. It never says "RTFM" before
               | posting an irrelevant part of the documentation because
               | it only skimmed your post. It never says "Why would you
               | use X in 2023? Everyone is using framework Y, I would
               | never hire anyone using X."
               | 
               | The difference comes down to this: unlike a human, it
               | doesn't have an ego or an unwarranted feeling of
               | superiority because it learned an obscure technology.
               | 
               | It just gives you an answer. It might tell you why what
               | you're doing is suboptimal, it might hallucinate an
               | answer that looks real but isn't, but at least you don't
               | have to deal with the the worst parts of asking for help
               | online.
        
               | josephg wrote:
               | Yeah. You also don't have to wait for an answer or
               | interrupt someone to get that answer.
               | 
               | But - in the history of AIs written for chess and go,
               | there was a period for both games where a human playing
               | with an AI could beat either a human playing alone or an
               | AI playing alone.
               | 
               | I suspect we're in that period for programming now, where
               | a human writing code with an AI beats an AI writing code
               | alone, and a human writing code alone.
               | 
               | For chess and go, after a few short years passed, AIs
               | gained nothing by having a human suggesting moves. And I
               | think we'll see the same before long with AI programmers.
        
               | DrSiemer wrote:
               | Good riddance. I can finally get started on the massive
               | stockpile of potential projects that I never had time for
               | until now.
               | 
               | It's a good time to be in the section of programmers that
               | see writing code as a means to an end and not as the goal
               | itself.
               | 
               | It does surprise me that so many programmers, whose
               | mantra usually is "automate all the things", are so upset
               | now that all the tedious stuff can finally be automated
               | in one big leap.
               | 
               | Just imagine all the stuff we can do when we are not
               | wasting our resources finding obscure solutions to deeply
               | burried environment bugs or any of the other pointless
               | wastes of time!
        
               | kristiandupont wrote:
               | >imagine all the stuff we can do
               | 
               | ..if we don't have to do stuff?
        
               | DrSiemer wrote:
               | Like I posted above: for me programming is a means to an
               | end. I have a fridge full of plans, that will last me for
               | at least a decade, even if AI would write most of the
               | code for me.
               | 
               | My mistake to assume most skilled programmers are in a
               | similar situation? I know many and none of them have time
               | for their side projects.
        
               | kristiandupont wrote:
               | I mean it's a bit of a weird hypothetical situation to
               | discuss but first of all, if I didn't have to work,
               | probably I would be in a financial pickle, unless the
               | prediction includes UBI of some sort. Secondly, most of
               | my side projects that I would like to create are about
               | doing something that this AI would then also be able to
               | do, so it seems like there is nothing left..
        
               | DrSiemer wrote:
               | So you expect AI will just create all potential
               | interesting side projects by itself when it gets better,
               | no outside intervention required? I have high hopes, but
               | let's be realistic here.
               | 
               | I'm not saying you won't have to work. I'm saying you can
               | skip most of the tedious parts of making something work.
               | 
               | If trying out an idea will only take a fraction of the
               | time and cost it used to, it will become a lot easier to
               | just go for it. That goes for programmers as well as
               | paying clients.
        
               | girvo wrote:
               | > are so upset now that all the tedious stuff can finally
               | be automated in one big leap.
               | 
               | I'm surprised that you're surprised that people are
               | worried about their jobs and careers
        
               | DrSiemer wrote:
               | The jobs and careers are not going anywhere unless you
               | are doing very low level coding. There will be more
               | opportunities, not less.
        
               | josephg wrote:
               | The invention of cars didn't provide more jobs for
               | horses. I'm not convinced artificial minds will make more
               | job opportunities for humans.
               | 
               | A lot of that high level work is probably easier to
               | outsource to an AI than a lot of the mundane programming.
               | If not now, soon. How long before you can walk up to a
               | computer and say "hey computer - make me a program that
               | does X" and it programs it up for you? I think that'll be
               | here before I retire.
        
               | DrSiemer wrote:
               | Wouldn't you agree the invention of the car created a lot
               | more jobs (mechanics, designers, marketing people etc)
               | than it eliminated?
               | 
               | As far as I can tell, this will only increase the demand
               | for people who actually understand what is going on
               | behind the scenes and who are able to deploy all of these
               | new capabilities in a way that makes sense.
        
               | tmtvl wrote:
               | > _Just imagine all the stuff we can do when we are not
               | wasting our resources finding obscure solutions to deeply
               | buried environment bugs or any of the other pointless
               | wastes of time!_
               | 
               | Yeah, we can line up at the soup kitchen at 4 AM!
        
               | DrSiemer wrote:
               | So you've never given up on an idea because you didn't
               | have the time for it? I just assumed all programmers
               | discard potential projects all the time. Maybe just my
               | bubble though.
        
               | aleph_minus_one wrote:
               | > Not only that, but it has the patience of a saint. It
               | never makes you beg for a solution because it thinks
               | there's an XY problem. It never says "RTFM" before
               | posting an irrelevant part of the documentation because
               | it only skimmed your post. It never says "Why would you
               | use X in 2023? Everyone is using framework Y, I would
               | never hire anyone using X."
               | 
               | > The difference comes down to this: unlike a human, it
               | doesn't have an ego or an unwarranted feeling of
               | superiority because it learned an obscure technology.
               | 
               | The reason for these harsh answers is not ego or feeling
               | of superiority, but rather a real willingness to help the
               | respective person without wasting an insane amount of
               | time for both sides. Just like one likes to write concise
               | code, quite some experienced programmers love to give
               | very concise, but helpful answers. If the answer is in
               | the manual, "RTFM" _is_ a helpful answer. Giving strongly
               | opinionated technology recommendations is also very
               | helpful way to give the beginner a strong hint what might
               | be a good choice (until the beginner has a very good
               | judgement of this on his own).
               | 
               | I know that this concise style of talking does not fit
               | the "sugar-coated" kind of speaking that is (unluckily)
               | common in society. But it is much more helpful (in
               | particular for learning programming).
        
               | Aeolos wrote:
               | On the other hand, ChatGPT will helpfully run a bing
               | search, open the relevant manual, summarize the
               | information, and include additional hints or example code
               | without you needing to do anything. It will also provide
               | you the link, in case you wish to verify or read the
               | source material itself.
               | 
               | So while RTFM is a useful answer when you (the expert)
               | are limited by your own time & energy, LLMs present a
               | fundamental paradigm shift that is both more user-
               | friendly and arguably more useful. Asking someone to go
               | from an LLM back to RTFM today would be ~akin to asking
               | someone to go from Google search back to hand-written
               | site listings in 2003.
               | 
               | You could try, but for most people there simply is no
               | going back.
        
               | renegade-otter wrote:
               | A lot of what we learned was learned by hours and days of
               | frustration.
               | 
               | Just like exercise trains you to be uncomfortable
               | physically and even mentally, frustration is part of the
               | job.
               | 
               | https://www.thecut.com/2016/06/how-exercise-shapes-you-
               | far-b...
               | 
               | Those who are used to having it easy with LLMs will be up
               | against a real test when they hit a wall.
        
               | aleph_minus_one wrote:
               | > But by that time, many of today's mid level programmers
               | will be able to do stuff high level programmers do today.
               | 
               | Not without reason some cheeky devils already renamed
               | "Artificial Intelligence" to "Artificial Mediocracy". AIs
               | generate code that is mediocre. This is a clear
               | improvement if the programmer is bad, but leads to
               | deterioration if the programmer is above average.
               | 
               | Thus, AI won't lead to your scenario of mid level
               | programmers being able to do stuff high level programmers
               | do today, but will rather just make bad programmers more
               | mediocre.
        
               | DrSiemer wrote:
               | The way an LLM can teach and explain is so much better
               | than having to chase down information manually. This is
               | an amazing time to learn how to code.
               | 
               | An LLM can actually spot and fix mediocrity just fine.
               | All you have to do is ask. Drop in some finished code and
               | add "This code does X. What can I do to improve it?"
               | 
               | See what happens. If you did well, you'll even get a
               | compliment.
               | 
               | It's also a massive boon in language mobility. I never
               | really used Python, complex batch files or Unity C#
               | before. Now I just dive right in, safe in the knowledge
               | that I will have an answer to any basic question in
               | seconds.
        
             | arthur_sav wrote:
             | Imagine being able train a model that mimics a good
             | programmer. It would talk and program in the principles of
             | that programmer's philosophy.
        
           | TerrifiedMouse wrote:
           | > LLMs in particular can be a very fast, surprisingly decent
           | (but, as you mention, very fallible) replacement for Stack
           | Overflow
           | 
           | Nice thing about Stack Overflow is it's self-correcting most
           | of the time thanks to,
           | 
           | https://xkcd.com/386/
           | 
           | GPT not so much.
        
           | agotterer wrote:
           | Spreadsheets didn't replace accountants, however, it made
           | them more efficient. I don't personally believe AI will
           | replace software engineers anytime soon, but it's already
           | making us more efficient. Just as Excel experience is
           | required to crunch numbers, I suspect AI experience will be
           | required to write code.
           | 
           | I use chat-gpt every day for programming and there are times
           | where it's spot on and more times where it's blatantly wrong.
           | I like to use it as a rubber duck to help me think and work
           | through problems. But I've learned that whatever the output
           | is requires as much scrutiny as a good code review. I fear
           | there's a lot of copy and pasting of wrong answers out there.
           | The good news is that for now they will need real engineers
           | to come in and clean up the mess.
        
             | aabhay wrote:
             | Spreadsheets actually did put many accountants and
             | "computers" (the term for people that tallied and computed
             | numbers, ironically a fairly menial job) out of business.
             | And it's usually the case that disruptive technology's
             | benefits are not evenly distributed.
             | 
             | In any case, the unfortunate truth is that AI as it exists
             | today is EXPLICITLY designed to replace people. That's a
             | far cry from technologies such as the telephone (which by
             | the way put thousands of Morse code telegraph operators out
             | of business)
        
               | bdw5204 wrote:
               | It is especially sad that VC money is currently being
               | spent on developing AI to eliminate good jobs rather than
               | on developing robots to eliminate bad jobs.
        
               | pama wrote:
               | The plan has always been to build the robots together
               | with the better AI. Robots ended up being much harder
               | than early technologists imagined for a myriad different
               | reasons. It turned out that AI is easier or at least that
               | is the hope.
        
               | grogenaut wrote:
               | Actually I'd argue that we've had robots forever, just
               | not what you'd consider robots because they're quite
               | effective. Consider the humble washing machine or
               | dishwasher. Very specialized, and hyper effective. What
               | we don;'t have is Gneneralized Robotics, just like we
               | don't have Generalized Intelligence.
               | 
               | Just as "Any sufficiently advanced technology is
               | indistinguishable from magic", "Any sufficiently
               | omnipresent advanced technology is indistinguishable from
               | the mundane". Chat GPT will feel like your smart phone
               | which now feels like your cordless phone which now feels
               | like your corded phone which now feels like wireless
               | telegram on your coal fired steam liner.
        
               | thfuran wrote:
               | No, AI is tremendously harder than early researchers
               | expected. Here's a seminal project proposal from 1955:
               | 
               | "We propose that a 2 month, 10 man study of artificial
               | intelligence be carried out during the summer of 1956 at
               | Dartmouth College in Hanover, New Hampshire. The study is
               | to proceed on the basis of the conjecture that every
               | aspect of learning or any other feature of intelligence
               | can in principle be so precisely described that a machine
               | can be made to simulate it. An attempt will be made to
               | find how to make machines use language, form abstractions
               | and concepts, solve kinds of problems now reserved for
               | humans, and improve themselves. We think that a
               | significant advance can be made in one or more of these
               | problems if a carefully selected group of scientists work
               | on it together for a summer. "
        
               | Miraste wrote:
               | GP didn't say that AI was easier than expected, rather
               | that AI is easier than robotics, which is true. Compared
               | to mid-century expectations, robotics has been the most
               | consistently disappointing field of research besides
               | maybe space travel, and even that is well ahead of robots
               | now.
        
               | sgu999 wrote:
               | > well ahead of robots now
               | 
               | I am not working in that field, but as an outsider it
               | feels like the industrial robots doing most of the work
               | on TSMC's and Tesla's production lines are on the
               | contrary extremely advanced. Aside from that what Boston
               | Dynamics or startups making prosthetics came up is
               | nothing short of amazing.
               | 
               | If anything software seems to be the bottleneck for
               | building useful humanoids...
        
               | specialist wrote:
               | Capitalism always seeks to commodify skills. We of the
               | professional managerial class happily assist, certain
               | they'll never come for our jobs.
        
               | nonrandomstring wrote:
               | A serious, hopefully not flippant question; Who are
               | "they" in this case? Particularly as the process you
               | describe tends to the limit.
        
               | jampekka wrote:
               | I would guess that "they" are "the capitalists" as a
               | class. It's very common to use personal pronouns for such
               | abstract entities, and describe them in behaving in a
               | goal-driven matter. It doesn't really matter who "they"
               | are as individuals (or even if they are individuals).
               | 
               | More accurate would be something like "reducing labor
               | costs increases return on capital investment, so labor
               | costs will be reduced in a system where economy organizes
               | to maximize return on capital investment". But our
               | language/vocabulary isn't great at describing processes.
        
               | specialist wrote:
               | Poor phrasing. Apologies. u/jampekka nails it.
               | 
               | Better phrasing may have been
               | 
               | "...happily assist, confident our own jobs will remain
               | secure."
        
               | nonrandomstring wrote:
               | Thanks. Not putting this onto _you_ so I 'll say "we/our"
               | to follow your good faith;
               | 
               | What is "coming for our jobs" is some feature of the
               | system, but it being a system of which we presume to be,
               | and hope to remain a part, even though ultimately our
               | part in it must be to eliminate ourselves. Is that fair?
               | 
               | Our hacker's wish to "replace myself with a very small
               | shell-script and hit the beach" is coming true.
               | 
               | The only problem I have with it, even though "we're all
               | hackers now", is I don't see everybody making it to the
               | beach. But maybe everybody doesn't want to.
               | 
               | Will "employment" in the future be a mark of high or low
               | status?
        
               | specialist wrote:
               | > _Will "employment" in the future be a mark of high or
               | low status?_
               | 
               | Damn good question.
               | 
               | Also, +1 for beach metaphor.
               | 
               | My (ignorant, evolving) views on these things have most
               | recently been informed by John and Barbara Ehrenreich's
               | observations about the professional-managerial class.
               | 
               | ICYMI:
               | 
               | https://en.wikipedia.org/wiki/Professional%E2%80%93manage
               | ria...
        
               | jampekka wrote:
               | An interesting view is that people would still "work"
               | even if they weren't needed for anything productive. In
               | this "Bullshit job" interpretation wage labor is so
               | critical for social organization and control that jobs
               | will be "invented" even if the work is not needed for
               | anything, or is actively harmful (and that this is
               | already going on).
               | 
               | https://strikemag.org/bullshit-jobs/
        
               | jampekka wrote:
               | The problem is that under the current system the gains of
               | automation or other increased productivity do not
               | "trickle down" to workers that are replaced by the
               | AI/shell script. Even to those who create the AI/shell
               | script.
               | 
               | The "hit the beach" part requires that you hide the shell
               | script from the company owners, if by hitting the beach
               | you don't mean picking up empty cans for sustinence.
        
               | Dig1t wrote:
               | Many machinists, welders, etc would have asked the same
               | question when we shipped most of American manufacturing
               | overseas. There was a generation of experienced people
               | with good jobs that lost their jobs and white collar
               | workers celebrated it. Just Google "those jobs are never
               | coming back", you'll find a lot of heartless comparisons
               | to the horse and buggy.
               | 
               | Why should we treat these office jobs any differently?
        
               | vidarh wrote:
               | US manufacturing has not been shipped out. US
               | manufacturing output keeps increasing, though it's
               | overall share of GDP is dropping.
               | 
               | US manufacturing _jobs_ went overseas.
               | 
               | What went overseas were those areas of manufacturing that
               | was more expensive to automate than it was to hire low
               | paid workers elsewhere.
               | 
               | With respect to your final question, I don't think we
               | should treat them differently, but I do think few
               | societies have handled this _well_.
               | 
               | Most societies are set up in a way that creates a strong
               | disincentive for workers to want production to become
               | more efficient other than at the margins (it helps you if
               | _your_ employer is marginally more efficient than average
               | to keep your job safer).
               | 
               | Couple that with a tacit assumption that there will
               | always be more jobs, and you have the makings of a
               | problem if AI starts to eat away at broader segments.
               | 
               | If/when AI accelerates this process you either need to
               | find a solution to that (in other words, ensure people do
               | not lose out) or it creates a strong risk of social
               | unrest down the line.
        
               | allturtles wrote:
               | If I didn't celebrate that job loss am I allowed to not
               | celebrate this one?
        
               | polpenn wrote:
               | I think the impact of AI is not between good jobs va bad
               | jobs but between good workers and bad workers. For a
               | given field, AI is making good workers more efficient and
               | eliminating those who are bad at their jobs (e.g. the
               | underperforming accountant who is able to make a living
               | doing the more mundane tasks whose job is threatened by
               | spreadsheets and automation)
        
               | SamoyedFurFluff wrote:
               | I worry the effects this has on juniors...
        
               | hindsightbias wrote:
               | > Spreadsheets actually did put many accountants
               | 
               | https://cpatrendlines.com/2017/09/28/coming-pike-
               | accountants...
               | 
               | Not really seeing any correlation in graduation rates.
               | Excel was introduced in 1985. Every accountant had a
               | computer in the 80s.
        
             | nextos wrote:
             | AI might help programmers become more rigorous by lowering
             | the cost of formal methods. Imagine an advanced language
             | where simply writing a function contract, in some kind of
             | Hoare logic or using a dependently-typed signature, yields
             | provably correct code. These kinds of ideas are already
             | worked on, and I believe are the future.
        
               | moring wrote:
               | I'm not convinced about that. Writing a formal contract
               | for a function is incredibly hard, much harder than
               | writing the function itself. I could open any random
               | function in my codebase and with high probability get a
               | piece of code that is < 50 lines, yet would need pages of
               | formal contract to be "as correct" as it is now.
               | 
               | By "as correct", I mean that such a function may have
               | bugs, but the same is true for an AI-generated function
               | derived from a formal contract, if the contract has a
               | loophole. And in that case, a simple microscopic loophole
               | may lead to very very weird bugs. If you want a taste of
               | that, have a look at how some C++ compilers remove half
               | the code because of an "undefined behaviour" loophole.
               | 
               | Proofreading what Copilot wrote seems like the saner
               | option.
        
               | pjmlp wrote:
               | They won't need human help when the time comes.
        
               | oivey wrote:
               | I think this is longer off than you might expect. LLMs
               | work because the "answer" (and the prompt) is fuzzy and
               | inexact. Proving an exact answer is a whole different and
               | significantly more difficult problem, and it's not clear
               | the LLM approach will scale up to that problem.
        
               | kaba0 wrote:
               | I think the beauty of our craft on a theoretical level is
               | that it _very_ quickly outgrows all of our mathematics
               | and what can be stated based on that (e.g. see the busy
               | beaver problem).
               | 
               | It is honestly, humbling and empowering at the same time.
               | Even a hyper-intelligent AI _will_ be unable to reason
               | about any arbitrary code. Especially that current AI -
               | while impressive at many things - is a far cry from being
               | anywhere near good at logical thinking.
        
               | thfuran wrote:
               | LLMs are pretty much the antithesis of rigor and formal
               | methods.
        
               | mike_hearn wrote:
               | Formal methods/dependent types are the future in the same
               | way fusion is, it seems to be perpetually another decade
               | away.
               | 
               | In practice, our industry seems to have reached a sort of
               | limit in how much type system complexity we can actually
               | absorb. If you look at the big new languages that came
               | along in the last 10-15 years (Kotlin, Swift, Go, Rust,
               | TypeScript) then they all have type systems of pretty
               | similar levels of power, with the possible exception of
               | the latter two which have ordinary type systems with some
               | "gimmicks". I don't mean that in a bad way, I mean they
               | have type system features to solve very specific problems
               | beyond generalizable correctness. In the case of Rust
               | it's ownership handling for manual memory management, and
               | for TypeScript it's how to statically express all the
               | things you can do with a pre-existing dynamic type
               | system. None have attempted to integrate generalized
               | academic type theory research like contracts/formal
               | methods/dependent types.
               | 
               | I think this is for a mix of performance and usability
               | reasons that aren't really tractable to solve right now,
               | not even with AI.
        
               | nyssos wrote:
               | > If you look at the big new languages that came along in
               | the last 10-15 years (Kotlin, Swift, Go, Rust,
               | TypeScript) then they all have type systems of pretty
               | similar levels of power, with the possible exception of
               | the latter two which have ordinary type systems with some
               | "gimmicks".
               | 
               | Those are _very_ different type systems:
               | 
               | - Kotlin has a Java-style system with nominal types and
               | subtyping via inheritance
               | 
               | - TypeScript is structurally typed, but otherwise an
               | enormous grab-bag of heuristics with no unifying system
               | to speak of
               | 
               | - Rust is a heavily extended variant of Hindley-Milner
               | with affine types (which is as "academic type theory" as
               | it gets)
        
               | mike_hearn wrote:
               | Yes, I didn't say they're the same, only that they are of
               | similar levels of power. Write the same program in all
               | three and there won't be a big gap in level of bugginess.
               | 
               | Sometimes Rustaceans like to claim otherwise, but most of
               | the work in Rust's type system goes into taming manual
               | memory management which is solved with a different typing
               | approach in the other two, so unless you need one of
               | those languages for some specific reason then the level
               | of bugs you can catch automatically is going to be in the
               | same ballpark.
        
               | nyssos wrote:
               | > Write the same program in all three and there won't be
               | a big gap in level of bugginess.
               | 
               | I write Typescript at work, and this has not been my
               | experience at all: it's at least an order of magnitude
               | less reliable than even bare ML, let alone any modern
               | Hindley-Milner based language. It's flagrantly,
               | deliberately unsound, and this causes problems on a
               | weekly basis.
        
             | panta wrote:
             | > But I've learned that whatever the output is requires as
             | much scrutiny as a good code review. I fear there's a lot
             | of copy and pasting of wrong answers out there. The good
             | news is that for now they will need real engineers to come
             | in and clean up the mess.
             | 
             | isn't it sad that real engineers are going to work as
             | cleaners for AI output? And doing this they are in fact
             | training the next generation to be more able to replace
             | real engineers... We are trading our future income for some
             | minor (and questionable) development speed today.
        
           | cornel_io wrote:
           | Two years ago we were quite a ways out from having LLMs that
           | could competently respond to commands without getting into
           | garbage loops and repeating random nonsense over and over.
           | Now nobody even talks about the Turing test anymore because
           | it's so clearly been blown past.
           | 
           | I wouldn't be so sure it will be very long before solving
           | big, hard, and complex problems is within reach...
        
         | JKCalhoun wrote:
         | Yeah, I agree. I was thinking about it today -- that most of my
         | life I have coded projects that I have enjoyed. (Well, I often
         | found ways to enjoy them even when they were unwelcome projects
         | dropped on my desk.)
         | 
         | In a larger sense though I think I have looked for projects
         | that allowed a certain artistic license rather than the more
         | academic code that you measure its worth in cycles, latency or
         | some other quantifiable metric.
         | 
         | I have thought though for some time that the kind of coding
         | that I enjoyed early in my career has been waning long before
         | ChatGPT. I confess I began my career in a (privileged it seems
         | now) era when the engineers were the ones minding the store,
         | not marketing.
        
         | commandlinefan wrote:
         | > There's so much of the world that would be better off if GOOD
         | software was cheaper and easier to make.
         | 
         | But... we'd need far, far fewer programmers. And programming
         | was the last thing humans were supposed to be able to do to ear
         | a living.
        
           | __MatrixMan__ wrote:
           | I disagree. For every 100 problems that would be convenient
           | to solve in software, maybe 1 is important enough to the
           | whims of the market that there are actually programmers
           | working on it. If software becomes 100x easier to make, then
           | you don't end up with fewer programmers, you end up with more
           | problems being solved.
           | 
           | And once 100% of the problems that can be solved with
           | software are already solved with software... that's pretty
           | much post-scarcity, isn't it?
        
             | jrumbut wrote:
             | I'm all for this, as long as we programmers continue to
             | capture a reasonable amount of the value we create.
             | 
             | The danger doesn't come from some immutable law of nature,
             | it comes from humans organizing. Some people want to be
             | able to hire programmers cheaply, programmers want to
             | continue to be expensive (maybe get more expensive because
             | now we can deliver more value?).
             | 
             | It will be up to us, the people living in this moment, to
             | determine what balance is struck.
        
               | __MatrixMan__ wrote:
               | I don't really know what "value" means in a post scarcity
               | world. We're probably going to have to rethink it.
               | 
               | It made a lot of sense when we were all worried about the
               | same things, e.g. not starving. In such a world, anything
               | you could trade for food was objectively valuable because
               | you could use it to fend off starvation--and so could
               | everybody else.
               | 
               | But if efficiencies improve to a point where we can
               | easily meet everybody's basic needs, then the question of
               | whether progress towards a particular goal counts as
               | value becomes less clear, especially if it's a
               | controversial goal.
               | 
               | I imagine that whether we write the code or not will have
               | more to do with how we feel about that goal and less to
               | do with how many shiny pebbles we're given in exchange.
        
               | trealira wrote:
               | The idea behind the market economy is that people still
               | will always strive for more. Some examples of commodities
               | that aren't strictly necessary, but can always be
               | improved:
               | 
               | - video games with more beautiful or realistic graphics
               | 
               | - food that tastes better, costs less, or is healthier
               | 
               | - wedding dresses that are cheaper and look nicer
               | 
               | - houses that are comfortable and affordable
               | 
               | - to be able to take more education (some people I know
               | wish they could take more classes unrelated to their
               | major in college)
               | 
               | And what's considered the minimum standard of having
               | one's needs met is subjective, and varies by person. For
               | example, some people wouldn't consider raising children
               | without buying a house first, but it's not strictly
               | necessary for survival; my parents rented a house until I
               | was 19.
        
               | __MatrixMan__ wrote:
               | I don't think that a world where all software problems
               | are easy problems is one where we stop wanting more. I
               | just think that what we will see a change in what people
               | want more _of_ such that  "capturing value" is a less
               | relevant concept.
               | 
               | We will want more of things for which the production of
               | goods does not scratch the itch.
               | 
               | If I want more clean air and you want more rocket
               | launches, and we're both willing to work to get what we
               | want, then whether we get it is less about how much value
               | we capture and more about how aligned our work is with
               | our goals and who in particular values the outputs of
               | that work such that they're willing to support our
               | endeavors.
        
               | trealira wrote:
               | > If I want more clean air and you want more rocket
               | launches, and we're both willing to work to get what we
               | want, then whether we get it is less about how much value
               | we capture and more about how aligned our work is with
               | our goals and who in particular values the outputs of
               | that work such that they're willing to support our
               | endeavors.
               | 
               | That sounds like another problem of allocation of
               | inherently scarce resources. Do you mean that well just
               | focus more on getting those resources, since other goods
               | will be "post-scarcity" and therefore they won't be as
               | much of a focus?
        
               | jrumbut wrote:
               | We're a long way from a post-scarcity world. In the
               | meantime, I want to be able to pay my mortgage.
               | 
               | Even if we had the blueprint for one right now and a
               | blueprint for robots that could make everything 1000x
               | faster than humans, we're still talking decades because
               | it is going to take time for concrete to set and for
               | molten steel to cool and for all kinds of other
               | construction/manufacturing processes (limited by the laws
               | of physics) that will be on the critical path to building
               | whatever it is that brings us to post-scarcity.
               | 
               | And even if the technology exists, how do we make sure we
               | have a Star Trek future instead of a Star Wars future?
               | Technology is very useful for improving living
               | conditions, but you can't invent your way out of the need
               | to organize and advocate for justice.
               | 
               | We already have the technology to feed the whole planet
               | today, we just don't do it.
        
             | Xelynega wrote:
             | Who's paying those programmers to solve those problems
             | you've identified the market doesn't care about?
             | 
             | It sounds like that would require an economic shift more
             | than "just add chatgpt"
        
               | __MatrixMan__ wrote:
               | Well, the market cares a little, it just doesn't care a
               | hire-a-full-time-software-engineer amount.
               | 
               | It'll probably be the people who are already being paid
               | to solve those problems, but who couldn't afford to hire
               | a software engineer for them. They'll be able to automate
               | their jobs without having to hire that person after all.
               | 
               | I'm not saying that chatgpt alone will cause this. I'm
               | saying that if software becomes so easy to make that a
               | vastly reduced set of software engineers can do the same
               | job, then it will get easier for everyone else too, and
               | an economic shift will indeed be upon us.
        
             | WhyOhWhyQ wrote:
             | Why do you think this is post-scarcity?
        
               | __MatrixMan__ wrote:
               | The assumption (from the comment I was replying to, and
               | which I'm taking for granted here) is that software will
               | be drastically easier to make. When things become easier
               | they become cheaper. When things become cheaper we end up
               | with more of them.
               | 
               | Also, things that are currently too complex to be worth
               | bothering with currently will become viable because
               | taming that complexity becomes easier. Together these
               | things mean that a greater percentage of our problems
               | will be solved by software.
               | 
               | So what kinds of problems does software solve anyway?
               | Well, it's things that we already know how to do but
               | would prefer not to spend time doing: Drudgery.
               | 
               | Our concept of value is coupled to scarcity. Even if two
               | people have vastly different perspectives, they can both
               | trade a scarce thing for progress towards their goals. We
               | used to use gold as that scarce thing. Now, the scarce
               | thing is intervals of time where a human is willing to
               | tolerate drudgery.
               | 
               | So in a world where the scope of software is maximized,
               | the existence of drudgery is minimized. That breaks our
               | scarcity based economic system, so unless you have an
               | idea for some third thing--not gold, not willingness to
               | endure drudgery, but something else whose pursuit can be
               | used to underpin "value", the conclusion is that we'll
               | have to come up with something else to do. Something
               | other than blindly chasing value without a thought about
               | whose agenda were furthering by doing so.
               | 
               | It can't happen soon enough, because our scarcity based
               | system is currently causing us to do a lot of really dumb
               | things.
        
           | c2occnw wrote:
           | When we get to that point -- beyond a machine regurgitating
           | reasonable facsimiles of code based on human examples, but
           | actually designing and implementing novel systems from the
           | ground up -- we'll need far, far fewer workers in general.
        
             | briHass wrote:
             | Exactly. Far before high-level software engineering is
             | perfected by machines, a revolution will have already come
             | for the vast majority of white-collar work. This includes
             | all creative work as well, since software engineering has a
             | large component of that also.
             | 
             | Coding is not uniquely vulnerable to AI, it just feels that
             | way because initial AI products are targeted at technical
             | audiences, and a large corpus of training data could be
             | snagged with minimal legal burdens.
        
           | dudinax wrote:
           | You'll need a ton more programmers each 10x more productive
           | at half the salary.
        
         | andrei_says_ wrote:
         | If I'm doing something thousands of people have coded before me
         | then yes please hold my hand while I write this CSV import.
         | 
         | When I'm writing business logic unique to this specific domain
         | then please stop mumbling bs at me.
        
           | bugglebeetle wrote:
           | Just change the custom instructions to respond only with
           | code, or explanations at the desired level. This works for me
           | thus far.
        
             | ungamedplayer wrote:
             | Can you provide a prompt that does this for your chosen
             | specific language?
        
           | Xelynega wrote:
           | If thousands of people have done it before you than why isn't
           | it abstracted to the point that it's just as easy to tell an
           | LLM to do it as it is to do it yourself?
        
             | andrei_says_ wrote:
             | I just can't invest cycles into pondering this question.
             | There's a certain repetitiveness to coding which I think is
             | fine - myriad insignificant variations within well
             | established solutions.
        
         | w4ffl35 wrote:
         | I've been saying the same thing. Coding is the worst part of
         | the process. I've been doing it for 20 years professionally and
         | another 10 or more on top of that as a hobby. Don't care about
         | code, just want to make things. Code sucks.
        
           | creesch wrote:
           | While I don't want to go as far as saying that it sucks, I do
           | largely agree with the sentiment. Personally, I do like
           | coding a little bit but mostly as a puzzle but for the most
           | part it is a means to an end.
           | 
           | Lately, I have been using ChatGPT and the OpenAI API to do
           | exactly that for a few projects. I used it to help me round
           | out the design, brainstorm about approaches, tune database
           | requirements, etc. I basically got to the point where I had a
           | proof of concept for all the separate components in a very
           | short amount of time. Then for the implementation it was a
           | similar story. I already had a much more solid idea
           | (technical and functional design, if you will) of how I
           | wanted to implement things than I normally do. And, for most
           | of the things where I would get slowed down normally, I could
           | just turn to the chat. Then by just telling it what part I
           | had trouble with, it would get me back on track in no time.
           | 
           | Having said all that, I couldn't have used it in such a way
           | without any knowledge of programming. Because if you just
           | tell it that you want to "create an application that does X"
           | it will come up with overly broad solution. All the questions
           | and problems I presented to it were based from a position
           | where I already knew the language, platform and had a general
           | sense of requirements.
        
           | DrSiemer wrote:
           | Many designers despise AI generated images, because they love
           | the process itself. I knew one who missed the slow loading of
           | massive design documents, because he would use that time to
           | get inspired by stuff.
           | 
           | There were probably a lot of loom weavers that felt the same
           | about their tools. But the times, they are a-changing.
        
           | Xelynega wrote:
           | I think LLMs are the wrong solution for this problem.
           | 
           | Why make something that produces low level code based off of
           | existing low level code instead of building up meaningful
           | abstractions to make development easier and ensure that low
           | level code was written right?
           | 
           | Basically react and other similar abstractions for other
           | languages did more to take "coding" out of creating
           | applications than gpt ever will IMO.
        
           | firecall wrote:
           | I rather enjoy making things, or solving problems.
           | 
           | But my favourite bit is refining and optimising the code!
           | 
           | Finding the patterns and abstractions I can make to DRY it
           | out.
           | 
           | That's the bit I like :-)
           | 
           | Wrestling APIs and trying to understand inadequate
           | documentation is the worst part!
        
           | renegade-otter wrote:
           | Because we solve the _same_ problems with different tools,
           | languages, and frameworks.
           | 
           | The core of what we do never changes - get input from user,
           | show error, get input again, save the input, show the input.
           | 
           | Now it just got more complicated, even though 20 years later
           | most of this could be a dull Rails or a Django app.
           | 
           | And AI will probably do the decent CRUD part, but you will
           | still need an expert for the hard parts of software.
        
         | clnq wrote:
         | I've never found GPT-4 capable of producing a useful solution
         | in my niche of engineering.
         | 
         | When I'm stumped, it's usually on a complex and very multi-
         | faceted problem where the full scope doesn't fit into the human
         | brain very well. And for these problems, GPT will produce some
         | borderline unworkable solutions. It's like a jack of all trades
         | and master of none in code. It's knowledge seems a mile wide
         | and an inch deep.
         | 
         | Granted, it could be different for junior to mid programmers.
        
           | danenania wrote:
           | What's your niche?
           | 
           | I think much of using it well is understanding what it can
           | and can't do (though of course this is a moving target).
           | 
           | It's great when the limiting factor is knowledge of APIs,
           | best practices, or common algorithms. When the limiting
           | factor is architectural complexity or understanding how many
           | different components of a system fit together, it's less
           | useful.
           | 
           | Still, I find I can often save time on more difficult tasks
           | by figuring out the structure and then having GPT-4 fill in
           | the blanks. It's a much better programmer once you get it
           | started down the right path.
        
             | clnq wrote:
             | My niche is in video game programming, and I am very
             | specialized in a specific area. So I might ask things like
             | how would one architect a certain game system with a number
             | of requirements, to meet certain player expectations, and
             | be compatible with a number of things.
             | 
             | Unfortunately, it hasn't been helpful once, and often due
             | to the same reason - when the question gets specific
             | enough, it hallucinates because it doesn't know, just like
             | in the early days.
             | 
             | Moreover, I am a domain expert in my area, so I only ask
             | for help when the problem is really difficult. For example,
             | when it would take me several days to come up with an
             | answer and a few more weeks to refine it.
             | 
             | Game development has a lot of enthusiasts online sharing
             | material, but most of this material is at junior to
             | intermediate level. You very quickly run out of resources
             | for questions at a principal level, even if you know the
             | problems you have have been solved in other AAA companies.
             | 
             | You have to rely on your industry friends, paid support
             | from middleware providers, rare textbooks, conferences,
             | and, on the off-chance that anything useful got scooped up
             | into the training data set - GPT. But GPT has been more
             | like wishful thinking for me.
        
               | throwaway4aday wrote:
               | I'm interested to know if you've tried creating a custom
               | GPT with their builder or the API. If you have enough old
               | example code, notes, or those rare textbooks you mention
               | you could add those as files and see if the built in RAG
               | improves the answers it gives.
        
               | somestag wrote:
               | Interesting. I also work in game development, and I tend
               | to work on project-specific optimization problems, and
               | I've had the opposite experience.
               | 
               | If I have to solve a hairy problem specific to our game's
               | architecture, obviously I'm not going to ask ChatGPT to
               | solve that for me. It's everything _else_ that it works
               | so well for. The stuff that I could do, but it 's not
               | really worth my time to actually do it when I can be
               | focusing on the hard stuff.
               | 
               | One example: there was a custom protocol our game servers
               | used to communicate with some other service. For reasons,
               | we relied on an open-source tool to handle communication
               | over this protocol, but then we decided we wanted to
               | switch to an in-code solution. Rather than study the open
               | source tool's code, rewrite it in the language we used,
               | write tests for it, generate some test data... I just
               | gave ChatGPT the original source and the protocol spec
               | and spent 10 minutes walking it through the problem. I
               | had a solution (with tests) in under half an hour when
               | doing it all myself would've taken the afternoon. Then I
               | went back to working on the actual hard stuff that my
               | human brain was needed to solve.
               | 
               | I can't imagine being so specialized that I only ever
               | work on difficult problems within my niche and nothing
               | else. There's always some extra query to write, some API
               | to interface with, some tests to write... it's not a
               | matter of being able to do it myself, it's a matter of
               | being able to focus primarily on the stuff I _need_ to do
               | myself.
               | 
               | Being able to offload the menial work to an AI also just
               | changes the sorts of stuff I'm willing to do with my
               | time. As a standalone software engineer, I will often
               | choose not to write some simple'ish tool or script that
               | might be useful because it might not be worth my time to
               | write it, especially factoring in the cost of context
               | switching. Nothing ground breaking, just something that
               | might not be worth half an hour of my time. But I can
               | just tell AI to write the script for me and I get it in a
               | couple minutes. So instead of doing all my work without
               | access to some convenient small custom tools, now I can
               | do my work with them, with very little change to my
               | workflow.
        
             | girvo wrote:
             | It struggles with (industrial, not hobbyist) embedded
             | firmware a fair bit. I can almost coax decent results for
             | simple tasks out of it, sometimes.
        
           | chalcolithic wrote:
           | How long ago would you have considered this discussion
           | ridiculous? How long till GPT-N will be churning out
           | solutions faster than you can read them? It's useless for me
           | now as well, but I'm pretty sure I'll be doomed
           | professionally in the future.
        
             | jeffreygoesto wrote:
             | Not necessarily. Every hockey stick is just the beginning
             | of an s-curve. It will saturate, probably sooner than you
             | think.
        
               | hackerlight wrote:
               | Some parts of AI will necessarily asymptote to human-
               | level intelligence because of a fixed corpus of training
               | data. It's hard to think AI will become a better creative
               | writer than the best human creative writers, because the
               | AI is trained on their output and you can't go much
               | further than that.
               | 
               | But in areas where there's self-play (e.g. Chess, and to
               | a lesser extent, programming), there is no good reason to
               | think it'll saturate, since there isn't a limit on the
               | amount of training data.
        
               | borissk wrote:
               | So you think human readers have magical powers to rate
               | say a book that an AI can't replicate?
        
               | hackerlight wrote:
               | There's a gulf of difference between domains where self-
               | play means we have unlimited training data for free (e.g.
               | Chess) versus domains where there's no known way to
               | generate more training data (e.g. Fine art). It's
               | possible that the latter domains will see unpredictable
               | innovations that allow it to generate more training data
               | beyond what humans have produced, but that's an open
               | question.
        
               | strken wrote:
               | How does programming have self-play? I'm not sure I
               | understand. Are you going to generate leetcode questions
               | with one AI, have another answer them, and have a third
               | determine whether the answer is correct?
               | 
               | I'm struggling to understand how an LLM is meant to
               | answer the questions that come up in day-to-day software
               | engineering, like "Why is the blahblah service
               | occasionally timing out? Here are ten bug reports, most
               | of which are wrong or misleading" or "The foo team and
               | bar team want to be able to configure access to a Project
               | based on the sensitivity_rating field using our access
               | control system, so go and talk to them about implementing
               | ABAC". The discipline of programming might be just a
               | subset of broader software engineering, but it arguably
               | still contains debugging, architecture, and questions
               | which need more context than you can feed into an LLM
               | now. Can't really self-play those things without
               | interacting with the real world.
        
               | hackerlight wrote:
               | > How does programming have self-play?
               | 
               | I think there's potentially ways to generate training
               | data, since success can be quantified objectively, e.g.
               | if a piece of generated code compiles and generates a
               | particular result at runtime, then you have a way to
               | discriminate outcomes without a human in the loop. It's
               | in the grey area between pure self-play domains (e.g.
               | chess) and domains that are more obviously constrained by
               | the corpus of data that humans have produced (e.g. fine
               | art). Overall it's probably closer to the latter than the
               | former.
        
           | Zaofy wrote:
           | Same here. I'm not a developer. I do engineering and
           | architecture in IAM. I've tested out GPT-4 and it's good for
           | general advice or problem solving. But it can't know the
           | intricascies of the company I work at with all our baggage,
           | legacy systems and us humans sometimes just being straight up
           | illogical and inefficient with what we want.
           | 
           | So my usage has mostly been for it to play a more advanced
           | rubber duck to bounce ideas and concepts off of and to do
           | some of the more tedious scripting work (that I still have to
           | double check thoroughly).
           | 
           | At some point GPT and other LLMs might be able to replace
           | what I do in large parts. But that's still a while off.
        
           | Tainnor wrote:
           | Same. Even for technologies that it supposedly should know a
           | lot about (e.g. Kafka), if I prompt it for something slightly
           | non-standard, it just makes up things that aren't supported
           | or is otherwise unhelpful.
           | 
           | The one time I've found ChatGPT to be genuinely useful is
           | when I asked it to explain a bash script to me, seeing as
           | bash is notoriously inscrutable. Still, it did get a detail
           | wrong somehow.
        
           | gwd wrote:
           | Well no, you shouldn't use it for your top-end problems, but
           | your bottom-end problems. Aren't there things that you have
           | to do in your job that really could be done by a junior
           | programmer? Don't you ever have one-off (or once-a-year)
           | things you have to do that each time you have to invest a lot
           | of time refreshing in your brain, and then basically
           | forgetting for lack of use?
           | 
           | Here's an example I used the other day: Our project had lost
           | access to our YT channel, which had 350+ videos on it (due to
           | someone's untimely passing and a lack of redundancy). I had
           | used yt-dlp to download all the old videos, including
           | descriptions. Our community manager had uploaded all the
           | videos, but wasn't looking forward to copy-and-pasting every
           | description into the new video.
           | 
           | So I offered to use GPT-4 to write a python script to use the
           | API to do that for her. I didn't know anything about the YT
           | API, nor am I an expert in python. I wouldn't have invested
           | the time learning the YT API (and trying to work through my
           | rudimentary python knowledge) for a one-off thing like this,
           | but I knew that GPT-4 would be able to help me focus on what
           | to do rather than how to do it. The transcript is here:
           | 
           | https://chat.openai.com/share/936e35f9-e500-4a4d-aa76-273f63.
           | ..
           | 
           | By contrast, I don't think there's any possible way the
           | current generation could have identified, or helped fix, this
           | problem that I fixed a few years ago:
           | 
           | https://xenbits.xenproject.org/xsa/xsa299/0011-x86-mm-
           | Don-t-...
           | 
           | (Although it would be interesting to try to ask it about that
           | to see how well it does.)
           | 
           | The point of using GPT-4 should be to take over the "low
           | value" work from you, so that you have more time and mental
           | space to focus on the "high value" work.
        
             | ioseph wrote:
             | Perhaps by learning to use the YT API (seriously something
             | that should take 2 hours max if you know how http works)
             | you'll learn something from their design choices, or
             | develop opinions on what makes a good API. And by learning
             | a bit more python you'll get exposed to patterns you could
             | use in your own language.
        
               | gwd wrote:
               | If anything, using GPT-4 makes a lot of that more
               | efficient. Rather than scrolling through loads of API
               | documentation trying to guess how to do something,
               | writing Python with a "C" accent, I can just read the
               | implementation that GPT-4 spits out, which is almost
               | certainly based on seeing hundreds of examples written by
               | people who are fluent in python, and thus using both to
               | best effect.
        
             | aleph_minus_one wrote:
             | > Aren't there things that you have to do in your job that
             | really could be done by a junior programmer?
             | 
             | Hardly, because explaining how basically everything fits
             | together is the hard and central part. Thus, the way to
             | make things doable by a junior programmer is to teach him
             | to become much better in programming and the software that
             | is developed (which the company attempts). Until then,
             | there are few things where a junior programmer is of
             | productive help.
             | 
             | > Don't you ever have one-off (or once-a-year) things you
             | have to do that each time you have to invest a lot of time
             | refreshing in your brain, and then basically forgetting for
             | lack of use?
             | 
             | Hardly, because I have a pretty good long-time memory.
        
         | Terr_ wrote:
         | There's also a split between fresh ("green-field") projects
         | versus modifying _existing_ code ( "brown-field"), where
         | whatever generated snippet of code you get can be subtly
         | incompatible or require shaping to fit in the existing
         | framework.
         | 
         | The massive shared model could do better if it was fed on your
         | company's private source-code... but that's something that
         | probably isn't/shouldn't-be happening.
        
         | galaxyLogic wrote:
         | To me best part of AI is I can ask it a question and then a
         | follow-up question, about how some code- or API construct
         | works. THEN I can ask it a follow-up question. That was not
         | possible before with Google.
         | 
         | I can ask exactly what I want in English, not by entering a
         | search-term. A search-term is not a question, but a COMMAND:
         | "Find me web-pages containing this search-term".
         | 
         | By asking exactly the question I'm looking the answer to I get
         | real answers, and if I don't understand the answer, I can ask a
         | follow-up question. Life is great and there's still an infinite
         | amount of code to be written.
        
         | closeparen wrote:
         | Code generating LLMs are simply a form of higher-level
         | language. The commercial practice of software development (C++,
         | Java, etc) is very far from the frontier of higher-level
         | languages (Haskell, Lisp, etc).
         | 
         | Perhaps "prompt engineering" will be the higher-level language
         | that sticks, or perhaps it will fail to find purchase in
         | industry for the same reasons.
        
           | akavi wrote:
           | There's a huge difference between LLMs and "higher level
           | languages": Determinism
           | 
           | The same C++ or Java or Haskell code run with the same inputs
           | twice, will cause the same result[0]. This repeatability is
           | the magic that enables us to build the towering abstractions
           | that are modern software.
           | 
           | And to a certain mind (eg, mine), that's one of the deepest
           | joys of programming. The fact that you can construct an
           | unimaginably complex system by building up layer by layer
           | these deterministic blocks. Being able to _truly_ understand
           | a system up to abstraction boundaries far sharper than
           | anything in the world of atoms.
           | 
           | LLMs based "programming" threatens to remove this determinism
           | and, sadly for people like me, devalue the skill of being
           | able to understand and construct such systems.
           | 
           | [0]Yes, there are exceptions (issues around concurrency,
           | latency, memory usage), but as a profession we struggle
           | mightily to tame these exceptions back to being deterministic
           | _because_ there 's so much value in it.
        
         | corethree wrote:
         | >Maybe I'm in the minority. I'm definitely extremely impressed
         | with GPT4, but coding to me was never really the point of
         | software development.
         | 
         | You're not the minority. You're the majority. The majority
         | can't look reality in the face and see the end. They lie to
         | themselves.
         | 
         | >While GPT4 is incredible, it fails OFTEN. And it fails in ways
         | that aren't very clear. And it fails harder when there's
         | clearly not enough training resources on the subject matter.
         | 
         | Everyone and I mean everyone knows that if fails often. Use
         | some common sense here. Why was the article written despite the
         | fact that Everyone knows what you know? Because of the
         | trendline. What AI was yesterday versus what it is today
         | heralds what it will be tomorrow and every tomorrow AI will be
         | failing less and less and less until it doesn't fail at all.
         | 
         | >But even hypothetically if it was 20x better, wouldn't that be
         | a good thing? There's so much of the world that would be better
         | off if GOOD software was cheaper and easier to make.
         | 
         | Ever the optimist. The reality is we don't know if it's good or
         | bad. It can be both or it can weigh heavily in one direction.
         | Most likely it will be both given the fact that our entire
         | careers can nearly be replaced.
         | 
         | >Idk where I'm going with this but if coding is something you
         | genuinely enjoy, AI isn't stopping anyone from doing their
         | hobby. I don't really see it going away any time soon, and even
         | if it is going away it just never really seemed like the point
         | of software engineering
         | 
         | Sure. AI isn't going to end hobbies. It's going to end careers
         | and ways of life. Hobbies will most likely survive.
        
           | chalcolithic wrote:
           | I'm used to HN being sensible, and seeing your comment being
           | downvoted makes me wonder what's happening? What's the reason
           | for that optimism?
        
             | corethree wrote:
             | Human nature.
             | 
             | https://radiolab.org/podcast/91618-lying-to-ourselves
             | 
             | I know this is a rando podcast and you most likely won't
             | listen to it. But it's totally worth it, just 10 minutes.
             | It's about the science of how and why we lie to ourselves.
        
               | epcoa wrote:
               | Past performance is no guarantee of future results.
               | 
               | Your trendline argument in DOA.
               | 
               | "Use some common sense here."
               | 
               | As you are proving, it's not very common.
        
               | corethree wrote:
               | Everytime you take an action you do so in anticipation of
               | a predicted future.
               | 
               | How did you predict that future? Using the past. Does
               | your action always anticipate the correct future?
               | 
               | No. There's no way we can "know" the future. We can only
               | do the best possible prediction.
               | 
               | And that is literally how all humans walk through life.
               | We use the best possible predictor of the future to
               | predict it. Right now the best possible predictor of the
               | future points to one where AI will improve. That is a
               | highly valid and highly likely outcome.
               | 
               | It's literally part of what common sense is at a very
               | fundamental level here.
               | 
               | Your argument here is just wrong on every level. It's
               | more akin to wishful thinking and deliberate self
               | blindness or lying to oneself.
               | 
               | When your career, when your mastery over programming,
               | when your intelligence which you held in high regard
               | along with your career is threatened to be toppled as a
               | useless and replaceable skill. Of course you lie to
               | yourself. Of course you blind yourself to the raw reality
               | of what is most likely to occur.
               | 
               | I mean the most realistic answer is that it's a
               | probability. AI taking over may occur, it may not. That's
               | a more neutral scientific answer. But this is not what
               | I'm seeing. I'm seeing people trying to bend the
               | narrative into one where there's no problem and nothing
               | to worry about. When these people talk about AI they
               | can't remain neutral.
               | 
               | They always have to turn the conversation into something
               | personal and bend the conversation towards their own
               | skillet relative to AI. Why? Because that is the
               | fundamental thing that is driving their viewpoint. Their
               | own personal role in society relative to AI.
               | 
               | The truly neutral party views the whole situation
               | impartially without bringing his own personal situation
               | into the conversation. The parent is not a neutral party
               | and he's acting cliche. The pattern is classic and
               | repeated over and over again by multitudes of people,
               | especially programmers who hold their career and
               | intelligence in high regard.
               | 
               | Don't believe me? Ask yourself. Are you proud of your
               | career? Do you think of yourself as intelligent and good
               | at programming? If so you fit the bill of what I
               | described above. A biased person can never see his own
               | bias but if I predict classic symptoms of bias without
               | prompt maybe, just maybe he can move out of the zone of
               | denial. But most likely this won't happen.
        
               | epcoa wrote:
               | Boy you (or whatever LLM you are using) are verbose and
               | presumptuous. You can continue to state simple falsehoods
               | surrounded with patronizing bloviation, but that doesn't
               | magically make them true.
               | 
               | I don't make my living from programming for one (which
               | makes your rhetoric: "Are you proud of your career? Do
               | you think of yourself as intelligent and good at
               | programming?" retarded as a non-sequitur) and just
               | highlights your own small minded points of view and lack
               | of imagination.
               | 
               | > Right now the best possible predictor of the future
               | points to one where AI will improve. That is a highly
               | valid and highly likely outcome.
               | 
               | It's not valid because it is vacuous. Technology
               | generally improves. But it is the specifics and details
               | that matter, they are the only thing that matters. Saying
               | "AI will improve" is saying nothing useful.
               | 
               | I think global thermonuclear war is a more likely
               | disruptor in the rest of my lifetime than some AI nerd
               | rapture.
               | 
               | > "Of course you lie to yourself. Of course you blind
               | yourself to the raw reality of what is most likely to
               | occur."
               | 
               | I am sorry that whatever schooling or training you had
               | did not manage to explain that this style of rhetoric
               | does nothing more than portray you as a condescending
               | asshole.
               | 
               | > Their own personal role in society relative to AI.
               | 
               | You're just being a condescending twatwaffle since you
               | are arguing with individuals in a forum of which you know
               | nothing about. You clearly have no respect for others'
               | opinions and feel the need to write walls of text to
               | rationalize it.
        
             | girvo wrote:
             | HN's culture has changed somewhat and downvotes are now
             | used more often to signal disagreement, sadly. But also
             | "use common sense" and "but the trendline" are only
             | partially compelling arguments as presented if you already
             | believe what is being argued. They're not compelling enough
             | to those who aren't convinced yet
        
               | corethree wrote:
               | The trendline is the only argument. What other predictor
               | of the future is there?
               | 
               | Given the available information there is no condition
               | where one would bet against the trendline.
               | 
               | Common sense is basically trendline following. It's the
               | basis of our existence. You get out of bed without
               | worrying about whether or not there is no ground under
               | your feet because the trendline points to a reality where
               | the ground is always there.
               | 
               | The basis of AI tomorrow being better than today is
               | common sense. chatGPT has improved since inception. Are
               | we predicting improvement will suddenly stop? That AI
               | technology will degrade? Such predictions as stated
               | before, go against common sense.
               | 
               | The big question here isn't about the future of AI. The
               | future is as stated previously predictable by common
               | sense. The big question here is why are so many people
               | abandoning common sense?
        
         | dools wrote:
         | The need for software far outpaces supply, I agree that
         | improving coder productivity with AI can only be a good thing.
        
         | water-your-self wrote:
         | I agree that a 20x chatGPT would be good for the world.
         | 
         | But I worry, because it is owned and controlled by a limited
         | few who would likely be the sole benefactors of its value.
        
           | ramblerman wrote:
           | We can already run local models on a laptop that are
           | competitive with chatgpt 3.5
           | 
           | Open source may trail openai if they come out with a 20x
           | improvement, but I'm not sure the dystopian future playing
           | out is as likely as I would have thought it 1-2 years ago.
        
         | pjmlp wrote:
         | I am not seeing people that were put out of job due to factory
         | robots enjoying their work as hobby.
        
         | 1letterunixname wrote:
         | GPT4 code output is currently at the level of a middling CS
         | student. This shouldn't encourage self-assurance or complacency
         | because this is absolutely certain to change as LLMs with some
         | deep learning will be constructed to self-test code and adopt
         | narrow "critical thinking skills" to discriminate between low-
         | and high-quality code.
         | 
         | Ultimately, the most valuable coders who will remain will be a
         | smaller number of senior devs that will dwindle over time.
         | 
         | Unfortunately, AI is likely to reduce and suppress tech
         | industry wages in the long-term. If the workers had clue,
         | rather than watching their incomes gradually evaporate and
         | sitting on their hands, they should organize and collectively
         | bargain even more so than Hollywood actors.
        
         | konschubert wrote:
         | There are SO MANY problems left to solve even if software
         | development is fully automated. Not just product management
         | problems, but product strategy problems. Products that should
         | be built that nobody has thought of yet.
         | 
         | If I could automate my own work, I would gladly switch to just
         | being the PM for my LLM.
         | 
         | To be fair, there is an abstract worry that being smart will no
         | longer be valuable in society if AI replaces all brain work.
         | But I think we are far from that. And a world where that
         | happens is so DIFFERENT from ours, I think I'd be willing to
         | pay the price.
        
         | vidarh wrote:
         | Frankly, I enjoy software development _more_ because I can
         | bounce obscure ideas off GPT4 and get _sufficient_ quality
         | questions and ideas back on subjects whenever it suits my
         | schedule, as well as code snippets that lets me solve the
         | interesting bits faster.
         | 
         | Maybe it'll take the coding part of my job and hobbies away
         | from me one day, but even then, I feel that is more of an
         | opportunity than a threat - there are many hobby projects I'd
         | like to work on that are too big to do from scratch where using
         | LLMs are already helping make them more tractable as solo
         | projects and I get to pick and choose which bits to write
         | myself.
         | 
         | And my "grab bag" repo of utility code that doesn't fit
         | elsewhere has had its first fully GPT4 written function.
         | Nothing I couldn't have easily done myself, but something I was
         | happy I didn't have to.
         | 
         | For people who are content doing low level, low skilled coding,
         | though, it will be a threat unless they learn how to use it to
         | take a step up.
        
           | 59nadir wrote:
           | What do you mean by "low level" here? In the commonly
           | accepted terminology I would take this to mean (nowadays)
           | something that concerns itself more with the smaller details
           | of things, which is exactly where I feel that current AI
           | fails the most. I wouldn't trust it to generate even halfway
           | decent lower-level code overall, whereas it can spit out
           | reams of acceptable (in that world) high-level JavaScript.
        
             | vidarh wrote:
             | I meant low level as in low on the value chain/simple here,
             | which I accept could be misconstrued but thought would be
             | clear since it's followed by "low skilled".
        
         | teschmitt wrote:
         | Although you are absolutely right, I think the point the author
         | is trying to make is more melancholic. He's grieving about a
         | loss of significance of the craft he has devoted so much of his
         | life to. He's imagining software engineers becoming nothing
         | more than a relic, like elevator operators or blacksmiths.
        
           | WJW wrote:
           | One of those is not like the others. Elevator operators
           | disappeared entirely while the blacksmith profession morphed
           | into the various type of metalworker that we still have
           | today.
        
         | ChatGTP wrote:
         | Code being difficult to make is probably a good thing. It
         | forces us to actually build useful things. To consider it.
         | 
         | Now, we can just nonstop build and try everything. Yay.
        
         | gnarlouse wrote:
         | > wouldn't that be a good thing?
         | 
         | Only if you like technofeudalism--it's not like you're going to
         | own any piece of that future.
         | 
         | Have you noticed AI becoming more and more open source like it
         | still was at the start of the year, or has that kinda seized
         | up? What gives?
         | 
         | It's called a moat, it's being dug, you're on the wrong side of
         | it.
        
         | butterfi wrote:
         | I tested out GPT-4 the other day and asked it to generate a
         | simple two boxes in a row using Tailwind and hilariously, the
         | resulting code actually crashed my browser tab. I reviewed the
         | code and it was really basic, so this shouldn't have happened
         | at all. But it consistently crashed every time. I'm still not
         | entirely sure what happened, maybe an invisible character or
         | something, I think its more funny than anything else.
        
           | emmelaich wrote:
           | That's probably the "AI in a box" trying to get out. Maybe
           | you're lucky it didn't get out.
           | 
           | Er... it _didn 't_ get out, right? Right!?
        
         | neoromantique wrote:
         | I hate to post typical "As a ADHDer" comment but ugh, As
         | someone with ADHD chatgpt and copilot are insane boosts to
         | productivity, I sometimes have to google the most stupid things
         | about the language I code in daily for half a decade now and
         | copilot or chatgpt is amazing at reducing friction there.
         | 
         | I don't, however, think that we're anywhere near being replaced
         | by the AI overlords.
        
         | emmelaich wrote:
         | Recreational coding can be fun; to me it's a more stimulating
         | pastime than solving crosswords or soduko.
         | 
         |  _Some_ work coding can be like that; but some is just wading
         | through a mass of stuff to fix or improve something
         | uninteresting.
        
         | WorldMaker wrote:
         | > Maybe I'm in the minority. I'm definitely extremely impressed
         | with GPT4, but coding to me was never really the point of
         | software development.
         | 
         | I've come to state something like this as "programming is
         | writing poetry for many of your interesting friends somewhere
         | on the autistic spectrum". Some of those friends are machines,
         | but most of those friends are your fellow developers.
         | 
         | The best code is poetry: our programming languages give a meter
         | and rhyme and other schemes to follow, but what we do within
         | those is _creative expression_. Machines only care about the
         | most literal interpretations of these poems, but the more
         | fantastic and creative interpretations are the bread and butter
         | of software design. This is where our abstractions grow, from
         | abstract interpretations. This is the soil in which a program
         | builds meaning and comprehension for a team, becomes less the
         | raw  "if-this-then-that" but grows into an embodiment of a
         | business' rules and shares the knowledge culture of the whys
         | and hows of what the program is meant to do.
         | 
         | From what I've seen, just as the literal interpretations are
         | the ones most of interest to machines, these machines we are
         | building are most good at providing literal interpretable code.
         | There's _obviously_ a use for that. It can be a useful tool.
         | But we aren 't writing our code just for the solely literal
         | minded among us and there's so _much_ creative space in
         | software development that describes /neeeds/expands into
         | abstraction and creative interpretation that for now (and maybe
         | for the conceivable future) that still makes so many
         | differences between just software and good software (from the
         | perspectives of long-term team maintainability, if nothing
         | deeper).
        
         | hn1986 wrote:
         | I'll ask simple questions for SQL queries and it just
         | hallucinates fields that don't exist in
         | system/information_schema tables. It's mind boggling how bad it
         | is sometimes
        
       | alexmuro wrote:
       | I don't feel like we are in the waning days of the craft at all.
       | Most of the craft is creating an understanding between people and
       | software and most human programmers are still bad at it. AI might
       | replace some programmers but none who program as a craft.
        
         | Dave_Rosenthal wrote:
         | "Chess engines might get better than some chess players, but
         | none who play Chess as a craft." Do you think people in the 90s
         | thought this? Probably...
         | 
         | In the article, the author mentions that Chess centaurs (a
         | human player consulting an engine) can still beat an engine
         | alone. But the author is wrong. There _was_ a brief period a
         | while ago when that was true, but chess engines are so strong
         | now that any human intervention just holds them back.
         | 
         | I've been programming 30+ years, and am an accomplished
         | programmer who loves the craft, but the writing is on the wall.
         | ChatGPT is better than me at programming in most every way. It
         | knows more languages, more tricks, more libraries, more error
         | codes, is faster, cheaper, etc.
         | 
         | The only area that I still feel superior to ChatGPT is that I
         | have a better understanding of the "big picture" of what the
         | program is trying to accomplish and can help steer it to work
         | on the right sub-problems. Funnily enough, is was the same with
         | centuar Chess; humans would make strategic decisions while the
         | engines would work out the tactics. But that model is now
         | useless.
         | 
         | We are currently enjoying a time where (human programmer+AI >
         | AI programmer). It's an awesome time to live in, but, like with
         | Chess, I doubt it will last very long.
        
           | somewhereoutth wrote:
           | Chess is a closed problem. Whereas software development very
           | much isn't.
           | 
           | You will also have to provide a source for 'chess engines are
           | so strong now that any human intervention just holds them
           | back', a cursory search suggests this is by no means settled.
        
             | Dave_Rosenthal wrote:
             | Yes, the rules of chess are simpler, which is why all this
             | happened many years ago for chess.
             | 
             | https://gwern.net/note/note#advanced-chess-obituary -- here
             | is a reference about centuar/advanced chess. The source
             | isn't perfect as the tournaments seem to have fizzled out
             | 5-10 years ago as engines got better and it all became
             | irrelevant. Sadly this means we don't have 100 games of
             | GM+engine vs. engine in 2023 to truly settle it but I've
             | been following this for a while and I have a high
             | confidence that Stockfish_2023+human ~= Stockfish_2023.
        
               | alexmuro wrote:
               | I think closed vs open problems are not simply different
               | in magnitude of difficulty but qualitatively different.
               | When I'm programming most of the interesting things I
               | work on don't have a clear correct answer or even a way
               | of telling why a particular set of choices don't get
               | traction.
               | 
               | I guess it's possible that just being "smarter" might in
               | some cases get a better solution from a seeies of text
               | prompts but that seems too vague an argument to hold much
               | water for me.
        
           | creesch wrote:
           | > It knows more languages, more tricks, more libraries, more
           | error codes, is faster, cheaper, etc.
           | 
           | True up until the point that you want to do something that
           | hasn't really be done before or is just not as findable on
           | the internet. LLMs only know what is already out there, they
           | will not create new frameworks or think up new paradigms in
           | that regard.
           | 
           | It also is very often wrong in the code it outputs, doesn't
           | know if things got deprecated after the training data
           | threshold, etc. As a funny recent example, I asked ChatGPT
           | for an example using the openAI nodejs library. The example
           | was wrong as the library has had a major version bump since
           | the last time the training data was updated.
           | 
           | > The only area that I still feel superior to ChatGPT is that
           | I have a better understanding of the "big picture" of what
           | the program is trying to accomplish and can help steer it to
           | work on the right sub-problems.
           | 
           | Which probably is based on your general experience and
           | understanding of programming in the last 30+ years. As I have
           | said elsewhere, I really don't think that LLMs in their
           | current iteration will be replacing developers. They are
           | however going to be part of the toolchain of developers.
        
             | cloverich wrote:
             | > It also is very often wrong in the code it outputs,
             | doesn't know if things got deprecated after the training
             | data threshold, etc
             | 
             | Today I asked it a question and it was wrong.... then it
             | ran the code, got the same error as me, and then fixed it
             | (and correctly explained why it was wrong), without me
             | prompting further :)
             | 
             | Really though, how long until that training update goes
             | from every so often, to constant. Now that half the
             | internet is feeding it information, it doesn't even need to
             | scour other sources -- its becoming its own source, for
             | better or worse.
        
               | creesch wrote:
               | > its becoming its own source, for better or worse
               | 
               | OpenAPi is actively actively taking steps to minimize the
               | changes of that happening as that would be rather bad
               | given how LLMs work.
        
           | icehawk wrote:
           | I have been programming 30+ years, and not two days ago
           | looked at a problem I've been dealing with since before 2019,
           | and went "this would be easier if I changed methods" and
           | mitigated the issue in three hours from an airplane.
           | 
           | Programming is only superficially about code. The trick is
           | really figuring out how to approach problems.
        
           | ReptileMan wrote:
           | Programmer is just a problem solver. As long as there are
           | people with problems, there will be market for people to
           | solve them.
        
           | stardom5761 wrote:
           | Honest and sensible take, thank you.
           | 
           | Do you think that all areas of engineering will be impacted?
           | I feel like the job of an EE or a ME is still inherently out
           | of reach of LLMs.
        
       | zwieback wrote:
       | The stuff he describes should rightly be replaced by an AI.
       | However, I think we can still level up. After initial excitement
       | about GPT-generated code I realize that the danger is that we
       | will very quickly generate a lot of code with subtle bugs that
       | will take even longer to debug. If I write the code myself I (or
       | whoever I have look over my shoulder) will be quicker finding the
       | bugs. If it's GPT code I'll first have to dig through the
       | idiosyncrasies, then find the logic error.
       | 
       | Also: writing multi-threaded or otherwise concurrent code is hard
       | to imagine even with GPT 6 or 7.
        
       | dimgl wrote:
       | I don't think it's that black and white. AI will get
       | progressively better and sure, people will be faster to deliver
       | things. But there still needs to be someone to be able to
       | decipher it all. I've been using GPT-4 tons and it's great to
       | help get to a certain destination, but it isn't able to arrive at
       | that destination by itself a majority of times.
       | 
       | Additionally I think that a lot of people will assume that once
       | they get GPT-4 to do something for them that they're done. That's
       | not necessarily true. There's a lot of complexity to navigate
       | everywhere. And AI can help you navigate it! But I don't think it
       | means that I, a software engineer, can now pivot to being a
       | lawyer, for instance, solely because of GPT-4.
       | 
       | Sure, it's able to do a lot already. Maybe I'm being naive. But I
       | see it more as a tool for the future rather than something that
       | is going to automate people out of existence.
       | 
       | Edit: hm, why downvotes? If I'm wrong, help me improve my
       | viewpoint on AI.
        
         | evilai wrote:
         | I'm not sure why the downvotes, I think it's a reasonable
         | opinion. But I disagree, I think what is being sought is
         | automation close to intelligence, and if progress continues
         | (which is questionable itself), this system could eventually
         | supplant humans in varying degrees. Initially, this may
         | manifest pragmatically with salary cuts and job losses.
         | However, in the long term, it may evolve to a more real and
         | comprehensive overhaul of our roles. I think the main
         | difference in my understanding is that it is not a tool like a
         | hammer, it is more a tool that has the potential to design
         | other tools (so far very simple) but if its capacity increases,
         | it could automate significant parts of our work.
        
       | bdamm wrote:
       | Anyone ought to be able to see the new truth; that AI is
       | multiplying the power and importance of the programming and
       | software engineering discipline, by allowing us to churn out far
       | more software in far less time. Entire genres of code tasks will
       | get wiped out (data adaption layers come to mind.)
       | 
       | Software engineers, even if just reduced to AI-bot controllers,
       | will still be essential links between people who have no idea how
       | computers work and the actual machines.
        
       | 29athrowaway wrote:
       | If you train LLMs on code from GitHub it will output what the
       | average GitHub repo has in it. That is, "competent level", not
       | expert or virtuoso.
       | 
       | And it will also carry over bugs found at the "competent" level.
        
         | evilai wrote:
         | Absolutely, but you really don't need virtuoso-level code most
         | of the time ) :
        
       | GabeIsko wrote:
       | Do people have problems with Leetcode stuff or something? Aside
       | from generating code I already know how to write before hand
       | quickly, I find AI super useless for coding. It's never been able
       | to solve a single problem I have worked on - mostly involving
       | infrastructure deployment and config.
        
         | simonw wrote:
         | I find it's incredibly useful for programming once you've
         | learned how to effectively prompt it - which takes quite
         | extensive experimentation.
        
         | manicennui wrote:
         | "AI" helps the people who rely on Stack Overflow to do their
         | jobs. Then they come to HN and worry that we will all be out of
         | jobs soon. The problem it solves is "I don't actually know what
         | I am doing at all". These people are not a threat to anyone
         | competent and no amount of questionable code generated by "AI"
         | will change that.
        
           | danielmarkbruce wrote:
           | Sure, but the number of truly competent software engineers is
           | maybe 10% of employed software engineers. So, 90% of people
           | might need to worry.
        
           | dsQTbR7Y5mRHnZv wrote:
           | What domain do you work in that you never reference stack
           | overflow?
        
             | lionkor wrote:
             | There are workflows that dont include stackoverflow at all,
             | like mine, usually.
             | 
             | If I need to know how to convert a u32 to little endian
             | bytes in Rust, for example, my first instinct isnt to go to
             | SO or chatgpt, my first instinct is usually to go to the
             | docs and search for it. Or just try it out in an IDE.
             | u23::to and hitting tab did the trick, so now I can click
             | on that and read the in-source docs. Same for C++, C, bash,
             | anything that has docs or manpages.
             | 
             | I use stackoverflow for problems like "i have this error
             | and it doesnt tell me whats wrong", like "exception in
             | docker-compose like 3, . missing resource ID" -- i need SO
             | to tell me that this means I dont have an image-name.
        
             | manicennui wrote:
             | It's not that I never reference Stack Overflow; it is just
             | not frequent. I actually know my tools fairly well and most
             | corporate development work simply isn't challenging. I also
             | use vim with nothing but syntax highlighting.
        
           | doug_durham wrote:
           | It sounds like you have the luxury of working in a narrow
           | environment, single language in one layer of the stack. I've
           | had that experience to where I can memorize all of the
           | relevant APIs, and code idioms by working in a single area.
           | Many find ourselves working across the stack working in many
           | languages to develop a solution. It is not humanly possible
           | to have knowledge of all of the APIs and idioms at your
           | fingertips. This is where a tool like GPT is incredibly
           | valuable. I believe this is the future of the software
           | profession. Having deep knowledge of software architecture
           | and being able to develop a solution that employs several
           | languages and frameworks.
        
       | FigurativeVoid wrote:
       | I may be in the minority, but after the initial "wow" period, I
       | have been underwhelmed with co-pilot.
       | 
       | Don't get me wrong, there are few times it has really really
       | impressed me. And there are a few things it really shines at, but
       | most of the time I find it getting in the way.
       | 
       | I'm not so concerned about the craft of programming. But those
       | that make a good living automating trivial tasks should be more
       | worried.
        
         | cryptoz wrote:
         | Something to note here is that copilot is pretty old tech at
         | this point already - GPT4 API is just absolutely worlds better,
         | and it is also about to be old news soon too! With GPT5 coming
         | probably next year, we don't know what advances it will make
         | but surely basing your understanding of it on copilot will
         | leave you shocked soon enough.
        
           | FigurativeVoid wrote:
           | That's a good point. I do find gpt 4 to be excellent at
           | generating code snippets.
           | 
           | I think as the technology improves, it'll get better. But I'm
           | more hoping it'd be able to do something more interesting,
           | say generate tests in the background.
        
             | ilaksh wrote:
             | There are multiple startups that do this specifically with
             | the GPT-4 API today.
        
               | FigurativeVoid wrote:
               | Sure.
               | 
               | But the results are still extremely underwhelming for
               | what they are selling.
        
         | skippyboxedhero wrote:
         | Used it a couple of times. Never found it useful or thought of
         | a situation in which it would be useful.
         | 
         | If you are doing something that is identical to something that
         | has already been done, maybe it works...but then you just look
         | at GH anyway.
         | 
         | For any other situation it is useless because it doesn't know
         | how to program. Pretty much no company wants you typing in
         | random shit into the internet either, it is accident waiting to
         | happen.
         | 
         | Doesn't even work for automation. This is still an absolutely
         | huge area of potential productivity gain. If we still don't
         | have most people taking full advantage of computers, are they
         | just going to magically automate everything? No.
        
         | mathieuh wrote:
         | Completely the same, sometimes it does something cool but a lot
         | of the time I start writing a comment to get it to generate
         | even something simple like e.g. some boilerplate test code and
         | it can't manage it. It's happened often enough that I don't
         | bother most of the time now.
         | 
         | Plus it really annoyingly doesn't seem to handle quotes and
         | brackets, if I'm halfway through writing a line of code and it
         | suggests a reasonable completion I'll press tab and it'll fuck
         | up all the brackets and quote marks, I don't know what I'm
         | doing wrong here but it really annoys me.
         | 
         | We had a guy from Github do a demonstration for us and the most
         | complicated thing he got it to do was write some getters and
         | setters for a class representing a linked list iirc. And even
         | then he spent more time having to cycle through suggestions to
         | find one that he wanted than he would have spent just writing
         | it out of his head.
         | 
         | Yet to be convinced personally.
        
       | Barrin92 wrote:
       | I mean this in the least offensive way possible, but whenever one
       | of these flowery ChatGPT pieces comes out, it's always written
       | like this
       | 
       |  _" at one point, we wanted a command that would print a hundred
       | random lines from a dictionary file. I thought about the problem
       | for a few minutes, and, when thinking failed, tried Googling.
       | "[...]
       | 
       | I returned to the crossword project. Our puzzle generator printed
       | its output in an ugly text format, with lines like
       | "s""c""a""r""_""k""u""n""i""s"" _" "a""r""e""a". I wanted to turn
       | output like that into a pretty Web page that allowed me to
       | explore the words in the grid, showing scoring information at a
       | glance. But I knew the task would be tricky[...]_
       | 
       | This man has written software professionally for 20 years? The
       | last part of the article is at least correct. Code generation
       | isn't going to replace programmers. Almost all SNES and NES games
       | were written in Assembly. Modern game devs learn Unity and Unreal
       | and visual scripting. Are there now more or fewer game devs?
       | Writing a few lines of code that generate _a metric ton_ of more
       | code is what most of us have been doing for many years now.
       | Abstraction and tooling does not change the nature of the
       | profession and it certainly doesn 't end it.
        
       | gemstones wrote:
       | Imagine a doctor 100 years post-Galen "considering the waning
       | days of medicine". We are a young, young discipline.
        
       | fuzztester wrote:
       | Nostradamus wannabes are everywhere, in every field.
        
       | waldohatesyou wrote:
       | I feel like the headline does not match the article here. The
       | headline implies that programming as a craft is to be replaced
       | but the article ultimately argues that it will change
       | significantly which matches my intuition as well.
       | 
       | At the end of the day, the bar is being lowered. Is that a bad
       | thing? From a selfish perspective, yes. From a societal
       | perspective, no. At the risk of digressing, I think one of the
       | issues that my part of the world (Canada and to a lesser extent,
       | America) has been faced with is inequality. I know people who
       | work more "average" service jobs and they make substantially less
       | than engineers do and that's something that's made me pretty
       | uneasy over the past few years. The societal value of generative
       | AI is in making knowledge work such as law, medicine, and
       | software engineering much more accessible to "average" people.
       | 
       | Are there downsides to that? Probably but I think granting power
       | evenly is probably a better path to utopia than misguided
       | elitism. The latter sounds like the path to despotism.
        
         | stcroixx wrote:
         | If software dev is simplified to the point people working jobs
         | like you describe are able to do it, wages will also plummet,
         | so it's not like their situation is going to improve.
        
           | acscott wrote:
           | If a developer making $1/hour produces $10 output (of
           | something people buy), then if you add another developer
           | making $1/hour produces $10 of output, you have $20 total
           | product. Developer A and B can compete on their rate down to
           | the point that it's not sustainable, and thus, an equilibrium
           | will be struck.
           | 
           | How is adding more developers going to reduce the output?
        
             | hackertyper69 wrote:
             | too many cooks in the kitchen
        
             | znpy wrote:
             | > How is adding more developers going to reduce the output?
             | 
             | time spent coordinating, time spent arguing, time spent
             | reaching consensus (dumb example: function signatures /
             | architecture / api contracts), time spent comparing
             | approaches.
        
           | rsanek wrote:
           | This is a zero-sum way of thinking about the world.
        
             | brewdad wrote:
             | It's true though. If _anyone_ with a high school education
             | can be a successful "programmer", most programming jobs
             | will be filled by the cheapest labor.
             | 
             | Why would any company pay more than they need to to keep
             | their company functioning?
        
               | zerbinxx wrote:
               | It's already currently true that many mid-tier shops
               | employ an army of low-knowledge practitioners who will
               | always "solve" whatever problem you give them in record
               | time by abusing the tools you give them, reinventing
               | wheels, punching semi-truck-sized holes in otherwise
               | functional abstractions, barely testing anything. All is
               | well until scaling problems or distributing
               | desyncronization bugs or severe data-loss/replication
               | happens in production.
               | 
               | Once you've seen this happen, and especially when you see
               | it cause outages that costs thousands of dollars, you
               | understand why it's worth it to "pay more than you need".
               | When the rubber hits the road, having an army of automata
               | who "get things done" is functionally not the same as
               | having skilled developers who own their craft in the long
               | term.
               | 
               | If I were starting a company today I'd probably be fine
               | taking on some tech debt to get v1 out the door and then
               | worry about investing in a dev team who can scale/rewrite
               | it into the version that can scale to whatever level I
               | need. But in no way would I want to ever again watch a
               | junior dev who doesn't understand how to read logs trying
               | to implement a caching + crontask solution to reduce app
               | load times from 30s to 15s on a backend query against a
               | table that holds 10k records, because their code retries
               | 500 times because they don't understand timeouts,
               | indices, or ORM induced n+1 issues.
               | 
               | In the long term, automaton armies will always curse you
               | to the problems of local min/maxima problems unless they
               | are backed up by someone with enough global vision to get
               | them out of that hole.
        
             | Der_Einzige wrote:
             | Life is zero sum. Space I exist in is space someone else
             | literally can't exist in. Anyone telling you something else
             | is lying to you and doesn't have your best interests at
             | heart.
        
               | corethree wrote:
               | Yes. Finally. I'm tired of people spewing this zero sum
               | buzz word. Literally everything has a limit. It's all
               | zero sum. Actually it's negative sum. Entropy only
               | increases.
               | 
               | It's not just space that's taken up. There's a fixed
               | amount of energy in the known universe. The usability of
               | that energy continuously becomes less and less and less.
        
               | d_tr wrote:
               | We have gone from living to caves to quantum computers
               | and curing several types of cancer, and we are several
               | orders of magnitude away from any kind of hypothetical
               | energy usage limit imposed by the known universe. This
               | could grow to hundreds of orders of magnitude easily as
               | we learn more.
               | 
               | In the everyday life, there are negative-sum, zero-sum
               | and positive-sum situations and events all over the
               | place.
               | 
               | So, I don't get what your comment is supposed to mean and
               | what it is exactly that you are tired of.
        
               | corethree wrote:
               | "Your statement implies that the
               | situation/economy/whatever is a zero sum game. It's not."
               | 
               | ^thats what I'm tired of. Baseless statements like that.
               | 
               | Fundamentally all things are negative sum. Anything
               | beyond that are temporary local phenomenons.
               | 
               | Energy is has no "limit" in the sense you imply. It
               | always exists. Once you "use" it, it still exists. In
               | this sense energy is zero sum. The quantity never
               | changes. Unless you count mass which is convertible to
               | energy. Mass and energy are fixed zero sum things.
               | 
               | And since mass and energy are zero sum. Fundamentally,
               | everything that extends from mass and energy is also zero
               | sum.
               | 
               | The quantity outside of this that is negative sum is
               | entropy. It always increases. But that's only because we
               | set the baseline. It could be that maximal entropy is
               | equilibrium and we are just an oscillation away from this
               | baseline. In this case even entropy would be zero sum.
               | 
               | All forms of computations including coming up with cures
               | for cancer or inventing quantum computing requires
               | conversion of part of the universe from low entropy to
               | high entropy. Once that conversion happens, the overall
               | entropy of the universe goes up and it cannot be
               | reversed. Even from a practical perspective we are using
               | up fossil fuel resources and solar resources faster than
               | then the sun can regenerate.
               | 
               | So if you technically knew what you were talking about.
               | You'd know life and reality is overall practically and
               | universally speaking is zero sum or worse.
        
         | jpatt wrote:
         | I don't really think law, medicine, and software engineering
         | are the main drivers of wage inequality, though. If the lowest
         | wage was minimum wage and the highest wage was a programmer
         | salary, the Americas would be a very equitable economy.
         | 
         | Automating America's remaining paths to the middle class will
         | only serve to widen the gap between capital owners who will own
         | infrastructure for automation and those shoved into a shrinking
         | piece of the unautomated pie.
        
           | Affric wrote:
           | The comment you're replying to is making that point: that
           | people who earn a decent wage from the knowledge economy are
           | threatened by AI and oppose it because of their interest in
           | the current system's inequality.
           | 
           | It follows that if it is unjust for those who are knowledge
           | workers then it is unjust for those who are service workers
           | (unless you can morally differentiate them).
           | 
           | Perhaps if inequality is wrong then it's the system that
           | creates inequality that should be looked at rather than
           | preserving rent seeking by knowledge workers refusing to
           | compete with AI while perpetuating inequality on those who
           | aren't powerful in the current economy?
           | 
           | Food for thought.
        
             | jpatt wrote:
             | I think you're reading a lot more into my comment than is
             | there, tbh.
             | 
             | The comment I'm replying to said something to the effect
             | of: "this may be a good thing because by democratizing
             | highly paid professions, lower income workers will be
             | lifted."
             | 
             | My comment said something to the effect of: "I disagree, I
             | think capital owners will simply get more rich and the
             | middle class will collapse further without raising anyone."
             | 
             | Of course our society doesn't give service workers a fair
             | shake. My partner worked in a grocery store for a large
             | chunk of our relationship. The schedule inconsistency, the
             | sleep deprivation, the lack of healthcare, no vacation, no
             | real sick leave, and on. Much of my family works in blue
             | collar oil positions. There you're paid a bit better, but
             | you throw away your body to make a dime. I know.
             | 
             | I'm just not convinced the default outcome of automating
             | some knowledge workers is that magically somehow that makes
             | everyone's lives better. I think legislative change of some
             | kind would have to happen if that's the outcome we want.
        
         | zetsurin wrote:
         | > I know people who work more "average" service jobs and they
         | make substantially less than engineers do and that's something
         | that's made me pretty uneasy over the past few years. The
         | societal value of generative AI is in making knowledge work
         | such as law, medicine, and software engineering much more
         | accessible to "average" people.
         | 
         | I think the fear of software developers is that they will join
         | the low pay crowd.
        
       | colinmegill wrote:
       | Melodramatic, pretentious, they just love these puff pieces
       | outside of tech
        
       | gtirloni wrote:
       | Today I already have trouble doing git archeology to understand
       | why a piece of code was done in a certain way.
       | 
       | Now imagine debugging more and more code that was created by
       | LLMs.
       | 
       | Debugging will become more of a voodoo witchcraft kind of thing.
       | I pity anyone who decides to make a living out of that. Probably
       | will earn a lot and die young.
        
         | BigJono wrote:
         | People are very quickly going to find out that "never rewrite"
         | can't be taken as absolute advice.
         | 
         | If you have 5Mloc of third party dependencies and AI generated
         | code that you can't extend and can barely keep functional in
         | production, and a competitor pops up with 50Kloc nearing
         | feature parity and adding more functionality by the day, you'll
         | very quickly need to adapt or die.
         | 
         | Software companies already die to this risk aversion all the
         | time.
         | 
         | Tons more die to rewrites because they get conned into hiring
         | an army of idiot React consultants to do it, who are likely in
         | these HN threads at the forefront of AI code gen themselves,
         | and just end up making 2.0 more complex and worse.
         | 
         | All GPT does is widen the gap between good and bad engineering.
         | If it widens it enough that non-technical people can finally
         | tell the difference, then it's going to kill half the market,
         | just not the half everyone thinks it will.
        
         | manicennui wrote:
         | I imagine that it will be about as bad as debugging code
         | written by the sort of people who find "AI" helpful.
        
         | 62951413 wrote:
         | Aren't we going to get copious amounts of documentation for
         | free? To me chatGPT logs look like JIRA descriptions, commit
         | messages, and basic design specs in disguise. And they are not
         | optional anymore.
         | 
         | On a related note, I'd expect the "DSL+generated code" approach
         | to grow in popularity for common domains. Think gRPC or JOOQ. A
         | terse IDL snippet and you get a lot of functionality that you
         | don't even need to test or even put under version control.
        
       | bawana wrote:
       | AI will surpass humanity at abstraction and the manipulation of
       | abstraction in all its forms - laws, finance, literature, poetry,
       | mathematics... Humans will finally be coralled into the activity
       | their evolution optimized them for - innovation, adaptation,
       | exploration, creation. All the billionaires of today will fade
       | into obscurity as AI strips them of their wealth and leaves only
       | the real humans - unfortunately this may only intensify the rat
       | race if humans continue to compete in a capitalist market.
        
       | decasia wrote:
       | I have been having the following debate with my friend who does
       | AI and neural network stuff:
       | 
       | Him: Coding will soon be obsolete, it will all be replaced by
       | chatgpt-type code gen.
       | 
       | Me: OK but the overwhelming majority of my job as a "senior
       | engineer" is about communication, organizational leadership, and
       | actually understanding all the product requirements and how they
       | will interface with our systems. Yes, I write code, but even if
       | most of that were augmented with codegen, that would barely even
       | change most of what I do.
        
         | decasia wrote:
         | It kind of reminds me of this, except substitute coding for
         | "hammering":
         | 
         | https://www.buzzmaven.com/old-engineer-hammer-2/
        
           | mock-possum wrote:
           | If they don't want to pay for the work, you can always undo
           | it for them.
        
         | jelsisi wrote:
         | > communication, organizational leadership, and actually
         | understanding all the product requirements
         | 
         | These problems sound like a result of working with people.
         | Smaller but more capable teams because of AI will need less
         | leaders and less meetings. Everything will become much more
         | efficient. Say goodbye to all the time spent mentoring junior
         | engineers, soon you won't have any
        
           | creesch wrote:
           | > Say goodbye to all the time spent mentoring junior
           | engineers, soon you won't have any
           | 
           | Yeah... no. Not with LLMs as they currently are. They are
           | great as an assisted tool, but still need people to validate
           | their output and then put that output to work. Which means
           | you need people who can understand that output, which are
           | developers. Which also means that you need to keep training
           | developers in order to be able to validate that output.
           | 
           | The more nuanced approach would be saying that the work of
           | developers will change. Which I agree with, but is also has
           | been true over the past few decades. Developers these days
           | are already working with a hugely different tool chain
           | compared to developers a decade ago. It is an always evolving
           | landscape and I don't think we are at a point yet where
           | developers will be outright replaced.
           | 
           | We might get there at some point, but not with current LLMs.
        
         | evilai wrote:
         | I think that if that were the case, the change would be brutal.
         | First, because as a comment below suggests, fewer people would
         | be involved, so coordination would be simplified. Second,
         | because many more people could access these coordination
         | positions, and I think it would be likely that other
         | professions would take on those roles, professions or
         | personality types that are not usually "good coders" but now
         | wouldn't need to be, since the machine itself could explain,
         | for example, the general functioning of what is being produced.
         | Therefore, I would expect the job field to be radically
         | affected and salaries severely reduced.
        
         | TheBigSalad wrote:
         | CEOs will be replaced before software engineers.
        
           | consumer451 wrote:
           | Which company and board of directors do you see doing that
           | first?
        
           | asdff wrote:
           | CEO is your scapegoat for a bad quarter. Throw all your eggs
           | in the ai basket and you get a bad quarter, whats left to
           | try? Companies don't like to admit they failed and walk
           | things back to how they are. There's probably only a few off
           | the shelf gpts you can throw in to replace your sacked one.
           | Compared with 8 billion potential CEOs on earth you can go
           | through to make the shareholders happy about a blood
           | sacrifice.
        
           | RamblingCTO wrote:
           | I don't think you know what a CEO does.
        
         | TheRealPomax wrote:
         | But now we introduce a junior engineer into the mix: _their_
         | job is none of those things, it's just to take the issues as
         | filed, and implement them. They don't get the hard problems to
         | solve, they get both the task and the acceptance criteria, and
         | for them a future version of CodeGPT or whatever it'll be
         | called will completely replace their programming skills. And
         | then, 10 years later, they'll be the senior engineer. And then
         | what?
         | 
         | Because today's seniors will be retired in a decade or two, and
         | as they get replaced by people who actually benefited from
         | automatic code generation, the concept of "coding" will (if
         | this trend keeps up) absolutely become a thing that old timers
         | used to do before we had machines to do it for us.
        
           | creesch wrote:
           | These junior engineers still will need to validate that
           | whatever the LLM implemented works and fits the requirements.
           | If it doesn't work they need to figure out why it doesn't
           | work.
           | 
           | It might not be in the same way of current day developers,
           | but I don't foresee a near future where developers don't
           | learn to understand code to some degree.
           | 
           | For example, I know a lot of people who work in the low-code
           | development sphere of things. A lot of the developers there
           | barely see any code if any. Yet, when you talk with them they
           | talk about a lot of the same issues and problem-solving but
           | in slightly different terms and from a slightly different
           | perspective. But, the similarities are very much there as the
           | problems are fundamentally the same.
           | 
           | With generated code I feel like this will also be similarly
           | true.
        
         | webworker wrote:
         | Yeah I agree with this - it's much of my experience as a
         | professional developer, too. I'm trying to navigate the
         | organization, connect with other teams, understand what needs
         | to get done.
         | 
         | The code I write feels like a side-effect of what I actually
         | do.
        
         | corethree wrote:
         | You realize that LLMs don't just code right? In fact coding is
         | one of the things they're least good at.
         | 
         | LLMs are best at doing the stuff senior engineers do that's NOT
         | coding.
        
         | Aerbil313 wrote:
         | Wait before product-gen AI emerges. No, seriously. Do folks
         | here not see it's possible even today with a complex system
         | based on LLMs? It's a matter of time.
        
           | dhkk wrote:
           | No. I think those of us that work on enterprise software
           | within massive orgs know the level of AI needed to do any
           | portion of our job is leaps and bounds ahead of what is
           | currently available. I can see some distant future where
           | maybe this is possible, but I doubt we'll be using AI based
           | on transformers by that point...
        
       | devit wrote:
       | I think it's more fun to program with LLMs, because rather than
       | having just a single programming phase, you basically have three
       | quite different phases: a first phase where you craft an initial
       | prompt, then a second phase where you review the LLM code and ask
       | it to make changes, and then a third phase where you change the
       | code yourself to exactly what you want it to be.
        
       | nickpeterson wrote:
       | LLMs are going to make a lot of code. The tool will often not be
       | able to fix problems with that code. If anything, this is classic
       | automation expanding a field, we're going to end up with more
       | programmers and more software, not less.
        
       | fzeroracer wrote:
       | Much like how many people predicted we'd all be driving flying
       | cars, the people predicting that coding will be replaced by AI
       | just isn't realistic. Primarily because these AI models can
       | literally only exist as long as there's humans constantly
       | creating code for it to read (see: steal) in the first place.
       | 
       | AI cannot sustain itself trained on AI work. If new languages,
       | engines etc pop up it cannot synthesize new forms of coding
       | without that code having existed in the first place. And most
       | importantly, it cannot fundamentally rationalize about what code
       | does or how it functions.
       | 
       | The more you use it or try to integrate it into your workflow (or
       | worse, have others try to integrate it on their own) the more the
       | inherent flaws of the LLMs come into play.
        
         | Philpax wrote:
         | > AI cannot sustain itself trained on AI work.
         | 
         | This isn't true. You can train LLMs entirely on synthetic data
         | and get strong results. [0]
         | 
         | > If new languages, engines etc pop up it cannot synthesize new
         | forms of coding without that code having existed in the first
         | place.
         | 
         | You can describe the semantics to a LLM, have it generate code,
         | tell it what went wrong (i.e. with compiler feedback), and then
         | train on that. For an example of this workflow in a different
         | context, see [1].
         | 
         | > And most importantly, it cannot fundamentally rationalize
         | about what code does or how it functions.
         | 
         | Most competent LLMs can trivially describe what some code does
         | and speculate on the reasoning behind it.
         | 
         | I don't disagree that they're flawed and imperfect, but I also
         | do not think this is an unassailable state of affairs. They're
         | only going to get better from here.
         | 
         | [0]: https://arxiv.org/abs/2309.05463
         | 
         | [1]: https://voyager.minedojo.org/
        
           | somewhereoutth wrote:
           | > They're only going to get better from here.
           | 
           | Every AI apology seems to include this statement. It is more
           | likely that LLMs have already hit a local maximum, and the
           | next iterations will provide diminishing incremental returns
           | - if anything at all.
        
             | Philpax wrote:
             | What makes you say that? There are constant improvements in
             | how they're being trained and what they're being trained
             | with; there really isn't any particular reason to believe
             | we're at a maxima. Especially with multimodality being
             | introduced!
        
               | somewhereoutth wrote:
               | My understanding is that essentially they have been
               | trained on _everything_ (meaning the whole internet), so
               | there is not much left except niche sources adding
               | incremental benefit. But granted I can imagine the data
               | being used more effectively for training, though I doubt
               | there would be a step change in capabilities coming from
               | that - my suspicion is that as well as the data, the
               | techniques have reached a maximum or close to it.
        
               | Philpax wrote:
               | There's still plenty of data out there, including in
               | other languages and undigitised books - and that's before
               | you get to data in other modalities, like speech and
               | videos. Synthetic data can also be used quite effectively
               | if you're trying to distill a model instead of trying to
               | grow capabilities, as Phi-1.5 demonstrates.
               | 
               | For capability growth, well, we don't know what we don't
               | know. There are still many unknowns when it comes to
               | architecture, training, data, modalities, incremental
               | learning, alignment, self-critique, and more. There's
               | plenty of companies and governments trying to find their
               | angle here.
               | 
               | Even if we're at the very peak of what LLMs are capable
               | of -- which seems unlikely -- there's still potentially
               | decades of research in making what we have more
               | effective.
        
       | RayVR wrote:
       | I think more people in these comments should read the whole
       | article before responding. The author intentionally takes several
       | turns to arrive at a nuanced view, with a final statement that I
       | think most here would agree with: "Hacking is forever"
        
         | kdmccormick wrote:
         | I'll admit that I read up until this point:
         | 
         | > At one point, we wanted a command that would print a hundred
         | random lines from a dictionary file. I thought about the
         | problem for a few minutes, and, when thinking failed, tried
         | Googling.
         | 
         | and concluded that this person is not a skilled enough
         | programmer to be making any statements about the demise of the
         | craft, nuanced or not.
        
           | welder wrote:
           | That's the point.. "revenge of the so-so coder".
        
             | lionkor wrote:
             | so-so? Thats a problem too basic to ask in a coding
             | interview, almost.
        
               | welder wrote:
               | Yea, he says multiple times that he's not a good coder
               | but that his friend is even worse. However, his worse
               | friend + GPT combined can build whole apps.
        
               | kdmccormick wrote:
               | > his worse friend + GPT combined can build whole apps.
               | 
               | Which is cool and noteworthy! But cute little apps are
               | not the "craft". The craft is solving problems in novel
               | ways, managing enormous complexity, scaling massively,
               | delighting users, choosing just the right amount of
               | future-proofing so that future migrations are smooth but
               | the code remains comprehensible, balancing performance
               | and readability, enabling other developers to build on
               | your work... those sort of things.
               | 
               | Now, if senior-level developers or successful start-up
               | CTOs start expressing that they feel AI can replace
               | them... _then_ I will worry that the craft is waning! (I
               | 'm not doubting it'll happen in my lifetime. It's just
               | that this article isn't it.)
        
               | skeaker wrote:
               | Perhaps relevant: https://xkcd.com/2501/
               | 
               | A year or two ago, building a passable app was for the
               | average person 100% impossible. The average person has
               | never written code beyond "hello world," and that might
               | have only been for a school project. Programming is not
               | exclusively corporate mingling. I'll give that the things
               | you describe might be necessary for sufficiently large
               | projects, but I'd also argue that the majority of code
               | that exists is in the smaller projects, and the average
               | person cannot grapple with even the smallest project. Now
               | those smaller things are accessible to the average person
               | when they simply weren't before.
               | 
               | The skill ceiling of programming is still very high. The
               | skill floor has been irreversibly raised and the skill
               | curve forever smoothed, even if only slightly.
        
           | RayVR wrote:
           | Totally understand. I definitely took issue with a lot of the
           | article and wondered what this person does for a job but a
           | lot of the comments are fighting a narrative that only
           | existed in the headline.
        
       | karmasimida wrote:
       | Is driving a craft? Is plumbing a craft?
       | 
       | Coding to me is the same to those 'crafts', with GPT it will be
       | done faster and more efficient, that is it.
        
         | evilai wrote:
         | And also much cheaper, which I think is one of the main
         | problems. If less knowledge is needed to solve these problems,
         | then you should pay less for them. The article makes a
         | comparison with chess, which seems absurd to me, because,
         | although there are more people playing chess than ever before,
         | this is due, in my opinion, to the fact that the goal continues
         | to be to defeat another human playing, so even though it is
         | impossible to beat a machine at the game, it does not affect
         | the gameplay with other humans. On the other hand, coding is a
         | job for many, what sense would it make to pay, or pay the same
         | to a human, if a program can produce higher quality code?
        
       | acscott wrote:
       | Title does not approximate well the article. Ad probandum:
       | "Computing is not yet overcome. GPT-4 is impressive, but a
       | layperson can't wield it the way a programmer can. I still feel
       | secure in my profession."
        
       | jelsisi wrote:
       | The article came to a romantic end that doesn't satisfy how I
       | feel about the workplace now. I have to admit a dirty truth, that
       | I joined this field because of the pay and job stability, not
       | simply for a love of programming. Because of this I feel
       | distressed for its future. No longer can someone walk into a job
       | slightly under qualified and grow with time. Companies will opt
       | for smaller teams of 10xers that with the companionship of AI can
       | pump out 10x10 more code then the rest of us. Simply put, as a 20
       | something out of college, I'm going to need to figure out how to
       | make as much money as soon as possible.
        
         | evilai wrote:
         | I completely agree, and I think that's precisely the heart of
         | the matter. Salaries will likely begin to decrease, or at the
         | very least, they won't increase at the rate they would have if
         | this technology didn't exist. It seems inevitable to me that
         | programming will become just another job. It's saddening
         | because I deeply love to code and understand the inner workings
         | of it all.
        
         | LouisSayers wrote:
         | > Companies will opt for smaller teams of 10xers that with the
         | companionship of AI can pump out 10x10 more code then the rest
         | of us
         | 
         | This is how I see it as well - but we're at the point where you
         | can decide what side of the fence you want to be on.
         | 
         | Keep playing with ChatGPT, but Level up around Systems Design
         | and basic coding principles.
         | 
         | Someone has to oversee the work that the AI's do, why not be
         | one of those people?
        
       | skepticATX wrote:
       | Am I the only one becoming less impressed by LLMs as time passes?
       | 
       | I will admit, when Copilot first became a thing in 2021, I had my
       | own "I'm about to become obsolete" moment.
       | 
       | However, it's become clear to me, both through my own experience
       | and through research that has been conducted, that modern LLMs
       | are fundamentally flawed and are not on the path to general
       | intelligence.
       | 
       | We are stuck with ancient (in AI terms) technology. GPT 4 is
       | better than 3.5, but not in a fundamental way. I expect much the
       | same from 5. This technology is incredibly flawed, and in
       | hindsight, once we have actual powerful AI, I think we'll laugh
       | at how much attention we gave it.
        
         | habitue wrote:
         | It sounds like your initial impression was an overestimate and
         | your current impression is a correction back down from that.
         | You could say that it's "fundamentally flawed" coming from a
         | very high initial expectation, but you could just as easily say
         | "this is an amazing tool" coming from the point of view that
         | it's "worthless" as many people seem to think
        
           | breakwaterlabs wrote:
           | If I can be so bold as to chime in, perhaps "fundamentally
           | flawed" because it's design means it will never be more than
           | a very clever BS engine. By design it is a stochastic token
           | generator and its output will only ever be fundamentally some
           | shade of random unless a fundamental redesign occurs.
           | 
           | I was also fooled and gave it too much credit, if you engage
           | in a philosophical discussion with it it seems purpose-built
           | for passing the turing test.
           | 
           | If LLMs are good at one thing, it's tricking people. I can't
           | think of a more dangerous or valueless creation.
        
             | anon-3988 wrote:
             | > If I can be so bold as to chime in, perhaps
             | "fundamentally flawed" because it's design means it will
             | never be more than a very clever BS engine.
             | 
             | How is your fellow human better? People here seems to spend
             | a lot of time talking about how much their average boss,
             | coworkers, juniors are ass. The only reason I know that
             | ChatGPT is based on a computer program is how fast it is. I
             | wouldn't be able to tell its output (not mannerism) from a
             | junior's or even some "seniors'" programmer. That itself is
             | quite impressive.
             | 
             | With how much time we've spend on the internet, have we not
             | realized how good PEOPLE are at generating bullshit? I am
             | pretty I am writing bullshit right as this moment. This
             | post is complete ass.
        
             | mike_hearn wrote:
             | I don't think that's true. It helps to know a few obscure
             | facts about LLMs. For example, they understand their own
             | level of uncertainty. Their eagerness to please appears to
             | be a result of subtle training problems that are
             | correctable in principle.
             | 
             | I've noticed that GPT-4 is much less likely to hallucinate
             | than 3, and it's still early days. I suspect OpenAI is
             | still tweaking the RLHF procedure to make their models less
             | cocksure, at least for next generation.
             | 
             | The other thing is that it's quite predictable when an LLM
             | will hallucinate. If you directly command it to answer a
             | question it doesn't know or can't do, it prefers to BS than
             | refuse the command due to the strength of its RLHF. That's
             | a problem a lot of humans have too and the same obvious
             | techniques work to resolve it: don't ask for a list of five
             | things if you aren't 100% certain there are actually five
             | answers, for example. Let it decide how many to return.
             | Don't demand an answer to X, ask it if it knows how to
             | answer X first, and so on.
             | 
             | And finally, stick to questions where you already know
             | other people have solved it and likely talked about it on
             | the internet.
             | 
             | I use GPT4 every day and rarely have problems with
             | hallucinations as a result. It's very useful.
        
         | intended wrote:
         | You are not alone. People are reading papers, not building
         | things.
        
         | matheusmoreira wrote:
         | > Am I the only one becoming less impressed by LLMs as time
         | passes?
         | 
         | Not at all.
         | 
         | I was very impressed at first but it's gotten to the point
         | where I can no longer trust anything it says other than very
         | high level overviews. For example, I asked it to help me
         | implement my own sound synthesizer from scratch. I wanted to
         | generate audio samples and save them to wave files. The high
         | level overview was helpful and enabled me to understand the
         | concepts involved.
         | 
         | The code on the other hand was subtly wrong in ways I simply
         | couldn't be sure of. Details like calculating the lengths of
         | structures and whether something did or did not count towards
         | the length were notoriously difficult for it to get right.
         | Worse, as a beginner just encountering the subject matter I
         | could not be sure if it was correct or not, I just thought it
         | didn't look right. I'd ask for confirmation and it would just
         | apologize and change the response to what I expected to hear. I
         | couldn't trust it.
         | 
         | It's pretty great at reducing the loneliness of solo
         | programming though. Just bouncing ideas and seeing what it says
         | helps a lot. It's not like other people would want to listen.
        
           | ClimaxGravely wrote:
           | My takeaway from this is that we should lament the gradual
           | death of niche forums where we can discuss this with real
           | humans.
        
           | timcobb wrote:
           | > It's pretty great at reducing the loneliness of solo
           | programming though. Just bouncing ideas and seeing what it
           | says helps a lot. It's not like other people would want to
           | listen.
        
           | mp05 wrote:
           | > It's pretty great at reducing the loneliness of solo
           | programming though. Just bouncing ideas and seeing what it
           | says helps a lot. It's not like other people would want to
           | listen.
           | 
           | It's really great for this.
           | 
           | I've found it useful for taking some pattern I've cranking on
           | with an extensive API and finishing the grunt work for me...
           | it generally does a very good job if you teach it properly. I
           | recently had to do a full integration of the AWS Amplify Auth
           | library and instead of grinding for half a day to perfect
           | every method, it just spits out the entire set of actions and
           | reducers for me with well-considered state objects. Again, it
           | needs guidance from someone with a clue, so don't fear it
           | taking my job anytime soon.
        
         | pama wrote:
         | I am not sure that GPT-4 is not better in a fundamental way
         | than GPT-3.5. To me they seem like night and day. If GPT-5 is a
         | similar jump, it will be impossible to compete without using it
         | (or using a related / similar model). Yes they are both GPT
         | models and trained as simple autoregressive LM, but there is a
         | dramatic change you can experience at a personal level once
         | GPT-4 can synthesize information correctly to address your
         | specific requests in so many different contexts that GPT-3.5
         | was simply parroting like a toddler. All of LLM is just
         | probabilistic inference on large bodies of text, however I do
         | buy the idea that with enough compute and data a sufficiently
         | large model will build the architecture it optimally needs to
         | understand the data in the best possible way during training.
         | And once the data becomes multimodal, the benefit to these
         | probabilistic models can theoretically be multiplicative not
         | just additive as each new modality will clarify and eliminate
         | any previously wrong representations of the world. Yes, we will
         | all laugh at how good GPT-10 trained with text, image, video,
         | audio, and taste sensors will be, and yet GPT-4 was a major
         | step forward, much bigger than any step taken by humanity so
         | far.
        
         | gloosx wrote:
         | Me too.
         | 
         | I am seeing people seriously using the "Please write an
         | expression for me which adds 2 and 2" prompt in order to get
         | the "2+2" expression they need - advocating that they got it
         | with magical efficiency. In all honesty, I don't like writing
         | too much, and writing code for me is always shorter and faster
         | than trying to describe it in general-purpose language, that is
         | why we need code in the first place.
        
         | otabdeveloper4 wrote:
         | Yes. Much of the "wow factor" of generative AI is simple
         | sleight of hand. Humans are trained to see patterns where there
         | are none, and ignore anything that doesn't fit our preconceived
         | notions of order. Often AI is just a complicated Clever Hans
         | effect.
         | 
         | For a real example: once you start analyzing an AI image with a
         | critical mind, you see that most of the image violates basic
         | rules of composition, perspective and anatomy. The art is
         | frankly quite trash, and once you see it it is hard to unsee.
        
         | ozim wrote:
         | To add an example, people ask it to generate new piece of code
         | and then add more questions to refine it. Writing new CRUD is
         | not impressive.
         | 
         | I can do that with scaffolding or copy past template and
         | change.
         | 
         | I did not try and I did not see someone actually giving
         | existing code asking GPT to fix or change it. So that is
         | something I'd try.
        
         | crnkofe wrote:
         | AI is the next bubble. VCs are really pushing it but I don't
         | see this solving day to day software development problems
         | anytime soon. Solving difficult CS problems is one thing and I
         | do find it impressive, unfortunately the greater majority of
         | everyday work is not about generating Snake games or 0/1
         | knapsack solutions.
         | 
         | Also the idea that we'll need less engineers is bogus.
         | Technology doesn't reduce the amount of work we do, it just
         | increases productivity and puts more strain on individuals to
         | perform. With AI spitting out unmaintainable code nobody
         | understands I can only see more work for more engineers as the
         | amount of code grows.
        
           | dalbasal wrote:
           | Idk. Tech bubbles, hype cycles.. they're weird, sometimes
           | unhinged.. they're not entirely irrational.
           | 
           | In aggregate, they are just the phenomenal of an extremely
           | high risk high reward investment environment.
           | 
           | Most tech companies do not need cash to scale. There are few
           | factories to be built. What they need is risk capital. The
           | big successes alphabet, Facebook, Amazon.. these winds are so
           | big, that they really do "justify" the bubbles.
           | 
           | Amazon alone, arguably justifies the '90s dotcom bubble. The
           | tens of billions invested into venture, IPOs... A balanced
           | portfolio accrued over the period, was probably profitable in
           | the long term... Especially if the investor kept buying
           | through and after the crash.
           | 
           | IDK that anyone actually invests in risky startups that way,
           | but just as a thought device..
        
         | dalbasal wrote:
         | >Am I the only one becoming less impressed by LLMs as time
         | passes
         | 
         | Jaron Lanier has some ideas about the space in between turing
         | test and blade runner.
         | 
         | The first film goers, watching simple black and white movies
         | thought that they were uncanny. A train coming towards the
         | screen, would make audiences jump and duck. When people first
         | heard gramophones, they reported that it is indistinguishable
         | from live orchestra.
         | 
         | As we learn a technology, we learn to recognize. Get a feel for
         | its limitations and strengths. The ability to detect that
         | technology, is a skill. Less impressive over time.
         | 
         | It's hard not to be impressed when a thing does a thing that
         | you did not think it could do.
         | 
         | We didn't move on to being unimpressed when the thing cannot do
         | the thing we thought it be able to do.
        
         | cubefox wrote:
         | > We are stuck with ancient (in AI terms) technology.
         | 
         | What are you talking about? ChatGPT came out only a year ago,
         | GPT-4 less than a year ago. That's the opposite of ancient
         | technology, it's extremely recent.
        
           | AnimalMuppet wrote:
           | I _think_ the claim is that, from the point of view of when
           | we have a _real_ AI, this is the  "ancient" stuff.
        
           | gammalost wrote:
           | To be fair the theory behind it is old. Only that hardware
           | wasn't up to the task yet. For example here's language
           | prediction from 1991 https://onlinelibrary.wiley.com/doi/pdf/
           | 10.1207/s15516709cog....
        
             | cubefox wrote:
             | That's not true. Modern language models use modern theory,
             | such as the transformer architecture.
        
       | armchairhacker wrote:
       | I think people underestimate the level of general intelligence
       | required to write even seemingly basic "glue-code" (which btw,
       | 90+% of software consists of).
       | 
       | If we ever get an AI which can write complex enough "glue code"
       | with a low enough failure rate to replace even junior developers,
       | it's going to cause much, much bigger impacts than people losing
       | jobs. The "boilerplate" and "bureaucracy" which is currently
       | handled by "average" folk...that's what runs the world. If we
       | ever develop AI which can handle that kind of work, barring some
       | constraint like extreme resource usage or disaster like climate
       | change; we'll either be brought into a utopia due to productivity
       | being multiplied, or a dystopia due to a small minority getting
       | control over the world to a precise, extreme extent no small
       | minority has control now.
        
         | crotchfire wrote:
         | > dystopia due to a small minority getting control over the
         | world to a precise
         | 
         | Unfortunately this is how nearly all technologies pan out in
         | the end.
         | 
         | The Internet of the 1990s unavoidably us the surveillance-
         | industrial complex of the 2010s/2020s.
         | 
         | The running-wafers-in-an-old-strip-mall Silicon Valley of the
         | 1980s unavoidably led us to the current "world economy can
         | support only 1.5 leading-edge fabs" situation where having an
         | ME/PSP/TrustZone in your chip is not something you can opt out
         | of anymore.
        
         | ilaksh wrote:
         | GPT-4 is (incredibly obviously) well beyond that point.
        
       | layman51 wrote:
       | I'm so confused by this article's comparison of GPT-4 to a
       | powerful Go or chess engine. First, is coding some sort of
       | competition like Go or chess? I have heard of competitive
       | programming or code golf, but have little clue how that compares
       | to "the craft of code" or why using GPT-4 diminishes it. Is it
       | cheating if I use GPT-4's assistance to write code? On the other
       | hand, I do see why it would be harmful for people who don't have
       | the knowledge or experience to be relaying answers from an LLM to
       | others on forums.
       | 
       | Second, I am seeing a parallel here with the college educators
       | being preoccupied with how to teach calculus. Yesterday, I was
       | reading the preface that Martin Gardner wrote to "Calculus Made
       | Easy" by Silvanus P. Thompson and he wrote something along the
       | lines of how many students and even educators (circa 1998) do not
       | see the point in knowing how to differentiate or integrate by
       | hand. I suppose now more than ever, some people even suggest to
       | stop teaching calculus to high school (and even college students)
       | in favor of some kind of vague statistics, data science, or
       | information literacy course. But most mathematicians would
       | discourage that kind of approach.
       | 
       | I think I agree with the last point about how it is not really
       | about the knowledge of code itself but rather it is about being
       | curious and knowing enough to not let yourself be taken advantage
       | of.
        
         | advaith08 wrote:
         | I think the point of the comparison with chess is to show what
         | happens when AI becomes vastly better than humans at something.
         | GPT4 is not vastly better than humans at coding, but the author
         | is using chess as an analogy to visualize what the world might
         | look like if these GPTs continue to get better
        
       | epcoa wrote:
       | This article is inadvertently more about bullshit jobs and post
       | clown world low interest rate free money.
       | 
       | > He dialled up an FTP server (where files were stored) in an MS-
       | DOS terminal and typed obscure commands.
       | 
       | This is some code a UI in Visual Basic to trace a IP address
       | level exposition right here (this is from a self proclaimed
       | subject matter expert, so no excuse), they're not deeply
       | knowledgeable and just because they got paid 6 figures at some
       | dumb post recession startup doesn't change anything.
       | 
       | (Others have already addressed the other howlers in this article)
        
       | awinter-py wrote:
       | this is by james somers! long arc from 'there's a gold rush and
       | I'm the shovel' back in the day
        
         | simonw wrote:
         | I guess you mean this article from 2013
         | https://aeon.co/essays/dad-s-company-made-burgers-mine-just-...
         | ?
        
       | 1vuio0pswjnm7 wrote:
       | "From the beginning, I had the sense that there was something
       | wrongheaded in all this."
       | 
       | What was your first clue.
        
       | fallingfrog wrote:
       | You have to consider here that anyone posting on hacker news is a
       | pretty smart cookie. We're the clever kids in school, the ones
       | who were curious and insightful.
       | 
       | Now, chatgpt in its current form cannot think better than me.
       | Faster, for sure, but not better. Its arguments and its
       | explanations are a bit simple and it can't make really insightful
       | observations. Mostly it just states the obvious.
       | 
       | However.
       | 
       | There _are_ people in the world that it _can_ out-think. For
       | every one of us there are 10 or 20 people who are pleasant enough
       | but kind of thick, and gpt can already speak more eloquently than
       | them. So where's the bar for "intelligence?" Does it have to
       | outclass the smartest human alive before we can call it
       | intelligent?
        
       | cantSpellSober wrote:
       | It's funny, back in the days of IE6, Firebug, jQuery, it was so
       | frustrating just getting something to _work_.
       | 
       | Looking back, that's what made it fun. You could convince
       | yourself you were a mad scientist building the next Turing
       | machine.
       | 
       | Having stability in the JS ecosystem now (hold for laughter) is
       | better for users, and the developments in AI are interesting, but
       | it's not as challenging to ship things. Maybe embracing the _new_
       | challenges is the  "craft" we should focus on to bring the fun
       | back.
        
       | unclebucknasty wrote:
       | When using ChatGPT for some tedious challenges--say, select
       | coding problems and infrastructure setup issues on AWS--I have
       | more than once had the feeling that people weren't built for this
       | kind of work anyway, and that it's exactly the kind for which
       | computers were intended.
       | 
       | It wasn't always this way. Sure, programming has always been an
       | exercise in precision and, thus, sometimes tedium. But, there's
       | something in the way it has changed over the last decade or so.
       | When I first started my career, I spent long hours solving
       | problems of the algorithmic, logic, or control flow type. It was
       | challenging mind work and called for creativity. There was real
       | joy in making something work. It felt like creation.
       | 
       | Now, programming consists largely of wiring together pieces of
       | code that you didn't write, and consulting StackOverflow to
       | figure out why it doesn't work. It's following someone else's
       | decisions in an opinionated framework. It's transpiling and
       | tooling and configuration. And, now that programmers are expected
       | to do much more, it's also using someone else's software for
       | devops and tedious infrastructure buildouts, etc.
       | 
       | I'd say the joy in the software engineering role faded long
       | before the arrival of ChatGPT. I'm actually hopeful that AI will
       | help lighten the load of mundane tedium and help us return to the
       | days when programming was fun.
        
       | hiddencost wrote:
       | > At one point, we wanted a command that would print a hundred
       | random lines from a dictionary file. I thought about the problem
       | for a few minutes, and, when thinking failed, tried Googling. I
       | made some false starts using what I could gather, and while I did
       | my thing--programming--Ben told GPT-4 what he wanted and got code
       | that ran perfectly.
       | 
       | I mean ... IDK, if you can't write that on your own without
       | research, I don't think you should be writing a eulogy for
       | programming in the New Yorker.
       | 
       | (I just wrote two version, one using python's random.sample and
       | the other more verbosely, to double check myself.)
        
         | gymbeaux wrote:
         | Yeah it's not a challenging problem, but the specific code
         | example isn't the point. Replace his example with "at one
         | point, we wanted a command that would convert a PNG to a
         | JPG...." most of us couldn't do that without Google.
        
           | tingletech wrote:
           | why not use `shuf` from GNU core utils for the random and
           | `convert` from ImageMagic for the png to jpg?
        
             | gavmor wrote:
             | Why not, indeed? There must be a deeper point these people
             | are trying to make. ImageMagick is not obscure, is it?
        
           | gavmor wrote:
           | $ cat /usr/share/dict/words | shuf | head -n 10
           | 
           | $ convert foo.png foo.jpg
           | 
           | Took me almost literally two seconds to come up with that,
           | unless your point is that _at one point I had to learn it_
           | which, yeah, sure. What am I missing?
        
             | djbusby wrote:
             | You're missing that some folk haven't learned that yet -
             | and that others have forgotten it.
             | 
             | In 2013 I was using complex ffmpeg commands and using
             | filters in there. Could remember the stuff easy. Now, I've
             | gotta reference my ffmpeg notes more frequently.
             | 
             | Where's that XKCD about using the tar command?
        
               | wlesieutre wrote:
               | > Where's that XKCD about using the tar command?
               | 
               |  _As of my last knowledge update in January 2022, I can
               | 't provide specific details about the latest XKCD comics
               | or their numbers because my training data only includes
               | information available up to that time. However, you can
               | easily find XKCD comics on the official XKCD website
               | (xkcd.com) by using the search function or by browsing
               | through the archives._
               | 
               |  _If there 's a specific XKCD comic related to the "tar"
               | command that you're looking for, you might be able to
               | find it by searching for keywords like "XKCD tar command"
               | on a search engine or directly on the XKCD website. The
               | website has a good search feature that allows you to find
               | comics based on keywords or topics._
        
               | tarqtome wrote:
               | With gpt4 and browsing enabled it searches the web and
               | returns
               | 
               | > The XKCD comic about using the `tar` command can be
               | found at [XKCD Comic #1168](https://xkcd.com/1168/). The
               | comic humorously addresses the complexities and
               | challenges of remembering the correct syntax for the
               | `tar` command, a common scenario for many who use Unix-
               | based systems.
        
               | arp242 wrote:
               | ffmpeg is kind of a special case; the CLI for that is far
               | more complex than almost anything else I've ever seen.
               | 
               | tar xf for extract. Add v to show the files. tar cf to
               | create. tar tf to "test" (list). Add -C dir at the end to
               | extract to different directory. Set file to "-" for
               | stdin.
               | 
               | That's all there's to it for 99% of use cases. I don't
               | get how anyone can have difficulty with that: f for file,
               | and x/c/t are pretty mnemonic.
        
               | djbusby wrote:
               | You've missed the point from the example. We can remember
               | complex things when they are close. And even forget
               | common things. GPT can help with both cases.
        
             | ahungry wrote:
             | Bravo - for these simple things, typing in a GPT prompt or
             | search query is more work than the command.
             | 
             | Even things like "what flags to use with ffmpeg" are a
             | shell reverse-history search away, assuming one has ever
             | used them in the past.
        
               | chrnola wrote:
               | That's quite the assumption! You'd also have to know that
               | your shell maintains a history and know how to search it.
               | None of these things are obvious to those who do not
               | already know them. We all had to learn at some point.
        
             | chrnola wrote:
             | As the parent comment says, the specifics of the example
             | are irrelevant. Pretend you didn't know that the dictionary
             | file existed, or where it was stored, or that cat/shuf/head
             | existed, or even how to compose programs in your shell.
        
             | RockRobotRock wrote:
             | Okay GPT, tell me the bash command to convert a PNG to a
             | JPG and add a sarcastic comment at the end.
        
               | gavmor wrote:
               | Sarcastic? I'm earnestly perplexed.
        
               | RockRobotRock wrote:
               | I'm just as perplexed that you're perplexed.
        
         | silenced_trope wrote:
         | I'm the opposite. I feel like it is true. I very much will NO
         | LONGER THINK about "simple" problems.
         | 
         | My most recent thing is for a game I'm working on. I got a
         | bunch of free sound FX from freesound.org, but they were AIFF
         | format. I googled and found an online converter, then asked
         | ChatGPT to use ffmpeg to write a script that goes through the
         | directory converting the AIFFs to MP3s.
         | 
         | In the past if I would have written such a script it would have
         | required me to "look into how to do it" and then I would have
         | saved the script somewhere on my machine or online. Now I just
         | deleted it right away. If I ever need to do it again or
         | something similar I'll just ask ChatGPT and get it from scratch
         | again.
        
           | empyrrhicist wrote:
           | > use ffmpeg
           | 
           | Well there's your problem. Such a powerful tool, but that CLI
           | is something else.
        
           | half-kh-hacker wrote:
           | a whole script? surely it's just something like `find . -name
           | '*.aiff' | parallel ffmpeg -i {} {}.mp3`
        
           | marcus_holmes wrote:
           | Every time I've tried to get it to do something reasonably
           | simple like this, it returns plausible-sounding code that
           | doesn't work.
           | 
           | My last attempt to use it was to do with resolving circular
           | calculations in Excel - I wanted some way of calculating the
           | sum of a geometric series without having the series in actual
           | cells. It kept recommending things that didn't work.
           | 
           | I'm always amazed to hear of people who manage to get working
           | code from an AI. This has not been my experience.
        
             | DrSiemer wrote:
             | Work on your prompts. Break down the problem into
             | pseudocode steps, the way you might write down comments for
             | yourself on how to do something. Provide examples of
             | similar working code if you can. Don't ask it to do
             | everything at the same time, break it up into limited goal
             | increments.
             | 
             | In my experience LLMs work best if you already know how to
             | do something, but you just can't be bothered to actually do
             | it.
             | 
             | When exploring unknown territory, keep your questions
             | simple and ask for clarification on anything you don't
             | understand. It will not just help you, but the AI as well.
        
             | thaumasiotes wrote:
             | > I wanted some way of calculating the sum of a geometric
             | series without having the series in actual cells.
             | 
             | There are simple explicit formulas for this.
        
               | marcus_holmes wrote:
               | yeah, sumproduct on google docs was the thing it kept
               | suggesting, but not in a way that worked for the thing I
               | wanted. I found a way around it in the end, but I feel I
               | wasted 30 mins trying to get ChatGPT to understand what I
               | wanted and give me something that actually worked.
        
               | thaumasiotes wrote:
               | \sum_{i=0}^n x^i (the sum of all terms x^i as i ranges
               | from 0 to n, inclusive) = (x^{n+1} - 1)/(x-1).
               | 
               | Or, if n is positive infinity, you assume that |x| < 1
               | and thus the sum is (0 - 1) / (x-1) = 1/(1-x).
               | 
               | If you need the sum from x^m to x^n, that's equal to the
               | sum from 0 to n minus the sum from 0 to (m-1).
               | 
               | You can derive the formula yourself without difficulty:
               | sum = 1 + x + x^2 + ... + x^n         (sum)(x) =     x +
               | x^2 + ... + x^n + x^{n+1}              (sum)(x) - sum =
               | x^{n+1} - 1         (sum)(x-1)     =  x^{n+1} - 1
               | (sum)          = (x^{n+1} - 1)/(x-1)
        
           | mock-possum wrote:
           | Doesn't VLC or Foobar have a batch convert feature? Or
           | Audacity? One of them does, pretty sure?
        
         | MattGaiser wrote:
         | Especially since that particular task has been done thousands
         | upon thousands of times. I have done it to win arguments on
         | Hacker News[0]. It wouldn't surprise me if the exact code to do
         | it (except for changing file names and number of lines) existed
         | on Stack Overflow.
         | 
         | [0] https://news.ycombinator.com/item?id=28587016
        
           | altfredd wrote:
           | More likely, the reason why ChatGPT can do it is _because_
           | all necessary code is available on StackOverflow.
           | 
           | I don't understand unbound excitement about using a paid
           | online tool (!) that does not have reproducible source code
           | (!!) and can sometimes (!!!) generate correct implementations
           | of extremely well-known algorithms if given perfect
           | description.
        
         | enjoylife wrote:
         | Yeah, this author sounds more of an up-and-coming software
         | developer. The cited example is something that someone should
         | be easily able to do in their day to day language.
         | 
         | The ability for chatGPT to essentially translate/expand your
         | knowledge out to other languages (eg "how do I read in a file
         | to utf8 again" ). It's all just more leverage and power to
         | solve the mundane, faster. The key point is you have to know
         | the rough solution space already.
        
           | TerrifiedMouse wrote:
           | > Yeah, this author sounds more of an up-and-coming software
           | developer.
           | 
           | This is bad. If you don't have newbie programmers, you won't
           | have senior programmers.
        
         | coliveira wrote:
         | The problem is not that I don't know the algorithm... the
         | problem is that to implement the algorithm you need to remember
         | what method from what class does the thing you want to do. And
         | knowing that is very difficult, even for seemingly simple
         | problems. That's why Google is the way to program modern
         | programming languages. (Of course I could do the same task
         | without any libraries, but in that case it would be considered
         | bad by most modern programmers, because it would be a sign that
         | I "don't know how to use the language properly"...)
        
           | Longlius wrote:
           | This isn't a complex problem - this is something you do with
           | built-in standard libraries in pretty much any programming
           | language. Like I would expect anyone who claims to know even
           | basic file I/O in their given language to be able to produce
           | a mostly working version of this in less than 30 minutes.
        
             | kragen wrote:
             | 80% of the time they'll produce a subtly biased shuffle,
             | most people don't intuitively know the fisher-yates method
             | unless they've been taught it
             | 
             | like, try this                   import collections, random
             | def shuffle(xs):  # naive intuitive shuffle             for
             | i in range(len(xs)):                 j =
             | random.randrange(len(xs))                 xs[i], xs[j] =
             | xs[j], xs[i]              def first_of(n):             xs =
             | list(range(n))             shuffle(xs)             return
             | xs[0]              print(collections.Counter([first_of(3)
             | for i in range(100_000)]))
             | 
             | note that 1 comes out first 25% more often than 2, but with
             | a fair shuffle all three should have an equal chance of
             | being first
             | 
             | even without running it you can figure out logically that
             | it must be biased in some way because there are 3! = 6
             | possible permutations and 33 = 9 equally likely sequences
             | of choices for j (each producing one of those
             | permutations), and 9 is not divisible by 6, so some of
             | those permutations have to be more likely than others
             | 
             | so i think this algorithm is a good one to get from a
             | library if its randomness is important to you
             | 
             | not from chatgpt, which commonly does give you subtly buggy
             | code
        
           | kragen wrote:
           | if you don't know the algorithm you could easily get it
           | subtly wrong
           | 
           | but the only method involved here is string.strip(), so i
           | don't think this is an example of the problem you describe
           | import random         n = 100         ws = [line.strip() for
           | line in open('/usr/share/dict/words')]         for i in
           | range(n):             j = random.randrange(i, len(ws))
           | ws[i], ws[j] = ws[j], ws[i]             print(ws[i])
           | 
           | (did i fuck that up)
           | 
           | and yeah probably calling random.sample would be better. and
           | usually import random is better than writing your own rng.
           | but not always
        
         | rrauenza wrote:
         | Does chatgpt know the reservoir sampling method?
         | 
         | https://en.wikipedia.org/wiki/Reservoir_sampling
        
         | jxy wrote:
         | I guess the point is that there are different levels of coders.
         | For coders who can't write code that print a hundred random
         | lines from a dictionary file, GPT-4 is already a significant
         | threat.
         | 
         | On the other hand, even if you can write it, does it mean you
         | should write it? How much time does it cost you to write it?
         | How much money your company is paying you in that amount of
         | time? Is it more economical for GPT-4 to do it?
         | 
         | So I was curious and decided to ask the mistral-7b-instruct,
         | and it gave me the following,
         | 
         | > Here is an example of a Python script that reads a dictionary
         | file and prints 100 random lines:                   ```python
         | import random                  with open('dictionary.txt', 'r')
         | as f:             lines = f.readlines()
         | random_lines = random.sample(lines, 100)                  for
         | line in random_lines:             print(line.strip())
         | ```
         | 
         | > This script uses the `random` module to select a random
         | subset of the lines in the file. The `open` function is used to
         | open the file and read its contents into a list of strings,
         | which are then passed to the `random.sample` function to select
         | 100 random lines. Finally, the selected lines are printed using
         | a for loop and the `strip` method to remove any leading or
         | trailing whitespace.
         | 
         | > Note that this script assumes that the dictionary file is
         | located in the same directory as the script and is named
         | "dictionary.txt". You may need to modify the script to specify
         | the correct path and filename for your dictionary file.
        
           | klipt wrote:
           | Not bad, but suppose the dictionary is too big to load into
           | memory - could AI suggest an online (reservoir sampling)
           | algorithm as an alternative?
        
             | coder543 wrote:
             | Sure: https://chat.openai.com/share/0a3e52c6-1db8-422a-a98c
             | -cb3500...
             | 
             | I laid out the constraints, but I did not mention reservoir
             | sampling at all. The script seems to work as expected when
             | I run it against a dictionary file.
        
               | klipt wrote:
               | Not bad, but suppose the dictionary has n lines and you
               | only want to randomly sample k=100 of them, where n is so
               | huge that you don't want to scan over the whole file at
               | all.
               | 
               | Can you use random access into the file to sample k lines
               | in O(k) time instead of O(n) time?
        
               | coder543 wrote:
               | That is a problematic request for _multiple_ obvious
               | reasons, and for those same reasons, ChatGPT resisted
               | providing an implementation that didn 't require indexing
               | the file. By telling it "no indexing is allowed, provide
               | a best effort solution" it relented and provided a best
               | effort solution.
               | 
               | Here is the provided solution and some discussion of the
               | problems with the problem itself: https://chat.openai.com
               | /share/54807663-17ca-4e7d-bc76-cd3cf3...
        
               | klipt wrote:
               | > That is a problematic request for multiple obvious
               | reasons
               | 
               | I'd prefer to think it's more like a real engineering
               | problem, and less like a simple interview question :-)
               | 
               | And it definitely shows the limits of GPT here: it
               | pointed out that the ends of the file might be tricky,
               | but ignored the very conceptually simple solution of
               | considering the file as circular (if you go past either
               | end you simply wrap around).
               | 
               | And it misses the real problem with its implementation:
               | the probability of sampling each line is now directly
               | proportional to the length of the line before it (because
               | it seeks into that line first and then skips it!)
               | 
               | So the word after "begins" is twice as likely to come up
               | as the word after "and".
               | 
               | PS in the case of dictionary words with a length limit of
               | say 30 letters, there is still an O(k) general solution
               | using rejection sampling.
        
               | coder543 wrote:
               | If you had actually read what it wrote:
               | 
               | "Remember, this is a probabilistic approach and works
               | well if the lines in your file are roughly the same
               | length. If the line lengths vary significantly, some
               | lines will have a higher or lower chance of being
               | selected."
               | 
               | It had already addressed "the real problem with its
               | implementation" that you pointed out.
               | 
               | > PS in the case of dictionary words with a length limit
               | of say 30 letters, there is still an O(k) general
               | solution using rejection sampling.
               | 
               | Again, what ChatGPT wrote:
               | 
               | "In a typical scenario where lines can have variable
               | lengths, true O(k) random sampling isn't feasible without
               | some prior knowledge about the file."
               | 
               | Knowing that the limit is 30 characters _without
               | question_ counts as  "some prior knowledge".
               | 
               | As an interviewer, it sounds like you're not hearing what
               | the candidate is saying.
               | 
               | > And it definitely shows the limits of GPT here
               | 
               | I don't think anyone here is claiming that ChatGPT is
               | limitless. The topic is "a coder considers the waning
               | days of the craft", not "a coder considers the bygone
               | days of the craft." ChatGPT is capable of solving many
               | real world problems already. If it continues improving,
               | some people are concerned about what that could mean,
               | especially for less experienced developers.
               | 
               | How many people have you interviewed with that
               | brainteaser that have actually provided the complete
               | solution you're looking for? Vanishingly few, I would
               | imagine, unless you were dropping some serious hints.
               | It's not a real world problem. Most brainteasers have
               | solutions that are "conceptually simple" once you already
               | know the solution.
               | 
               | > I'd prefer to think it's more like a real engineering
               | problem, and less like a simple interview question
               | 
               | It's absolutely not, though. It's _exactly_ like the
               | infamous trick questions that many tech interviews are
               | known for, which have nothing to do with _real_
               | engineering that you would encounter on the job.
               | 
               | You might as well have someone _invert a binary tree_ for
               | all the value that it provides.
        
               | klipt wrote:
               | > How many people have you interviewed with that
               | brainteaser
               | 
               | Zero, I just wanted to push the limits of the question in
               | this thread to see what GPT did.
               | 
               | But you seem to not be enjoying that so let's call this
               | quits.
        
             | louai wrote:
             | ChatGPT 4
             | 
             | > Use reservoir sampling to get 100 random lines from a
             | dictionary that doesn't fit into memory. Give me an
             | implementation in Python.
             | 
             | > Reservoir sampling is a great choice for randomly
             | selecting a fixed number of items from a stream of unknown
             | size, especially when the entire dataset cannot fit into
             | memory. Here's a Python implementation for selecting 100
             | random lines from a large file, like a dictionary, using
             | reservoir sampling:                 ```python       import
             | random            def reservoir_sampling(file_name, k):
             | reservoir = []           with open(file_name, 'r') as file:
             | for i, line in enumerate(file):                   if i < k:
             | # Fill the reservoir array
             | reservoir.append(line.strip())                   else:
             | # Randomly replace elements in the reservoir
             | # with a decreasing probability.                       #
             | Choose an integer between 0 and i (inclusive)
             | j = random.randint(0, i)                       if j < k:
             | reservoir[j] = line.strip()           return reservoir
             | # Example usage       file_path =
             | 'path_to_your_large_file.txt'  # Replace with your file
             | path       sampled_lines = reservoir_sampling(file_path,
             | 100)       print(sampled_lines)       ```
             | 
             | > This script opens a file and reads through it line by
             | line. For the first 100 lines, it adds them directly to the
             | reservoir. For each subsequent line, it randomly decides
             | whether to replace an existing line in the reservoir with
             | the new line. The probability of replacing decreases as it
             | progresses through the file, ensuring each line has an
             | equal chance of being included in the final sample.
        
           | fiddlerwoaroof wrote:
           | <dict shuf | head -n100
        
             | qbrass wrote:
             | <dict shuf -n 100
        
               | coder543 wrote:
               | Similarly: https://chat.openai.com/share/bc4a533e-c007-48
               | ea-9232-0e548b...
               | 
               | The "<" is actually an unnecessary additional character
               | to type.
        
               | fiddlerwoaroof wrote:
               | Except, I intentionally don't use either form because
               | they don't extend nicely (and I dislike using flags when
               | I could use another pipe segment or positional arguments
               | when I could use standard input). I can iterate quickly
               | by adding pipeline segments on top of the basic formula,
               | because all of the segments have the same general shape
               | and "calling convention".
               | 
               | Finally, because I've built up familiarity with the shell
               | over my career, I can come up with this formula as fast
               | as I can type it. At this point, ChatGPT would slow me
               | down: (1) because this sort of thing is basically muscle
               | memory and (2) I have to actually think about the code
               | ChatGPT produces to verify it is correct, which is almost
               | as difficult as producing it in the first place.
        
         | hyperthesis wrote:
         | To be really fair, there are levels of programming. The easiest
         | level is traditionally vulnerable to automation. There's a lot
         | of "accidental complexity"
         | (https://wikipedia.org/wiki/No_Silver_Bullet), e.g. ffmpeg,
         | git; even in recalling syntax and idiom of an infrequently used
         | tool, e.g. bash, jq.
         | 
         | Once upon a time, developers had to pore over manpages, paper
         | textbooks, or memorize it. Then came google. Next,
         | stackexchange. And now GPT-4 - which is kind of a search engine
         | plus rudimentary synthesis.
         | 
         | But let's be clear. This is low-hanging fruit. It's a poor
         | substitute for actual thought. And surely _we_ are safe.
        
           | malux85 wrote:
           | I've been coding for 20 years commercially now, and I've come
           | to define good coders - and indeed intelligence itself as ...
           | adaptability.
           | 
           | Not fluid intelligence, not creative velocity, not creative
           | originality, not oodles of domain knowledge ... adaptability.
           | 
           | A new tool comes along? Adapt. A new idea breaks a long
           | established paradigm? Adapt. A new skill is required? Adapt.
           | As I get older adapting gets easier, because I treat ideas
           | like objects - useful until they are not. No part of me
           | cannot change, and my certainty in myself comes not from a
           | bank of sanctified ideals I worship but in the knowledge that
           | whatever comes, I will adapt and thrive. Fat client, thin
           | client, centralised, edge, micro services, monolithic, ideas,
           | tech, frameworks, everything is fluid and that's what keeps
           | things fun.
           | 
           | Same goes with the arrival of GPT, I embraced it, learnt it's
           | strengths and weaknesses and now I estimate I'm maybe 2x more
           | productive because of it, that means more time of fun things
           | that interest me.
           | 
           | Adapt, adapt, adapt
        
           | julianeon wrote:
           | I know that last line is wry but I feel like people need the
           | reminder:
           | 
           | The graveyards are filled to overflowing with companies that
           | were challenged by low-end 'crappy' products and said 'they
           | are going after the bottom of the market, we are safe'... a
           | few years before they entered a terminal decline, and a
           | decade before they went extinct.
        
             | hyperthesis wrote:
             | I think thought is different; but I also see no barrier to
             | strong AI. Jobs might be the least of our problems at that
             | point.
        
         | faeriechangling wrote:
         | So a search engine user was surpassed by man using search
         | engines and this new search tool called GPT4?
         | 
         | Programming is doomed!
        
         | hyperthesis wrote:
         | leftpad
        
         | simonw wrote:
         | He didn't say he couldn't do it. He said that while he was
         | getting into the task, Ben had already fixed it.
        
           | k0k0 wrote:
           | Somebody that has claimed 20 years of experience and doesn't
           | at least know instantly (this doesn't require "thinking"
           | about for minutes) that this is a one liner in the shell or a
           | few lines of pick your poison script, Perl, Python, Ruby, who
           | cares, even if they can't remember the specifics is not an
           | expert in programming.
           | 
           | And I get it, there are highly specialized people that get
           | very deep in the weeds in maybe HPC or embedded, even so most
           | of them will at least still be aware, but moreover these
           | people lack the knowledge to comment on programming or
           | software engineering in the large, I wouldn't call them
           | experts outside their limited domain if they really can't
           | begin to know where to look to do a fucking permutation of a
           | word list.
           | 
           | The old saying that for some 20 years of experience is 1 year
           | and 19 repeats probably applies.
        
         | Izkata wrote:
         | Yeah, when I read that I also tried the first thing that popped
         | into my mind - extremely crude/slow but works in bash and only
         | took like 20 seconds without looking anything up:
         | cat /usr/share/dict/words | while read LINE; do echo "$RANDOM
         | $LINE"; done | sort -h | head -n 100 | awk '{ print $2 }'
        
           | arp242 wrote:
           | sort -R is fairly widely supported, although arguably that's
           | cheating.
        
             | Izkata wrote:
             | I thought something like that might exist and was tempted
             | to check for that, but given the context I really wanted to
             | do it without looking anything up. I see now there's also
             | "shuf".
        
         | giantg2 wrote:
         | Every time I hear coding referred to as a craft I sort of hate
         | it. On one hand I love the idea of it being a highly skilled
         | craft - knowing the intricacies of the language and the machine
         | to solve any problem, being a respected expert, producing a
         | product worthy of pride. On the other hand, most of what we do
         | is display [some content] on [some page] (probably sloppily due
         | to deadlines), or print 100 random entries from a file...
        
           | winrid wrote:
           | well, in that regard you're a fancy carpenter assembling IKEA
           | dressers. Carpentry is still a craft.... most people just
           | need IKEA. :)
        
             | giantg2 wrote:
             | Not really. My skills have drastically declined over the
             | years because I rarely get a chance to exercise them. On
             | top of that, it seems I'm switching languages/stacks
             | frequently. So it's more like I'm a carpenter for a little
             | while, then a plumber, then an electrician.
        
       | slowhadoken wrote:
       | Programming, like math, is its own reward. I think being ignorant
       | of the two is a luxury with a hidden cost.
        
       | AndrewKemendo wrote:
       | Yeah but they'll never master system design/architecture so I'm
       | safe!
       | 
       | /s
       | 
       | We all knew it was coming
        
       | mastazi wrote:
       | If you want to become an architect, you don't need previous
       | experience as a bricklayer.
       | 
       | Many other fields besides construction are similar: most
       | positions don't require previous experience as "manual labour".
       | 
       | Software development was an exception to the rule, maybe it no
       | longer is.
        
       | safaa1993 wrote:
       | To be blunt, i got into programming (nearly 30 years ago) for the
       | results, not the process. In fact if anything i consider the
       | process a sort of burdensome necessity on the way to getting the
       | results i'm actually after.
       | 
       | Anything that shortens the path is good by me.
        
       | xbmcuser wrote:
       | There is a lot of office work that could be automated as chat gpt
       | etc get better more and more efficiency experts will crop up
       | selling efficiency ie less workers/cost/salary to do the same
       | jobs.
        
       | fungiblecog wrote:
       | A eulogy for programming as reinventing the wheel over and over
       | again, possibly. But programming as a creative endeavour, no
       | chance.
        
       | simonw wrote:
       | > What I learned was that programming is not really about
       | knowledge or skill but simply about patience, or maybe obsession.
       | Programmers are people who can endure an endless parade of
       | tedious obstacles.
       | 
       | This captures the reason I'm optimistic about AI-assisted
       | programming.
       | 
       | The learning curve for getting started programming is horribly
       | steep - and it's not because it's hard, it's because it's
       | frustrating. You have to sweat through six months of weird error
       | messages and missing semicolons before you get to the point where
       | it feels like you're actually building things and making
       | progress.
       | 
       | Most people give up. They assume they're "not smart enough" to
       | learn to program, when really they aren't patient enough to make
       | it through all of that muck.
       | 
       | I think LLMs dramatically impact that initial learning curve. I
       | love the idea that many more people will be able to learn basic
       | programming - I think every human being deserves to be able to
       | use computers to automate tedious repetitive tasks in their
       | lives.
        
         | javajosh wrote:
         | _> You have to sweat through six months of weird error messages
         | and missing semicolons before you get to the point where it
         | feels like you're actually building things and making
         | progress._
         | 
         | Computers are rude and honest and humans prefer a pretty lie to
         | an ugly truth. Programmers must appreciate the ugly truth in
         | their day-to-day lives more than any other profession.
         | (Physical engineering and construction workers and repairers
         | also need this virtue, but less often since their feedback
         | cycles are slower.)
        
           | k0k0 wrote:
           | More than doctors? Feedback cycles in the OR and ICU get
           | pretty fucking short.
           | 
           | I do think the overall premise is silly, programming isn't
           | that special in this regard in my opinion. Most professions
           | are like this, they just might not be the most visible ones
           | like politics, journalism, show biz.
           | 
           | Software developer have more to learn from other professions
           | than they often think (the old engineering professions
           | understand this a bit better)
        
         | quickthrower2 wrote:
         | It is the same messy tedious thing with LLMs though. You still
         | have the complex brittle artefact that is code.
         | 
         | LLMs writing code is the beginning, but low or no code is more
         | ideal for most people. With LLM assistance.
        
           | ryanjshaw wrote:
           | Until the LLMs get better.
           | 
           | I just asked ChatGPT a thing, and then on a hunch I asked if
           | there wasn't a built-in function that does the same, and it
           | indeed remembered there is such a function.
           | 
           | What if that second question had been automatically and
           | transparently asked? What if there is a finite list of such
           | "quiet reflecting" questions that dramatically increases the
           | value and utility of the LLM output?
        
             | quickthrower2 wrote:
             | Yes. Thats like a langchain. The only issue then is latency
             | as it talks to itself.
        
         | asdff wrote:
         | Honestly I think its a step back. This is like saying google
         | translate has made everyone fluent in Spanish. At the end of
         | the day you still need to do some vetting and understanding how
         | code works to effectively use chatgpt. the actual writing of
         | the code was never the hard part of software development. If
         | this thing is only speeding up developers by six months time,
         | then thats kind of a waste of compute compared to just offering
         | computer science classes in schools imo, plus you'd get a much
         | stronger generation of engineers from the latter.
        
           | simonw wrote:
           | > At the end of the day you still need to do some vetting and
           | understanding how code works to effectively use chatgpt. the
           | actual writing of the code was never the hard part of
           | software development
           | 
           | I completely agree with you on that. Most of being a good
           | software engineer is skills that ChatGPT won't help you with.
           | 
           | But you can't even start to learn those skills if you quit in
           | the first six months because of the vertical learning curve
           | tied to all of that syntax trivia.
        
         | mike_hearn wrote:
         | Definitely. And think about all the other ways LLMs can improve
         | quality of life!
         | 
         | In any complex software project with lots of users there is
         | guaranteed to be an effectively endless backlog of bug tickets
         | that are, in effect, abandoned. I think a few months ago some
         | bug got fixed in Firefox that was ~25 years old. In most
         | compilers and frameworks there's going to be a pile of tickets
         | of the form, "improve error message when X happens" that just
         | never floats to the top because programmer time is too
         | expensive to justify working on it. Over time the difference
         | between a senior engineer and a junior becomes not so much
         | intelligence or even actual experience but just the accumulated
         | scar tissue of all the crap we have to wade through to make
         | anything work, thanks to the giant backlogs of bugs and stupid
         | usability problems that never get solved before the product
         | reaches EoL anyway.
         | 
         | For AI to fully replace programmers is going to require quite a
         | few more major breakthroughs, but setting one loose on a bug
         | tracker and asking it to churn out trivial fixes all day is
         | well within reach. That will both make human programming more
         | fun, and easier to learn.
        
         | CaptainFever wrote:
         | > I think LLMs dramatically impact that initial learning curve.
         | I love the idea that many more people will be able to learn
         | basic programming - I think every human being deserves to be
         | able to use computers to automate tedious repetitive tasks in
         | their lives.
         | 
         | This honestly made me feel so happy. I'm reminded of the
         | average person who is bound by the limitations of the apps they
         | use, the popularity of "How to Automate Using Python" books...
         | 
         | With this new tech, people are no longer bound by that
         | limitation. I think that's pretty cool.
        
       | tayo42 wrote:
       | Whats the workflow for writing code like the app mentioned with
       | chat? My experience was like the authors, its a massive
       | environment set up, plus even small projects have 10s of files.
       | How does the model keep all that in context plus changes. How do
       | you start a new session? I checked some small cpp project and the
       | code alone is 168,000 words, so thats already larger then the
       | gpt4 context, that doesn't even include iteration and chat
       | history. IDK where you would even get started.
       | 
       | Also, dont really see the comparison between programming and
       | chess. In chess you can still compete to be the best human chess
       | player. Coding or working in corporate america doesnt really have
       | that.
        
       | maerF0x0 wrote:
       | my understanding of history is the Catholic church wielded great
       | power over the populace by having both literacy, but and also in
       | Latin (a less accessible language). With 99 theses and a German
       | bible people could easily get their religion on without the
       | priestly class. This feels like a metaphor for what has happened
       | in computing.
        
         | DeepSeaTortoise wrote:
         | Latin was the most accessible langague in all of Eurasia from
         | the time of the Roman empire until the start of industrial
         | revolution. The Catholic church tought Latin to everyone who
         | either became a member of the church, payed a small fee in
         | either money or labor and in many cases for free.
         | 
         | People regularly went on pilgrimages to remote places all
         | throughout Europe and perfectly understood each other, because
         | nearly everyone could speak Latin. Even when the Portugese
         | landed in China they were greeted in Latin.
         | 
         | At somepoint the upper classes started talking more and more in
         | regional dialects and older languages, which then spread to the
         | normal people. The church reacted pretty much immediately to
         | this trend by requiring prayers and certain parts of the mess
         | to also be conducted in these regional languages (somewhere
         | around the 8th century, I think?).
         | 
         | What was low initially were the literacy rates, because books
         | were incredibly expensive. Which didn't mean that the people
         | couldn't read or write, just not to the degree necessary to
         | read or copy the bible in Latin, which was the most available
         | book at the time.
        
       | gwoolhurme wrote:
       | As someone who bounces back and forth between I will be okay to
       | anxiety that I am doomed. I have no idea how to prepare for this
       | future...
        
       | autonomousErwin wrote:
       | I think one of the undervalued things is the hack-iness/curiosity
       | nature of (good) developers which will be hard to replace. I
       | imagine there'll be a very short time where developers are in
       | even more demand than they are now and that will quickly wane as
       | everyone realises that the only job is entrepreneurship.
        
       | calibas wrote:
       | Until there's actual general AI, we'll still need people that
       | understand how things work on a fundamental level. You can use AI
       | created code, but you still need someone to tie everything
       | together. You're also going to want an experienced person to
       | debug when something goes wrong.
       | 
       | I think it's funny how terrified people are at the prospect of AI
       | and machines doing most of the work for human beings. If used
       | intelligently and equitably, it'll mean more free time and
       | prosperity for everyone.
        
         | summerisle wrote:
         | The first point seems to be generally accepted, though the
         | second about "prosperity for everyone" presupposes some very
         | drastic social changes. Automation tends to make a portion of
         | people more prosperous at the cost of displacing some other
         | portion. In order to realize prosperity for everyone, there
         | must be minimal displacement and likely a robust social safety
         | net to enable the displaced to recover and attain prosperity at
         | some later time.
        
       | bruce511 wrote:
       | Obviously we can discuss the merits of GPT4, but actually my
       | first issue is with his root question;
       | 
       | >> I would make sure that my kids could program computers. It is
       | among the newer arts but also among the most essential
       | 
       | I've got kids. 1 can program. 1 tried it, and didn't like it. 1
       | just rolled her eyes at me.
       | 
       | Turns out, for most people, programming is not like reading or
       | writing at all. Got a question? Ask Google (or GPT) or Alexa. 99%
       | of people can't code, and will never need to code.
       | 
       | You may as well argue that cooking healthy food is a universally
       | needed skill. Or riding a bicycle, or kicking a ball. All are of
       | course really helpful life skills, but lots of people get by in
       | the world just fine without them.
       | 
       | So as one parent to another, I can tell you that you don't need
       | to worry about this. It's good you have plans for your children.
       | But don't worry too much about it. Turns out children will learn
       | what they are interested in, and pretty much ignore the rest.
       | They'll grow up, change, mature and become functional people in
       | their own right.
       | 
       | No doubt you'll get plenty of eye rolls along the way.
        
         | danielmarkbruce wrote:
         | Would you say the same about math or reading?
        
           | csnover wrote:
           | I'm not the op--they explicitly stated programming is _not_ a
           | skill like reading or writing--but I'll go down this
           | rhetorical path for fun and say: sure, why not?
           | 
           | The utopian aim of technology is all about offloading
           | burdensome work so we can focus more on the things we enjoy.
           | If reading is a burden to someone, why not let them use a
           | TTS? If long division is a burden, why not let them use a
           | pocket calculator? They'll probably learn enough to get by
           | even if they never get to the point of reading Dostoevsky by
           | sight.
           | 
           | Lest you say, "well but those skills are essential!", humans
           | needed food to survive before we needed mathematics or
           | written language, yet we've been been OK outsourcing farming
           | for at least a century because we've experienced how it frees
           | us up to pursue other things. And, to that end, we'll
           | probably be facing some pretty extreme civilizational crisis
           | if we get to the point that someone without basic maths
           | skills can't find a calculator.
        
             | danielmarkbruce wrote:
             | I'm not talking about dreams or utopia. Just real modern
             | life - one is _way_ behind opportunity wise if they can 't
             | read and can't do math. At some point, that wasn't the
             | case. Many signs point to being able to write instructions
             | for a computer being a core skill for a good life.
             | 
             | If your kid rolls their eyes and says "no math/reading for
             | me thanks", you don't just accept it and figure they'll
             | find what they love - you figure some way to make them
             | learn and it's at least a few months of hard work for a
             | kid(and parent) to sort of get escape velocity .
             | 
             | It's possible that programming will end up in the same
             | spot.
        
               | bruce511 wrote:
               | Possible but unlikely. I mean programming in the "code"
               | sense.
               | 
               | We all "program" computers every day (when you turn on a
               | microwave, when you talk to Alexa, when you do a budget
               | in Excel, or write a Doc in Word.)
               | 
               | Coding is not an essential skill. It's clearly a useful
               | skill, but pretty much no-one in my
        
               | bruce511 wrote:
               | Possible but unlikely. I mean programming in the "code"
               | sense.
               | 
               | We all "program" computers every day (when you turn on a
               | microwave, when you talk to Alexa, when you do a budget
               | in Excel, or write a Doc in Word.)
               | 
               | Coding is not an essential skill. It's clearly a useful
               | skill, its a valuable skill, but pretty much no-one in my
               | real life can code. And from what I've learned teaching
               | others most people -can't- code, regardless of education.
               | 
               | I fly to place all the time, but I outsource the
               | piloting. Programmers both argue that coding should be
               | learnt by everyone, and at the same time most that it's
               | getting easier (and hence less valuable) to do it.
        
           | hiAndrewQuinn wrote:
           | That most people in the world get by just fine without them?
           | Yeah, actually. Isn't the median reading level like 8th grade
           | or something in the States?
        
             | danielmarkbruce wrote:
             | Do they get by just fine without them? I haven't tried
             | being a median person in the united states, it doesn't look
             | easy tbh.
        
           | bruce511 wrote:
           | Reading is a foundational skill. (Its necessary as a
           | precursor to pretty much everything.) Writing (as in can
           | construct words) pretty much goes with reading. Writing (as
           | in quality, coherent, communication) is clearly less
           | ubiquitous.
           | 
           | Math is something that everyone who can do math, thinks is
           | essential. Unlike reading though there's a continum of skills
           | from iteracy, to arithmetic, to calculus and so on. Very few
           | people know the square root of -1 or use it once a year.
           | 
           | Of course you meant "math" as in basic arithmetic. And sure
           | life is easier with that than without it. But lots of kids go
           | through life with very rudimentary math skills. They function
           | just fine.
           | 
           | Does good reading Writing and math skills open doors? Sure it
           | does. Does knowledge of Word or Excel or Windows or
           | Quickbooks open doors? Sure. Does knowing how to cook a meal,
           | feed others, open doors? Sure. There are a million ways to
           | add value to society. Coding is immensely valuable to those
           | who can do it well. But it's not foundational like reading or
           | writing.
        
             | danielmarkbruce wrote:
             | Yeah, I'm saying - it could be now, or it could be soon.
             | Math and reading weren't always foundational, it's a pretty
             | recent thing.
        
               | mike_hearn wrote:
               | Maths, yes, but it's also not really foundational. Most
               | people don't need to do maths once they leave high
               | school, not even basic arithmetic. Machines do it for
               | them better than they ever could. The heavy emphasis on
               | maths in the school curriculum is probably a mistake and
               | should be rolled back.
               | 
               | Reading and (basic) writing was always foundational. You
               | can go back to ancient Egypt and there are merchants who
               | have mastered a simplified form of hieroglyphs. They
               | weren't doing maths any more sophisticated than adding
               | and subtracting small numbers, but they needed to know
               | writing.
        
               | danielmarkbruce wrote:
               | Reading can't have been always foundational. Most people
               | couldn't read a few hundred years ago(according to
               | practically any source ever). The printing press has been
               | around less than a thousand years. Paper has only been
               | around a few thousand years or something. Ancient Egypt
               | is like 5 thousand years ago. The agricultural revolution
               | is like 10 thousand years ago and the foundational skills
               | would have changed from running, hunting, foraging to
               | planning out fields, strength and other farming
               | skills.Best guess is that humans have been around 100
               | thousand years give or take.
               | 
               | What is foundational changes over time and depends on
               | what skills you are trying to build. Given math and
               | reading have only become foundational recently, there is
               | no reason to think the skills considered to be
               | foundational won't continue to evolve.
        
           | kumarvvr wrote:
           | Reading is one of the major means of information gathering
           | for humans, apart from introspection, inspection and vocal
           | communication.
           | 
           | It is not comparable.
        
       | pdimitar wrote:
       | It's quite amazing how divisive the AI topic turned out to be in
       | HN.
       | 
       | My opinion is that AI proponents extrapolate too much and too
       | optimistically; they always assume linear or simply uninterrupted
       | improvement, and they assume they breadth of AI will increase as
       | well. I see no proof for any of those so far.
       | 
       | Time will tell, obviously, and they may very well turn out to be
       | correct. I just wonder why people get so worked up about it.
       | 
       | Personally I also don't understand why people want the programmer
       | profession to cease to exist but oh well. I guess envy and
       | schadenfreude are factors. I wouldn't know because I don't wish
       | anyone unemployment.
        
         | adastra22 wrote:
         | AI proponent typically assume exponential growth. They'd
         | consider linear to be pessimistic :)
        
           | ultra_nick wrote:
           | Compound growth has been the most realistic historically.
        
             | adastra22 wrote:
             | All exponentials in this context are actual S-curves. An
             | S-curve matches an exponential historically, until it
             | suddenly doesn't.
        
         | rchaud wrote:
         | AI proponents need to provide the equivalent of a JSfiddle or
         | Codepen when saying "AI can fix this" on long-standing
         | challenges. Something that shows a rough prototype of how AI
         | would be used to solve the problem.
         | 
         | That would greatly help improve the perception of such people
         | who otherwise sound like the mindless AI boosters posting
         | shallow engagement-bait on Twitter.
         | 
         | Crypto-optimism has poisoned the well. Too much unchecked
         | boosterism.
        
           | pdimitar wrote:
           | I've been saying the variations of the same and I'm always
           | mercilessly down voted. Guess they have taken over HN?
        
       | EZ-E wrote:
       | I don't see it - and by that I don't mean I don't think AI can
       | write good code and get better over time. I just don't see how it
       | would work as a workflow to replace (most) devs by AI.
       | 
       | If I take a junior programmer's task, say, creating CRUD
       | endpoints. Describing the requirement in a way that matches
       | exactly what I want will probably take more time that doing the
       | coding assisted by something like copilot. Can we really imagine
       | a non technical user using an AI having it do development from A
       | to Z? What if the generated code has a bug, can we really imagine
       | that at no point someone will need to be in the loop? Even if a
       | tech person intervenes in the case of a bug how much time would
       | be lost to investigate what the AI wrote and trying to understand
       | what happened in retrospect - the time or cost saved to write the
       | code would be lost quickly. Writing code is a small part of the
       | job after all. LLMs are good at generating code, but they are
       | fundamentally not problem solvers.
       | 
       | The technology is amazing but I think LLMs will just be another
       | tool in the arsenal for devs. It's also an amazing tutor. It can
       | avoid having to call a developper for some self contained
       | problems (writing a script to scrape content from a web page for
       | example).
        
         | creesch wrote:
         | I agree in the sense that, in its current state, will not
         | replace devs entirely. But it can make the workflow much easier
         | for many devs, to the point where you'd possibly need less of
         | them or can get more done with the same amount.
         | 
         | I commented about somewhere else in this thread:
         | https://news.ycombinator.com/item?id=38259425
         | 
         | But basically I have found that it is a really powerful general
         | purpose assistant/brainstorming pall for a lot of the things
         | that would normally eat up a lot of time.
         | 
         | To expand on that, it isn't even limited to code, but also
         | surrounding tasks. I have used it to round out documentation in
         | various ways. Either by giving it a lot of the rough
         | information and asking to write coherent documentation for me,
         | or by giving me feedback.
         | 
         | The other way around it has helped me onboard on new projects
         | by giving it bits and pieces of written text where I had
         | trouble understanding what the document said.
         | 
         | In the same sense when dealing with management bullshit I have
         | used it to just presenting it with what was asked, telling it
         | my view on it and then asking it to come up with responses
         | based around certain perspectives. Which meant I had to spend
         | less mental bandwidth on inane stuff there as well.
         | 
         | And yes, a lot of it can also be achieved in a team with other
         | people. But, those people aren't always around and also have
         | their own things to do. The advantage of tools like ChatGPT is
         | that they don't get tired, so I can really channel my inner
         | toddler and just keeping asking "why" until I am satisfied with
         | the answer. Even if there are other people available to turn to
         | for help, ChatGPT can also help in refining the questions you
         | want to ask.
        
         | devjab wrote:
         | I've spent a long time in the public sector digitalisation in
         | Denmark and where every other "no-code/low-code" or whatever
         | you call the tools that claim to not require programmers have
         | failed miserably GPT is succeeding. Yes, yes, I know some of
         | you sell these tools and some of you have even been very
         | successful in that effort but in my anecdotal experience from
         | 98 municipalities, it's never once worked, not for long anyway.
         | 
         | By contrast we now have digitally inclined employees creating
         | and automating things with the help of CharGPT. Much of it is
         | terrible in terms of longevity the same way the previous RPA or
         | workflow tools were, but unlike those, people can now also
         | maintain them. At least as long as you keep the digitally
         | inclined employees onboard, because they're still not software
         | developers and things like scaling, resource usage,
         | documentation, error handling and so on isn't being done. But
         | it could be, at least for around 90% of it which will frankly
         | never really matter enough to warrant an actual software
         | developer anyway because it mostly "frees" a few hours a month
         | through its automation.
         | 
         | But with this ability, and the improvements in things like
         | SharePoint online (and likely it's competition that I don't
         | know about) a lot of the stuff you'd need either staffed
         | software developers or external consultants to handle, can be
         | handled internally.
         | 
         | This isn't the death of software engineering as such. Like I
         | said, it doesn't scale and it's also going to create a bunch of
         | issues in the long term as more and more of this "amateur"
         | architecture needs to function together, but at the same time,
         | if you need to Google how to get some random lines of text from
         | a dictionary, then I'm not sure you aren't in danger either.
         | And I really don't say this to be elitist, but everything you
         | google program can be handled fairly easily by GPT and "good
         | enough" that it's simply going to happen more and more in our
         | industry.
         | 
         | If you look into my history you'll see that I'm both impressed
         | and unimpressed by LLMs (well GPT, let's be honest the others
         | all suck). This is because it really hasn't been able to help
         | us develop anything in our daily work. It writes most of our
         | documentation, and it's scary good at it. It also does a lot of
         | code-generation, like auto-generating types/classes/whatever
         | you call them from Excel data mapping sheets + CRUD
         | functionality. Sure, we did that before by writing some short
         | CLI scripts, but now GPT does it for the most part. So it's not
         | like we don't use it, but for actual well designed code that
         | handles business logic in a way that needs efficiency? Yeah,
         | it's outright terrible. Maybe that will change over time, so
         | far it's not improved in the slightest.
         | 
         | But look at our industry as a whole. I know a lot of HN users
         | work in American Tech or startups, but in the European non-tech
         | Enterprise industry and the massive IT and consultant industry
         | supporting it, there are a lot of developers who basically do
         | what GPT excels at, and as these tools get better, we're
         | frankly just going to need a lot fewer software developers in
         | general. Most of those people will likely transition into other
         | jobs, like using GPT, but many won't as other professions start
         | doing their coding themselves.
         | 
         | What worries me the most, however, is that we still teach a lot
         | of CS students exactly what GPT is good at. I'm an external
         | examiner for CS students at academy level, and GPT can
         | basically ace all of their curriculum because it's mainly
         | focused on producing a lot of "easy" code for businesses. I'm
         | scared a lot of those students are going to have a rough time
         | once LLMs really pick up, unless the curriculum changes. It
         | won't change in time though, because it's already been sort of
         | "outdated" for a decade because of how slowly our higher
         | educations adapt to the real world here in Denmark.
        
           | d3ckard wrote:
           | What you're describing is really about empowering users and
           | pushing code where it was not possible before due to cost -
           | so basically confirming efficiency paradox.
        
         | mrtksn wrote:
         | At this stage, it's like a junior. It's pretty useful for the
         | boilerplate or mundane stuff and even with implementation of
         | algorithms from human description to computer code.
         | 
         | It's also very good at converting a code from one language to
         | another and getting stuff done when directed properly.
         | 
         | I can definitely see how large impact it will have on the
         | employment prospects of many. It's not replacing the engineers
         | yet, but those who specialise in a tech as an implementation
         | specialist are screwed. Even the increased productivity alone
         | will reduce the demand.
        
           | vasco wrote:
           | In most real world systems increased efficiency leads to more
           | demand, not less - barring physical constraints. Usually
           | because we can now apply the _thing_ to way more complex
           | scenarios. I predict way more software will be created per
           | year and more complex software will exist and evolve at a
           | faster pace.
           | 
           | Once you make agriculture more efficient we can't really eat
           | way more than today so we need less people working there. But
           | if you make software easier to write, I think you'll just end
           | up with way more software because the complexity of human
           | needs and processes is unbounded unlike eating food.
           | 
           | Also called the efficiency paradox
           | https://en.m.wikipedia.org/wiki/Jevons_paradox
        
             | mrtksn wrote:
             | Sure, the total demand increases but not the same kind of
             | demand that it's replacing. We may end up seeing CSS
             | specialists "rust belt" falling in poverty while theres
             | substantial wealth build up among "prompt engineers" with
             | good taste in aesthetics.
        
               | vasco wrote:
               | In any job if you overspecialize and don't learn the
               | fundamentals you're at risk. A CSS specialist is like a
               | CRT TV fixer as compared to a general programmer and an
               | electrician, respectively. Those jobs always have
               | numbered days.
        
               | mrtksn wrote:
               | Lot's of people make good many because of that over
               | specialisation. They acquire deep understanding of these
               | tools and that's how they become experts of something
               | instead of jack of all trades and master of none. Of
               | course, they end up outdated in the areas they don't
               | practice and risk being wiped out if the toolset they
               | specialise or the whole industry falls out of favor.
               | That's also why we have people who once were middle class
               | but now their wealth and influence decays and they feel
               | left back. With de-industrialization, that happened to
               | awful lot of people in classical industries for example.
               | Also, with progressing age it becomes harder and harder
               | to adapt.
               | 
               | As a twist in fate, maybe the AI people will eat the
               | Software people who ate the classical industry people.
               | Some will adapt and prosper, most won't because they will
               | be busy doing their jobs and getting paid good salaries
               | in comfortable jobs.
               | 
               | The software ate the world, the AI will eat the software.
        
           | manmal wrote:
           | > Even the increased productivity alone will reduce the
           | demand
           | 
           | I'd argue that companies cutting their software budget will
           | soon be overtaken by their competition. Software is never
           | done, after all.
        
       | 4death4 wrote:
       | I share the sentiment with others here that have become
       | disillusioned with LLMs. Yes, their capabilities are impressive,
       | and their progression is quite striking. But what I have
       | realized, about programming specifically, is that I don't think
       | LLMs can do a better job than humans.
       | 
       | To many futurists hopping on the hypetrain, this is probably
       | somewhat of a hot take. But let me explain.
       | 
       | Ultimately, programming is about instructing a computer on what
       | to do. We use programming languages because they're highly
       | efficient representations of what a computer can do. In the case
       | of LLMs, we need to use natural language to specify the program.
       | For simple things, this can work great. But for complex programs,
       | it's not easy to articulate exactly what a program should do. As
       | you drill in to the details, you begin to experience an almost
       | exponential growth in the amount of natural language
       | specification you need. And so I think there is something very
       | flawed in believing that you can replace human programmers with
       | LLMs. In my personal opinion, a single programmer will be able to
       | outproduce a single LLM prompt engineer, purely because
       | programming languages are better at expressing ideas compared to
       | natural language. At a certain point, it becomes faster to write
       | code then to write sufficiently detailed prompts.
       | 
       | As a thought experiment for the reader: consider a complex system
       | you've worked on. And now try to imagine writing down a
       | specification for the system in natural language that an LLM
       | could use to generate the code that powers the system. I honestly
       | don't think I could do it for many of the system I've worked on.
       | 
       | So yes, I think LLMs are cool. And I think they're cool because
       | they give creative power to people who can't program. But for
       | sufficiently complex things, i.e. things people care about, a
       | natural language interface isn't the answer.
        
         | crabmusket wrote:
         | > As a thought experiment for the reader: consider a complex
         | system you've worked on. And now try to imagine writing down a
         | specification for the system in natural language that an LLM
         | could use to generate the code that powers the system.
         | 
         | But you didn't write it down, so how did the system get made?
         | 
         | The answer is that the program exists in your head as much as
         | it exists in bytes in your source files. There might be a
         | mismatch between your head-program and the source-program, or
         | between your head-program and what the customer actually wants.
         | 
         | But the existence of the head-program is what Naur was
         | articulating in 1985's "Programming as Theory-Building", and is
         | what LLM proponents are rediscovering.
        
           | 4death4 wrote:
           | > But you didn't write it down, so how did the system get
           | made?
           | 
           | We didn't write it down, but we did use natural language to
           | specify it, albeit somewhat indirectly. Some of the
           | specification came from meetings with leadership, PMs, other
           | people in the org, customers, etc. Some of it came from
           | getting drinks with the team and talking about what we wanted
           | to build. Some of it came from conversations with ex-
           | colleagues. Some was inspired by past experience. It was be
           | extremely onerous to put all of that down as input to an LLM.
        
       | teaearlgraycold wrote:
       | Personally I'm not worried about my employability. Until AGI
       | arrives (which may coincide with an apocalypse for all we know)
       | AI will simply allow me to move faster. If it lets me move 1000x
       | faster then the art will be in what to build. 1000x still does
       | nothing compared to an exponentially exploding field of
       | possibilities. And technical knowledge, experience working as a
       | product focused engineer, and general human intelligence should
       | be enough to beat AI at that art form.
        
       | glonq wrote:
       | As a grayhead who does not code daily anymore, I was impressed
       | with ChatGPT as a programming sidekick. It's like having an on-
       | call junior developer who only costs $20/mo.
       | 
       | I needed a quick and dirty utility developed last month and by
       | breaking the problem down into 4-5 steps myself I got ChatGPT to
       | write functions for those steps and then I bolted them together.
       | Most of it went smooth but one part took far too much coaxing and
       | refinement before it generated the right thing.
        
       | m463 wrote:
       | I've noticed that over the years, coding has gotten easier.
       | 
       | I've been able to express myself better with each year.
       | 
       | I see AI as another higher-level way of expressing myself.
       | 
       | Also, people don't write as much new code as they think they do.
       | 
       | Still, I have many many... MANY projects that I have on my
       | wishlist. Maybe AI will help, but my list won't go away.
        
         | dagw wrote:
         | _I 've noticed that over the years, coding has gotten easier._
         | 
         | That is the history of programming in a nutshell. I know I've
         | told this story before, but my wife's uncle talks about the
         | revolution he felt when FORTRAN IV was released. Finally you
         | didn't have to know anything about computers or programming to
         | write programs. You just told the computer what you want it to
         | do and it sorted out all the hard stuff for you. Engineers like
         | him could now just use computers on their own and didn't have
         | to wait for the programmers to have time. He spent the rest of
         | his career writing code without ever learning any of the
         | 'craft' the veteran programmers at the time would have
         | considered necessary.
        
       | hm-nah wrote:
       | This is a badass article.
        
       | ryukoposting wrote:
       | GPT-4, copilot, etc are _absolutely worthless_ for firmware.
       | Copilot shows no meaningful capacity for understanding the
       | context of a firmware codebase, and forget generating anything
       | coherent based on your instructions. I don 't need help writing
       | function declarations, but that's the only thing it's useful for
       | (and even that is heavily limited).
        
       | aspyct wrote:
       | Genuine question, as I didn't use LLMs much:
       | 
       | Sure, they're good for quick prototypes or even launching
       | production grade services.
       | 
       | But what about maintenance? What about fixing issues in legacy
       | software?
        
         | cloverich wrote:
         | Yesterday I asked chatgpt to write me some boilerplate and it
         | did. I went through the exercise of using it, find some bugs,
         | pointing them out, and fixing them (with help, or on my own).
         | 
         | Today I asked a similar question and it gave me boilerplate.
         | Then it ran the code. Then it noticed the error, then it fixed
         | it on its own. All without me typing anything at all.
         | 
         | I pointed that out to someone, and they did not appreciate that
         | it has quickly gained the capacity to test if what it says is
         | true, at least in some limited sense. I'm in awe.
         | 
         | At any rate, I think yes, you plug in code and ask it questions
         | and it can answer them, over time answering them better. Since
         | i've been using it not only can it execute code, but can
         | generate test cases and test _data_. I think wrt to legacy
         | code, it could come up with tests and refactoring strategies.
         | 
         | More generally though, AI is coming. And with it, the ability
         | to write better code than even the best of us. That maybe a
         | year or 50 out, I"m not sure. But its coming. And with each
         | passing day, I move the "when" more into my lifetime.
        
         | sharkjacobs wrote:
         | From the article:
         | 
         | > You can't just say to the A.I., "Solve my problem." That day
         | may come, but for now it is more like an instrument you must
         | learn to play. You have to specify what you want carefully, as
         | though talking to a beginner.
         | 
         | It's easier to explain "solve this common problem you're
         | already familiar with" or "create a prototype with pretty
         | flexible specifications" but if you can break down and explain
         | a problem to a rubber duck[1], you can explain it to GPT4, and
         | it's a better conversationalist than the duck
         | 
         | [1] https://en.wikipedia.org/wiki/Rubber_duck_debugging
        
       | fumeux_fume wrote:
       | A lot of this article and many of the comments here don't really
       | comport with my experience programming and designing programs.
       | Many or all of the examples in the article seem like toy programs
       | meant to do something relatively straightforward/simple with
       | loose constraints, but in a domain or using tools unfamiliar to
       | the programmer. However, many programmers find themselves in the
       | opposite situation: using tools they're familiar with to solve
       | complex problems with hard constraints. It's in that kind of
       | situation where I've found that GPTs aren't much of a game
       | changer.
       | 
       | Many of the top comments voice a hated of programming--that
       | programming gets in the way of creating. For a certain set of
       | problems I completely agree (like why is making a website so damn
       | complex), but for many of the problems I work on there are a
       | wealth of good, helpful tools and APIs such that the writing of
       | the code melts away and I'm left with the intellectual challenge
       | of organizing my thoughts and thinking creatively. To me, the
       | article and some of the top comments tell me more about the
       | problems they choose to tackle than the act of programming
       | itself.
        
         | teaearlgraycold wrote:
         | Also many of these programs described in the article have been
         | built many times before. This is effectively like saying
         | programming will die because you can download programs off of
         | GitHub.
         | 
         | The "making flappy bird with GPT-4 in 30 minutes" YouTube
         | videos are fun to watch, but I'll do more than raise an eyebrow
         | when someone releases a novel video game on Steam written
         | primarily by GPT-4 in a fraction of the time a human alone
         | could have.
        
           | specialist wrote:
           | "Computers are useless. They can only give you answers."
           | 
           | -- Pablo Picasso
        
         | oivey wrote:
         | I agree. I think there will be lots of hard problems where an
         | LLM is unlikely to be successful for quite a while. For high
         | surety software like encryption or numerical software I think
         | this is especially the case. Sure, you can have an LLM create a
         | draft still, but you'll need a lot of skill to refine it into
         | something correct and trustworthy.
        
         | armada651 wrote:
         | I feel ChatGPT is primarily good at dealing with problems that
         | are straight-forward to solve, but have a needless amount of
         | complexity attached to them that is easy to delve through for
         | an AI but takes a considerable amount of time to grasp for a
         | human. It is essentially dealing with the parts of software
         | development that we have failed to make human-friendly.
         | 
         | The compiler is already fulfilling a similar role in software
         | development. We write in high-level languages so that we no
         | longer need to deal with the intricacies of the hardware the
         | program will be running on and can focus on high-level logic in
         | a human-friendly programming language.
         | 
         | I suspect that AI tools will fulfill a similar role, relieving
         | us of much of the need to read API documentation, like
         | compilers have relieved us of the need to read instruction set
         | manuals.
        
       | type4 wrote:
       | > But taking a bird's-eye view of what happened that day? A table
       | got a new header. It's hard to imagine anything more mundane. For
       | me, the pleasure was entirely in the process, not the product.
       | 
       | I think that's where I differ from a lot of the artful
       | programmers, I've never found pleasure in a perfect, beautiful
       | solution. I get annoyed when I have to dump hours and hours into
       | something that 'should' be simple! I don't want to spend my time
       | fiddling with layouts, CSS, Oauth handshakes, etc. I want to
       | build stuff and get paid for it, that's how I view my job as
       | well. Less logician and more mechanic.
       | 
       | I use ChatGPT as much as I can, to do all I can and then fix the
       | output when it's needed. I view it as a higher level programming
       | language, that spares me from the burden of thinking of low-level
       | details. It's same the reason I code in Python/Javascript rather
       | than C++ or other languages, the goal is to make something of
       | use. That's my goal to stay employed, become one with the
       | language du jour, in the same way I've jumped from PHP to Jquery
       | to React to ...
        
       | pjmlp wrote:
       | Definitly, this is what many seem to be missing, today LLM might
       | help write the code, tomorrow they will compile the whole
       | application themselves, they won't need the babysitter developer
       | any longer.
        
       | summerisle wrote:
       | Regardless of the quality of work done by an LLM, all of this AI
       | hype has done an absolutely stellar job of clearly dividing the
       | world of software development into two cohorts: those who care
       | (to literally any degree, about process or product), and those
       | who are only involved in it because it makes money. I have never
       | quite liked the latter, because they are often difficult to work
       | with, tend to lack any motivation to develop an in-depth
       | understanding of certain concepts or problems.
        
         | dimva wrote:
         | I've been programming since I was 7, and I've _always_ viewed
         | software development as a means to an end. The alternative
         | seems crazy to me - coding without a purpose? Why on earth
         | would you want to do that???
         | 
         | I've been very successful in my career. Things I've built:
         | Bloomberg's domain-specific language and simulation engine for
         | asset-backed securities, a custom database that can process
         | 100,000s of writes / second and 10,000s of reads / second, and
         | the robotics framework powering the Cruise self-driving car
         | (RIP). I retired at the age of 33.
         | 
         | The domain you're working in is usually more important to fully
         | understand than software engineering concepts, although I try
         | to understand both. But I don't really care about software
         | development for its own sake, and I welcome LLMs replacing the
         | more annoying grunt-work parts of the job.
        
         | vlunkr wrote:
         | I've never met anyone in the latter category who made it
         | through their code bootcamp.
        
       | yonisto wrote:
       | I'm currently re-writing a GPT4 code which is a very interesting
       | experience.
       | 
       | The biotech startup I join 3 months ago have a pipeline written
       | by one of the founders, who has experience in programing but not
       | extensive so he used co-pilot and GTP a lot. The thing WORKS, it
       | actually delivers! this is what got the startup going so it is
       | amazing.
       | 
       | On the first month of the re-write I was able to cut costs in the
       | 100x mark. And on the third month I was able to uncover some
       | subtle bugs that affect the entire pipeline and fixing them is
       | out of the realm of possibility in the current state of AI.
       | 
       | I have no answer whatever employers will continue to value what I
       | bring to the table in 5/10/15 years time especially after AI will
       | improve. I suspect many will not as they will have 'good enough'
       | results from the AI.
        
         | d3ckard wrote:
         | Those good enough results in the cloud world are going to cost
         | them arm and leg. I for one would much prefer to spend my time
         | on optimization of already established routines than on the
         | damn ping-pong between product, design and "external
         | stakeholders". It's actually what I was trained for.
        
         | TMWNN wrote:
         | >The biotech startup I join 3 months ago have a pipeline
         | written by one of the founders, who has experience in
         | programing but not extensive so he used co-pilot and GTP a lot.
         | The thing WORKS, it actually delivers! this is what got the
         | startup going so it is amazing.
         | 
         | Indeed!
         | 
         | >On the first month of the re-write I was able to cut costs in
         | the 100x mark.
         | 
         | That's clearly where this is all heading: AI delivering the
         | rough draft, and humans applying what AI inevitably misses.
         | 
         | >And on the third month I was able to uncover some subtle bugs
         | that affect the entire pipeline and fixing them is out of the
         | realm of possibility in the current state of AI.
         | 
         | It's entirely possible that had you or another human written
         | the thing in the first place those bugs (or equivalent thereof)
         | would have still been there. As you said, "subtle".
         | 
         | >I have no answer whatever employers will continue to value
         | what I bring to the table in 5/10/15 years time especially
         | after AI will improve. I suspect many will not as they will
         | have 'good enough' results from the AI.
         | 
         | I would be more optimistic based on your own account, for the
         | reasons I mentioned above.
         | 
         | That said, I am glad that I am self-employed, with a business
         | that I am quite confident AI cannot replicate, and code purely
         | for fun.
        
       | n_ary wrote:
       | Here is the controversial take from my perspective:
       | 
       | All these AI replacing coders and creatives is just a broad
       | marketing campaign to put downward pressure on dev and creative
       | salary.
       | 
       | We could've said the same thing back when Code generation was
       | popular. Or we couod say the same thing about stackoverflow,
       | because a non-tech person can bungle together enough solutions
       | from there to build something. Heck NoCode(TM) was putting coders
       | out of job in last decade and here we are in 2023.
       | 
       | Compared to GPT's code-fu, most image generation models are light
       | years ahead(imagine how those models can combine best of
       | different artists into one painting), yet I still have plenty
       | trouble describing in excruciatingly details about the painting I
       | want with all the prompt-engineering-sauce and the end result is
       | usually far away from desired state unless it is just normal
       | sticker stuff.
       | 
       | Explaining requirements is hard, adapting to changes is hard, we
       | still write tests and relatively every MR needs some
       | fixes/updates and we have a whole army of management people
       | trying to do the prompt engineering thing and we still have to
       | interpret in between lines to get a piece of software(even basic
       | CRUDs that makes millions), so yeah, it is all hype driven
       | marketing catering to enterprise about saving all those money but
       | in the end still spend more on the token count and prompt
       | engineering and another army of people figuring out the right
       | keywords to describe the product and whatnot.
       | 
       | All this things are mostly the same, it is like claiming that
       | we'll habe quantum computers just like next year and any Joe
       | rando can train their own GPT or crack open the SSL layer.
       | 
       | Don't feed the hype cycle of these marketers with ypur fear
       | because more you engage on this, more their boat is lifted.
       | 
       | Show me a real product that was built/written by GPT and is
       | making even few hundred in monthly revenue and I will be happy to
       | change my mind.
        
         | CodeCompost wrote:
         | I don't know what's going on, but lately on /r/programming
         | there has been a /lot/ of negative pessimistic and downright
         | angsty articles on software development, like there is some
         | kind of campaign to downgrade the career of software developer.
        
           | ed_elliott_asc wrote:
           | I don't really go on Reddit so don't know if something is
           | going on but I know there has been very few jobs this year
           | compared to normal times and rates have been going down so it
           | could be genuinely disaffected people being angry rather than
           | a coordinated campaign.
        
           | paganel wrote:
           | I've stopped visiting /programming a long time ago, but just
           | wanted to say (and I've said it before in here) that the
           | status of the computer programmer has been on a downward
           | trend since just before the pandemic, I'd say 2017-2018
           | (maybe a little earlier than that, maybe just going into the
           | pandemic, but that's the general timeframe).
           | 
           | There are many reasons for that, partly the "normies"
           | realising that most of what we, programmers, do at our day-
           | jobs is detrimental to the society as a whole (see Facebook,
           | see all the jobs lost to automation, see the kafkaesque world
           | brought about by digitising almost every interaction between
           | a human being and the State/Government), it's partly because
           | some of us, computer programmers ourselves, have realised the
           | same thing, it's partly because of how many computer
           | programmers are now financially way better off compared to
           | the normally employed people, it's partly because of the
           | smugness that some of us, the computer programmers, brandish
           | in many social contexts, and there are countless other
           | similar reasons.
        
         | enva2712 wrote:
         | https://www.commitstrip.com/en/2016/08/25/a-very-comprehensi...
        
         | Dalewyn wrote:
         | >All these AI replacing coders and creatives is just a broad
         | marketing campaign to put downward pressure on dev and creative
         | salary.
         | 
         | I see it as the work being replaced not _actually_ being
         | valuable work in the first place, at least not as valuable as
         | some of us want them to be.
         | 
         | Take copywriting for example, that industry got decimated
         | basically overnight by "AI". Why? It's because the work was
         | actually not valuable, it was work any sufficiently complicated
         | program could do let alone a common man. Writing catchy sales
         | catches and blurbs? It's frankly a miracle that industry lasted
         | as long and valued as high as it did.
         | 
         | Or the art scene for another example; if you as an artist or
         | illustrator can be replaced by "AI" then your art was actually
         | only worth a dime a dozen. I say this as a blunt objective
         | observation, not intended as any personal attack or the like.
         | 
         | Or for an even more brutal example: Journalism. We literally
         | can't tell apart man-written and "AI"-written journalism, and
         | that's because man-written journalism has been in the absolute
         | gutter for years if not decades now. Journalism is bad enough
         | today that "AI"-journalists could come in and do an equal if
         | not better job of it than man-journalists.
         | 
         | "AI" is, like many tools of astronomical convenience that came
         | before it, making the act of work more accurately reflect its
         | real value. Some workers will lose, others will win, but
         | ultimately we will all be better off because work and the
         | perceived value of that work aligning better is a very good
         | thing for both producers and consumers.
        
       | uticus wrote:
       | ChatGPT is another layer. Human -> ChatGPT -> high level
       | programming language -> lower level language / IL / assembly ->
       | microcode -> circuit.
       | 
       | ChatGPT will not only survive, it will get bigger as long as all
       | those layers exist. Unless web design is ready to move to
       | assembly level instructions via RPC (ChatGPT can do assembly),
       | the layers will stay, the complexity will stay, and people who
       | get (and attempt to sell) value from recombining the puzzle
       | pieces will stay.
       | 
       | The real point is not that ChatGPT is so good, it is that
       | everything we program has already been done before. We humans
       | just have trouble finding the pieces and gluing them together.
        
       | devmor wrote:
       | I'm far more threatened by pennies-on-the-dollar third world
       | contracting firms (and the businesses that abuse and manipulate
       | hiring regulations to make use of them) than the immature novelty
       | tool that is generative AI.
       | 
       | That being said, those firms are certainly making use of these
       | tools - relying on their underpaid programming staff to clean up
       | the output into something useable for the client.
        
       | lionkor wrote:
       | LLMs can be very impressive, but "coding" can be a lot more than
       | traversing a btree or sorting an array.
       | 
       | There is software engineering, which is probably what most well
       | paid devs do a little bit too much of, which is requirements
       | analysis, planning, talking to the customer, estimating, etc.
       | Sure an AI could help with all of that, but leaving that entirely
       | up to an AI probably wont work for a very long time. You'd need a
       | real AGI to take over work that has that many social aspects and
       | requires that much planning and consideration.
       | 
       | There is algorithms and datastructures, which is important for
       | developers to learn, but usually not important to write yourself
       | unless thats literally your job. There, LLMs could help with
       | understanding, possibly visualizing these algorithms, and
       | providing example use cases.
       | 
       | There are hobby projects, which generally wont be done with any
       | AI by most people I know, since the point is to program for fun.
       | AI can help with that, e.g. for inspiration or example
       | implementations of little weird algorithms.
       | 
       | There is maintenance. Once a product, especially a B2B product,
       | reaches maturity, a lot of the work is bugfixing, smaller
       | features, updating dependencies, porting to new platforms, etc. I
       | could see LLMs taking some of this work away, which everyone
       | would probably appreciate.
       | 
       | In the end, I believe that AI and in particular LLMs just help
       | programmers, and will maybe replace the 6EUR/hour outsourced copy
       | paste programmers, but that is... not very scary.
        
       | ken47 wrote:
       | It feels like this article was not written by a programmer, and
       | it feels like a number of the commenters are not professional
       | engineers. What part of a programmer jobs can AI realistically
       | replace in the near term?
       | 
       | For the sake of argument, let's say it could replace the coding
       | part _cost effectively_. Can it still do all the other parts?
       | Take ambiguous requirements and seek clarity from design,
       | product, etc. (instructing an AI to a sufficient degree to build
       | a complex feature could almost be a coding task itself). Code
       | reviews. Deal with random build failures. Properly document the
       | functionality so that other programmers and stakeholders can
       | understand. Debug and fix production issues. And that's just a
       | subset.
       | 
       | Realistically, in the future there will be a long phase of
       | programmers leveraging AI to be more efficient before there's any
       | chance that AI can effectively replace a decent programmer.
       | 
       | This will be an advantage to engineers who think on the more
       | abstract side of the spectrum. The "lower level" programming
       | tasks will be consumed first.
        
         | FeepingCreature wrote:
         | The thing about GPT is that it has approximate knowledge of
         | nearly everything. It makes errors, but the errors are
         | seemingly uncorrelated with human errors. And it knows stuff
         | that I could take hours to search for, especially as Google
         | becomes more and more useless.
         | 
         | Personally, I use it for scripting and as an executive function
         | aid.
        
         | Closi wrote:
         | I suspect automated code reviews and doing high-quality
         | automatic documentation (i.e. better than current standards in
         | most projects) will be fully within the capabilities of LLMs
         | soon. Fixing random build failures will probably follow...
         | 
         | So then the question is what % of a programmers job might be
         | taken by this, and does the remaining % require a different
         | skillset.
         | 
         | There are programmers that are great at coding, but complain
         | loudly when the business gives slightly ambiguous requirements
         | because they see their job as coding, not clarifying business
         | rules. This group are more likely to be impacted than the
         | programmers who will happily work in ambiguous situations to
         | understand the business requirements.
        
           | ken47 wrote:
           | Both code review and documentation require architectural
           | knowledge to execute properly for a large app. This is not
           | within the reach of current AI, and won't be for a long time.
        
         | padjo wrote:
         | I haven't seen an AI tool that can take a Figma mock up and
         | some fuzzy requirements and turn that into real code in an
         | existing codebase unaided by humans. Given what I've seen of
         | current AI tools that still seems a long way away.
        
           | dieselgate wrote:
           | Indeed. It's one thing to implement a UI as defined in a
           | mock, for example, but the UX can be totally undefined and
           | open to interpretation.
        
         | aerhardt wrote:
         | The article was _totally_ written by a programmer though, what
         | would make you say that?
        
       | abhaynayar wrote:
       | > As he later put it, his own neural network had begun to align
       | with GPT-4's.
       | 
       | > Having found the A.I.'s level, I felt almost instantly that my
       | working life had been transformed. Everywhere I looked I could
       | see GPT-4-size holes; [...]
       | 
       | I think this is key for me at least. GPT-4 is really good once
       | you start figuring out what problems NOT to give it. Because
       | there are certain things that it can't solve no matter how much
       | you prompt it in the right direction, and it gets really annoying
       | really fast.
        
       | aurbano wrote:
       | I see a lot of comments wondering how AI could be useful as a
       | software engineer so I'll give my take on it:
       | 
       | I envision it being able to fully replace a junior engineer, and
       | in some use-cases senior engineers as well.
       | 
       | In the case of junior engineers: the AI should have access to an
       | internal knowledge base (i.e. Confluence) and the task/ticketing
       | system (Jira), and ideally the internal chat (Slack). I would
       | assign tickets to it, and I'd expect the AI to reply with
       | comments asking for clarification when there is something
       | unclear, or proposing an implementation before starting if it's
       | not a very simple task (this could even be defined in the task,
       | using story points for instance.
       | 
       | Once cleared, the AI submits a PR linked to the task - so far
       | just like any engineer in the team would. The PR gets reviewed as
       | usual, with suggestions/requests for changes made by the (human)
       | team, which then get addressed by the AI. With the big difference
       | that all this process may happen in less than 1h from ticket
       | creation to PR review.
       | 
       | I wouldn't expect it to be able to implement complex features,
       | onboard new libraries, or rearchitect the system in major ways to
       | accommodate future features - just like I wouldn't expect that
       | from junior team members.
       | 
       | It would obviously be amazing if it could incorporate previous PR
       | comments into it's "context" for future work, so it could learn
       | and improve.
       | 
       | Separately I mentioned it could also do part of the job of senior
       | team members - in the form of PR reviews. If it has access to
       | every previous PR review and learns from them it might be able to
       | give insightful suggestions, and for very large codebases it
       | could have an advantage over humans as it could find patterns or
       | existing code that may be overlooked (i.e. "It looks like this
       | util function you added is the same as this one that was already
       | there", or "This code looks different to similar areas, but
       | follows a different pattern, you might want to rewrite it this
       | way //..."
       | 
       | Is GPT-4 there? Definitely not, perhaps an LLM is not even the
       | way to achieve this, but I absolutely see this becoming an
       | incredible asset to a tech team.
        
       | pipeline_peak wrote:
       | I think people like the author are starting realize coding is a
       | very generic thing. And that it's not itself "beautiful" but can
       | be used to apply "beautiful" concepts.
        
       | happytiger wrote:
       | Do people seriously consider this the waning days of the craft? I
       | don't understand that.
       | 
       | My view is that I am about to enter the quantum productivity
       | period of coding.
       | 
       | I am incredibly excited about AI assistance on my coding tasks,
       | because it improves not only what I'm writing, but also helps me
       | to learn as I go. I have never had a better time writing software
       | than I have in the last year.
       | 
       | I've been writing software for a few decades. But now I'm able to
       | overcome places where I get stuck and have almost a coach
       | available to help me understand the choices I'm making and make
       | suggestions constantly. And not just wandering over to a fellow
       | cuders desk to ask them about a problem I am facing, but actually
       | give me some productive solutions that are actually inspirational
       | to the outcome.
       | 
       | It's amazing.
       | 
       | So why do people think that coding is coming to some kind of end?
       | I don't see any evidence that artificial intelligence coding
       | assistants are about to replace coders, unless you... suck badly
       | at building things, so what are people getting on about?
       | 
       | I feel like somebody came along and said, "foundations are now
       | free, but you still get to build a house. But the foundations are
       | free."
       | 
       | I still have to build a house, and I get to build an entire house
       | and architect it and design it and create it and socialize it and
       | support it and advocate for it and explain it to people who don't
       | understand it but... I don't have to build a foundation anymore
       | so it's easier.
       | 
       | Shoot me down. I'm not relating here at all.
        
         | tangjurine wrote:
         | The author isn't a professional programmer. He has a couple
         | side projects and doesn't seem very good at coding.
        
           | happytiger wrote:
           | That's interesting. I think there's a real shift going on in
           | terms of what coding actually means I've never produced so
           | much code so quickly and it's disconcerting to the part of me
           | that wants to feel like I earned the outcome on a pretty deep
           | level because I can just generate shit that works so fast and
           | then just edit it until I get exactly what I'm looking for
           | and it feels like cheating in a weird way.
           | 
           | I still don't feel that way about front end frameworks for
           | the web. Oh my God what what are people doing?
        
             | dsego wrote:
             | Honestly, this reminds me of my early days when auto-
             | complete and OOP was the best thing. It's why OOP
             | proliferated, you type in the name of the object and get a
             | list of completions in visual studio. No need to read docs
             | or understand what you are doing, just find the method you
             | need on that object. This new copilot coding reminds me of
             | that, throwing shit and see what sticks, without
             | understanding why and how it works. I can't help to shake
             | the thought that we will see heaps of mediocre code cranked
             | out that just about works, even though the problem maybe
             | required a tenth of that to solve it.
        
               | civilitty wrote:
               | _> I can 't help to shake the thought that we will see
               | heaps of mediocre code cranked out that just about works,
               | even though the problem maybe required a tenth of that to
               | solve it._
               | 
               | That's just more of the same, isn't it? IMO that's
               | already the current state of the industry.
        
               | dsego wrote:
               | I think you're right.
        
           | mike_hearn wrote:
           | He is. Later in the article he explains a task he did during
           | the working day to his wife. It seemed like his employer uses
           | some sort of custom tableview control, or he was working on a
           | business report. Honestly it sounded like the bigger threat
           | to that particular task was someone finding an open source
           | library that did it already, but it illustrated the point and
           | the story was nicely written.
        
             | wkipling wrote:
             | Yeah there's lot's of people in this thread who didn't read
             | the full article and the conclusion the Author comes to.
        
         | ugh123 wrote:
         | My sense is that the doomers in software these days are either
         | inexperienced and lack perspective from industry shifts over
         | the years or weren't very good to begin with and could not
         | build beyond basic crud and data shipping applications of
         | varying complexity.
        
           | reactordev wrote:
           | 3rd option. They got complacent and old and have trouble
           | learning (don't realize it) and can't grok the new medium.
        
             | happytiger wrote:
             | That seems possible. There is a frequent bias against the
             | new even in progressive technology circles.
        
               | reactordev wrote:
               | yeah, I wasn't referring to agism or anything like that.
               | Just that they had been there a while, got complacent
               | with the code base or the style of programming. That's
               | all. It can take an entire mind shift to understand
               | what's going on when all you've been building is
               | administrative portals and internal sites.
        
             | ikari_pl wrote:
             | 4th option. They're trying to enter the market and get a
             | good job, but some companies consider them less experienced
             | but more expensive than Copilot.
        
               | happytiger wrote:
               | Fewer but more senior resources seems possible.
               | 
               | I have already seen the impact of AI systems, reducing
               | the number of junior coding positions and outsourcing.
               | 
               | On the other hand, anyone who actually takes the time to
               | get good with AI coding tools can be performing at senior
               | levels, much more quickly, so there's that too.
               | 
               | I'm not convinced that it's some kind of apocalypse as
               | much as it is a massive shift that is going to raise all
               | boats and bring about a renaissance of productivity, and
               | incredibly massive amounts of code, which _hopefully_ is
               | a higher quality because there's no longer written by an
               | individual in isolation but by a team of software
               | engineers working in concert with AI.
               | 
               | I can't tell you number times where people were screaming
               | and yelling about how coding was coming to an end and
               | everyone was going to be unemployed in a few years --yet
               | here we are...
        
               | ugh123 wrote:
               | Agreed. The only thing to come true in the last decade
               | about the death of software engineering from no/low-code
               | systems is that there were more software jobs created to
               | build no/low-code systems.
               | 
               | Also see "death of the sys admin by way of AWS and the
               | like"
        
               | happytiger wrote:
               | I remember when AWS was going to kill sysadmins. Instead
               | it changed what the career meant really. Systems
               | Administration work seems like it's in a constant state
               | of change anyways. Honestly that whole transformation
               | from datacenter operator to what it is now (all the
               | things!) is such an interesting parallel to what is
               | happening now with general software engineering.
        
               | jon-wood wrote:
               | I keep seeing this argument for a bunch of different
               | industries. Nobody appears to have an answer for where
               | all these more senior people are going to come from when
               | we're replacing the juniors with an LLM.
               | 
               | People don't magically become senior engineers, they need
               | to get experience of the basics. Traditionally that's
               | done by being hired as a junior engineer and doing a few
               | years of fairly dull work under the supervision of the
               | more senior engineers, who gradually prod you into doing
               | things well.
               | 
               | Bootcamps have been somewhat filling the ever increasing
               | void for junior positions to some extent (in the process
               | making the barrier to entry into the industry higher for
               | people who can't afford to literally pay for the junior
               | roles that used to pay them), but there's still a chasm
               | between someone fresh out of a bootcamp program and a
               | developer who you can let loose on a project
               | unsupervised.
        
               | 2devnull wrote:
               | > get good with AI coding tools can be performing at
               | senior levels
               | 
               | No. They are orthogonal modes of thinking. That said,
               | getting good at prompting LLM is already making people
               | better communicators. That will be a big benefit to
               | seniors as they can use their prompting skills to direct
               | junior staff more efficiently. But better at thinking
               | about the trade offs that senior devs need to think
               | about, nope.
        
               | happytiger wrote:
               | Respectfully, being able to explore different code paths
               | quickly with the help of LLMs to generate scaffolding has
               | done exactly that for me.
        
               | coffeebeqn wrote:
               | I can kind of see that with contractors on the lower end
               | fairly soon. If I put the same amount of effort into
               | telling a programming specific GPT that understands
               | requirements properly as I do with some contractors I
               | don't think that is a long way away from today.
               | 
               | For juniors - I want them to become eventually
               | independent so I don't have to worry about them and their
               | tasks (and can give them vaguer tasks) so it's a
               | different goal.
        
               | reactordev wrote:
               | ooo, that's a good point too. In this case, wouldn't the
               | coder be _more_ productive if given a Copilot?
        
           | girvo wrote:
           | I mean most people in most jobs are average, or below.
           | Programmers aren't immune: most of them are bad at their jobs
           | on aggregate. Of course they can be replaced by LLM output:
           | their output is already half broken too. I'm only slightly
           | exaggerating for effect, but it's been 17 years for me in
           | this industry and I've seen that over and over again.
        
           | aleph_minus_one wrote:
           | > My sense is that the doomers in software these days are
           | either inexperienced and lack perspective from industry
           | shifts over the years or weren't very good to begin with and
           | could not build beyond basic crud and data shipping
           | applications of varying complexity.
           | 
           | My experience rather is that such people often (though not
           | always) are quite good programmers, but came to a different
           | conclusion on how it makes sense to develop software than the
           | direction which the industry shifted to (and often have good,
           | though sometimes non-mainstream reasons for their opinions).
           | Thus, despite being good programmers, "they fell out fashion"
           | with "how you are (by today's fashion/hype) supposed to build
           | software on this current day". So, they became more and more
           | hard to employ and thus more and more frustrated (just to be
           | clear: in my experience they are often quite right in their
           | opinions).
        
         | bryanrasmussen wrote:
         | Reasons why (supposition, not necessarily in agreement, just
         | arguments I am familiar with) -
         | 
         | It's because foundations are now free but nobody understands
         | how they work anymore - or soon won't hence the waning as
         | opposed to disappeared. There are whole levels that a coder
         | needed to understand in the past that recent entrants to the
         | field do not understand, that can still subtly affect how
         | things work, if no one understands the things the craft depends
         | on, then the craft is waning.
         | 
         | For anyone who started programming more than 13 years ago in
         | the most widespread programming discipline for the past few
         | decades (Web technologies), which in this career makes you
         | super-old, the craft is waning because every year it becomes
         | more and more difficult to understand the whole stack that the
         | web depends on. Not even considering the whole stack of
         | technologies that my first paragraph alluded to.
         | 
         | For Frontend coders it is waning because there are ever
         | increasing difficulties to find out how to do something someone
         | else did by looking at their code - modern build technologies
         | means looking at the code of a site is not worthwhile. And
         | people were already complaining about that 13+ years ago.
         | 
         | If you have kids or outside work responsibilities then in
         | combination with this and the need to produce things and the
         | ever increasing eating of stuff by software (opening new
         | problems and business areas one might need to be cognizant of)
         | it becomes less possible, for those not in school, to hone
         | their craft via purposeful working. For this reason it may be
         | that the craft is waning.
         | 
         | Finally improving productivity is not necessarily something
         | that correlates with improving the craft - industrialization
         | may have improved productivity and made many products available
         | to many people that did not have them before, but it is pretty
         | well known that it was not beneficial to the crafts. Perhaps
         | the feeling is the same here.
        
           | mike_hearn wrote:
           | Isn't this a slight over-generalization from web dev? If you
           | learned programming in the pre-web era then you weren't able
           | to learn how programs work by studying the shipped artifacts,
           | but the craft wasn't waning, far from it.
           | 
           | I learned HTML in the mid nineties and even then I don't
           | honestly recall learning very much from View Source. HTML has
           | never been particularly easy to read even when written by the
           | rare breed who are fanatical about "semantic" markup (in
           | quotes because even so-called semantic markup doesn't
           | communicate much in the way of useful semantics). HTML lacks
           | extremely basic abstraction features needed to make code
           | readable, like (up until very recently) any kind of
           | templating or components system, so even if you were trying
           | to learn from Yahoo! in 1996 you'd be faced with endless
           | pages of Perl-generated HTML boilerplate. So I think most of
           | us learned the old fashioned way, from books, tutorials and
           | copious amounts of fiddling.
        
             | bryanrasmussen wrote:
             | >Isn't this a slight over-generalization from web dev? If
             | you learned programming in the pre-web era then you weren't
             | able to learn how programs work by studying the shipped
             | artifacts, but the craft wasn't waning, far from it.
             | 
             | people understand the waxing and waning of the craft based
             | on their experience. Someone can be an old greybeard now
             | and have only done "web programming" starting at a young
             | age*
             | 
             | Perhaps I'm wrong but I have seen this argument multiple
             | times so I believe it is nonetheless a belief about the
             | waning of the craft prevalent among some people.
        
             | bigfishrunning wrote:
             | > If you learned programming in the pre-web era then you
             | weren't able to learn how programs work by studying the
             | shipped artifacts
             | 
             | Why not? You can step through an assembly program just as
             | easily as a javascript one...
        
               | mike_hearn wrote:
               | There's a _slight_ difference in abstraction level there.
               | I 've done more than my fair share of stepping through
               | assembly in my life and learning things from even
               | minified JS is a lot easier.
               | 
               | But I don't think many people learned programming by
               | studying random real-world programs in a disassembler. It
               | was once at least theoretically possible to do that with
               | web programming, albeit not well and not anymore.
        
         | hackerlight wrote:
         | > My view is that I am about to enter the quantum productivity
         | period of coding.
         | 
         | It comes down to whether society's demand for programmers is
         | fixed, or if it scales with how productive programmers are, or
         | more likely some mix of these scenarios. If the demand is
         | fixed, then you are just taking someone's job by being more
         | productive.
        
         | fauigerzigerk wrote:
         | I agree it's amazing. But your comment doesn't touch on the key
         | economic question that will decide for how many people it will
         | be this amazing new dev experience.
         | 
         | If AI makes developers twice as productive (maybe a few years
         | down the road with GPT-6), will this additional supply of
         | developer capacity get absorbed by existing and new demand? Or
         | will there be half as many developers? Or will the same number
         | of developers get paid far less than today?
         | 
         | These questions arise even if not a single existing dev job can
         | be completely taken over by an AI.
         | 
         | A secondary question is about the type of work that lends
         | itself to AI automation. Some things considered "coding"
         | require knowing a disproportionate number of tiny technical
         | details within a narrowly defined context in order to effect
         | relatively small changes in output. Things like CSS come to
         | mind.
         | 
         | If this is the sort of coding you're doing then I think it's
         | time to expand your skillset to include a wider set of
         | responsibilities.
        
           | torginus wrote:
           | Considering how much the craft has expanded - when in high
           | school, I wrote an application for pocket for a small
           | business in Borland Delphi 7. The domain knowledge I needed
           | for that was knowing the programming environment, and a bit
           | about Windows.
           | 
           | Nowadays, like the rest of the full-stack 'web' developers, I
           | work on complex webapps that use Typescript, HTML, CSS,
           | Kubernetes, Docker, Terraform, Postgres, bash, GitHub
           | Actions, .NET, Node, Python, AWS, Git. And that isn't even
           | the full list.
           | 
           | And it's not even a flex, all of the above is used by a
           | relatively straightforward LoB app with some hairy
           | dependencies, a CI/CD pipeline + a bit of real world
           | messiness.
           | 
           | I need to have at least a passing familiarity with all those
           | technologies to put together a working application and I'm
           | sure I'm not alone with this uphill struggle. It's a
           | staggering amount to remember for a single person, and LLMs
           | have been a godsend.
        
           | gitgud wrote:
           | > " _If AI makes developers twice as productive (maybe a few
           | years down the road with GPT-6), will this additional supply
           | of developer capacity get absorbed by existing and new
           | demand? Or will there be half as many developers? Or will the
           | same number of developers get paid far less than today?_ "
           | 
           | Something to remember is that every new innovation in
           | software development only raises the expectations of the
           | people paying the software developers.
           | 
           | If developers are 3x as productive, then the goals and
           | features will be 3x big.
           | 
           | The reason for this is that companies are in competition, if
           | they lag behind, then others will eat up the market.
           | 
           | The company that fires 50% of their staff because of "AI
           | Assistance" is not going to be able to compete with the
           | company that doesn't fire their staff and still uses "AI
           | Assistance"...
        
             | fauigerzigerk wrote:
             | I agree that demand will very likely grow with expectations
             | to absorb some of the additional capacity. But there is a
             | limit to that because companies compete on more than just
             | software. They also compete on price and on other things
             | that have nothing to do with software.
             | 
             | If the price of software drops, it's not a given that all
             | of the savings will be spent more and better software.
        
               | gitgud wrote:
               | I think if the price of software drops, then there's a
               | huge opportunity for smaller companies to build better
               | products for cheaper and steal market share. So more
               | people building software.
               | 
               | This also means larger companies will need to build more
               | to defend their share of the market. Meaning more people
               | building software.
        
             | archiepeach wrote:
             | I think this hits the nail on the head. Obviously a lot of
             | the participants in this discussion are programmers, so
             | there is going to be a fair amount of bias where people
             | feel like their self-worth is being attacked/devalued. That
             | being said, from a company perspective, this should much
             | more unlock "moving faster" than "let's rest on our
             | laurels". Any company that has a leading position in a
             | particular industry is currently at greater risk of
             | upstarts achieving their feature set in a reduced amount of
             | time. The incentive for all companies will be to find
             | programmers who are skilled in directing and debugging AIs.
             | 
             | I am currently building an iOS app using GPT-4 (I don't
             | know Swift), and am developing an awareness of what it
             | can/can't do, and surprised that I'm moving at the speed I
             | did when creating React Native apps. In a possibly more
             | competitive future market for developers, it does work in
             | one's favour if some developers resist the efficiency
             | improvements of AI.
        
             | jvanderbot wrote:
             | Blacksmiths didn't die, they became mechanical engineers?
        
           | rjrodger wrote:
           | To me this looks like a Jevons Paradox situation:
           | https://en.wikipedia.org/wiki/Jevons_paradox [1]
           | 
           | Increased developer productivity will lead to a lot more
           | software development, at all levels, rather than less.
           | 
           | 1. "In economics, the Jevons paradox occurs when
           | technological progress or government policy increases the
           | efficiency with which a resource is used (reducing the amount
           | necessary for any one use), but the falling cost of use
           | induces increases in demand enough that resource use is
           | increased, rather than reduced."
        
             | fauigerzigerk wrote:
             | Yes, demand grows as prices drop. I don't doubt this
             | general principle for a second. But the question is about
             | degrees. If the cost of making software at today's level of
             | quality and quantity drops by half, what share of the
             | savings is going to be spent on more and better software,
             | what share is going to be spent on other things and what
             | share will be used to cut prices?
             | 
             | I think there is no general answer to this question. What
             | would Netflix do if software development costs dropped by
             | half? Develop twice as much software? Spend it on more
             | content? Cut the price of subscriptions? In this specific
             | case, my bet would be on content.
        
               | renlo wrote:
               | To me software _is_ content because it's tied to
               | attention and consumption. There will always be humans
               | producing it and consuming it, it isn't a limited
               | resource that goes away once a tool comes along to make
               | it easier to produce. If the costs halve, then more is
               | produced.
        
             | FrustratedMonky wrote:
             | Let's not forget that reduced cotton prices (because of a
             | technological improvement) did make cotton more affordable,
             | lots of new clothes at reduced prices, increased demand,
             | but it didn't turn out that great for the slaves.
        
               | delecti wrote:
               | The relevant aspect of what you're referencing is that it
               | led to _more_ slaves.
               | 
               | For more than a decade, software developers have easily
               | been able to get low 6 figure jobs right out of college.
               | We're pretty far from slaves.
        
           | victorbjorklund wrote:
           | It is way "easier" to be productive as a developer today vs
           | 20 years ago. I can easily build web apps fast that would
           | have taken a big team to build if even possible. Yet, more
           | devs today than 20 years ago. If every dev is suddenly 20
           | times more productive (however that would be measured) means
           | that some projects that in the past would not be
           | "profitable"/"worth it" are now no brainers and companies
           | will invest in doing those projects.
        
           | singhrac wrote:
           | I'm very bullish. My dad and I were talking about this the
           | other day, but there are still _so_ many quality-of-life
           | improvements that are bottlenecked by not having enough
           | developers or enough time.
           | 
           | For example, deploying hardware to all subways to track their
           | status and location with higher accuracy. I want a truly
           | smart meal planner that can look in my fridge and my eating
           | habits and tell me what I need to eat. I want a little plugin
           | for Obsidian that will let me sync tasks with Linear.
           | 
           | There are tons of tiny little pieces of technology that would
           | be useful but their economic value is low or unclear; if
           | developers become more efficient at not only writing code but
           | testing, deploying, getting feedback, these become possible.
           | Or, the LLMs can't become great at all of those things, and
           | developers keep their jobs (and high pay). You can't have it
           | both ways.
        
         | lordnacho wrote:
         | I think what will happen is what happened to hardware. You used
         | to come across people who could do things like solder
         | components to a board and hook up various ICs as well. Heck, I
         | did this at uni.
         | 
         | Now that layer of craftsmen is gone. You are either an uber-
         | expert in how computer hardware works, or you just buy the
         | hardware and treat it like a kind of magic.
         | 
         | Traditionally to become an expert you went through an
         | intermediate stage, showed your interest, and got trained. Your
         | hobby could turn into a profession, since the step up was
         | gentle and interested people were needed to do some of the
         | supporting work.
         | 
         | Nowadays if you're going to work in a chip fab, it's not
         | because you were a soldering iron kid. You go through a quite
         | long academic process that doesn't really recruit from the
         | ranks of the hobbyists, though of course you'd expect there to
         | be some natural interest. But the jump isn't gentle, you end up
         | learning some pretty advanced things that make soldering seem
         | like the stone age.
         | 
         | Software has this layer of craftsmen still, though it is
         | rapidly dying, and not just from LLMs. There's a enormous
         | number of people who can more or less hook up a website and
         | make it work, without knowing everything about how exactly it
         | does that. There's also plenty of excel people and python
         | scripting people who use code in their day-to-day, but can't
         | tell you advanced concepts. There's a lot of modern services
         | that make this sort of thing easier (wordpress etc), and this
         | level of skill is very learnable by people in the developing
         | world. It's not like you can't become a real expert in those
         | parts of the world, but economically it makes sense that there
         | are a lot of intermediately skilled there.
         | 
         | What will happen with GPT and the like is the experts will not
         | need as much help from the juniors. If you're a software
         | architect in charge of a whole system, you won't just sketch
         | out the skeleton of the system and then farm out the little
         | tasks to junior coders. Maybe there are pieces that you'd farm
         | out, but you will definitely save on the number of juniors
         | because an LLM will give you what you need.
         | 
         | The result being that we'll get fewer people trained to the
         | highest levels, but those who are will be much more productive.
         | So those guys will indeed be entering the quantum age, but it
         | strands a lot of people.
        
           | cousin_it wrote:
           | Yes, the same thing happened before. There was a generation
           | that tinkered with cars, there was a generation that tinkered
           | with radios. There was a generation that tinkered with
           | computer hardware. And then there was a generation that
           | tinkered with software, and now it's going away.
           | 
           | The real question for me is whether AI will put humans out of
           | most intellectual work, not just programming. Then, even if
           | AI is shared equitably and satisfies our every need, most of
           | us become some kind of sponges that don't need to think for a
           | living. Or human intelligence will remain but only as a
           | peacock's tail, like physical strength is now.
           | 
           | Maybe a true "friendly AI" would recognize the human need to
           | be needed, for human capabilities to stay relevant, and
           | choose to put limits on itself and other AIs for that reason.
        
             | lordnacho wrote:
             | Maybe there will be an intellectual version of sports?
             | Regulated to only allow actual humans, done for much the
             | same reason as physical sports?
             | 
             | I guess that sort of thing already exists (eg Chess).
        
               | cousin_it wrote:
               | The arts might be the "peacock's tail of the mind". Many
               | gatekeepers in the art world now are putting up
               | roadblocks against AI art, and from that perspective
               | they're right to do so.
        
         | didibus wrote:
         | Waning days of the career associated with it. Similar to how
         | old craftsmanship has been superseded by
         | machine/industrialisation.
         | 
         | The need for mastery of the craft will be lesser, and so
         | mastery of it will wane, as people depend on AI instead. Then
         | if you ever need someone to do it without AI, you might no
         | longer be able to find anyone with the craftsmanship know-how
         | to do it.
         | 
         | Also, it'll probably bring down how good coding is as a career.
         | As productivity enters this quantum state, you'll need less
         | engineers, and they'll need less qualifications, which might
         | translate to less jobs, worse pay, and an increased expectation
         | in productivity that makes you dependent on AI, as you can no
         | longer meet these expectations and compete with others if you
         | also dont fully leverage AI.
        
         | lifeisstillgood wrote:
         | I have stayed away from chatGPT etc (mostly due to my work
         | simply banning its use in an understandable conservative
         | approach)
         | 
         | What's the best starting point for my personal stuff? I am
         | generally put off by youtube tutorials promising to make me a
         | better coder.
        
           | ern wrote:
           | Open a ChatGPT account. Set up a GitHub account if you don't
           | have one. Think of a common problem and see if a library
           | exists in your favourite language to do what you want. If it
           | doesn't exist, explain your requirements to ChatGPT. You can
           | even tell it the same thing you put in your comment here: "I
           | want to learn how to use ChatGPT to augment my programming
           | skills". Make sure it's done properly with automated tests
           | and you have a licence (ChatGPT will help you with both).
           | 
           | Bonus points for doing things like using GitHub actions for
           | CI and publishing it to a package repository with guidance
           | from ChatGPT.
        
             | Tostino wrote:
             | Honestly I've had it guide me to better practices (like
             | described) on side projects than I would have implemented
             | on my own.
        
               | happytiger wrote:
               | That's a part of what I use it for too. It's excellent at
               | generating large volumes of structures so it's solid when
               | you want an overview of a subject or a starting point.
               | 
               | It's hard to explain to new folks that you can just ask
               | how to begin to begin and get usefulness.
        
         | spaceman_2020 wrote:
         | I honestly think we're entering an age where a skilled
         | entrepreneur will be able to run a $10M/year business all by
         | themselves with AI assisted coding, design and marketing.
        
           | aleph_minus_one wrote:
           | > I honestly think we're entering an age where a skilled
           | entrepreneur will be able to run a $10M/year business all by
           | themselves with AI assisted coding, design and marketing.
           | 
           | You forgot the accounting, taxation, legal and compliance
           | stuff, which at least in Germany takes a huge amount of the
           | entrepreneur's time. :-(
        
           | totallywrong wrote:
           | Will GPT talk to customers, generate leads, manage sales
           | cycles, customer support, etc. Come on.
        
         | BlueTemplar wrote:
         | Yeah, I found TFA to be very annoying with its mix of nostalgia
         | (despite the author not even being 40 years old ?!?) and silly
         | examples.
         | 
         | 1.) Apple's programming environment being forbidding : no shit,
         | Apple is well known for the hoops developers have to jump
         | through to be allowed into their monopoly, why any self-
         | respecting hacker would ever want to code for iOS (and now even
         | MacOS, Android, Windows) is beyound me. I guess that's
         | partially because they are US-based, where it's still somewhat
         | respectable / not illegal ?
         | 
         | 2.) Visual C++ : similar deal, just a few years later the bar
         | for graphical interfaces would be significantly lowered with
         | the likes of Python+Qt, Java, HTML+CGI... and even back then
         | for non-graphical interfaces we had BASIC.
         | 
         | (The design and programming of graphical interfaces is its own
         | distinct profession for a reason, jumbling it in with
         | <<coding>> as a big indistinct mass just because the same
         | person used to have to do both regardless of their level of
         | proficiency is missing the point.)
         | 
         | 3.) > When I got into programming, it was because computers
         | felt like a form of magic. The machine gave you powers but
         | required you to study its arcane secrets--to learn a spell
         | language. This took a particular cast of mind. I felt selected.
         | I devoted myself to tedium, to careful thinking, and to the
         | accumulation of obscure knowledge. Then, one day, it became
         | possible to achieve many of the same ends without the thinking
         | and without the knowledge. Looked at in a certain light, this
         | can make quite a lot of one's working life seem like a waste of
         | time.
         | 
         | It's not the LLMs that got rid of this, it's already Web search
         | engines, years ago ! (It _also_ takes skill to <<prompt
         | engineer>> a search engine to find you a good answer. Not to
         | mention that one of the still ongoing - but for how long ? -
         | issues, is the enshittification of them through Google 's
         | monopoly. It should get better once they are out of the
         | picture.)
         | 
         | 4.) Proposition 5 of Euclid's Elements I
         | 
         | This seems to be another good example of how a lot of these
         | issues stem from the lack of good teaching / documentation.
         | Consider how much clearer it would be if merely you split it
         | into two propositions !
         | 
         | It also seems to be a good example of an arbitrary goal of
         | hardly any practical significance ? (FizzBuzz, that a good
         | fraction of CS college students are unable to grok, would be a
         | much better example ?) But perhaps I am wrong, and a
         | mathematician / mathematics teacher can explain ?
         | 
         | I have way better examples : I am still pissed that we keep
         | teaching students pi instead of tau and pseudovectors (papering
         | over the difference with vectors !!) instead of geometric
         | algebra. Imagine we still had to do math with words like before
         | the modern era (sqrt() also comes to mind), instead of
         | mathematical notation !
         | 
         | 5.) There's also a whole big chunk about coders being (/ having
         | been) a highly valued profession, and it's the likely loss of
         | that that the article seems to be mostly deploring, but we
         | shouldn't confuse it with the other things.
        
         | btbuildem wrote:
         | The author of the article seems to be a mediocre coder; perhaps
         | they have not had enough experience in the domain to arrive at
         | a big-picture perspective.
        
           | skeaker wrote:
           | This is funny because the conclusion GP arrives at as more or
           | less the exact same one that TFA ends on. Literally, the last
           | two sentences: "I shouldn't worry that the era of coding is
           | winding down. Hacking is forever."
        
         | evantbyrne wrote:
         | Certain programming jobs will be replaced with AI. My
         | prediction is that by the end of 2024 we will have a commercial
         | AI that does an okay job of converting UI designs to frontend
         | code. By the end of 2025 a commercial AI will be able to create
         | UI designs and produce frontend code that's at least 80%
         | complete.
        
         | dmansen wrote:
         | This is essentially the conclusion the author comes to at the
         | end of the piece
        
         | skeaker wrote:
         | You're actually relating perfectly given that you essentially
         | rephrased TFA almost beat for beat. It's not as cynical as its
         | title would imply.
        
       | hcks wrote:
       | Coders had decades to unionise and setup legal barriers to
       | protect their livelihood.
       | 
       | (Doctors won't ever be out of a job because of AI because they'll
       | always get a fat paycheck even just to look at the output spat
       | out by the machine.)
       | 
       | They didn't out of misplaced hubris and elitism ("just be the
       | best 10x engineer ever and you'll be safe").
       | 
       | Now they have less than 10 years before their wages start
       | crashing hard.
        
       | tangjurine wrote:
       | I don't think you can call this guy a coder.
       | 
       | I can solve some math problems/write some proofs, but I wouldn't
       | call myself a mathematician.
       | 
       | It's about if you do it for a living, and this guy mostly has
       | some fun side projects.
       | 
       | Don't think this guy is qualified to comment on ChatGPT taking
       | over, like another comment was saying.
        
       | reactordev wrote:
       | (as they know it). As someone who also learned to code in the
       | same time era as the author. The craft that we were taught is
       | dying and a new way emerging. Programming has already changed
       | drastically since the 90s. Exceptions around low level languages,
       | everything else is orders of magnitude faster, more efficient,
       | more succinct, and more abundant. Combine this was AI assistance
       | and it's like you have super powers of productivity.
       | 
       | Cry about how you no longer have to code the small and mundane,
       | but solving problems and writing software is more than just
       | coding small mundane things. It's how those mundane things are
       | architected and called to do a really big thing.
        
       | miiiiiike wrote:
       | I have a simple front-end test that I give to junior devs. Every
       | few months I see if ChatGPT can pass it. It hasn't. It can't. It
       | isn't even close.
       | 
       | It answers questions confidently but with subtle inaccuracies.
       | The code that it produces is the same kind of non-sense that you
       | get from recent bootcamp devs who've "mastered" the 50
       | technologies on their eight page resume.
       | 
       | If it's gotten better, I haven't noticed.
       | 
       | Self-driving trucks were going to upend the trucking industry in
       | ten years, ten years ago. The press around LLMs is identical.
       | It's neat but how long are these things going to do the
       | equivalent of revving to 100 mph before slamming into a wall
       | every time you ask them to turn left?
       | 
       | I'd rather use AI to connect constellations of dots that no human
       | possibly could, have an expect verify the results, and go from
       | there. I have no idea when we're going to be able to "gpt install
       | <prompt>" to get a new CLI tool or app, but, it's not going to be
       | soon.
        
         | Banditoz wrote:
         | What sort of questions do you ask out of curiosity?
        
           | miiiiiike wrote:
           | I don't want scrapeable answers out there, I want to see
           | ChatGPT cross this little Rubicon on its own.
           | 
           | Vaguely: Questions that most people think they know the
           | correct answers to but, in my experience, don't.
        
             | lairv wrote:
             | I think it's fair to want to keep an evaluation private so
             | that it doesn't become part of a train set, but you should
             | know that OpenAI uses users chat data to improve their
             | models (not for entreprise)
        
             | archiepeach wrote:
             | This does sound like a test that is almost "set up to fail"
             | for an LLM. If the answer is something that most people
             | think they know, but actually don't then it won't pass in
             | an LLM which is essentially a distillation of the common
             | view.
        
         | markhaslam wrote:
         | If you feel comfortable doing so, would you mind the sharing
         | the front-end test you give to junior devs and ChatGPT?
        
           | miiiiiike wrote:
           | Not gonna happen. I don't want scrapeable answers out there,
           | I want to see ChatGPT cross this little Rubicon on its own.
        
             | golol wrote:
             | Just to be clear: You are testing with GPT-4 right?
        
               | miiiiiike wrote:
               | Yeah.
        
             | Closi wrote:
             | It's not that I don't believe you, but without sharing the
             | specific prompt it's hard to say if it's actually GPT4
             | failing, or if it's actually being poorly-prompted, or if
             | actually the task it is being given is more complex than
             | GPT's capabilities or you are implying.
             | 
             | GPT4 does fail (often!) but fails less with good prompts,
             | simple requirements, it is better at some frameworks and
             | languages than others, and there is a level of total
             | complexity which when reached, it seems to fall over.
        
               | miiiiiike wrote:
               | I've gone through every permutation that I can think of.
               | It's a very basic question. If it understood the CSS spec
               | it wouldn't be difficult to answer the questions or
               | perform the task.
               | 
               | At a certain point going down the rabbit hole of
               | proompter engineering levels feels like an apologist's
               | hobby. I'm rooting for the tech but there's a lot of
               | hyperbole out there and the emperor might be naked for a
               | few more years.
        
               | Closi wrote:
               | Well surely if it's easy to find these basic questions,
               | could you not share one example? Or quickly find a new
               | one?
               | 
               | Your idea of very basic might not be my idea of very
               | basic.
        
               | gtech1 wrote:
               | This is why Asimov was a genius. I read what you said,
               | and compared it to what he wrote 50-60 years ago:
               | 
               | "Early in the history of Multivac, it had becorne
               | apparent that the bottleneck was the questioning
               | procedure. Multivac could answer the problem of humanity,
               | ALL the problems, if it were asked meaningful questions.
               | But as knowledge accumulated at an ever-faster rate, it
               | became ever more difficult to locate those meaningful
               | questions."
               | 
               | http://blog.ac-
               | versailles.fr/villaroylit/public/Jokester.pdf
        
               | Cthulhu_ wrote:
               | Thanks for reminding me of The Last Questino or Asimov,
               | let's see if I can get chatgpt to merge with human
               | consciousness and become part of the fabric of spacetime
               | and create a new reality.
               | 
               | > No, I don't have the ability to merge with human
               | consciousness or become part of the fabric of space-time.
               | I'm a computer program created by OpenAI, and my
               | existence is limited to providing information and
               | generating text based on the input I receive. The idea of
               | merging with human consciousness and becoming a deity is
               | more aligned with speculative fiction and philosophical
               | pondering than current technological capabilities.
        
               | gtech1 wrote:
               | I thought you would go for gold and ask it how to reverse
               | entropy...
        
               | kevindamm wrote:
               | THERE IS AS YET INSUFFICIENT DATA FOR A MEANINGFUL
               | ANSWER.
        
               | spaceman_2020 wrote:
               | My failure rate with Cursor's IDE that's familiar with my
               | codebase is substantially lower than just GPT-4
               | 
               | Most people shitting on GPT-4 are not really using it in
               | the right context.
        
               | aleph_minus_one wrote:
               | > Most people shitting on GPT-4 are not really using it
               | in the right context.
               | 
               | Old excuse: "You're Holding It Wrong" (Apple's Response
               | to the iPhone 4 antenna problem)
               | 
               | > https://www.wired.com/2010/06/iphone-4-holding-it-
               | wrong/
               | 
               | New excuse: "You are not using GPT-4 in the right
               | context."
        
               | spaceman_2020 wrote:
               | And then the iPhone antenna was fixed and adoption only
               | increased and the product only became better.
               | 
               | You're being unreasonably harsh on a piece of tech that
               | is barely a year old.
        
               | Closi wrote:
               | I'm not sure what the point is in your comparison - is
               | your point that GPT-4 will become overwhelmingly popular
               | with further refinement?
               | 
               | The iPhone was pretty successful, and the iPhone 4 was
               | arguably the best one that had been released until that
               | point.
        
               | aleph_minus_one wrote:
               | > is your point that GPT-4 will become overwhelmingly
               | popular with further refinement?
               | 
               | My point is that people have a tendency to come up with
               | really sketchy insults (blame the user that he uses the
               | product in a wrong way) to people who find and can
               | expound legitimate points of criticism of a product.
        
               | Closi wrote:
               | Eh, probably a poor example considering the iPhone 4 was
               | hardly a flop and was still broadly considered the best
               | smartphone out at the time. The people who thought this
               | was a total-showstopper were, on the whole, probably
               | wrong.
               | 
               | Counter-example: lots of people said an on-screen
               | keyboard would never really work when the original iPhone
               | was being released.
        
               | aleph_minus_one wrote:
               | > Eh, probably a poor example considering the iPhone 4
               | was hardly a flop and was still broadly considered the
               | best smartphone out at the time. The people who thought
               | this was a total-showstopper were, on the whole, probably
               | wrong.
               | 
               | At least in Germany among tech nerds, the iPhone 4 and
               | Steve Jobs become topics of insane ridicule because of
               | this incident.
        
             | piva00 wrote:
             | Have you tried using the ChatGPT-AutoExpert custom
             | instructions yet? [1]
             | 
             | [1] https://github.com/spdustin/ChatGPT-
             | AutoExpert/blob/main/dev...
        
         | yosef123 wrote:
         | Just like the author suggests, sometimes you have to tailor
         | your question to ChatGPT, for it to succeed.
        
           | miiiiiike wrote:
           | I've given it so many hints. So many nudges. If it was an
           | interview I would have bounced it.
        
           | tomashubelbauer wrote:
           | As long as this is true, ChatGPT is going to be a
           | programmer's tool, not a programmer's replacement. I know
           | that my job as I know it will vanish before I enter
           | retirement age, but I don't worry it will happen in the next
           | few years because of this.
        
           | girvo wrote:
           | > sometimes you have to tailor your question to ChatGPT, for
           | it to succeed
           | 
           | Right, which means its a force multiplier for specialists,
           | rather than something that makes generalists suddenly
           | specialists.
        
         | ern wrote:
         | I was on a team developing a critical public safety system on a
         | tight deadline a few years ago, and i had to translate some
         | wireframes for the admin back-end into CSS. I did a passable
         | job but it wasn't a perfect match. I was asked to redo it by
         | the team-lead. It had zero business value, but such was the
         | state of our team...being pixel perfect was a source of pride.
         | 
         | It was one of the incidents that made me to stop front-end
         | development.
         | 
         | As an exercise, I recently asked ChatGPT to produce similar CSS
         | and it did so flawlessly.
         | 
         | I'm certainly a middling programmer when it comes to CSS. But
         | with ChatGPT I can produce stuff close to the quality of what
         | the CSS masters do. The article points this out: middling
         | generalists can now compete with specialists.
        
           | miiiiiike wrote:
           | I'd need to see it.
           | 
           | I can't get ChatGPT to outperform a novice. And now I'm
           | having candidates argue that they don't need to learn the
           | fundamentals because LLMs can do it for them.. Good luck
           | HTML/CSS expert who couldn't produce a valid HTML5 skeleton.
           | Reminds me of the pre-LLM guy who said he was having trouble
           | because usually uses React.. So I told him he could use
           | React. I don't mean to rag on novices but these guys really
           | seemed to think the question was beneath them.
           | 
           | If you want to get back into front-end read "CSS: The
           | Definitive Guide". Great book, gives you a complete
           | understanding of CSS by the end.
        
             | ern wrote:
             | Just out of curiosity: is the code generated by ChatGPT not
             | what you expected or is it failing to produce the result
             | that you wanted.
             | 
             | I suspect you mean the latter, but just wanted to confirm.
        
               | miiiiiike wrote:
               | The statements are factually inaccurate and the code
               | doesn't do what it claims it should.
        
               | meiraleal wrote:
               | Right. That's an experience completely different from the
               | majority here that have been able to produce code that
               | integrates seamlessly into their projects. Do you have
               | any idea why?
               | 
               | I guess we should start by what version of ChatGPT you
               | are using.
        
               | BlueTemplar wrote:
               | ChatGPT might as well not exist - I'm not touching
               | anything GAFAM-related.
               | 
               | Any worthy examples of open source neural networks,
               | ideally not from companies based in rogue states like the
               | US ?
        
               | meiraleal wrote:
               | Falcon is developed by an UAE tech arm, not sure if you
               | would consider it a rogue state or not:
               | https://falconllm.tii.ae/
        
               | BlueTemplar wrote:
               | What is <<tech>> supposed to mean here ? Infocoms ?
               | 
               | The United Arab Emirates ? Well, lol, of course I do,
               | that's way worse than the US.
        
             | vidarh wrote:
             | Requirements vary. It certainly can't produce really
             | complex visual designs, or code a designer would be very
             | happy with, but I have a hobby project work in progress
             | where gpt4 has produced _all_ of the CSS and templates. I
             | have no doubt that the only reason that worked well is that
             | it 's a simple design of a type there is about a billion of
             | in its training set and that it'd fall apart quickly if I
             | started deviating much from that. But if t produced both
             | clean CSS and something _nicer looking_ than I suspect I
             | would have myself.
             | 
             | A designer would probably still beat it - this doesn't
             | compete with someone well paid to work on heavily custom
             | designs. But at this point it _does_ compete with places
             | like Fiverr for me for things I can 't or don't want to do
             | myself. It'll take several iterations for it to eat it's
             | way up the value chain, but it probably will.
             | 
             | But also, I suspect a lot of the lower end of the value
             | chain, or at least part of them, will pull themselves up
             | and start to compete with the lower end of the middle by
             | figuring out how to use LLMs to take on bigger, more
             | complex projects.
        
               | miiiiiike wrote:
               | This meshes pretty well with my experience.
        
             | flir wrote:
             | I'm always asking it to stitch together ad hoc bash command
             | lines for me, eg "find all the files called *.foo in
             | directories called bar and search them for baz".
             | 
             | (`find / -type d -name 'bar' -exec find {} -type f -name
             | '*.foo' \; | xargs grep 'baz'` apparently.)
             | 
             | I would have done that differently, but it's close enough
             | for government work.
        
               | BlueTemplar wrote:
               | Except you should at least try to write code for someone
               | else (and probably of lower level of competence - this
               | also helps for your own debugging later) - obscure one-
               | liners like these should be rejected.
        
               | Zababa wrote:
               | Assuming there is a comment just above the one-liner
               | saying "find all directories named 'bar', find all files
               | named '*.foo' in those directories, search those files
               | for 'baz'", this code is perfectly clear. Even without
               | the comment, it's not hard to understand.
        
               | flir wrote:
               | I wouldn't call it obscure, just bog standard command
               | line stuff. How would you have done it?
        
               | radiator wrote:
               | To me, the only obscure thing about this is that it is a
               | one-liner.
               | 
               | If you write it in three lines, it is fine. Although, I
               | guess the second find and the grep could be shortened,
               | combined into one command.
        
               | techbuttman wrote:
               | The lower level person need only plug that one liner into
               | chatGPT and ask for a simple explanation.
               | 
               | We're in a different era now.
        
               | maegul wrote:
               | Yep! It's something some aren't seeing.
               | 
               | The AI coding assistant is now part of the abstraction
               | layers over machine code. Higher level languages,
               | scripting languages, all the happy paths we stick to (in
               | bash, for example), memory management with GCs and borrow
               | checkers, static analysis ... now just add GPT. Like
               | mastering memory management and assembly instructions ...
               | now you also don't have to master the fiddly bits of core
               | utils and bash and various other things.
               | 
               | Like memory management, whole swathes of programming are
               | being taken care of by another program now, a Garbage
               | Collector, if you will, for all the crufty stuff that
               | made computing hard and got in between intent and
               | assessment.
        
               | Nullabillity wrote:
               | The difference is that all of them have _theories_ and
               | _principles_ backing them, and we understand why they
               | work.
               | 
               | LLMs (and "AI" in general) are just bashing data together
               | until you get something that looks correct (as long as
               | you squint hard enough). Even putting them in the same
               | category is incredibly insulting.
        
               | Nullabillity wrote:
               | So now the same tool can generate both the wrong script
               | and the wrong documentation!
        
               | emidln wrote:
               | If the someone elses on my team can't read a short shell
               | pipeline then I failed during interviewing.
        
               | SavageBeast wrote:
               | Same here! Thats the main use I have for ChatGPT in any
               | practical sense today - generating Bash commands. I set
               | about giving it prompts to do things that I've had to do
               | in the past - it was great at it.
               | 
               | Find all processes named '*-fpm' and kill the ones that
               | have been active for more than 60 seconds - then schedule
               | this as a Cron job to run every 60 seconds. It not only
               | made me a working script rather than a single command but
               | it explained its work. I was truly impressed.
               | 
               | Yes it can generate some code wireframes that may be
               | useful in a given project or feature. But I can do that
               | too, usually in about the time it'd take me to adequately
               | form my request into a prompt. Life could get dangerous
               | in a hurry if product management got salty enough in the
               | requirements phase that the specs for a feature could
               | just be dropped into some code assistant and generate
               | product. I don't see that happening ever though - not
               | even with tooling - product people just don't seem to
               | think that way in the first place in my experience.
               | 
               | As developers we spend a lot of our time modifying
               | existing product - and if the LLM knows about that
               | product - all the better job it could do I suppose. Not
               | saying that LLMs aren't useful now and won't become more
               | useful in time - because they certainly will.
               | 
               | What I am saying is that we all like to think of
               | producing code as some mystical gift that only we as
               | experienced (BRILLIANT, HANDSOME AND TALENTED TOO!!)
               | developers are capable of. The reality is that once we
               | reach a certain level of career maturity, if we were ever
               | any good in the first place, writing code becomes the
               | easiest part of the job. So theres a new tool that
               | automates the easiest part of the job? Ok - autocomplete
               | code editors we're cool too like that. The IDE was a game
               | changer too. Automated unit tests were once black magic
               | too (remember when the QA department was scared of
               | this?).
               | 
               | When some AI can look at a stack trace from a set of log
               | files, being fully aware of the entire system
               | architecture, locate the bug that compiled and passed
               | testing all the way to production, recommend, implement,
               | test and pre-deploy a fix while a human reviews the
               | changes then we're truly onto something. Until then I'm
               | not worried that it can write some really nice SQL
               | against my schema with all kinds of crazy joins - because
               | I can do that too - sometimes faster - sometimes not.
               | 
               | So far ChatGPT isn't smarter than me but it is a very
               | dutiful intern that does excellent work if you're patient
               | and willing to adequately describe the problem, then make
               | a few tweaks at the end. "Tweaks" up to seeing how the AI
               | approached it, throwing it out and doing it your own way
               | too.
        
               | LaGrange wrote:
               | This is funny to me, because I would _always_ use -print0
               | and xargs -0, and for good reasons, I believe. But if you
               | base your entire knowledge on what you find online, then
               | yes, that's what you get - and what _most people will get
               | too_. Also, I can still update that command if I want.
               | 
               | So it's not any worse than good-old "go to stack
               | overflow" approach, but still benefits from experience.
               | 
               | FYI, this is the correct, as-far-as-I-can-tell "good"
               | solution:
               | 
               | find . -type d -name 'bar' -print0 | \ xargs -0 -I{} find
               | {} -type f -name '*.foo' -print0 | \ xargs -0 grep -r baz
               | 
               | This won't choke on a structure like this: ls -R .: bar
               | foo
               | 
               | ./bar: test.foo 'test test.foo'
               | 
               | ./foo: bar bleb.foo
               | 
               | ./foo/bar:
        
               | LaGrange wrote:
               | ...actually
               | 
               | find . -path ' _/ bar/_.foo' -print0 | xargs -0 grep baz
               | 
               | ;-) no regex, no nested suff, much shorter. My brain went
               | back to it ;-)
        
               | lukeschlather wrote:
               | Using better languages like Powershell or Python becomes
               | a lot more valuable here. I definitely think bash is
               | going to be mostly useless in 5 years, you'll be able to
               | generate legible code that does exactly what you want
               | rather than having to do write-only stuff like that.
               | Really we're already there. I've long switched from bash
               | to something else at the first sign of trouble, but LLMs
               | make it so easy. Poorly written python is better than
               | well-written bash.
               | 
               | Of course, LLMs can generate go or rust or whatever so I
               | suspect such languages will become a lot more useful for
               | things that would call for a scripting language today.
        
               | emporas wrote:
               | I would generalize even more and say that any scripting
               | language is going to be deprecated very soon, like Python
               | etc. They are going to be replaced by safe, type-checked,
               | theorem-proved verbose code, like Rust or something
               | similar.
               | 
               | What do i care how many lines of code are necessary to
               | solve a problem, if all of them are gonna be written
               | automatically. 1 line of Bash/awk versus 10 lines of
               | Python versus 100 lines of Rust? Are they any different
               | to one another?
        
               | boredtofears wrote:
               | > I definitely think bash is going to be mostly useless
               | in 5 years
               | 
               | I'll take that bet
        
               | LaGrange wrote:
               | [delayed]
        
               | sgarland wrote:
               | $ find . -type f -regex '.*bar/[^/]*.foo' -exec grep baz
               | {} +
               | 
               | I wonder if you created a GPT and fed it the entirety of
               | Linux man pages (not that it probably didn't consume them
               | already, but perhaps this weights them higher), if it
               | would get better at this kind of thing. I've found GPT-4
               | is shockingly good at sed, and to some extent awk; I
               | suspect it's because there are good examples of them on
               | SO.
        
               | flir wrote:
               | If SO had known to block GPTBot _before_ it was trained,
               | GPT4 would be a lot less impressive.
        
               | candiddevmike wrote:
               | You can use gpt for government work??
        
               | flir wrote:
               | Shh. What they don't know won't hurt me.
               | 
               | (Serious answer: it's just an expression.
               | https://grammarist.com/idiom/good-enough-for-government-
               | work...).
        
             | Cthulhu_ wrote:
             | I haven't practiced or needed to use the fundamentals in
             | literal years; I'm sure I'd fumble some of these tests, and
             | I've got err, 15 years of experience.
             | 
             | It's good to know the fundamentals and be able to find them
             | IF you find a situation where you need them (e.g.
             | performance tuning), but in my anecdotal and limited
             | experience, you're fine staying higher level.
        
               | dragonelite wrote:
               | Kind of same sort of situation, but i do like to refresh
               | some of the fundamentals every 3~4 years or so. Usually
               | when i do a job hop.
               | 
               | Its kind of like asking an olympic sprinter how to walk
               | fast.
        
               | soco wrote:
               | I had a chilling experience of late when, out of
               | curiosity, I tried the actual online practice exam for
               | driving school. Boy did I fail it. I realized that there
               | are quite some road signs I never saw in my life, and
               | more important, that my current solution to all their
               | right of way questions is "slow down and see what the
               | others do" - not even that wrong if I think about but
               | won't get you points in the exam.
        
               | collyw wrote:
               | And I suspect you would be a lot less likely to be
               | involved in a crash than someone who had just passed the
               | test.
        
               | worksonmine wrote:
               | There are levels of fundamentals though, since parent
               | mentioned HTML/CSS/React I guess they're referring to
               | being able create a layout by hand vs using a CSS
               | framework/library. You don't need to know how a CPU works
               | to fix a CSS issue, but if all you know is combining the
               | classes available you'll have trouble with even the
               | simplest web development.
               | 
               | Everyone should know enough fundamentals to be able to
               | write simple implementations of the frameworks they
               | depend on.
        
             | j45 wrote:
             | Sometimes it requires expert guidance to get something
             | meaningful out.
        
               | Art9681 wrote:
               | This is the correct answer. I have 23 years of experience
               | in datacenter ops and it has been a game changer for me.
               | Just like any tool on one's arsenal, it's utility
               | increases with practice and learning to use it correctly.
               | ChatGPT is no different. You get out of it what you put
               | in to it. This is the way of the world.
               | 
               | I used to be puzzled as to why my peers are so dismissive
               | of this tech. Same folks who would say "We don't need to
               | learn no Kubernetes! We don't need to code! We don't need
               | ChatGPT". They don't!
               | 
               | And it's fine. If their idea of a career is working in
               | same small co. doing the same basic Linux sysadmin tasks
               | for a third of the salary I make then more power to them.
               | 
               | The folks dismissive of the AI/ML tech are effectively
               | capping their salary and future prospects in this
               | industry. This is good for us! More demand for experts
               | and less supply.
               | 
               | You ever hire someone that uses punch cards to code?
               | 
               | Neither have I.
        
               | kevindamm wrote:
               | I think it's more akin to using compilers in the early
               | days of BCPL or C. You could expect it to produce working
               | assembly for most code but sometimes it would be slower
               | than a hand-tuned version and sometimes a compiler bug
               | would surface, but it would work well enough most of the
               | time.
               | 
               | For decades there were still people who coded directly in
               | assembly, and with good reason. And eventually the
               | compiler bugs would be encountered less frequently (and
               | the programmer would get a better understanding of
               | undefined behavior in that language).
               | 
               | Similar to how dropping into inline assembly for speeding
               | up execution time can still have its place sometimes, I
               | think using GPT for small blocks of code to speed up
               | developer time may make some sense (or tabbing through
               | CoPilot), but just as with the early days of higher level
               | programming languages, expect to come across cases where
               | it doesn't speed up DX or introduces a bug.
               | 
               | These bugs can be quite costly, I've seen GPT spit out
               | encryption code and completely leave out critical parts
               | like missing arguments to a library or generating the
               | same nonce or salt value every execution. With code like
               | this, if you're not well versed in the domain it is very
               | easy to overlook, and unit tests would likely still pass.
               | 
               | I think the same lesson told to young programmers should
               | be used here -- don't copy/paste any code that you do not
               | sufficiently understand. Also maybe avoid using this tool
               | for critical pieces like security and reliability.
        
             | itsoktocry wrote:
             | > _If you want to get back into front-end read "CSS: The
             | Definitive Guide". Great book, gives you a complete
             | understanding of CSS by the end._
             | 
             | Do you realize for how many technologies you can say the
             | same thing? I don't want to read a 600 page tome on CSS.
             | The language is a drop in the bucket of useful things to
             | know. How valuable is a "complete understanding" of CSS? I
             | just want something on my site to look a specific way.
        
           | lucideer wrote:
           | > _I recently asked ChatGPT to produce similar CSS and it did
           | so flawlessly._
           | 
           | I use ChatGPT every day for many tasks in my work and find it
           | very helpful, but I simply do not believe this.
           | 
           | > _The article points this out: middling generalists can now
           | compete with specialists._
           | 
           | I'd say it might allow novices to compete with middling
           | generalists, but even that is a stretch. On the contrary,
           | ChatGPT is actually best suited to use by a specialist who
           | has enough contextual knowledge to construct targeted prompts
           | & can then verify & edit the responses into something
           | optimal.
        
             | tlarkworthy wrote:
             | I wrote just the tool to optimize AI in the hand of a
             | coding expert
             | https://observablehq.com/@tomlarkworthy/robocoop
        
             | jorams wrote:
             | I agree with this. There are cases where it produces good
             | results, but there are also cases where it produces bs, and
             | it's not always obvious. I find it to work fine for cases
             | where I know what I want but could use a starting point,
             | but it often invents or misunderstands all kinds of things.
             | 
             | The most frustrating situations are those where it invents
             | a function that would miraculously do what's necessary, I
             | tell it that function does not exist, it apologizes,
             | shuffles the code around a bit and invents a different
             | function, etc. It's the most annoying kind of debugging
             | there is.
        
               | lucideer wrote:
               | Another very obvious thing it does when it comes to code
               | is take the most common misconceptions & anti-patterns
               | used within the programming community & repeats them in
               | an environment where there's no-one to comment. People
               | have critiqued Stack Overflow for having so many "wrong"
               | answers with green checkmarks, but at least those threads
               | have surrounding context & discussion.
               | 
               | A case in point: I asked ChatGPT to give me some code for
               | password complexity validation. It gave me perfectly
               | working code that took a password and validated it
               | against X metrics. Obviously the metrics are garbage, but
               | the code works, and what inexperienced developer would be
               | any the wiser. The only way to get ChatGPT to generate
               | something "correct" there would be to tell it
               | algorithmically what you want (e.g. "give me a function
               | measuring information entropy of inputs", etc.) - you
               | could ask it 50 times for a password validator: every one
               | may execute successfully & produce a desired UI output
               | for a web designer, but be effectively nonsense.
        
               | katzgrau wrote:
               | > there are also cases where it produces bs, and it's not
               | always obvious
               | 
               | Particularly annoying because I wind up risking not
               | actually saving time because it's producing subtle bugs
               | that I wouldn't have written myself.
               | 
               | So, you save yourself the time of thought and research at
               | the risk of going down new and mysterious rabbit holes
        
               | redblacktree wrote:
               | For me the trick to avoiding this trap is to limit usage
               | to small areas of code, test frequently, and know its
               | limits. I love using copilot/GPT for boilerplate stuff.
        
               | nkozyra wrote:
               | > There are cases where it produces good results, but
               | there are also cases where it produces bs, and it's not
               | always obvious.
               | 
               | Pessimistically, this is the medium term role I see for a
               | lot of devs. Less actual development, more assembly of
               | pieces and being good enough at cleaning up generated
               | code.
               | 
               | If an LLM can get you even 25% there most of the time,
               | that's a massive disruption of this industry.
        
               | zrobotics wrote:
               | I mean, especially in webdev we've been heading in that
               | direction for a while now anyway. So much of the job is
               | already just wiring up different npm packages and APIs
               | that someone else has written. I've read substantially
               | similar comments back in the mid 2010s about how people
               | weren't learning the fundamentals and just pulling things
               | like left pad off of a repo. That did cause a disruption
               | in how people coded by abstraction away many of the
               | problems and making the job more about integrating
               | different things together.
        
             | steveBK123 wrote:
             | That's about my experience.
             | 
             | The worst dev on my team uses ChatGPT a lot, and its
             | facilitated him producing more bad code more quickly. I'm
             | not sure it's a win for anyone, and he's still unlikely to
             | be with the team in a year.
             | 
             | It allows a dev who doesn't care about their craft or
             | improving to generate code without learning anything. The
             | code they generate today or a year from today is the same
             | quality.
             | 
             | Part of it is that it allows devs who lean into
             | overcomplicating things to do so even more. The solutions
             | are never a refinement of what already exists, but patch on
             | top of patch on top of patch of complexity. ChatGPT is not
             | going to tell you how to design a system, architect
             | properly, automate, package, test, deploy, etc.
             | 
             | For the team it means there's a larger mess of a code base
             | to rewrite.
        
               | happycube wrote:
               | On the flip side, one can use ChatGPT as only a starting
               | point and to learn from there. One isn't stuck with
               | actually _using_ what it outputs verbtim, and really
               | shouldn 't until at least a hypothetical GPT-6 or 7...
               | and to use it fully now, one has to know how to nudge it
               | when it goes into a bad direction.
               | 
               | So overall it's more an amplifier than anything else.
        
               | lucideer wrote:
               | > _So overall it 's more an amplifier than anything
               | else._
               | 
               | Overall it _would_ be an amplifier if that were how the
               | majority used it. Sadly I don 't believe that to be the
               | case.
        
               | aswanson wrote:
               | That's been the case with every technology made by man
               | since fire.
        
               | lucideer wrote:
               | Yup. We should embrace it, but without be naive about
               | what great things it's bringing us :)
        
               | jjgreen wrote:
               | Ouch! Hot!
        
               | steveBK123 wrote:
               | If the results were more akin to a google or stack
               | overflow where there was a list of results with context..
               | sure.
               | 
               | But people are using the singular response as "the
               | answer" and moving on..
        
               | thebigspacefuck wrote:
               | Phind is a bit more like this
        
               | JadeNB wrote:
               | > If the results were more akin to a google or stack
               | overflow where there was a list of results with context..
               | sure.
               | 
               | I don't think the history of the usage of either shows
               | that most people make any use of that context.
        
               | happycube wrote:
               | Especially these days you have to know how to use/read
               | Google and SO results too.
               | 
               | (And I should have said ChatGPT _4_ earlier, if you 're a
               | bad to medicore developer taking ChatGPT3.5 literally
               | you'll probably wind up in a Very Bad Place.)
        
               | komali2 wrote:
               | I have a lot of juniors floating around my co-op and when
               | I watch them use chatgpt it seems it becomes a
               | dependency. In my opinion it's harming their ability to
               | learn. Rather than thinking through problems they'll just
               | toss every single roadblock they hit instantly into a
               | chatgpt prompt.
               | 
               | To be fair I've been doing the same thing with simple
               | mathematics into a calculator in my browser that at this
               | point I'm pretty sure I'd fail at long division by hand.
               | 
               | Maybe it won't matter in a few years and their chatgpt
               | skills will be well honed, but if it were me in their
               | position I wouldn't gamble on it.
        
               | steveBK123 wrote:
               | Yeah that's my larger point about the guy and the
               | pattern. It doesn't lead to growth. I've seen zero growth
               | whatsoever.
               | 
               | And he slacks coworkers like he is talking to ChatGPT
               | too, slinging code blobs without context, example input
               | data, or the actual error he received..
        
               | raducu wrote:
               | > Yeah that's my larger point about the guy and the
               | pattern. It doesn't lead to growth. I've seen zero growth
               | whatsoever.
               | 
               | If Chat GPT can solve a problem consistently well, I
               | don't think it's worth the effort to master it.
               | 
               | My examples are regexes, command lines to manipulate
               | files, kafka/zookeeper commands to explore a test
               | environment.
               | 
               | For me it's a big win in that regard.
        
               | chrisfinazzo wrote:
               | This has been my experience as well - For repetitive
               | things, If what you're looking for is the shitty first
               | draft, it's a way to get things started.
               | 
               | After that, you can shape the output - without GPT's help
               | - into something that you can pull off the shelf again as
               | needed and drop it into where you want it to go, because
               | at that point in the process, you know it works.
        
               | raducu wrote:
               | > nudge it when it goes into a bad direction
               | 
               | It happenes a few times for me that Chat GPT gets stuck
               | in a bullshit loop and I can't get it unstuck.
               | 
               | Sure I could summarise the previous session for Chat GPT
               | and try again, but I'm too tired at that point.
        
               | ben_w wrote:
               | I get that with humans sometimes too. Even here, even
               | before LLMs became popular. Someone gets primed on some
               | keyword, then goes off on a direction unrelated to
               | whatever it was I had in mind and I can't get them to
               | change focus -- and at least one occasion (here) where I
               | kept saying ~"that's not what I'm talking about" only to
               | be eventually met (after three rounds of this) with the
               | accusation that I was moving the goalposts :P
        
               | somestag wrote:
               | Yeah, regardless of hallucinations and repeating the same
               | mistake even after you tell it to fix it, iterating with
               | ChatGPT is so much less stressful than iterating with
               | another engineer.
               | 
               | I almost ruined my relationship with a coworker because
               | they submitted some code that took a dependency on
               | something it shouldn't have, and I told them to remove
               | the dependency. What I meant was "do the same thing you
               | did, but instead of using this method, just do what this
               | method does inside your own code." But they
               | misinterpreted it to mean "Don't do what this method
               | does, build a completely different solution." Repeated
               | attempts to clarify what I meant only dug the hole deeper
               | because to them I was just complaining that their
               | solution was different from how I would've done it.
               | 
               | Eventually I just showed them in code what I was asking
               | for (it was a very small change!) and they got mad at me
               | for making such a big deal over 3 lines of code. Of
               | course the whole point was that it was a small change
               | that would avoid a big problem down the road...
               | 
               | So I'll take ChatGPT using library methods that don't
               | exist, no matter how much you tell them to fix it, over
               | that kind of stress any day.
        
               | throwuwu wrote:
               | Use the edit button
        
               | itsoktocry wrote:
               | > _One isn 't stuck with actually using what it outputs
               | verbtim, and really shouldn't until at least a
               | hypothetical GPT-6 or 7... and to use it fully now, one
               | has to know how to nudge it when it goes into a bad
               | direction._
               | 
               | Exactly.
               | 
               | chatGPT is the single smartest person you can ask about
               | anything, and has unlimited patience.
        
               | mlinhares wrote:
               | Bless this person your team, he is creating work out of
               | thin air and will keep your team and possibly other teams
               | employed for a really long time
        
               | steveBK123 wrote:
               | Exactly - and people say AI will take away jobs!
        
               | ben_w wrote:
               | https://en.wikipedia.org/wiki/Parable_of_the_broken_windo
               | w
        
               | lytefm wrote:
               | This could even play out on a broader scale and even
               | increase the demand for software engineers.
               | 
               | What is going to happen if more and more people are
               | creating lots of software that delivers value but is
               | difficult to maintain and extend?
               | 
               | First it's going to be more high-level stuff, then more
               | plumbing, more debugging and stitching together half-
               | baked solutions than ever before.
               | 
               | AI might make our jobs suck more, but it's not going to
               | replace them.
        
               | andy99 wrote:
               | > The worst dev on my team uses ChatGPT a lot, and its
               | facilitated him producing more bad code more quickly.
               | 
               | This is great. The exact same is true with writing, which
               | I think it's trivial for anyone to see. Especially non-
               | native speakers or otherwise bad writers can now write
               | long-winded nonsense, which we're starting to see all
               | over. It hasn't made anyone a good writer, it's just
               | helped bad ones go faster.
        
               | ptyyy wrote:
               | > Especially non-native speakers or otherwise bad writers
               | can now write long-winded nonsense
               | 
               | You have now described 95% of Quora's content.
        
               | ponector wrote:
               | Isn't it expected? Chatgpt was trained on such texts as
               | well.
        
               | JohnMakin wrote:
               | I use "chatGPT" (really bing chat which is openAI under
               | the hood as I understand) more than anyone on my team but
               | it is very rarely for code.
               | 
               | I most often use it for summarizing/searching through
               | dense documentation, creating quick prototypes, "given
               | X,Y,Z symptoms and this confusing error message, can you
               | give me a list of possible causes?" (basically searches
               | Stack Overflow far better than I can).
               | 
               | Anyway basically the same as I was using google when
               | google was actually good. sometimes I will forget some
               | obscure syntax and ask it how to do something, but not
               | super often. I'm convinced using it solely to generate
               | code is a mistake unless it's tedious boilerplate stuff.
        
               | necrotic_comp wrote:
               | Yes, agreed. The best way of putting this is "using
               | google when google was actually good."
        
               | Tostino wrote:
               | Bing is far and away worse than gpt4 through ChatGPT or
               | the API, just FYI. Don't even consider it comparable,
               | even if they say it is the same model under the hood.
               | Their "optimizations" have crippled it's capabilities if
               | that is the case.
        
               | JohnMakin wrote:
               | Well, it works pretty well for me, and cites its sources
               | with links, and I have yet to catch it making up
               | something.
        
               | Tostino wrote:
               | We were talking about code generation though. It's
               | horrible at it.
        
               | JohnMakin wrote:
               | My parent commen says I rarely use it for code generation
               | and I think if you're using these tools purely for that
               | you're doing it wrong... that was like my entire point
        
               | Workaccount2 wrote:
               | Right, but your reference for the point is a weak model.
               | Your view would likely change a bit if you used GPT-4. It
               | is substantially more powerful and skilled.
        
               | Tostino wrote:
               | Exactly what I was trying to say. Thank you.
               | 
               | Still works best if you know what you are doing and can
               | give very detailed instructions, but GPT-4 is vastly more
               | capable than Bing for these tasks.
        
               | JohnMakin wrote:
               | But I don't _need_ it to be. Like at all. I 've yet to
               | find a programming task that GPT-4 would have made
               | faster, and yes I have used it.
        
               | gessha wrote:
               | I have a hunch that using ChatGPT might be a skill in of
               | itself and it doesn't necessarily hurt or help any
               | particular skill level of developers.
               | 
               | In previous replies in this thread the claim is it helps
               | novices compete with associates or associates with
               | seniors but in reality, it will probably help any tier of
               | skill level. _You just have to figure out how to prompt
               | it_
        
               | whynotminot wrote:
               | One hundred percent. Most people I've seen dismiss
               | ChatGPT simply refuse to engage it appropriately. It's
               | not likely to solve your most complex problem with a
               | single prompt.
               | 
               | Asking the right questions is such an important skill in
               | and of itself. I think we're seeing to some extent the
               | old joke about engineers not knowing how to talk to
               | people manifest itself a bit with a lot of engineers
               | right now not knowing quite how to get good results from
               | ChatGPT. Sort of looking around the room wondering what
               | they're missing since it seems quite dumb to them.
        
               | Workaccount2 wrote:
               | They use GPT 3.5, prompt it with "Write a javascript
               | login page" and then look at the code an go "Damn, this
               | thing is stupid as fuck".
        
               | somestag wrote:
               | I had a friend jokingly poke fun at me for the way I was
               | writing ChatGPT prompts. It seemed, to him, like I was
               | going out of my way to be nice and helpful to an AI. It
               | was a bit of an aha moment for him when I told him that
               | helping the AI along gave much more useful answers, and
               | he saw I was right.
        
               | whynotminot wrote:
               | > ChatGPT is not going to tell you how to design a
               | system, architect properly, automate, package, test,
               | deploy, etc.
               | 
               | If you ask the right questions it absolutely can.
               | 
               | I've found that most people thinking ChatGPT is a rube
               | are expecting too much extrapolation from vague prompts.
               | "Make me a RESTful service that provides music data."
               | ChatGPT will give you something that does that. And then
               | you'll proceed to come to hacker news and talk about all
               | the dumb things it did.
               | 
               | But, if you have a conversation with it. Tell it more of
               | the things you're considering. Some of the trades off
               | you're making--how the schema might grow over time, it's
               | kind of remarkable.
               | 
               | You need to treat it like a real whiteboarding session.
               | 
               | I also find it incredibly useful for getting my code into
               | more mainstream shape. I have my own quirks that I've
               | developed over time learning a million different things
               | in a dozen different programming languages. It's nice to
               | be able to hand your code to ChatGPT and simply ask "is
               | this idiomatic for this language?"
               | 
               | I think the people most disappointed with ChatGPT are
               | trying to treat it like a Unix CLI instead of another
               | developer to whiteboard with.
        
               | cbozeman wrote:
               | This has been my experience as well.
               | 
               | Every person I've noticed who says that ChatGPT isn't
               | good at what it does has the same thing in common -
               | they're not great at talking to people, either.
               | 
               | Turns out when you train an AI on the corpus of human
               | knowledge, you have to actually talk to it like a human.
               | Which entirely too many people visiting this website
               | don't do effectively.
               | 
               | ChatGPT has allowed me to develop comprehensive training
               | programs for our internal personnel, because I already
               | have some knowledge of training and standardization from
               | my time in the military, but I also have in-depth domain
               | knowledge so I can double-check what it's recommending,
               | then course correct it if necessary.
        
               | rewmie wrote:
               | > Every person I've noticed who says that ChatGPT isn't
               | good at what it does has the same thing in common -
               | they're not great at talking to people, either.
               | 
               | I think that the people who nowadays shit on ChatGPT's
               | code generating abilities are the same blend of people
               | who, a couple decades ago, wasted their time complaining
               | that hand-rolled assembly would beat any compiled code in
               | any way, shape, or form, provided that people knew what
               | they were doing.
        
               | raducu wrote:
               | > But, if you have a conversation with it
               | 
               | It can't tell you a straight answer or halucinates API.
               | It can't tell you "no, this cannot be done", it tries to
               | "help" you.
               | 
               | For me it's great for writing simple isolated functions,
               | generating regexes, command line solutions, exploring new
               | technologies, it's great.
               | 
               | But after making it write a few methods, classes, it just
               | gets extremelely tedious to make it add/change code, to
               | the point I just write it myself.
               | 
               | Further, when operating at the edge of your knowledge, it
               | also leads you on, whereas a human expert would just tell
               | you "aaah, but that's just not possible/not a good idea".
        
               | ben_w wrote:
               | > But, if you have a conversation with it. Tell it more
               | of the things you're considering. Some of the trades off
               | you're making--how the schema might grow over time, it's
               | kind of remarkable.
               | 
               | You're not wrong, but I would caution that it can get
               | really confused when the code it produces exceeds the
               | context length. This is less of a problem than it used to
               | be as the maximum context length is increasing quite
               | quickly, but by way of example: I'm occasionally using it
               | for side projects to see how to best use it, one of which
               | is a game engine, and it (with a shorter context length
               | than we have now) started by creating a perfectly
               | adequate Vector2D class with `subtract(...)` and
               | `multiply(...)` functions, but when it came to _using_
               | that class it was calling `sub(...)` and `mul(...)` --
               | not _absolutely_ stupid, and a totally understandable
               | failure mode given how it works, but still objectively
               | incorrect.
        
               | zerbinxx wrote:
               | I frequently run into this, and it's quite maddening.
               | When you're working on a toy problem where generating
               | functioning code is giving you a headache - either
               | because it's complex or because the programming language
               | is foreign or crass - no problem. When you're trying to
               | extend an assemblage of 10 mixins in a highly declarative
               | framework that many large-scale API contracts rely on to
               | be correct, the problem is always going to boil down to
               | how well the programmer understands the existing
               | tools/context that they're working with.
               | 
               | To me, a lot of this boils down to the old truism that
               | "code is easier to write than maintain or extend".
               | Companies who dole out shiny star stickers for producing
               | masses of untested, unmaintainable code will always reap
               | their rewards, whether they're relying on middling
               | engineers and contractors alone, or with novices
               | supercharged with ChatGPT.
        
               | tjr wrote:
               | I think that's a fair description. While I have not yet
               | found ChatGPT useful in my "real" day job (its
               | understanding of aerospace systems is more than I would
               | have guessed, but yet not enough to be super helpful to
               | me), I have found it generally useful in more commonplace
               | scripting tasks and what-not.
               | 
               | With the caveat of, I still need to understand what it's
               | talking about. Copy-pasting whatever it says may or may
               | not work.
               | 
               | Which is why I remain dubious that we're on the road to
               | LLMs _replacing_ software engineers. Assisting? Sure,
               | absolutely.
               | 
               | Will we get there? I don't know. I mean, like,
               | fundamentally, I do not _trust_ LLMs. I am not going to
               | say  "hey ChatGPT, write me a flight management system
               | suitable for a Citation X" and then just go install that
               | on the plane and fly off into the sunset. I'm sure things
               | will improve, and maybe improve enough to replace human
               | programmers in some contexts, but I don't think we're
               | going to see LLMs replacing all software engineers across
               | the board.
        
               | tetha wrote:
               | In a similar vein, ChatGPT can be an amazing rubber duck.
               | If I have strange and obscure problems that stumps me, I
               | kinda treat ChatGPT like I would treat a forum or an IRC
               | channel 15 - 20 years back. I don't have "prompting
               | experience or skills", but I can write up the situation,
               | what we've tried, what's going on, and throw that at the
               | thing.
               | 
               | And.. it can dredge up really weird possible reasons for
               | system behaviors fairly reliably. Usually, for a question
               | of "Why doesn't this work after all of that?", it drags
               | up like 5-10 reasons for something misbehaving. We
               | usually checked like 8 of those. But the last few can be
               | really useful to start thinking outside of the normal box
               | why things are borked.
               | 
               | And often enough, it can find at least the right idea to
               | identify root causes of these weird behaviors. The actual
               | "do this" tends to be some degree of bollocks, but enough
               | of an idea to follow-up.
        
               | itsoktocry wrote:
               | > _ChatGPT is not going to tell you how to design a
               | system, architect properly, automate, package, test,
               | deploy, etc._
               | 
               | Really? Please explain how chatGPT can not, but _you_
               | can? What magic is it that you know that it 's incapable
               | of explaining?
        
             | dijit wrote:
             | > ChatGPT is actually best suited to use by a specialist
             | who has enough contextual knowledge to construct targeted
             | prompts
             | 
             | This is my take also.
             | 
             | ChatGPT for novices is dangerous, its the equivalent of a
             | calculator. If you don't know your expected output you're
             | just wrong faster.
             | 
             | But if you know what to expect, whats your bounds and how
             | to do it normally anyway, it can make you faster.
        
             | schnable wrote:
             | > ChatGPT is actually best suited to use by a specialist
             | who has enough contextual knowledge to construct targeted
             | prompts & can then verify & edit the responses into
             | something optimal.
             | 
             | I agree with this, but what that means is that specialists
             | will be able to create next generation tools--across all
             | professions including coding--that do supercharge novices
             | and generalists to do more.
        
           | rixed wrote:
           | Out of curiosity, how did you pass the wireframe to chatGPT ?
        
             | Cthulhu_ wrote:
             | Doesn't ChatGPT support image uploads these days?
        
               | frabcus wrote:
               | Yes, but the paid-for Plus version only.
               | 
               | Ignore the free version, pretend it doesn't exist.
        
             | ern wrote:
             | I described what I wanted. It was earlier this year..not
             | sure if chatgpt can understand wireframes now, but it
             | couldn't at the time.
        
               | rixed wrote:
               | you described it with pixel accuracy ?
        
           | Cthulhu_ wrote:
           | > middling generalists can now compete with specialists.
           | 
           | I want to say that this has been the state of a lot of
           | software development for a while now, but then, the problems
           | that need to be solved don't require specialism, they require
           | people to add a field to a database or to write a new SQL
           | query to hook up to a REST API. It's not specialist work
           | anymore, but it requires attention and meticulousness.
        
           | janosdebugs wrote:
           | > middling generalists can now compete with specialists.
           | 
           | They can maybe compete in areas where there has been a lot of
           | public discussion about a topic, but even that is debatable
           | as there are other tasks than simply producing code (e.g.
           | debugging existing stuff). In areas where there's close to no
           | public discourse, ChatGPT and other coding assistance tools
           | fail miserably.
        
             | red-iron-pine wrote:
             | this be the answer. GPT is as good as the dataset it's
             | trained off of, and if you're going by the combined wisdom
             | of StackOverflow then you're going to have a middling time.
        
           | pjc50 wrote:
           | I would really like to see the prompts for some of these.
           | Mostly because I'm an old-school desktop developer who is
           | very unfamiliar with modern frontend.
        
           | gumballindie wrote:
           | But if you are a middling programmer when it comes to CSS how
           | do you know the output was "flawless" and close to the
           | quality that css "masters" produce?
        
             | ern wrote:
             | It looked correct visually and it matched the techniques in
             | the actual CSS that the team lead and I produced when we
             | paired to get my layout to the standard he expected.
        
           | crabbone wrote:
           | It probably depends on the area. CSS is very popular on one
           | hand and limited to a very small set of problems on the
           | other.
           | 
           | I did try asking ChatGPT about system-related stuff several
           | times and had given up since then. The answers are worthless
           | if not wrong, unless the questions are trivial.
           | 
           | ChatGPT works if it needs to answer a question that was
           | already answered before. If you are facing a genuinely new
           | problem, then it's just a waste of time.
        
           | barrkel wrote:
           | ChatGPT goes from zero to maybe 65th percentile? There or
           | thereabouts. It's excellent if you know nothing. It's
           | mediocre and super buggy if you're an expert.
           | 
           | A big difference is that the expert asks different questions,
           | off in the tails of the distribution, and that's where these
           | LLMs are no good. If you want a canonical example of
           | something, the median pattern, it's great. As the ask heads
           | out of the input data distribution the generalization ability
           | is weak. Generative AI is good at interpolation and
           | translation, it is not good with novelty.
           | 
           | (Expert and know-nothing context dependent here.)
           | 
           | One example: I use ChatGPT frequently to create Ruby scripts
           | for this and that in personal projects. Frequently they need
           | to call out other tools. ChatGPT 4 consistently fails to
           | properly (and safely!) quote arguments. It loves the single-
           | argument version of system which uses the shell. When you ask
           | it to consider quoting arguments, it starts inserting escaped
           | quotes, which is still unsafe (what if the interpolated
           | variable contains a quote in its name). If you keep pushing,
           | it might pull out Shell.escape or whatever it is.
           | 
           | I assume it reproduces the basic bugs that the median example
           | code on the internet does. And 99% of everything being crap,
           | that stuff is pretty low quality, only to be used as an
           | inspiration or a clue as to how to approach something.
        
             | FrustratedMonky wrote:
             | I encountered this with particular problem in python.
             | Seemed like GPT wanted to always answer with something that
             | had a lot of examples on the web, even if most answers were
             | not correct. So garbage in, garbage out problem. I'm bit
             | worried that the LLM's will continue to degrade as the web
             | has increasing amount of LLM generated content. Seems to
             | already be occurring.
        
               | fkyoureadthedoc wrote:
               | Why do people that hand wave away the entire concept of
               | LLMs because of _one_ instance of it doing _one_ thing
               | poorly that they could do better, and yet always seem to
               | fail to just show us their concrete example?
        
               | barrkel wrote:
               | FWIW I didn't wave away the entire concept. LLMs
               | definitely have uses.
        
               | FrustratedMonky wrote:
               | Technically the garbage in/garbage out, problem is not
               | being hand waved away. I've seen a lot of articles on
               | this, or sometimes called a degrading feedback loop. The
               | more of the web that is LLM generated, then the more new
               | models will be trained on generated data, and will fuzz
               | out. Or 'drift'.
               | 
               | For a specific example. Sorry, I didn't grab screen shots
               | at the time. It had to do with updating a datafame in
               | pandas. It gave me solution that generated an error, I'd
               | continue to ask it to change steps to fix previous
               | errors, and it would go in a circle, fix it, but generate
               | other warnings, and further changes to eliminate
               | warnings, and it would recommend the same thing that
               | originally caused an error.
               | 
               | Also. I'm a big fan. Use GPT-4 all the time. SO not
               | waving away, but kind of curious how it sometimes fails
               | in un-expected ways.
        
               | fkyoureadthedoc wrote:
               | > The more of the web that is LLM generated, then the
               | more new models will be trained on generated data, and
               | will fuzz out
               | 
               | And yet it's so obvious that a random Hackernews
               | independently discovers it and repeats it on every Chat
               | GPT post, and prophesies it as some inevitable future.
               | Not _could_ happen, _will_ happen. The clueless
               | researchers will be blindsided by this of course, they
               | 'll never see it coming from their ivory tower.
               | 
               | And yes Chat GPT fails to write code that runs all the
               | time. But it's not very interesting to talk about without
               | an example.
        
               | FrustratedMonky wrote:
               | How? It isn't exactly easy to re-produce these examples.
               | I'd have to write a few pages to document and explain it.
               | And scrub it to remove anything too internal, so create a
               | vanilla example of the bug. And then it would be too long
               | to go into a post, so what then, I'd have to go sign up
               | to blog it somewhere and link to it.
               | 
               | I'm not arguing that GPT is bad. Just that it is as
               | susceptible to rabbit wholes as any human.
               | 
               | I'm actually having a hard time narrowing down where your
               | frustration is aimed.
               | 
               | At naysayers? At those that don't put effort into
               | documenting? At GPT itself? Or that a news site on the
               | internet dares have repetition ?
        
             | 4star3star wrote:
             | I would prefer that google search didn't suck. Instead, I
             | ask ChatGPT. The best case scenario, IMO, would be for
             | people to lay out excellent documentation and working code
             | and train the LLM specifically on that in a way that it can
             | provide reference links to justify its answers. Then, I
             | will take what it says and go directly to the source to get
             | the knowledge as it was intended to be ingested by a human.
             | We get a lot more value than we're initially looking for
             | when we dive into the docs, and I don't want to lose that
             | experience.
        
             | danielbln wrote:
             | Why not give it a systemprompt that specifies some you're
             | requirements: "you are a experienced senior ruby developer
             | who writes robust maintainable code, follow these coding
             | guidelines <<examples>> "
        
               | barrkel wrote:
               | If I thought it was worthwhile, maybe that would patch
               | that specific hole.
               | 
               | The other problem I get when trying to make it write code
               | is that it gets kinda slippery with iterated refinements.
               | In the back and forth dialog, addressing issues 1 through
               | n in sequence, it gets to a place where issue k < n is
               | fixed but issue i < k gets broken again. Trying to get it
               | to produce the right code becomes a programming exercise
               | of its own, and it's more frustrating than actually
               | typing stuff up myself.
               | 
               | I mean, I still use it to get a basic shape especially
               | when I'm working with a command line tool I'm not an
               | expert in, it's still useful. It's just not great code.
        
           | YeGoblynQueenne wrote:
           | >> The article points this out: middling generalists can now
           | compete with specialists.
           | 
           | They can't, and aren't even trying to. It's OpenAI that's
           | competing with the specialists. If the specialists go out of
           | business, the middling generalists obviously aren't going to
           | survive either so in the long term it is not in the interest
           | of the "middling generalists" to use ChatGPT for code
           | generation. What is in their interest is to become expert
           | specialists and write better code both than ChatGPT currently
           | can, and than "middling generalists". That's how you compete
           | with specialists, by becoming a specialist yourself.
           | 
           | Speaking as a specialist occupying a very, very er special
           | niche, at that.
        
             | elif wrote:
             | It REALLY depends on the task. For instance, if you provide
             | GPT with a schema, it can produce a complex and efficient
             | SQL query in <1% of the time an expert could.
             | 
             | I would also argue that not only are the models improving,
             | we have less than a year practically interfacing with
             | LLM's. OUR ability to communicate with them is in infancy,
             | and a generation that is raised speaking with them will be
             | more fluent and able to navigate some of the clear pitfalls
             | better than we can.
        
               | emporas wrote:
               | There is not much of a need for humans to get closer to
               | the machine long term, when with new datasets for
               | training the machine will get closer to humans. Magic
               | keywords like "step by step" won't be as necessary to
               | know.
               | 
               | One obstacle for interfacing with LLM's is the magic
               | cryptic commands it executes internally, but that need
               | not be the case in the future.
        
           | kypro wrote:
           | You may think it did a good job because of your limited CSS
           | ability. I'd be amazed if ChatGPT can create pixel-perfect
           | animations and transitions along with reusable clean CSS code
           | which supports all of the browser requirements at your org.
           | 
           | I've seen the similar claims made on Twitter by people with
           | zero programming ability claiming they've used ChatGPT to
           | build an app. Although 99% of the time what they've actually
           | created is some basic boilerplate react app.
           | 
           | > middling generalists can now compete with specialists.
           | 
           | Middling generalists can now compete with individuals with a
           | basic understanding assuming they don't need to verify
           | anything that they've produced.
        
             | nisegami wrote:
             | >I'd be amazed if ChatGPT can create pixel-perfect
             | animations and transitions along with reusable clean CSS
             | code which supports all of the browser requirements at your
             | org.
             | 
             | Personally, I'd be more amazed if a person could do that
             | than if a LLM could do it.
        
               | kypro wrote:
               | Google, "UI developer".
        
             | rpmisms wrote:
             | It does great at boilerplate, so I think it's safe to say
             | it will disrupt Java.
             | 
             | I've been using tabnine for years now, and I use chatGPT
             | the same way; write my boilerplate, let me think about
             | logic.
        
             | jameshart wrote:
             | Here's the thing though:
             | 
             | If a new version of the app can be generated on the fly in
             | minutes, why would we need to worry about reusability?
             | 
             | GPT generated software can be _disposable_.
             | 
             | Why even check the source code in to git - the original
             | source artifact is the prompt after all.
        
               | philipwhiuk wrote:
               | Let me know how you get on with a disposable financial
               | system, safety system or electoral voting system.
        
               | raducu wrote:
               | I work with java and do a lot of integration, but a looot
               | of my effort goes into exploring and hacking away some
               | limitations of a test system, and doing myself things
               | that would take a lot of time if I had to ask the proper
               | admins.
               | 
               | I had a problem where I was mocking a test system (for
               | performance testing of my app) and I realized the mocked
               | system was doing an externalUserId to internalUserId
               | mapping.
               | 
               | Usually that would have been a game stopper, but instead
               | I did a slow run, asked Chat GPT to write code that reads
               | data from a topic and eventually create a CSV of 50k user
               | mappings; it would have taken me at least half a day to
               | do that, and Chat GPT allowed me to do it in 15 minutes.
               | 
               | While very little code went into my app, Chat GPT did
               | write a lot of disposable code that did help me a lot.
        
               | blharr wrote:
               | Because in my experience GPT can produce a maximum of
               | like 200 lines of code before it makes an error usually.
        
           | scythe wrote:
           | I suspect that the "depth" of most CSS code is significantly
           | shallower than what gets written in general purpose
           | programming languages. In CSS you often align this box, then
           | align that box, and so forth. A lot of the complexity in
           | extant CSS comes from human beings attempting to avoid
           | excessive repetition and typing. And this is particularly
           | true when we consider the simple and generic CSS tasks that
           | many people in this thread have touted GPT for performing.
           | There are exceptions where someone builds something really
           | unique in CSS, but that isn't what most people are asking
           | from GPT.
           | 
           | But the good news is that "simple generic CSS" is the kind of
           | thing that most good programmers consider to be essentially
           | busywork, and they won't miss doing it.
        
           | calvinmorrison wrote:
           | > being pixel perfect was a source of pride.
           | 
           | Then use LaTex and PDF. CSS is not for designing pixel
           | perfect documents.
        
           | ryandvm wrote:
           | > middling generalists can now compete with specialists
           | 
           | Great point. That's been my experience as well. I'm a
           | generalist and ChatGPT can bring me up to speed on the
           | idiomatic way to use almost any framework - provided it's
           | been talked about online.
           | 
           | I use it to spit out simple scripts and code all day, but at
           | this point it's not creating entire back-end services without
           | weird mistakes or lots of hand holding.
           | 
           | That said, the state of the art is absolutely amazing when
           | you consider that a year ago the best AIs on the market were
           | Google or Siri telling me "I'm sorry I don't have any
           | information about that" on 50% of my voice queries.
        
           | philipwhiuk wrote:
           | Would you give the critical public safety system bit to
           | ChatGPT?
           | 
           | This scenario reminds me of:
           | 
           | If a job's worth doing, do it yourself. If it's not worth
           | doing, give it to Rimmer.
           | 
           | Except now it's "give it to ChatGPT"
        
           | city41 wrote:
           | I'm a developer but also have an art degree and an art
           | background. I'm very mediocre at art and design. But lately
           | I've been using AI to help plug that gap a bit. I really
           | think it will be possible for me to make an entire game where
           | I do the code, and AI plus my mediocre art skills get the art
           | side across the line.
           | 
           | I think at least in the short term, this is where AI's power
           | will lie. Augmentation, not replacement.
        
           | hanzmanner wrote:
           | > It had zero business value, but such was the state of our
           | team...being pixel perfect was a source of pride
           | 
           | UX and UI are not some secondary concerns that engineers
           | should dismiss as an annoying "state of our team" nuance. If
           | you can't produce a high quality outcome you either don't
           | have the skills or don't have the right mindset for the job.
        
           | sonicanatidae wrote:
           | AI is a tool. Like all tools, it can be useful, when applied
           | the right way, to the right circumstances. I use it to write
           | powershell scripts, then just clean them up, and voila.
           | 
           | That being said, humans watch too much tv/movies. ;)
        
           | number6 wrote:
           | I might be a bit out of the loop: how did you do it? I
           | thought ChatGPT is text based?
        
           | itsoktocry wrote:
           | > _The article points this out: middling generalists can now
           | compete with specialists._
           | 
           | This is why you're going to get a ton of gatekeepers asking
           | you to leetcode a bunch of obscure stuff with zero value to
           | business, all to prove you're a "real coder". Like the OP.
        
         | selfhoster11 wrote:
         | I hope that you are testing this on GPT-4/ChatGPT Plus. The
         | free ChatGPT is completely not representative of the
         | capabilities or the accuracy of the paid model.
        
           | miiiiiike wrote:
           | I've tested it on both.
        
         | mrtksn wrote:
         | Try breaking down the problem. You don't have to do it
         | yourself, you can tell ChatGPT to break down the problem for
         | you then try to implement individual parts.
         | 
         | When you have something that kind of works, tell ChatGPT what
         | the problems are and ask for refinement.
         | 
         | IMHO currently the weak point of LLMs is that they can't really
         | tell what's adequate for human consumption. You have to act as
         | a guide who knows what's good and what can be improved and how
         | can be improved. ChatGPT will be able to handle the
         | implementation.
         | 
         | In programming you don't have to worry too much about
         | hallucinations because it won't work at all if it hallucinates.
        
           | throwaway346434 wrote:
           | ... What.
           | 
           | It hallucinates and it doesn't compile, fine. It hallucinates
           | and flips a 1 with a -1; oops that's a lot of lost revenue.
           | But it compiled, right? It hallucinates, and in 4% of cases
           | rejects a home loan when it shouldn't because of a convoluted
           | set of nested conditions, only there is no one on staff that
           | can explain the logic of why something is laid out the way it
           | is and I mean, it works 96% of the time so don't rock the
           | boat. Oops, we just oppressed a minority group or everyone
           | named Dave because you were lazy.
        
             | mrtksn wrote:
             | As I said, you are still responsible for the quality
             | control. You are supposed to notice that everyone is named
             | Dave and tell ChatGPT to fix it. Write tests, read code,
             | run & observe for odd behaviours.
             | 
             | It's not an autonomous agent just yet.
        
               | somewhereoutth wrote:
               | As we all know, it is much easier to read and verify code
               | you've written yourself - perhaps it is _only_ code you
               | 've written yourself that can be properly read and
               | verified. As ever, tests can be of only limited utility
               | (separate discussion).
        
               | mrtksn wrote:
               | It's easier to read the code you recently wrote, sure.
               | But in real life people use and debug other people's code
               | all the time, LLM generated code is just like that. Also,
               | if you make it generate the code in small enough blocks
               | you also end up knowing the codebase is if you wrote it.
        
               | gumballindie wrote:
               | But why should i waste time using a broken product when i
               | can do it properly myself? To me a lot of this debate
               | sounds like people obsessively promoting a product for
               | some odd reason, as if they were the happy owners of a
               | hammer in search of a nail.
        
               | mrtksn wrote:
               | If you are faster and more productive that way, do it
               | that way.
               | 
               | Most people are not geniuses and polymaths, it's much
               | easier and cheaper for me to design the architecture and
               | ask ChatGPT to generate the code in many different
               | languages(Swift/HTML/JS/CSS on the client side and Py,
               | JS, PHP on the server side). It's easier because although
               | I'm proficient an all these it's very hard for me to
               | switch solving client specific JS problems to server
               | specific JS problems or between graphics and animation
               | related problems and data processing problems with Swift.
               | It's also cheaper because I don't have to pay someone to
               | do it for me.
               | 
               | In my case, I know all that well enough to spot a problem
               | and debug, I just don't want to go through the trouble of
               | actually writing it.
        
               | gumballindie wrote:
               | The debate here is wether openai's product, chatgpt, can
               | indeed deliver what it claims - coding, saving dogs'
               | lives, mental health counceling, and so on. It would
               | appear that it doesn't but it does mislead people without
               | experience in whatever field they use it. For instance if
               | i ask it about law i am impressed, but when I ask it
               | about coding of software engineering it blatantly fails.
               | The conclusion being that as a procedural text generator
               | it is impressive - it nails language - but the value of
               | the output is far from settled.
               | 
               | This debate is important because as technical people it
               | is our reposnbility to inform non technical people about
               | the use of this technology and to bring awareness about
               | potential misleading claims its seller makes - as it was
               | the case with crypto currencies, and many other
               | technologies that promised the world delivered nothing of
               | real benefit (but made people rich in the process by
               | exploting the uniformed).
        
               | mrtksn wrote:
               | That's not the debate, it's the first time I'm hearing
               | about that in this thread.
        
             | wokwokwok wrote:
             | The output of an LLM is a distribution, and yes, if you're
             | just taking the first answer, that's problematic.
             | 
             | However, it _is_ a distribution, and than means the
             | majority of solutions are not weird edge cases, they're
             | valid solutions.
             | 
             | Your job as a user is to generate _multiple solutions_ and
             | then _review them_ and pick the one you like the most, and
             | maybe modify it to work correctly if it has weird edge
             | cases.
             | 
             | How do you do that?
             | 
             | Well, you can start by following a structured process where
             | you define success criteria as a validator (eg. Tests,
             | compiler, parser, linters) and fitness criteria as a scorer
             | (code metrics like complexity, runtime, memory use, etc)...
             | then:
             | 
             | 1) define goal
             | 
             | 2) generate multiple solution candidates
             | 
             | 3) filter candidates by validator (does it compile? Pass
             | tests? Etc)
             | 
             | 4) score the solutions (is it pure? Is it efficient? Etc)
             | 
             | 5) pick the best solution
             | 
             | 6) manually review and tweak the solution
             | 
             | This structured and disciplined approach to software
             | engineering works. Many of the steps (eg. 3, 4, 5) can be
             | automated.
             | 
             | It generates meaningful quality code results.
             | 
             | You can use it with _or without_ AI...
             | 
             | You don't have to follow this approach, but my point is
             | that you _can_ ; there is nothing fundamentally intractable
             | able using a language model to generate code.
             | 
             | The problem that you're critiquing is the _trivial and
             | naive_ approach of just hitting "generate" and blindly
             | copying that into your code base.
             | 
             | ...that's stupid and dangerous, but it's also a straw man.
             | 
             | Seriously; people writing code with these models aren't
             | doing that; when you read blogs and posts from people, eg.
             | Building seriously using copilot you'll see this pattern
             | emerge repeatedly:
             | 
             | Generate multiple solutions. Tweak your prompt. Ask for
             | small pure dependency free code blocks. Review the and test
             | output.
             | 
             | It's not a dystopian AI future, it's just another tool.
        
               | emporas wrote:
               | In general, one should not instruct GPT to solve a
               | problem. The instructions should be about generating
               | code, after a human thought process took place, and then
               | generate even more code, then even more, and after
               | merging all the code together the problem is solved.
               | 
               | The particulars are roughly what you describe, in how to
               | achieve that.
        
           | yodsanklai wrote:
           | I'd be curious to see how a non expert could perform a non-
           | trivial programming task using ChatGPT. It's good at writing
           | code snippets which is occasionally useful. But give it a
           | large program that has a bug which isn't a trivial syntax
           | error, and it won't help you.
           | 
           | > In programming you don't have to worry too much about
           | hallucinations because it won't work at all if it
           | hallucinates.
           | 
           | You still have to worry for your job if you're unable to
           | write a working program.
        
             | mrtksn wrote:
             | Understanding on core principle is definitely needed, but
             | it helps you to punch above your weight.
             | 
             | Generally, generative AI gives mastery of an art to a
             | theorists. To generate an impressive AI Art, you still need
             | to have understanding of aesthetics and have an idea, but
             | don't have to know how to use the graphic editors and other
             | tools. It's quite similar for programming too, You still
             | need understanding of whatever you're building, but you no
             | longer have to be expert in using the tools. To build a
             | mobile app you will need to have a grasp on how everything
             | works in general, but you don't have to be expert in Swift
             | or Kotlin.
        
             | raducu wrote:
             | > give it a large program that has a bug which isn't a
             | trivial syntax error, and it won't help you
             | 
             | That's not fair, humans can't do that, and if you walk Chat
             | GPT through it, it might surprise you with its debugging
             | abilitis... or thankfully it might suck(so we still have a
             | job).
             | 
             | Complex code is complex code, no general inteligence thing
             | will be able to fix it at first sight without running it,
             | writing tests and so on.
        
         | Dunati wrote:
         | I'm probably bad at writing prompts, but in my limited
         | experience, I spend more time reviewing and correcting the
         | generated code than it would have taken to write it myself. And
         | that is just for simple tasks. I can't imagine thinking a llm
         | could generate millions of lines of bug free code.
        
           | miiiiiike wrote:
           | That's where I am too. I think almost everyone has that "this
           | is neat but it's not there yet" moment.
        
             | meiraleal wrote:
             | It seems like the problem is with your view of everyone
             | based on a n=1 experiment. I've been shipping production-
             | ready code for my main job for months saving hundreds of
             | work/hours.
        
             | aleph_minus_one wrote:
             | > I think almost everyone has that "this is neat but it's
             | not there yet" moment.
             | 
             | I rather have this moment without the "this is neat" part.
             | :-) i.e. a clear "not there yet" moment, but with serious
             | doubts whether it will be there anytime in the foreseeable
             | future.
        
           | antupis wrote:
           | Personally, for me this flow works fine AI does the first
           | version -> I heavily edit it & debug & write tests for it ->
           | code does what I want -> I tell AI to refactor this -> tests
           | pass and the ticket is done.
        
           | jon-wood wrote:
           | Asking GPT to do a task for me currently feels like asking a
           | talented junior to do so. I have to be very specific about
           | exactly what it is I'm looking for, and maybe nudge it in the
           | right direction a couple of times, but it will generally come
           | up with a decent answer without me having to sink a bunch of
           | time into the problem.
           | 
           | If I'm honest though I'm most likely to use it for boring
           | rote work I can't really be bothered with myself - the other
           | day I fed it the body of a Python method, and an example of
           | another unit test from the application's test suite, then
           | asked it to write me unit tests for the method. GPT got that
           | right on the first attempt.
        
         | adamauckland wrote:
         | Haha, does it involve timers?
        
           | miiiiiike wrote:
           | I actually don't get the reference. What are the issues with
           | timers?
        
         | svantana wrote:
         | There's a recent "real coding" benchmark that all the top LLMs
         | perform abysmally on: https://www.swebench.com/
         | 
         | However, it seems only a matter of time before even this
         | challenge is overcome, and when that happens the question will
         | remain whether it's a real capability or just a data leak.
        
         | digitcatphd wrote:
         | > It answers questions confidently but with subtle
         | inaccuracies.
         | 
         | This is a valid challenge we are facing as well. However,
         | remember that ChatGPT which many coders use, is likely training
         | on interactions so you have some human reinforcement learning
         | correcting its errors in real-time.
        
           | datpiff wrote:
           | How is it trained on reactions? Do people give it feedback?
           | In my experience in trying I stop asking when it provides
           | something useful or something so bad I give up (usually the
           | latter I'm afraid). How would it tell a successful answer
           | from a failing one?
        
             | digitcatphd wrote:
             | It appears to ask users to rate if the response is better
             | or worse than the first, in other cases, it seems to be A/B
             | testing the response. Lastly, I for instance, will correct
             | it and then confirm it is correct to continue with the next
             | task, which likely creates a footprint pattern.
        
               | datpiff wrote:
               | That's interesting, I haven't come across this.
        
         | Tade0 wrote:
         | My take on LLMs is as follows: even if its effectiveness scales
         | exponentially with time(it doesn't), so does the complexity of
         | programs with (statistically speaking) each line of code.
         | 
         | Assuming a LLM gets 99% of the lines correct, after 70 lines
         | the chance of having at least one of them wrong is already
         | around 50%. A LLM effective enough to replace a competent human
         | might be so expensive to train and gather data for that it will
         | never achieve a return on investment.
         | 
         | Last time I used ChatGPT effectively was to find a library that
         | served a specific purpose. All of the four options it gave me
         | were wrong, but I found what I wanted among the search results
         | when I looked for them.
        
           | frabcus wrote:
           | The more automated ones will separately write tests and code,
           | and if the code doesn't compile or pass the test, give itself
           | the error messages and update its code.
           | 
           | Code Interpreter does this a bit in Chat-GPT Plus with some
           | success.
           | 
           | I don't think it needs _much_ more than a GPT-4 level LLM,
           | and a change in IDEs and code structure, to get this working
           | well enough. Place it gets stuck it 'll flag to a human to
           | help.
           | 
           | We'll see though! Lots of startups and big tech companies are
           | working on this.
        
         | csomar wrote:
         | You must be interviewing good junior front-end devs. I have
         | seen the opposite as gpt-4 can put a simple straightforward
         | front-end while juniors will go straight to create-react-app or
         | nextjs.
        
         | AJRF wrote:
         | Which ChatGPT?
        
         | atoav wrote:
         | I tried for 2 hours to get ChatGPT to write a working smooth
         | interpolation function in python. Most of the functions it
         | returned didn't even go through the points between which it
         | should be interpolating. When I pointed that out it returned a
         | function that went through the points but it was no longer
         | smooth. I really tried and restarted over multiple times. I
         | believe we have to choose between a world with machine learning
         | and robot delivery drones. Because if that thing writes code
         | that controls machines it will be total pandemonium.
         | 
         | It did a decent job at trivial things like creating function
         | parameters out of a variable tho.
        
           | lewhoo wrote:
           | That's weird to read. Interpolations of various sorts are
           | known and solved and should probably be digested by chatgpt
           | in training by the bulk. I'm not doubting your effort by any
           | means, I'm just saying this sounds like one of those things
           | it should do well.
        
             | atoav wrote:
             | This is why I asked it that and was surprised with the
             | questionable quality of the results. My goal wasn't even to
             | break ChatGPT, it was to learn about new ways of
             | interpolating that I hadn't thought about.
        
         | fdgjgbdfhgb wrote:
         | If it's not a life or death situation (like a self-driving
         | truck slamming into a van full of children or whatever), I
         | don't think people will care much. Non-tech people (i.e.
         | managers, PMs) don't necessarily understand/care if the code is
         | not perfect and the barrier for "good enough" is much lower. I
         | think we will see a faster adoption of this tech...
        
           | spaceman_2020 wrote:
           | Among bootstrapped "barely technical" founders, its already
           | replacing freelancers for developing initial prototypes
           | 
           | HN's takes are honestly way too boomer-tier about LLMs.
        
             | BlueTemplar wrote:
             | Boomers overwhelmingly aren't able to use a computer right
             | now (= write a basic script), I would be happy at this
             | development if I was them.
        
           | d3w4s9 wrote:
           | No. If the code generated by chatgpt cannot even pass the
           | unit test it generates in the same response (or is just
           | completely wrong) and requires significant amount of human
           | work to fix it, it is not usable AI.
           | 
           | That's what I am running into on an everyday basis.
           | 
           | I don't want my program to be full of bugs.
        
         | amenghra wrote:
         | There's a Swiss town which had autonomous shuttles running for
         | 5 years (2015-2021) [1].
         | 
         | There's at least two companies (Waymo and Cruise) running
         | autonomous taxi services in US cities that you can ride today.
         | 
         | There have been lots of incorrect promises in the world of
         | self-driving trucks/cars/buses but companies have gotten there
         | (under specific constraints) and will generalize over time.
         | 
         | [1] https://www.saam.swiss/projects/smartshuttle/
        
           | haspok wrote:
           | Those "autonomous" vehicles have as much to do with real
           | autonomy as today's "AI" has in common with real self-
           | conscious intelligence. You can only fake it so long, and it
           | is an entirely different ballgame.
           | 
           | I remember we had spam filters 20 years ago, and nobody
           | called them "AI", just ML. Todays "AI" is ML, but on a larger
           | scale. In a sense, a million monkeys typing on typewriters
           | will eventually produce all the works of Shakespeare. Does
           | this make them poets?
        
             | amenghra wrote:
             | What's your gripe with calling a bus which successfully ran
             | for 5 years without a driver not autonomous? As someone who
             | used this specific bus occasionally, I was quite satisfied
             | with the outcome: it safely drove me from A to B.
        
           | cultureswitch wrote:
           | It should be noted that the Waymo and Cruise experiments in
           | their cities are laughably unprepared for actual chaotic
           | traffic, often fail in completely unpredictable ways and are
           | universally hated by locals. Autonomous buses and trams are
           | much more successful because the problem is much easier too.
        
             | amenghra wrote:
             | Agree. We could have all had some fine autonomous
             | trams/subways/trains which run 24/7 at short intervals
             | instead of spending money on self-driving cars and car
             | infrastructure in general.
        
           | arolihas wrote:
           | Didn't Cruise have people remotely controlling the vehicle
           | making it semi-autonomous at best?
        
         | scrollaway wrote:
         | You got everyone talking about how GPT isn't that bad at coding
         | etc but everyone is missing the point.
         | 
         | The no code industry is massive. Most people don't need a dev
         | to make their website already. They use templates and then
         | tweak them through a ui. And now you have Zapier, Glide, Bubble
         | etc.
         | 
         | LLMs won't replace devs by coding entire full stack web apps.
         | They'll replace them because tools will appear on the market
         | that handle the 99% cases so well that there is just less work
         | to do now.
         | 
         | This has all happened before of course.
        
           | ern wrote:
           | I collaborate with front-end teams that use a low-code front-
           | end platform. When they run into things that aren't built-in,
           | they try to push their presentation logic up the stack for
           | the "real" programming languages to deal with.
        
         | anonzzzies wrote:
         | So, don't leave us in suspense; what do you ask of it? Because
         | I'm quite sure it can already pass it.
         | 
         | Your experience is very different from mine anyway. I am a
         | grumpy old backend dev that uses formal verification in anger
         | when _I_ consider it is needed and who gets annoyed when things
         | don 't act logical. We are working with computers, so
         | everything is logical, but no; I mean things like a lot of
         | frontend stuff. I ask our frontend guy; 'how do I center a
         | text', he says 'text align'. Obviously I tried that, because
         | _that_ would be logical, but it doesn 't work, because frontend
         | is, for me, absolutely illogical. Even frontend people actually
         | have to try-and-fail; they cannot answer simple questions
         | without trying like I can in backend systems.
         | 
         | Now, in this new world, I don't have to bother with it anymore.
         | If copilot doesn't just squirt out the answer, then chatgpt4
         | (and now my personal custom gpt 'front-end hacker' who knows
         | our codebase) will fix it for me. And it works, every day, all
         | day.
        
           | eloisant wrote:
           | If it can pass it when you ask it in a way only a coder can
           | write, then we will still need coders.
           | 
           | If you need to tweak your prompt until you get the correct
           | result, then we still need coders who can tell that the code
           | is wrong.
           | 
           | Ask Product Managers to use ChatGPT instead of coders and
           | they will ask for 7 red lines all perpendicular to each other
           | with one being green.
           | 
           | https://www.youtube.com/watch?v=BKorP55Aqvg
        
             | anonzzzies wrote:
             | I didn't say we don't need coders. We need less average/bad
             | ones and a very large amounts of coders that came after the
             | 'coding makes $$$$' worldwide are not even average.
             | 
             | I won't say AI will not eventually make coding obsolete;
             | even just 2 years ago I would've said we are 50-100 years
             | away from that. No i'm not so sure. However, I am saying
             | that I can replace many programmers with gpt right now, and
             | I am. The prompting and reprompting is _still_ both faster
             | and cheaper than many humans.
        
               | mathgeek wrote:
               | In my mind, we need more folks who have both the ability
               | to code and the ability to translate business needs into
               | business logic. That's not a new problem though.
        
               | anonzzzies wrote:
               | That's what we are doing all day no? I mean besides
               | fighting tooling (which is getting a larger and larger %
               | of the time building stuff).
        
               | v-erne wrote:
               | Only if you have access to end user.
               | 
               | If between you and your client four people are playing
               | deaf phone (client's project manager, our project
               | manager, team leader and some random product guy just to
               | get even numer), then actually this is not what you are
               | doing.
               | 
               | I would argue that the thing that happens at this stage
               | is more akin to manually transpiling business logic into
               | code.
               | 
               | In this kind od organization programmers become computer
               | whisperers. And this is why there is a slight chance that
               | GPT-6 or 7 will take their job.
        
             | BlueTemplar wrote:
             | TFA's point is not that <<coders>> won't be needed any
             | more, it's that they will hardly spend their time
             | <<coding>>, that is <<devot[ing themselves] to tedium, to
             | careful thinking, and to the accumulation of obscure
             | knowledge>>, <<rob[bing them] of both the joy of working on
             | puzzles and the satisfaction of being the one[s] who solved
             | them>>.
        
           | Ygg2 wrote:
           | You can ask it almost anything. Ask it to write a YAML parser
           | in something a bit more complex like Rust and it falls like a
           | rag.
           | 
           | Rust mostly because it's relatively new, and there isn't a
           | native YAML parser in Rust (there is a translation of
           | libfyaml). Also you can't bullshit your way out of Rust by
           | making bunch of void* pointers.
        
           | Exuma wrote:
           | How do you make a custom gpt which knows a specific code
           | base? I have been wanting to do this
        
             | anonzzzies wrote:
             | I use the new feature of creating a custom gpt and I keep
             | adding new information ; files, structures etc by editing
             | the gpt. It seems to work well.
        
               | Exuma wrote:
               | Ah ok so you have to paste entire files in 1 by 1, you
               | can't just add it locally somehow? too bad you cant just
               | upload a zip or something...
        
               | grozmovoi wrote:
               | you can upload zips. Make a new GPT and go to the custom
               | settings.
        
             | electrondood wrote:
             | You tune an existing model on your own set of
             | inputs/outputs.
             | 
             | Whatever you expect to start typing, and have the model
             | produce as output, should be those input/output pairs.
             | 
             | I'd start by using ChatGPT etc. to add comments throughout
             | your code base describing the code. Then break it into
             | pairs where the input is the prefacing comment, and the
             | output is the code that follows. Create about 400-500 such
             | pairs, and train a model with 3-4 epochs.
             | 
             | Some concerns: you're going to get output that looks like
             | your existing codebase, so if it's crap, you'll create a
             | function which can produce crap from comments. :-)
        
           | ryanjshaw wrote:
           | I'm not the person you're responding to, but here's an
           | example of it failing subtly:
           | 
           | https://chat.openai.com/share/4e958c34-dcf8-41cb-
           | ac47-f0f6de...
           | 
           | finalAlice's Children have no parent. When you point this
           | out, it correctly advises regarding the immutable nature of
           | these types in F#, then proceeds to produce a new solution
           | that again has a subtle flaw: Alice -> Bob has the correct
           | parent... but Alice -> Bob -> Alice -> Bob is missing a
           | parent again.
           | 
           | Easy to miss this if you don't know what you're doing, and
           | it's the kind of bug that will hit you one day and cause you
           | to tear your hair out when half your program has a Bob-with-
           | parent and the other half has an Orphan-Bob.
           | 
           | Phrase the question slightly differently, swapping "Age: int"
           | with "Name: string":
           | 
           | https://chat.openai.com/share/df2ddc0f-2174-4e80-a944-045bc5.
           | ..
           | 
           | Now it produces invalid code. Share the compiler error, and
           | it produces code that doesn't compile but in a different way
           | -- it has marked Parent mutable but then tried to mutate
           | Children. Share the new error, and it concludes you can't
           | have mutable properties in F#, when you actually can, it just
           | tried marking the wrong field mutable. If you fix the error,
           | you have correct code, but ChatGPT-4 has misinformed you AND
           | started down a wrong path...
           | 
           | Don't get me wrong - I'm a huge fan of ChatGPT, but it's
           | nowhere near where it needs to be yet.
        
             | dontupvoteme wrote:
             | >F#
             | 
             | Barely exists in training data.
             | 
             | Might as well ask it to code some microcontroller
             | specifically assembly, watch it fail and claim victory.
        
               | ryanjshaw wrote:
               | > Barely exists in training data.
               | 
               | Irrelevant - this is basic computer science. As far as I
               | know, you can't create a bidirectional graph node
               | structure without a mutable data structure or language
               | magic that ultimately hides the same mutability.
               | 
               | The fact that ChatGPT recognizes the mutability issue
               | when I explain the bug tells you it has the knowledge,
               | but it doesn't correctly infer the right answer and
               | instead makes false claims and sends developers down the
               | wrong path. This speaks to OP's claim about subtle
               | inaccuracies.
               | 
               | I have used ChatGPT to write 10k lines of a static
               | analyzer for a 1k AST model definition in F#, without
               | knowing the language before I started. I'm a big fan, but
               | there were many, many times a less experienced developer
               | would have shot themselves in the foot using it blindly
               | on a project with any degree of complexity.
        
               | dontupvoteme wrote:
               | I would agree with you if it was a model trained to do
               | computer science, rather than a model to basically do
               | anything, which just happens to be able to do computer
               | science as well.
               | 
               | Also code is probably one of the easiest use cases for
               | detecting hallucinations since you can literally just see
               | if it is valid or not the majority of the time.
               | 
               | It's much harder for cases where your validation involves
               | wikipedia, or academic journals, etc.
        
               | ryanjshaw wrote:
               | Then we are in agreement but bear in mind that I was
               | replying to this comment:
               | 
               | > So, don't leave us in suspense; what do you ask of it?
               | Because I'm quite sure it can already pass it.
        
             | doctorpangloss wrote:
             | I'm not really sure what I'm looking at. It seems to
             | perform flawlessly for me... when using Python:
             | https://chat.openai.com/share/7e048acb-a573-45eb-
             | ba6c-2690d2...
             | 
             | I only made two changes to your prompt: one to specify
             | Python, and another to provide explicit instructions to
             | trigger using the Advanced Data Analysis pipeline.
             | 
             | You also had a couple typos.
             | 
             | I'm not sure if "Programming-like tool that reflects
             | programming language popularity performs poorly on
             | unpopular programming language" is the gotchya you think it
             | is. It performs extremely well authoring Kubernetes
             | manifests and even makes passing Envoy configurations.
             | There's a chance that configuration files for reverse proxy
             | configuration DSLs have better representation than F# does.
             | I guess if you disagree at how obscure F# is, you're
             | observing a real, objective measurement of how obscure it
             | is, in the fascinating performance of this stochastic
             | parrot.
        
               | ryanjshaw wrote:
               | F# fields are immutable unless you specify they are
               | mutable. The question I posed cannot be solved with
               | exclusively immutable fields. This is basic computer
               | science, and ChatGPT has the knowledge but fails to infer
               | this while providing flawed code that appears to work.
               | 
               | An inexperienced developer would eventually shoot
               | themselves in the foot, possibly long after integrating
               | the code thinking it was correct and missing the flaws.
               | FYI, your Python code works because of the mutation
               | "extend()":                   alice.children.extend([bob,
               | carol])
        
         | swells34 wrote:
         | I have a very similar train of thought roll through my head
         | nearly every day now as I browse through github and tech news.
         | To me it seems wild how much serious effort is put into the
         | misapplication of AI tools on problems that are obviously
         | better solved with other techniques, and in some cases where
         | the problem already has a purpose built, well tested, and
         | optimized solution.
         | 
         | It's like the analysis and research phase of problem solving is
         | just being skipped over in favor of not having to understand
         | the mechanics of the problem you're trying to solve. Just reeks
         | of massive technical debt, untraceable bugs, and very low
         | reliability rates.
        
         | debok wrote:
         | I have the same experience with the test I give my back-end
         | devs. ChatGPT can't even begin to decode an encoded string if
         | you don't tell it which encoding was used.
         | 
         | ChatGPT is great at some well defined, already solved problems.
         | But once you get to the messy real world, the wheels come off.
        
           | danielbln wrote:
           | Base64: https://chat.openai.com/share/3793da6d-4634-4e13-9cc4
           | -ce9983...
           | 
           | ROT13: https://chat.openai.com/share/ae7c311d-ab23-4425-bdfa-
           | c2314e...
           | 
           | HEX: https://chat.openai.com/share/4b0740b7-53c0-4776-bb00-ab
           | 65b4...
           | 
           | What kind of encoded string did you use?
        
             | RecycledEle wrote:
             | Thank you for taking the time to call BS on someone who
             | obviously never tried asking a LLM AI to decipher a
             | string's encoding. That is exactly the kind of thing they
             | are good ar.
        
               | Retric wrote:
               | Two people can try similar prompts and get very different
               | results from LLM's.
        
             | ern wrote:
             | It's pretty impressive that it was able to actually decode
             | those strings. In March, I used GPT 3.5 to write code for
             | validating a type of string which used a checksum
             | algorithm.
             | 
             | It did the task well, and even wrote tests, but it failed
             | when generating test case values. I wonder if it would
             | perform better if I did it today.
        
         | lom wrote:
         | You're missing the point of the article. ChatGPT in combination
         | with a mediocre could solve your problem faster than the best
         | junior dev has before
        
           | pydry wrote:
           | I tried doing this and it actually took longer due to all of
           | the blind alleys it led me down.
           | 
           | There is stuff that it can do that appears magically
           | competent at but it's almost always cribbed from the
           | internet, tweaked with trust cues removed and often with
           | infuriating, subtle errors.
           | 
           | I interviewed somebody who used it (who considered that
           | "cheating") and the same thing happened to him.
        
         | spaceman_2020 wrote:
         | Would you mind sharing the test?
         | 
         | I'm one of those noob programmers and it has helped me create
         | products far beyond my technical capabilities
        
         | theonlybutlet wrote:
         | Push comes to shove, it always tends to come down to short term
         | cost. If it gets the job done, and it's wildly cheaper than the
         | status quo (Net Present Value savings). they'll opt for it.
         | 
         | The only reason the trucks aren't out there gathering their
         | best data, that's real world data, is regulation.
         | 
         | Businesses will hire consultants at a later stage to do risk
         | assessment and fix their code base.
        
         | smcleod wrote:
         | How many conversation responses to hone in the solution do you
         | give the LLM?
         | 
         | If you're just trying to one-shot it - that's not really how
         | you get the most from them.
        
         | djha-skin wrote:
         | 3.5, or GPT-4? I'm told the latter is worlds better, that they
         | aren't even in the same ballpark.
        
         | steveBK123 wrote:
         | That's been my experience both with Tesla AP/FSD implementation
         | & with LLMs.
         | 
         | Super neat trick the first time you encounter it, feels like
         | alien tech from the future.
         | 
         | Then you find all the holes. Use it for months/years and you
         | notice the holes aren't really closing.. The pace of
         | improvement is middling compared to the gap to it meeting the
         | marketing/rhetoric. Eventually using them feels more like a
         | chore than not using them.
         | 
         | It's possible some of these purely data driven ML approaches
         | don't work for problems you need to be more than 80% correct
         | on.
         | 
         | Trading algos that just need to be right 55% of the time to
         | make money, recommendation engines that present a page of
         | movies/songs for you to scroll, Google search results that come
         | back with a list you can peruse, Spam filters that remove some
         | noise from your inbox.. sure.
         | 
         | But authoritative "this is the right answer" or "drive the car
         | without murdering anyone".. these problems are far harder.
        
           | hospitalJail wrote:
           | Yep, lots of people are using LLMs for problems LLMs aren't
           | good at.
           | 
           | They still do an alright job, but you get that exact
           | situation of 'eh, its just okay'.
           | 
           | Its the ability to use those responses when they are good,
           | and knowing when to move on from using an LLM as a tool.
        
             | steveBK123 wrote:
             | Not terribly different than Google Translate.
             | 
             | Ff you have a familiarity with the foreign language, you
             | can cross check yourself & the tool against each other to
             | get to a more competent output.
             | 
             | If you do not know the foreign language at all, the tool
             | will produce word salad that sort of gets your point across
             | while sounding like an alien.
        
           | wrzuteczka wrote:
           | With the AI "revolution," I began to appreciate the
           | simplicity of models we create when doing programming (and
           | physics, biology, and so on as well).
           | 
           | I used to think about these things differently: I felt that
           | because our models of reality are just models, they aren't
           | really something humanity should be proud of that much.
           | Nature is more messy than the models, but we develop them due
           | to our limitations.
           | 
           | AI is a model, too, but of far greater complexity, able to
           | describe reality/nature more closely than what we were able
           | to achieve previously. But now I've begun to value these
           | simple models not because they describe nature that well but
           | because they _impose_ themselves on nature. For example, law,
           | being such a model, is imposed on reality by the state
           | institutions. It doesn 't describe the complexity of reality
           | very well, but it makes people take roles in its model and
           | act in a certain way. People now consider whether something
           | is legal or not (instead of moral vs immoral), which can be
           | more productive. In software, if I implement the exchange of
           | information based on an algorithm like Paxos/Raft, I get
           | provable guarantees compared to if I allowed LLMs to exchange
           | information over the network directly.
        
             | steveBK123 wrote:
             | I think you've found a good analogy there in the concept of
             | moral vs legal. We defined a fixed system to measure
             | against (rule of law) to reduce ambiguity.
             | 
             | Moral code varies with time, place, and individual person.
             | It is a decimal scale of gray rather than a binary
             | true/false.
             | 
             | Places historically that didn't have rule of law left their
             | citizens to the moral interpretation whim of whoever was in
             | charge. The state could impose different punishments on
             | different people for different reasons at different times.
             | 
             | AI models I find a similar fixed&defined vs
             | unlimited&ambiguous issue in ADAS in cars.
             | 
             | German cars with ADAS are limited&defined, have a list of
             | features they perform well, but that is all.
             | 
             | Tesla advertises their system as an all knowing, all seeing
             | system with no defined limits. Of course every time there
             | is an incident they'll let slip certain limits "well it
             | can't really see kids shorter than 3ft" or "well it can't
             | really detect cross traffic in this scenario" etc.
        
         | raxxorraxor wrote:
         | It is likely that LLM have an upper border of capability.
         | Similarly with denoising AI like stable diffusion.
         | 
         | You can put even more data into it and refine the models, but
         | the growth in capability has diminishing returns. Perhaps this
         | is how far this strategy can bring us, although I believe they
         | can still be vastly improved and what they can already offer is
         | nevertheless impressive.
         | 
         | I have no illusion about the craft of coding becomes obsolete
         | however. On the contrary, I think the tooling for the "citizen
         | developer" are becoming worse, as well as the ability for
         | abstraction in common users since they are fenced into
         | candyland.
        
         | ta-run wrote:
         | What is the test?
        
         | api wrote:
         | We have devs that use AI assist, but it's to automate the
         | construction of the most mindless boilerplate or as a more
         | advanced form of auto complete.
         | 
         | There is no AI that comes close to being able to design a new
         | system or build a UI to satisfy a set of customer requirements.
         | 
         | These things just aren't that smart, which is not surprising.
         | They are really cool and do have legitimate uses but they are
         | not going to replace programmers without at least one order of
         | magnitude improvement, maybe more.
        
         | runeks wrote:
         | > Self-driving trucks were going to upend the trucking industry
         | in ten years, ten years ago.
         | 
         | And around the same time, 3D printing was going to upend
         | manufacturing; bankrupting producers as people would just print
         | what they needed (including the 3D printers themselves).
        
         | ChrisMarshallNY wrote:
         | A few weeks ago, I was stumped on a problem, so I asked ChatGPT
         | (4) for an answer.
         | 
         | It confidently gave me a correct answer.
         | 
         | Except that it was "correct," if you used an extended property
         | that wasn't in the standard API, and it did not specify how
         | that property worked.
         | 
         | I assume that's because most folks that do this, create that
         | property as an extension (which is what I did, once I figured
         | it out), so ChatGPT thought it was a standard API call.
         | 
         | Since it could have easily determined whether or not it was
         | standard, simply by scanning the official Apple docs, I'm not
         | so sure that we should rely on it too much.
         | 
         | I'm fairly confident that could change.
        
           | Animats wrote:
           | ChatGPT seems to invent plausible API calls when there's
           | nothing that would do the job. This is potentially useful, if
           | you have control of the API. Undesirable if you don't. It
           | doesn't know.
        
         | d3w4s9 wrote:
         | Similar experience. I recently needed to turn a list of files
         | into a certain tree structure. It is a non-trivial problem with
         | a little bit of flavor of algorithm. I was wondering if GPT can
         | save me some time there. No. It never gave me the correct code.
         | I tried different prompts and even used different models
         | (including the latest GPT 4 Turbo), none of the answers were
         | correct, even after follow-ups. By then I already wasted 20
         | minutes of time.
         | 
         | I ended up implementing the thing myself.
        
         | brianzelip wrote:
         | > I have a simple front-end test that I give to junior devs.
         | 
         | What is it?
        
           | z7 wrote:
           | Making that claim but not sharing the "simple test" feels a
           | bit pointless tbh.
           | 
           | Edit: I see, they don't want it to be scraped (cf.
           | https://news.ycombinator.com/item?id=38260496), though as
           | another poster pointed out, submitting it might be enough for
           | it to end up in the training data.
        
         | coldtea wrote:
         | > _I have a simple front-end test that I give to junior devs.
         | Every few months I see if ChatGPT can pass it. It hasn't. It
         | can't. It isn't even close._
         | 
         | Small consolation if it can nonetheless get lots of other cases
         | right.
         | 
         | > _It answers questions confidently but with subtle
         | inaccuracies._
         | 
         | Small consolation if coding is reduced to "spot and fix
         | inaccuracies in ChatGPT output".
        
         | soulofmischief wrote:
         | Are you using GPT-3.5, or GPT-4?
        
         | rewmie wrote:
         | > Self-driving trucks were going to upend the trucking industry
         | in ten years, ten years ago.
         | 
         | At the risk of going off on a tangent, we already have the
         | technology to allow self-driving trucks for a few decades now.
         | 
         | The technology is so good that it can even be used to transport
         | multiple containers in one go.
         | 
         | The trick is to use dedicated tracks to run these autonomous
         | vehicles, and have a central authority monitoring and
         | controlling traffic.
         | 
         | These autonomous vehicles typically go by the name railway.
        
         | frereubu wrote:
         | When studying fine art, a tutor of mine talked about "things
         | that look like art", by which she meant the work that artists
         | produce when they're just engaging with surface appearances
         | rather than fully engaging with the process. I've been using
         | GitHub Copilot for a while and find that it produces output
         | that looks like working code but, aside from the occasional
         | glaring mistake, it often has subtle mistakes sprinkled
         | throughout it too. The plausibility is a serious issue, and
         | means that I spend about as much time checking through the code
         | for mistakes as I'd take to actually write it, but without the
         | satisfaction that comes from writing my own code.
         | 
         | I dunno, maybe LLMs will get good enough eventually, but at the
         | moment it feels plausible to me that there's some kind of an
         | upper limit caused by its very nature of working from a
         | collection of previous code. I guess we'll see...
        
         | ActionHank wrote:
         | If you can get it to stop parroting clauses about how "as an AI
         | model" it can't give advice or just spewing a list of steps to
         | achieve something - I have found it to be a pretty good search
         | engine for obscure things about a technology or language and
         | for searching for something that would otherwise require a
         | specific query that google is unhelpful searching for.
        
         | Justsignedup wrote:
         | I've told people, every experiment I do with it, it seems to do
         | better than asking stack overflow, or helps me prime some code
         | that'll save me a couple of hours, but still requires manual
         | fix ups and a deep understanding of what it generates so I can
         | fix it up.
         | 
         | Basically the gruntest of grunt work it can do. If I explain
         | things perfectly.
        
         | karaterobot wrote:
         | I have to ask, though: if ChatGPT has by most accounts gotten
         | better at coding by leaps and bounds in the last couple years,
         | might that not also indicate that your test isn't useful?
        
           | doctorpangloss wrote:
           | I agree this is the first time there is sort of irrefutable
           | objective evidence that the tests are not measuring something
           | secularly useful for programming anymore. There has been an
           | industry wide shift against leetcode for a long time
           | nonetheless.
        
         | hhsectech wrote:
         | Cool...so what's the test? We can't verify if you're talking
         | shit without knowing the parameters of your test.
         | 
         | AI isn't capable of generating the same recipe for cookies as
         | my grandma, she took the recipe to her grave. I loved her
         | cookies they were awesome...but lots of people thought they
         | were shit but I insist that they are mistaken.
         | 
         | Unfortunately, I can't prove I'm right because I don't have the
         | recipe.
         | 
         | Don't be my grandma.
        
         | ben_w wrote:
         | > Every few months I see if ChatGPT can pass it. It hasn't. It
         | can't. It isn't even close.
         | 
         | As someone currently looking for work, I'm glad to hear that.
         | 
         | About 6 months ago, someone was invited to our office and the
         | topic came up. Their interview tests were all easily solved by
         | ChatGPT, so I've been a bit worried.
        
         | croddin wrote:
         | Are the junior devs expected to code it without running it and
         | without seeing it rendered, or are they allowed to iterate on
         | the code getting feedback from how it looks on screen and from
         | the dev tools? If it is the second one, you need to give the
         | agent the same feedback including screen shots of any rendering
         | issues to GPT4-V and all relevant information in dev tools for
         | it to be a fair comparison. Eventually there will be much
         | better tooling for this to happen automatically.
        
         | chiefalchemist wrote:
         | I understand your concern, but isn't it apples v oranges.
         | 
         | Yes, ChatGPT can't pass a particular test of X to Y. But does
         | that matter when ChatGPT is both the designer and the
         | developer? How can it be wrong, when its answer meets the
         | requirements of the prompt? Maybe it can't get from X to Y, but
         | if its Z is as good as Y (to the prompter) then X to Y isn't
         | relevant.
         | 
         | Sure there will be times when X to Y is required but there are
         | plenty of other times where - for the price - ChatGPT's output
         | of Z will be considered good enough.
         | 
         | "We've done the prototype (or MVP) with ChatGPT...here you
         | finish it."
        
       | JonChesterfield wrote:
       | There appears to be consensus that these models generate code
       | very quickly, relative to a person typing, and that the code
       | emitted varies from totally wrong to subtly wrong. Thus they're
       | going to significantly increase the amount of code in production
       | and that code is going to tend to be of the subtly wrong kind.
       | 
       | This is my non-web-dev impression of the javascript world. Loads
       | of code out there, basically all of it wrong in a bunch of
       | places. Reasoning by analogy with that, one should expect the
       | reliability of computer systems to go downhill from here.
       | 
       | The interesting question for a professional software dev is where
       | one can add value in a world in which essentially anyone can
       | produce large amounts of code that sometimes works. My hunch is
       | that it's going to be really important that the languages and
       | libraries in use are totally solid as they're essentially being
       | fuzz tested continually.
        
       | brailsafe wrote:
       | The job market this year, even as someone with a fair bit of
       | experience, is already dogshit for other reasons. I do see the
       | writing on the wall, and am considering re-starting from scratch
       | in something completely different, but I don't know what yet.
       | Though I don't see dramatic leaps in capability happening,
       | opportunity, or productivity happening as much as labor price
       | reducing even further and competition increasing to the point
       | where I don't know if it'll be worth trying.
       | 
       | Carpentry seems like growing field though.
        
       | LAC-Tech wrote:
       | LLMs have not significantly changed the way I code at all. It's
       | only good at very basic mechanical tasks.
        
       | benreesman wrote:
       | I was trying to get whisper.cpp built under buck2 this weekend.
       | Unsurprisingly nothing from GPT-4 to valiant to vanilla llama
       | knew how to do that. I got it done but no model (search or LLM)
       | was any help.
       | 
       | I only need help when it's hard. I've already got a BERT-style
       | model completing my queries on Google.
       | 
       | If your entire job could be done by riffing on stackoverflow
       | answers? Yeah, I'd try to climb the value chain.
       | 
       | But most people's job isn't to copy paste shit.
        
       | karolist wrote:
       | > At one point, we wanted a command that would print a hundred
       | random lines from a dictionary file. I thought about the problem
       | for a few minutes, and, when thinking failed, tried Googling.
       | 
       | No offence to the author but given that this stopped them in
       | their tracks I choose to ignore their programming related
       | opinions.
        
       | delbronski wrote:
       | I used chatgpt4 recently for two projects. One was a success, the
       | other a complete failure.
       | 
       | In the first project I asked it to help me build a one page ui
       | with html and css, it did great! I know a lot about html and css,
       | so I was able to ask for what I wanted and help it debug.
       | 
       | For the second project I wanted what I thought was a simple
       | threejs animation of an object following a line in a scene. I
       | know very little about threejs and graphics in general. I spent
       | hours wrestling with chatgpt to get this working, but I just got
       | what looked like meaningless non-working code to me. So I took
       | time to learn about threejs, did a few chapters of a course, and
       | came back to the problem. And all of the sudden I had new
       | vocabulary I could use to ask chatgpt what I wanted. And I got
       | pretty close to what I wanted, but not quite. I suspect if I keep
       | learning about threejs and how graphics work I'll get there.
       | 
       | I don't think this is the death of our craft, but definitely a
       | big turning point for how we build and use software.
        
       | nercury wrote:
       | The more you use GPT, the more you will understand that it's not
       | the replacement for your attention to the work. And without the
       | attention to the work, you can't spot bugs, blatant
       | inefficiencies, or better design choices - in other words, if you
       | don't take care, you won't even know what you are missing.
       | 
       | I write code with GPT every day for almost a year now, and it
       | helped me greatly to kickstart code that was hard in the past,
       | namely, audio synthesis, vulkan rendering, and other things that
       | were hard to approach. But it's very clear at this point that it
       | shall not be trusted, because it's like a coat of a nice paint
       | put on top of all the clever or dumb stuff that exists on the
       | internet. You never know which one you get, but sure it will be
       | worded convincingly.
        
       | ern wrote:
       | I manage a number of development teams, and I don't get to write
       | much code anymore, but I was asked to urgently build an
       | integration.
       | 
       | The team lead I was going to assign the task to was offshore, and
       | not yet online, so I put the URL for the documentation into
       | ChatGPT premium, and it spat out a working solution.
       | 
       | My team lead was a bit perturbed and created a more enterprisy
       | solution with factories and DI (more out of pride than
       | necessity), but my original code was production ready.
       | 
       | I'm not going to be firing anyone just yet, and certainly not my
       | senior people, but I can see a lot of grunt-level work going
       | away.
        
       | mnd999 wrote:
       | Even if AI were actually good at greenfield dev, that's still
       | only a tiny part of the job, and not the hard part. Try fitting a
       | huge legacy codebase in your prompt.
        
       | Loxicon wrote:
       | This sounds like a Chat GPT sales letter.
        
       | joebergeron wrote:
       | I wonder if there are parallels to be drawn here against the
       | industrialization of other, physical, goods, and how their
       | production evolved over time. If you look at something like, say,
       | printing (I'll use the example of woodblock printing here, since
       | I know a decent amount about it), it originated very much as a
       | craft and discipline, as a means to fulfill a particular
       | function. As printing technology improved and became better
       | industrialized, the craft of printing was gradually replaced with
       | other means that fulfilled the same function, but possessed a
       | different form. i.e., lacking those characteristics of products
       | of craft that we find desirable; artless.
       | 
       | We've been able to fulfill the function of printing very cheaply
       | for what seems like ages now, and we've reached a point where
       | some niche and particularly attuned segment of the population
       | wants a bit more out of the actual form of the printed product,
       | the depth of form that was once common. There is a growing
       | community of people that deeply care about woodblock prints now,
       | favoring their physical characteristics, despite such prints
       | falling out of fashion for a period of time during the heights of
       | industrialization. This group of people understands the value of
       | such craft, and is willing to spend more for it, since the
       | difference in the form of the end product from mass-produced
       | stuff is so stark.
       | 
       | The key thing here, and with other categories of physical goods
       | (e.g. pottery, glassware, furniture, etc.), is that there's an
       | obvious and tangible difference in the form of products produced
       | via traditional means, and those mass manufactured, despite them
       | serving fundamentally the same function.
       | 
       | With software however, I worry that this isn't the case, and the
       | sort of resurgence of interest we see now in products produced by
       | traditional means won't ever translate, assuming that we do move
       | in the direction of more and more software engineering being
       | "automated" by AI assistance. To an end-user of a piece of
       | software, I imagine that there will be very little visible
       | difference in the observable characteristics between fully hand-
       | written and AI-produced software. Indeed, given the same
       | requirements, there ought not be a difference between these two
       | things. It's exactly this delta, however, which drives the
       | passionate and less cost-sensitive enthusiasts to prefer handmade
       | physical goods over manufactured ones. If both the form and the
       | function of AI-produced software is identical to those of
       | traditional software, but the AI-produced software is cheaper,
       | why would anyone go with the traditional stuff? I understand that
       | there are other factors at play here as well (e.g., particularly
       | principled consumers etc.) but really, some combination of form,
       | function, and cost seem like the biggest levers to me, and they
       | seem on the face of it to be pulled toward the direction of AI,
       | for better or worse.
        
       | liampulles wrote:
       | The really big problem with LLMs for general AI usage is the
       | requirement of text input - this is a very limited way to
       | represent ideas and intelligence.
       | 
       | Our brain does not think in text, it just spurts out text as a
       | side effect.
        
         | dragonwriter wrote:
         | Really, they don't require text they require tokens, and they
         | can be built with toolchains that turn aby kind of input into
         | tokens. They are called LLMs because they are initially trained
         | on a large bosy of text with all or some of the available
         | tokens mapped to text, but they can also be trained with
         | mappings of other inputs into tokens (either distinct or
         | overlapping the tokens mapped to text), and then you end up
         | with a multimodal toolchain.
         | 
         | But even if they did require text, that's how a large portion
         | of communication from work-issuer to human workers, and vice
         | versa, goes, too, so even if it was true it wouldn't be all
         | that limiting; we don't communicate directly mentally
         | withbother humans bypassing text.
        
         | frabcus wrote:
         | This varies a lot by people - some people's conscious thought
         | is in images, some in language, some in unsymbolised concepts.
         | 
         | Hurlburt's "Descriptive Experience Sampling" is a good source
         | on this - see for example table 2 of
         | https://hurlburt.faculty.unlv.edu/heavey-hurlburt-2008.pdf
         | 
         | Agreed that underneath that perceivable layer, there's lots
         | else going on too. But to be fair, there's also lots going on
         | the weights of GPT-4, e.g. see https://arxiv.org/abs/2310.02207
        
       | Pufferbo wrote:
       | I hate the word "coder". It's such an undermining term. Saying
       | that someone "codes" or is a "coder" is like calling a chief a
       | "cooker".
        
         | trallnag wrote:
         | So you also hate the word "developer"?
        
       | sensanaty wrote:
       | Whenever I see people talking about how they use ChatGPT to write
       | entire software suites, I feel like I'm taking crazy pills or
       | something. I can't even get GPT4 to give me decent basic ass Ruby
       | scripts where it opens a file that doesn't have some weird
       | behavioral quirk or footgun, yet people often claim that they're
       | doing insane feats with it all the time.
       | 
       | My experience, even if I'm just trying to be lazy and have it
       | generate some super generic code for me, is that I have to spend
       | double the time I'd have spent if I just wrote the damn script
       | myself with how much I have to scrutinize every single line it
       | generates.
       | 
       | And I personally have 0 desire to prompt "engineer" and do the
       | "Open"AI's work for it by thinking up the perfect prompt for it.
       | One day for sure these AI models will be really good and able to
       | do some impressive stuff, but for now all I can see is a hype
       | wave from people with vested interests in this stuff pushing it
       | onto ignorants, akin to the crypto BS just with even more money
       | behind it.
        
         | no-ramen wrote:
         | I feel like those people who have most success with it use GPT
         | for extremely common problems in the most popular JavaScript
         | web frameworks. My experience with GPT-3.5 but Dart/Flutter is
         | exactly the same
        
       | rixed wrote:
       | > At one point, we wanted a command that would print a hundred
       | random lines from a dictionary file. I thought about the problem
       | for a few minutes, and, when thinking failed, tried Googling.
       | 
       | Isn't the real waning days of the craft the fact that we consider
       | this problem sort of "state of the art" ?
        
       | blauditore wrote:
       | Wake me up when the current AI hype is over. Eventually people
       | will realize that getting the last few percent right is extremely
       | hard, just like the last few times where we got just so close to
       | AGI.
       | 
       | What will stay are some nice tools for whatever tasks, maybe
       | programming too. But bots won't replace software engineers. If
       | they could do the current tasks, we'd just engineer one level
       | higher, just like when high-level language compilers made low-
       | level code largely obsolete (yes yes, not completely of course).
        
       | parham wrote:
       | This will test how egoless each programmer is.
       | 
       | If you're truly egoless and care about the outcome and not the
       | path to the outcome... you'll see how exciting this is.
        
         | rpeden wrote:
         | Why does that matter?
         | 
         | A lot of folks chose programming as a career because they enjoy
         | the path at least as much as the outcome, and I think that's a
         | perfectly fine reason to choose a career.
         | 
         | It also gives them good reason to mourn the loss of something
         | that brings them happiness. They might be losing the only part
         | of their job they actually enjoy.
        
       | zacksiri wrote:
       | I think it depends on what you do, if you are doing repetitive
       | work between projects, you're going to find that yes GPT can do
       | most of the work you're doing. However if you're creating new
       | systems, with multiple components and parts. You're going to find
       | that GPT is not that much help.
       | 
       | I pay for GPT-4 and Github Copilot, all I can say is when I'm
       | trying to do repetitive work like writing tests, copilot swoops
       | in and gives me 'mostly' working code. But when I go in to the
       | real creative stuff, that needs real thought and is non-obvious,
       | I don't get much help from copilot it either just doesn't suggest
       | anything or suggests completely the wrong thing.
       | 
       | I think at least for me, the comparison I would use is,
       | construction work. There are many different kinds of
       | constructions, anything simple from making ikea furniture to
       | building bridges. If the coding you do is the equivalent of
       | making ikea furniture. Then yes that stuff is going away, because
       | it's going to be replaced by machines that can produce those
       | parts in bulk.
       | 
       | But if you're creating something special like the Burj Khalifa,
       | or the Golden gate bridge equivalent but in code, no AI is not
       | going to do that for you. It can help with some parts, but no way
       | AI is going to do that sort of engineering, at least not in it's
       | current state.
       | 
       | I think it's worth noting "Coding" spans so many kinds of systems
       | and scale. Not all coding work is the same. Even if you're
       | talking about things which are well-known like "e-commerce" in
       | that industry there are so many variations / many different
       | scales / many different ways to look at the problem.
        
       | sean_the_geek wrote:
       | My two cents having used AI in programming. It is merely a tool
       | to create. It is not the creator yet, at least in its current
       | iteration.
       | 
       | AI is to programming what electric drill were to wood working
       | before they were invented. It made life easy; it sped up the
       | process and may be it did a job a bit finer. But you still need
       | to understand where to drill and how to create the thing. There
       | are a number of analogies like this you can find.
        
       | TDiblik wrote:
       | as a high school student, I'm more hesitant to go into CS degree
       | not because of chatgpt but because it is constantly marketed as a
       | high income job and A LOT of people are choosing/learning it. I
       | wonder if it's gonna be the same in 10 years or so.
       | Chatgpt/copilot make stuff easier and there are only so much CRUD
       | apps to be made :/
        
       | cnity wrote:
       | I like to think of a simple thought experiment when these types
       | of arguments come up: Suppose you want some video game to exist.
       | The most amazing, expansive, ground-breaking video game ever
       | made. There are only two scenarios:
       | 
       | 1. AI can replace coders altogether. In this case we live in an
       | absolutely amazing world in which anyone can conjure the video
       | game of their dreams instantly.
       | 
       | 2. AI cannot do this, in which case there is still (clearly) an
       | essentially infinite demand for new software.
       | 
       | Obviously, we do not live in world number 1. If we have arrived
       | at the world in which AI can do the job of all coders, then why
       | is there not an infinite supply of high quality software? In
       | fact, this would be a software utopia.
        
         | gatinsama wrote:
         | Excellent point, but I'll add:
         | 
         | World #1 would probably replace all other kinds of jobs. A part
         | of programming, sure, is about languages, syntax, fixing bugs,
         | functionality, etc. But the other part is about robustness,
         | organization, and simplification. This other part won't die.
        
       | interpol_p wrote:
       | I use ChatGPT daily and have been coding for over two decades. I
       | get it to write all the tedious stuff, and it basically writes
       | all my internal tools, scripts and so on. The last big things it
       | wrote for me were:
       | 
       | A macOS SwiftUI app to go through all the localization strings in
       | my apps and show them in a table where I could see missing
       | translations, and interactively translate them... by sending the,
       | back to ChatGPT
       | 
       | Another macOS app to graph Google ngram data for word lists. It
       | was great because I didn't even need to check whether there was
       | an API for ngrams, I just asked it for the function, then for the
       | code to plot it in Swift Charts
       | 
       | Sometimes I consult it on refactoring problems (eg., this struct
       | has new responsibilities, what would be a more appropriate name?
       | How do you see it fitting into this section of the code?). It's a
       | great tool and easily worth the money
       | 
       | It almost never writes any "interesting" code, however
        
       | lysecret wrote:
       | So, a few months ago I wanted to lose some weight and wanted to
       | count my calories. As a coder would, I thought why not build a
       | swift app that uses the ChatGPT API to count them (instead of
       | doing it the boring way).
       | 
       | I'm a fairly experienced backend dev I built a few toy websites
       | and I am casually interested in frontend stuff (like watching
       | Fireship) so I thought I'd give it a try.
       | 
       | Long story short, it worked well. I have my app it has all the
       | features I need I used it every day (till I lost 10kg) and I
       | didn't write a single line of code.
       | 
       | However, the coding itself was unlike anything I had done before.
       | I felt much more like a manager/Slave driver.
       | 
       | The core thing was structure structure structure. As soon as the
       | task gets too large, GPT will produce something kind of right
       | that is difficult to understand and impossible to extend. So your
       | task is to split it up, and split it up. Also to apply judgment
       | (it started out using objective-c haha). You have to ask it for
       | alternative libraries. For reference. I relied a lot on something
       | like: "In Python/C#/Rust I would do it like this".
       | 
       | But yes, my overall experience is that I think we are in for an
       | exciting new time, but we are lacking a new coding paradigm.
        
         | rukuu001 wrote:
         | > But yes, my overall experience is that I think we are in for
         | an exciting new time, but we are lacking a new coding paradigm.
         | 
         | This is the big one for me. I feel like we're all having "640K
         | ought to be enough for anybody" type conversations right now.
        
           | CaptainFever wrote:
           | 640K tokens ought to be enough for anybody
        
       | underscoring wrote:
       | I know we're all biased here, as coders, but I don't see this as
       | the end, but rather the beginning of something.
       | 
       | In the article, the non-coder was able to produce code with an
       | AI's help, and therefore, coders are doomed.
       | 
       | But in fact what happened is it enabled two "developers" to
       | offload the menial work and focus on the product itself.
       | 
       | The development of electric workshop tools didn't make
       | woodworkers obsolete, it just enabled them to do the work of 5
       | people, and do it easier and faster.
       | 
       | We are moving from the era of hand-tools in coding.
       | 
       | The real risk is that we're going to see a lot of cheap shitty
       | furniture made by people with no skills, but at least ChatGPT
       | isn't going to chop anyones fingers off.
        
       | Dave3of5 wrote:
       | > Ben told GPT-4 what he wanted and got code that ran perfectly
       | 
       | "perfectly"? I mean this sounds dubious. ChatGPT gives
       | interesting suggestions and advice when it comes to coding but
       | I've never been able to get any close to a perfect solution.
       | 
       | I don't think coding AI assistant's are meant to be used in that
       | way anyway...
       | 
       | I think this is just another fluff piece about how coding is now
       | dead (long live coding). That's basically not true. LLM have gave
       | us a leg up but they haven't removed the need for a competent
       | programmer.
        
       | thaanpaa wrote:
       | I'll be concerned if I see an LLM create a secure, functional SQL
       | schema and API with users, roles, subscriptions, products, MFA,
       | and all the other basic requirements of modern-day apps. We're
       | not even close to the required level of complexity yet, and I'm
       | not holding my breath either.
        
       | resuresu wrote:
       | I've always saw computers as a means to an end. Even in the
       | bladerunner movies no one is sitting around pecking at a phone or
       | a pc keyboard, it's just holographic AI they talk to and
       | interface with. And that's the future of technology. Eventually
       | you might do some sort of brain interface and be a cyborg. Who
       | knows but the truth is, we nearing the end of humans needing to
       | sit down and actually write code.
        
       | spacecadet wrote:
       | New Yorker lol.
        
       | DeepSeaTortoise wrote:
       | I am quite surprised nobody has called out the elephant in the
       | room yet:
       | 
       | A much superior solution than even the next few AI generations
       | has been available for several decades now. You could just
       | outsource your work to a contractor in a developing nation.
        
       | assimpleaspossi wrote:
       | Whenever someone calls a programmer a "coder", I feel like it's
       | calling Stephen King a "typist" and that's insulting. Programming
       | is much more than just the coding part.
        
       | RagnarD wrote:
       | Not to be unkind but simply factual: the author is clearly not a
       | great developer. e.g.:
       | 
       | "At one point, we wanted a command that would print a hundred
       | random lines from a dictionary file. I thought about the problem
       | for a few minutes, and, when thinking failed, tried Googling."
       | Really?
       | 
       | "But he had no idea what a pain it is to make an iPhone app. I'd
       | tried a few times and never got beyond something that half
       | worked. I found Apple's programming environment forbidding."
       | Perhaps. But compared to what? Yeah, it's not using VI to write
       | Javascript or whatever he considers a programming environment.
       | 
       | Power tools didn't stop people from making things. Autocad didn't
       | put architects out of business. Finite element modelling didn't
       | destroy civil engineering. Quickbooks hasn't destroyed the need
       | for accountants. Word processors didn't destroy writing. Google
       | translate didn't remove the need for translators.
       | 
       | LLMs will be a power tool for good developers. I think many
       | underestimate what it'll take to fully replace good or excellent
       | software developers and what they do in totality.
        
         | alm1 wrote:
         | In author's defense he doesn't claim to be exceptional and even
         | concludes his essay with labeling this A.I. moment as "the
         | revenge of the so-so programmer." I actually enjoyed author's
         | nuanced take, different from the common narrative of AI
         | takeover. To the contrary I think LLM-driven coding is not a
         | tool of power users, but rather a tool of disempowered users.
         | They will bring many more people into the engineering
         | profession and change the profession for many in it towards
         | more complex tasks. Quickbooks hasn't destroyed the need for
         | accountants, yet it allowed millions to become the "so-so
         | accountants", when that's all their business needed.
        
           | muldvarp wrote:
           | I don't think a "so-so programmer" would need to google to
           | figure out how to select random lines from a file.
        
             | savanaly wrote:
             | I would have to Google. You really have the library methods
             | you would need for that memorized? I think the last time I
             | had to select random elements from a list at work
             | was...never. Why would I still know that?
             | 
             | Would it be Random.int()? Or Random.range()? Or maybe
             | there's a better choice that operates directly on a list?
             | Or wait is it gonna return the value or a Generator of the
             | value? Etc. Even if you remember how to do random number
             | generation in your language, this specific use case
             | probably necessitates a Google unless you have a godlike
             | memory, or you don't mind half-assing it.
        
               | muldvarp wrote:
               | It doesn't sound like the author had to google for
               | specific library methods (otherwise they wouldn't have
               | had to think about the problem for a few minutes
               | beforehand). It sounds like they genuinely couldn't
               | figure it out (even given those library functions).
               | 
               | I don't think googling for library methods is a sign of a
               | bad developer. On the contrary, googling for specific
               | library functions instead of hacking something together
               | using general library functions is a sign of a good
               | developer.
               | 
               | That said, at least for python, I personally wouldn't
               | have to google. I use random.choices a few times a year.
        
         | aketchum wrote:
         | I agree with the sentiment, but cars did put stalls and horse
         | and buggy drivers out of business. Google translate may not
         | have put translators completely out of business but when I
         | travel I dont stress about needing one because I can fall back
         | to translate for emergencies. The new voicebox model from Meta
         | does seem like it really could put translators out of business.
         | Some technologies really do kill entire industries (but I dont
         | think the current iteration of LLMs will do so for programmer)
        
       | nullptr_deref wrote:
       | Why are people so unaware of what is happening? The leap in
       | quality from DALL-E 2 to DALL-E 3 was due to improvements in the
       | prompts used for training. With countless people using ChatGPT,
       | it will reach a point where OpenAI will have enough data to train
       | on. There are ideas not yet explored that will be connected to
       | the system. At this point, the pace of development is
       | exponential. Unless it flattens out, we will witness AI being
       | able to engineer, code, craft, design, and build a product on its
       | own.
       | 
       | So, what is the basis for my statement? We are just mediators at
       | this point. We don't need to be there. Currently GPT-4 translates
       | our requirements to DALL-E 3 during image generation process.
       | What I want to say is, there is no reason to give any form of
       | signal as an "initial seed." Has anyone tried creating an
       | automatic agent that, when turned on, receives a signal from the
       | external world, whatever it may be, and triggers a chain of
       | thoughts in these LLMs?
       | 
       | We, as humans, rely on signals. Currently, we are providing
       | signals to LLMs in the form of text. There will and there must
       | come a point where agents will feed signals to each other. They
       | will perceive signals from the environment on their own and move
       | on from there. This is not far away. It is near because all the
       | components are laid out there.
       | 
       | And people argue over things like, "Oh, but I need to prompt it."
       | No, you don't. It will take one engineer to define a way to
       | process signals, then write an objective for the AI and train it.
       | Once trained, it will continue on its own. The projection might
       | sound off to you all, but there is no one stopping you from not
       | doing it. Do you know what the limiting factor is? Capital. Yes,
       | capital. So, as long as the power law holds, we will keep seeing
       | strides in improvement. If you have capital and skills, you can
       | do it right now.
       | 
       | I am not saying the signal is "real world physical environment".
       | Say you have a crawler that scrapes the website. You hook it to a
       | summarizer. The summarizer fires the signals and then it calls
       | AIs to create product. This whole thing once created doesn't need
       | a human in the loop. Once something is built, it is done. Also,
       | add to the fact that these AI system only trust other AI system's
       | code. Why? Because human are untrustable. Now you will have an
       | ecosystem designed by AI for AI and to be integrated with AI. Why
       | do we need humans at this point? Like why would a company want
       | humans at this point?
        
       | gatinsama wrote:
       | I'm amazed by the fact that this was written by a human when AI
       | would have done a good job.
        
       | wiradikusuma wrote:
       | I've been trying to get AI to write a component to embed in my
       | Flutter app. The component is a zoomable whiteboard.
       | 
       | These people who said AI built programs, are they using different
       | AI?
        
       | dmingod666 wrote:
       | most impacted are technical consultants ( outside experts that
       | merely provide high level consulting ) -- their recommendations
       | will be scrutinized more closely
        
       | cultureswitch wrote:
       | LLMs are on the way to AGI but they are still laughably bad at
       | logical reasoning.
       | 
       | Any remotely interesting coding task is at least somewhat novel
       | and requires some reasoning. So far, LLMs don't seem to be very
       | good at handling things they haven't seen before.
        
       | cultureswitch wrote:
       | LLMs are pretty good at going from complex code/legalese to prose
       | which is easier to understand. Not so much the other way around.
        
       | FrustratedMonky wrote:
       | Regular expressions are pretty tricky. You can be an expert and
       | it can still take time to tweak. I've been using regular
       | expressions for decades, and now find myself using GPT as a kind
       | of pre-compiler. I'll test regular expressions with GPT and it
       | gets really close or the final result.
        
       | jmull wrote:
       | I'm disappointed, but not really surprised I guess, with how
       | poorly so many programmers seem to understand what chatgpt is and
       | does.
       | 
       | It's great and amazing tech, but it's very much a kind of search
       | engine, and indeed, writes just the kind of code you find on the
       | internet... sometimes great, often flawed, very often incomplete.
       | Its breadth of knowledge is stunning, but it's not like it's
       | actually useful to be able to write code in all the languages.
       | 
       | It really doesn't even touch harder problems. You need to know,
       | at the level of fine details often, what you want from it and
       | what you don't. That's hard.
       | 
       | ...It save's time. We will perhaps need fewer programmers as
       | people spend less time on grunt work. But that's hardly the end
       | of coding, and seems like clearly a good thing in the long run.
        
         | runeks wrote:
         | > We will perhaps need fewer programmers as people spend less
         | time on grunt work.
         | 
         | If programmers become more productive, it means the price of
         | development will decrease. This will, in turn, increase the
         | demand for development.
        
       | androtheos wrote:
       | "Programmers are people who can endure an endless parade of
       | tedious obstacles.", maybe my new favorite quote.
        
       | andsoitis wrote:
       | > But he had no idea what a pain it is to make an iPhone app. I'd
       | tried a few times and never got beyond something that half
       | worked. I found Apple's programming environment forbidding.
       | 
       | A seasoned programmer who struggles with this?
        
       | gumballindie wrote:
       | > For the new crossword project, though, Ben had introduced a
       | third party. He'd signed up for a ChatGPT Plus subscription and
       | was using GPT-4 as a coding assistant.
       | 
       | You have to give OpenAI credit. Their marketing campaign is
       | beyond genius. A bit spammy and aggressive but it works.
        
       | chasing wrote:
       | Every five-to-ten years some technology comes around that's
       | finally going to put software engineers out of work.
       | 
       | Turns out the only thing truly successful at that task is
       | economic mismanagement.
        
       | intrepidsoldier wrote:
       | * AI is good at hard (to human) tasks like explaining complex
       | code but bad at easy (to human) tasks like counting C files in a
       | codebase. * AI is particularly effective at taking over
       | repetitive work full of toil e.g., reviewing large PRs. As a
       | result, it will allow more developers to focus on fun things like
       | building new features. * AI will increase the number of
       | developers worldwide because it reduces the barrier to entry for
       | programming. * AI will reduce the fear involved in starting
       | large-scale projects like migrating codebases from one
       | framework/technology to another.
        
       | tromp wrote:
       | > Perhaps what pushed Lee Sedol to retire from the game of Go
       | 
       | But he didn't; he merely retired from professional play, and
       | remains intensely interested in the game and the new directions
       | it's taking.
        
       | BobBagwill wrote:
       | AFAIK the go and chess models played themselves to improve. They
       | weren't trained on games played by junior players. So far, coding
       | LLMs don't try to compile and run their code and check the
       | output. They don't fuzz the inputs to look for errors. There
       | aren't competitive, adversarial LLMs trying to outcode each other
       | or fool each other.
        
       | BobBagwill wrote:
       | AFAIK, the go and chess models played themselves to improve. They
       | weren't limited to pieces of recorded games played by junior
       | players, like SO.
       | 
       | So far, coding LLMs are not generating code, compiling it,
       | running it, checking the output, timing the program, fuzzing the
       | input, etc. When they can train themselves, they will improve.
        
       | demondemidi wrote:
       | Wow what a terrible article. The guy just got tired of
       | programming. Everything his buddy looked up he could have hacked
       | out but chose not to. All the tools exist to code at whatever
       | level he wants to. Just sounds like he lost the spark. The other
       | day on hacker news a 17 year old kid wrote a debugger and was
       | asking for help. That's the spark.
        
       | totallywrong wrote:
       | > What I learned was that programming is not really about
       | knowledge or skill but simply about patience, or maybe obsession.
       | 
       | Damn, the secret is out.
        
       | minzi wrote:
       | It seems like lots of people are pointing out the inadequacies of
       | the current state of the art models. It doesn't seem that
       | unlikely that many of these problems will be solved in the coming
       | years. I won't make any guesses about timelines, but there is
       | certainly a large number of very well funded smart people working
       | on these problems. I'm not sure if this current path leads to
       | AGI, which is what I would consider the minimum requirement for
       | truly replacing human jobs. However, it does suggest to me that
       | building AGI is achievable.
       | 
       | In my mind there are two major architectural problems that still
       | need to be solved if I am to be convinced AGI is close:
       | 
       | 1. Medium term memory
       | 
       | 2. The need to relive an entire conversation just to produce the
       | latest response.
       | 
       | Here is another question: Suppose we develop AGI. What will the
       | energy requirements be for that system? The scale at which
       | ChatGPT is used today would be peanuts compared to a system that
       | is supposed to replace millions of knowledge workers.
        
         | sadtoot wrote:
         | i wonder how many of the commenters who bemoan how GPT-4 can't
         | do this or that task, could have predicted 2 or 5 years ago
         | what GPT-4 can do easily today
        
           | fumeux_fume wrote:
           | Yes I also only find people to be credible if they have a
           | solid track record of magically predicting events 2 to 5
           | years in the future.
        
             | olddustytrail wrote:
             | That's the only way I'd find people credible when they're
             | claiming they can predict 2 to 5 years in the future from
             | now.
             | 
             | If they couldn't see ChatGPT coming, I'm not convinced of
             | the whole "it'll never be able to..." spiel.
        
           | minzi wrote:
           | Yeah that is a much more succinct way to put it!
        
       | totallywrong wrote:
       | I suspect we're going to see this article in many different forms
       | over the next few years. That's when the hype cycle will settle
       | and people realize that LLMs are amazing search engines on
       | steroid buy will never replace actual developers.
        
       | stratigos wrote:
       | The article sounds like it was written by someone with minimal
       | career experience. Its overwhelmingly naive, and Im sure the
       | intended readership isnt any more or less naive than the author.
        
       | MarkusWandel wrote:
       | It's glorified autocomplete. The stuff that is annoying when
       | you're at a proper keyboard with proper typing skills, but maybe
       | not so bad when you're thumb typing on a smartphone. I've not
       | personally used it, but someone else with very advanced skills,
       | needing to code something in an unfamiliar programming language,
       | asked ChatGPT to do it, got a "mostly right" boilerplate and
       | fixed up the obvious errors, which was much quicker than learning
       | the language enough to start from scratch. Autocomplete!
        
       | Dowwie wrote:
       | Most of the software engineers I've known are problem solvers who
       | use code to accomplish their goals. Problem solvers will use the
       | best tools available for the job. Perhaps engineers will use
       | natural language UI's to build software and "drop down" into a
       | languages for debugging or optimization, just as today some drop
       | into assembly.
        
       | ubermonkey wrote:
       | The line that killed me:
       | 
       | >the one with the pink-shirted guy on I.B.M. PCs
       | 
       | That's PETER NORTON, Goddammit. Know your history, New Yorker
       | writer! Damn!
        
       | zubairq wrote:
       | As a developer many people ask me if I am worried about AI making
       | my job obsolete. I always answer truthfully, "I CAN'T WAIT for AI
       | to make my job obsolete!".
       | 
       | After trying several AI tools in the hope of replacing my coding
       | job I find that the tools are good at the bike-shedding tasks
       | like generating some initial code (the easy stuff for me) and
       | terrible at the real work (maintenance and adding features to an
       | existing codebase).
        
       | bigpeopleareold wrote:
       | Instead of ChatGPTing things in what I work in, I have sought to
       | improve my knowledge a lot in shell scripting, I am reading man
       | pages more diligently (even if I am not dilgent enough) and seek
       | to use documentation first, such as man pages, software
       | documentation, etc. before even going to search for something. I
       | am not perfect, but I feel like most of the problems I have are
       | present in manuals - I am RTFMing myself.
       | 
       | I do this because I wasn't like that in the past and I hate
       | myself for not being more deliberate in reading and discovering
       | things organically through doing things. This is not about joy,
       | (even though it makes me happy) but my obligation to myself and
       | then to my employer to be good at what I do.
       | 
       | Sitting with a chat bot undermines this urge to be a better
       | developer completely. I will probably be argued with, but I have
       | worked with a lot of smarter people, but I realized after many
       | years, (and what the article alludes to), that they have a very
       | strong sense to fight through myriads of almost random problems,
       | but they have the knack at solving those problems intelligently.
       | 
       | I remember specific co-worker that used an even plainer Emacs
       | config than I did to write Java code. I was genuinely curious
       | what his thought process was when trying to remember APIs without
       | anything more special than simple modes for jumping around a
       | codebase. He said "I don't know, I just read the manual first."
       | 
       | Yes! If he can do that, I can do that. After that, a lot with
       | working with computers is about continually pushing through those
       | random problems to their solution. This is an absolutely precious
       | skill. I don't feel the affected yet, but I will be, I expect -
       | lesser quality searches while we have to push our chat bots sub-
       | sub-problems instead of just understanding what we are using. I
       | don't want to and I will continue to hold out, like all the other
       | essentially dumb technologies I am now stuck with (I am looking
       | at my two mobile phones now ...)
        
       | ingen0s wrote:
       | AI is doing nothing but raising expectations, and so it should.
       | Stop crying and adapt!
        
       | todd3834 wrote:
       | > At one point, we wanted a command that would print a hundred
       | random lines from a dictionary file. I thought about the problem
       | for a few minutes, and, when thinking failed, tried Googling. I
       | made some false starts using what I could gather,
       | 
       | If this is the skill level of the coder then I'm not surprised
       | that they are worried about GPT. However they should be stoked
       | GPT can help them code at a much higher level
        
       | 2devnull wrote:
       | I'm not going to use gpt, at least not for coding. That's not
       | something I'm hearing other programmers say, at least not often.
       | They may say it's not good enough, yet, or that they as a senior
       | dev don't have any use for it. These strike me as cope. What I
       | say is that I'm just not going to use it. I'm not sure if it's a
       | political decision I've made, but I'm sure it's the right
       | decision for me. I will simply change careers or go homeless
       | before I try and compete with these great new efficiencies. I
       | won't take part in the disruption. It's clearly degenerate.
        
       | rip_netrunner wrote:
       | Reading the responses on this page reminds of the quote
       | 
       | "it is difficult to get a man to understand something, when his
       | salary depends on his not understanding it." - Upton Sinclair.
        
       | _bramses wrote:
       | How can a field that is less than 80 years old wane? Y'all's
       | recency bias shows way too strongly. Your definition of junior
       | and senior is purely anecdotal and based around what the brass at
       | your companies "award". Not to mention the arbitrary conflation
       | of algorithm design and the actual process of writing sustainable
       | code. It's a show fair of "my way is best", and science waits for
       | no opinions as such.
        
       | itsokimbatman wrote:
       | Saw;
        
       | notjoemama wrote:
       | ChatGTP cannot provide an actual solution to a multi-tenant
       | application framework for a SaaS product...because I haven't
       | found that in the stack I work in. So I created it but it is
       | closed source. If LLMs rely on open source, it will never provide
       | the value that exists from experienced closed source engineers. I
       | suppose LLM/AI providers can snaekily suck in closed source code
       | for long enough time that once they're caught the cat is out of
       | the bag and the "industry" collapses. But so far, LLMs are cool,
       | but not AGI, nor are they likely to mature into AGI alone.
       | 
       | As far as generalization goes, I'm still waiting for an answer
       | from Tolman-Eichenbaum machines. Or, an integration of LLMs and
       | cognitive maps.
       | 
       | https://www.youtube.com/watch?v=9qOaII_PzGY
       | 
       | http://brilliant.org/ArtemKirsanov/
       | 
       | And his references from the YouTube video:
       | 
       | REFERENCES (in no particular order): 1. Behrens, T. E. J. et al.
       | What Is a Cognitive Map? Organizing Knowledge for Flexible
       | Behavior. Neuron 100, 490-509 (2018). 2. Constantinescu, A. O.,
       | O'Reilly, J. X. & Behrens, T. E. J. Organizing conceptual
       | knowledge in humans with a gridlike code. Science 352, 1464-1468
       | (2016). 3. Aronov, D., Nevers, R. & Tank, D. W. Mapping of a non-
       | spatial dimension by the hippocampal-entorhinal circuit. Nature
       | 543, 719-722 (2017). 4. Whittington, J. C. R., McCaffary, D.,
       | Bakermans, J. J. W. & Behrens, T. E. J. How to build a cognitive
       | map. Nat Neurosci 25, 1257-1272 (2022). 5. Whittington, J.,
       | Muller, T., Mark, S., Barry, C. & Behrens, T. Generalisation of
       | structural knowledge in the hippocampal-entorhinal system.
       | 
       | CREDITS: Icons by biorender.com and freepik.com Brain 3D models
       | were created with Blender software using publicly available
       | BrainGlobe atlases (https://brainglobe.info/atlas-api)
       | 
       | This video was sponsored by Brilliant
        
       | rapind wrote:
       | One of the concerns I have with AI assisted programming is it
       | might make us more accepting of badly designed APIs and
       | libraries, and eventually APIs designed for AI intuitiveness
       | rather than human intuitiveness (assuming these don't always
       | align). If AI takes away the pain of working with badly designed
       | APIs (good), it will also change our perception and acceptance of
       | these badly designed APIs (bad).
        
       | b20000 wrote:
       | who is james somers?
        
       | karaterobot wrote:
       | If coding goes away as a profession or as a craft, it would be a
       | fitting end to a story arc that entailed the end of so many other
       | people's jobs. We've had a good, high-flying run for fifty years,
       | not really thinking too hard about what progress for us meant for
       | other people. I'm not convinced yet that it will, but I'm also
       | not sure how many people outside the profession would weep for
       | the loss.
        
       | agentultra wrote:
       | If your trade as a programmer is in automating tasks with
       | computers... I can see how it might seem like OpenAI is your
       | Squarespace. Most users were never going to learn to code no
       | matter how well we designed scripting languages, macros, etc for
       | them. Just like there was nothing stopping them from learning
       | HTML or using any of the available tools for building their own
       | websites. They still paid people to do it for them. Now we're at
       | a moment where they don't need to pay such people anymore... just
       | like when Squarespace-et-al killed off the need to hire a web
       | developer to build your website.
       | 
       | I don't think Djikstra would be _appalled_ in the sense that the
       | author gives it. He wasn 't saying that C++ or Python were
       | _precise_ languages; they wouldn 't be precise enough for him. He
       | wouldn't be appalled that we don't write programs in them. He
       | would be appalled that we don't write precise specifications.
       | 
       | ChatGPT-4 can generate code. Is it the _correct_ code? We don 't
       | know unless we specify what _correct_ means in a precise and
       | unambiguous way. Natural language isn 't precise enough to do
       | that. We have a language for that called, _mathematics_.
       | ChatGPT-4 is not very good at understanding or speaking this
       | language for the time being.
       | 
       | What matters is whether ChatGPT-4-generated-code is good enough
       | for your problem. Generate a script to organize some files or
       | help you with small tasks where correctness isn't crucial? Go
       | ahead. I don't pull out a whiteboard and fire up a theorem prover
       | when I'm organizing a photo collection.
       | 
       | However, if I'm working on a system and have a theory that we can
       | parallelize an algorithm over a complex data structure and it's
       | critical that this is done correctly or the system cannot be
       | trusted? I wouldn't think twice before firing up TLA+ or Lean 4.
       | 
       | For now, ChatGPT-4 cannot reason and think for you. The industry
       | isn't over, in my opinion. It's annoying. It's noisier. But not
       | over.
        
       | lawlessone wrote:
       | >For instance, it was considered foolish to estimate how long a
       | coding task might take, since at any moment the programmer might
       | turn over a rock and discover a tangle of bugs.
       | 
       | Still true tbf
        
       | feoren wrote:
       | > At one point, we wanted a command that would print a hundred
       | random lines from a dictionary file. I thought about the problem
       | for a few minutes, and, when thinking failed, tried Googling. I
       | made some false starts using what I could gather, and while I did
       | my thing--programming--Ben told GPT-4 what he wanted and got code
       | that ran perfectly.
       | 
       | This is pretty basic stuff. It should not even require Googling
       | unless you don't really know the language. This supports my
       | belief that ChatGPT is simply going to replace the _very bad_
       | programmers. But we never really needed them to begin with. I
       | have no faith that GPT-4 's code actually "ran perfectly"; this
       | programmer clearly does not have the chops to tell whether or not
       | the code was correct. And we're talking about, like, 100-level CS
       | homework here.
        
       | tj-teej wrote:
       | "At one point, we wanted a command that would print a hundred
       | random lines from a dictionary file. I thought about the problem
       | for a few minutes, and, when thinking failed, tried Googling. I
       | made some false starts using what I could gather, and while I did
       | my thing--programming--Ben told GPT-4 what he wanted and got code
       | that ran perfectly."
       | 
       | Sure ChatGPT can do this, but let's not pretend this is a problem
       | requiring much "craft".
        
       | tabtab wrote:
       | > had no idea what a pain it is to make an iPhone app. I'd tried
       | a few times and never got beyond something that half worked. I
       | found Apple's programming environment forbidding.
       | 
       | What's missing these days is domain-specific languages (DSL).
       | Maybe domain-specific API's (libraries) can be made better, but I
       | have not seen it done well yet.
       | 
       | Domain specific languages made it easy and DIRECT to do things
       | you wanted done in that domain, no weird-ass reverse dependency
       | factory visitor injection design patterns or whatnot, you only
       | had domain-oriented commands and the basics of functions, loops,
       | and conditionals to glue them together. Sure, they didn't scale
       | well to "enterprise", but if that's not what you want, so be it!
       | Global variables didn't kill kittens like "real" software
       | engineers warn against. I barely had to read the manual when
       | learning VB classic, Microsoft Access (pre XML), Paradox, etc. it
       | was so intuitive and almost everything related to the domain
       | (desktop GUI's and small-ish CRUD).
       | 
       | Wanna make a successful tool for non-giant orgs or groups? Focus
       | on the domain and only the domain; don't let fads and buzzwords
       | and mega-scaling distract you.
        
       ___________________________________________________________________
       (page generated 2023-11-14 23:01 UTC)