Don’t learn to code: Nvidia’s founder Jensen Huang advises a different career path::Don’t learn to code advises Jensen Huang of Nvidia. Thanks to AI everybody will soon become a capable programmer simply using human language.

  • howrar@lemmy.ca
    link
    fedilink
    English
    arrow-up
    34
    ·
    8 months ago

    I don’t see how it would be possible to completely replace programmers. The reason we have programming languages instead of using natural language is that the latter has ambiguities. If you start having to describe your software’s behaviour in natural language, then one of three things can happen:

    1. either this new natural programming language has to make assumptions about what you intend, and thus will only be capable of outputting a certain class of software (i.e. you can’t actually create anything new),
    2. or you need to learn a new way of describing things unambiguously, and now you’re back to programming but with a new language,
    3. or you spend forever going back and forth with the generator until it gives you the output you want, and this would take a lot longer to do than just having an experienced programmer write it.
    • ReplicaFox@lemmy.world
      link
      fedilink
      English
      arrow-up
      16
      ·
      8 months ago

      And if you don’t know how to code, how do you even know if it gave you the output you want until it fails in production?

    • model_tar_gz@lemmy.world
      link
      fedilink
      English
      arrow-up
      7
      ·
      edit-2
      8 months ago

      But that’s not what the article is getting at.

      Here’s an honest take. Let me preface this with some credential: I’m an AI Engineer with many years in field. I’m directly working on right now multiple projects that augment and automate code generation, documentation, completion and even system design/understanding. We’re not there yet. But the pace of progress in how fast we are improving our code-AI is astounding. Exponential growth in capability and accuracy and utility.

      As an anecdotal example; a few years ago I decided I would try to learn Rust (programming language), because it seemed interesting and we had a practical use case for a performant, memory-efficient compiled language. It didn’t really work out for me, tbh. I just didn’t have the time to get very fluent with it enough to be effective.

      Now I’m on a project which also uses Rust. But with ChatGPT and some other models I’ve deployed (Mixtral is really good!) I was basically writing correct, effective Rust code within a week—accepted and merged to main.

      I’m actively using AI code models to write code to train, fine-tune, and deploy AI code models. See where this is going? That’s exponential growth.

      I honestly don’t know if I’d recommend to my young kids programming as a career now even if it has been very lucrative for me and will take me to my retirement just fine. It excites me and scares me at the same time.

      • rolaulten@startrek.website
        link
        fedilink
        English
        arrow-up
        11
        ·
        edit-2
        8 months ago

        There is more to a program then writing logic. Good engineers are people who understand how to interpret problems and translate the inherent lack of logic in natural language into something that machines are able to understand (or vice versa).

        The models out there right now can truly accelerate the speed of that translation - but translation will still be needed.

        An anecdote for an anecdote. Part of my job is maintaining a set of EKS clusters where downtime is… undesirable (five nines…). I actively use chatgpt and copilot when adjusting the code that describes the clusters - however these tools are not able to understand and explain impacts of things like upgrading the control plane. For that you need a human who can interpret the needs/hopes/desires/etc of the stakeholders.

        • model_tar_gz@lemmy.world
          link
          fedilink
          English
          arrow-up
          4
          ·
          8 months ago

          Yeah I get it 100%. But that’s what I’m saying. I’m already working on and with models that have entire codebase level fine-tuning and understanding. The company I work at is not the first pioneer in this space. Problem understanding and interpretation— all of what you said is true— there are causal models being developed (I am aware of one team in my company doing exactly that) to address that side of software engineering.

          So. I don’t think we are really disagreeing here. Yes, clearly AI models aren’t eliminating humans from software today; but I also really don’t think that day is all that far away. And there will always be need for humans to build systems that serve humans; but the way we do it is going to change so fundamentally that “learn C, learn Rust, learn Python” will all be obsolete sentiments of a bygone era.

          • rolaulten@startrek.website
            link
            fedilink
            English
            arrow-up
            7
            ·
            8 months ago

            Let’s be clear - current AI models are being used by poor leadership to remove bad developers (good ones don’t tend to stick around). This however does place some pressure on the greater tech job market (but I’d argue no different then any other downturn we have all lived through).

            That said, until the issues with being confidently incorrect are resolved (and I bet people a lot smarter then me are tackling the problem) it’s nothing better then a suped up IDE. Now if you have a public resources you can point me to that can look at a meta repo full of dozens of tools and help me convert the python scripts that are wrappers of wrappers( and so on) into something sane I’m all ears.

            I highly doubt we will ever get to the point where you don’t need to understand how an algorithm works - and for that you need to understand core concepts like recursion and loops. As humans brains are designed for pattern recognition - that means writing a program to solve a sodoku puzzle.