• CompostMaterial@lemmy.world
    link
    fedilink
    English
    arrow-up
    107
    arrow-down
    10
    ·
    8 months ago

    You got it admit, it is a good suggestion. It just wasn’t the right one. But it is trained well enough to correlate left and right together. Since those are very commonly associated together it is certainly a logical choice.

  • voxel@sopuli.xyz
    link
    fedilink
    arrow-up
    78
    arrow-down
    5
    ·
    edit-2
    8 months ago

    don’t get the negativity towards copilot in other comments.
    it’s a really smart autocomplete, and this is exactly what i wanted for the past 5 years.
    (yeah it’s not going to replace programmers or whatever people’s exaggerated opinions of it are)

    wanna quickly create a wgpu bind group?
    let texture_bind_group = <tab> <tab> and it’s smart enough to understand the context and pull in texture and texture sampler that are already defined as local variables.

    too lazy to type this obvious thing in?
    (like of course the next opcode islet op = self.fetch();) just press tab and move on with your life.

    wanna quickly refactor something?
    select, ask CP Chat to “replace all if statements with match”, check if it’s correct and click confirm (it will even show git-style diffs, so it’s hard for something unexpected to slip in)

    it’s not perfect, and it’s suggestions do not match your intention like 50% of the time but when they do match or your intention is REALLY obvious (like you already wrote a clear and concise variable name and need to complete the value), you’re a single keypress away from completing those 2 lines of code

    It’s not a total deal breaker but it’s definitely very useful. (especially for me, because of my very short attention span. unless i can quickly complete a thing I’m currently working on in less than a minute i will forget about the next 10 things I was thinking of doing)

    also i don’t believe the price is justified, but it’s free for students so of course I’m gonna use it.

    (you just need to verify your student email and upload a photo of your student id on education.github.com, and you get a free gh copilot subscription, gh pro account, priority support and promos on loads of services like heroku etc while you’re a student)

    • evatronic@lemm.ee
      link
      fedilink
      English
      arrow-up
      28
      ·
      8 months ago

      I’ve been using it a lot lately in the day job.

      My experience has been it’s close but wrong often.

      It shines when I am doing the same thing for 20 variables, but then I should be using a loop instead and copilot won’t go there.

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

      too lazy to type this obvious thing in?

      This has been the thing for me. I get really bored and lose focus when doing all the obvious repetitive stuff. And the obvious stuff is the stuff I find copilot does best. For anything that requires thought I’m engaged. Those are the fun parts of the job. It lets me do more of the fun part.

      The one major downside that I’ve found is that sometimes I just want to tab complete a long variable/function name, and because of copilot i dont have “old style” tab completion anymore. (I could definitely still handle this myself, but i haven’t)

      edit: this all to say that I don’t use copilot to write code that I don’t know how to write, I use copilot to write code that I’ve written 1000 times before and don’t want to write again. Copilot does a good job of looking through all the open files for context to help make sure the suggestions actually fit into the codebase’s pre-existing style.

    • oldfart@lemm.ee
      link
      fedilink
      arrow-up
      9
      ·
      7 months ago

      What’s CP Chat? Im a bit afraid to type that into a search engine but it seems to be what I’m missing in my Copilot-assisted flow. It’s a great autocomplete but sometimes refactoring would be useful too.

      • voxel@sopuli.xyz
        link
        fedilink
        arrow-up
        6
        ·
        edit-2
        8 months ago

        well I’m using lower-ish-level stuff like wgpu a lot, so there’s a lot of repeated code in my codebase with only small variations, but I can’t really encapsulate it into anything since all of my pipelines are completely different and have different requirements (it’s basically already as encapsulated as it gets without limiting freedom)

  • Sotuanduso@lemm.ee
    link
    fedilink
    English
    arrow-up
    40
    arrow-down
    1
    ·
    8 months ago

    I was surprised when I made attackPower and it suggested defensePower next. It was then that it sunk in that the autocomplete was AI.

      • Sotuanduso@lemm.ee
        link
        fedilink
        English
        arrow-up
        12
        ·
        8 months ago

        Well, LLMs are, at least. But also, autocomplete is already AI, so really LLMs are just glorified AI. And that checks out, they are the ones that get all the glory*. Everything else is just spooky algorithms.

        *Except for walking robots and stuff like that.

      • Emmie@lemm.ee
        link
        fedilink
        arrow-up
        5
        arrow-down
        3
        ·
        edit-2
        7 months ago

        AI of today is a marketing slogan. Well, same as AI of yesterday. There is so much AI around us but not an ounce of intelligence.

    • dan@upvote.au
      link
      fedilink
      arrow-up
      4
      ·
      8 months ago

      Glorified autocomplete

      That’s what I need most of the time, though. I don’t see these AI things as replacing programmers or writing large chunks of code. I just see them as an improvement over the autocompletion/IntelliSense features we’re all using already.

    • holgersson@lemm.ee
      link
      fedilink
      arrow-up
      4
      ·
      8 months ago

      Autocomplete and Clippy havent translated a script from one language into another for me without major errors yet.

    • kbin_space_program@kbin.run
      link
      fedilink
      arrow-up
      6
      arrow-down
      7
      ·
      8 months ago

      Clippy was occasionally useful as it could offer shortcuts you didn’t necessarily know about.

      This is just bad autocomplete

      • EatATaco@lemm.ee
        link
        fedilink
        English
        arrow-up
        8
        ·
        8 months ago

        I was lucky enough to get in on my company’s beta test for copilot.

        When I hear people say it’s bad, all that tells me is that they are either completely ignorant and have never really used it, or they aren’t good at learning how to use new tools.

        • kbin_space_program@kbin.run
          link
          fedilink
          arrow-up
          3
          arrow-down
          3
          ·
          edit-2
          8 months ago

          The example shown is setting a timer, then copilot suggests timeright value.

          Contextually, it is bad autocomplete.

          In practice, chatgpt4 is incapable of producing code to my coding standards. Edit: to clarify, its incapable of doing that in a timely enough manner that it saves me any time.

          • FaceDeer@fedia.io
            link
            fedilink
            arrow-up
            6
            arrow-down
            1
            ·
            7 months ago

            The example shown was specifically selected because it’s funny, not because it’s representative.

            The fact that you called the tool “chatgpt4” suggests you’re not experienced with copilot. They’re not the same thing even if they’re using similar LLMs as a component.

            • kbin_space_program@kbin.run
              link
              fedilink
              arrow-up
              2
              arrow-down
              1
              ·
              7 months ago

              I know its not chatgpt4, I never said it was?

              That paragraph is on its own because it is a different topic. In this case I was using my own experience experimenting with chatgpt4 as to why I won’t be using it any time soon.

    • dariusj18@lemmy.world
      link
      fedilink
      arrow-up
      12
      arrow-down
      1
      ·
      7 months ago

      If anything this is a great example of why that could happen. Simple leaps of logic without context.

      • Emmie@lemm.ee
        link
        fedilink
        arrow-up
        2
        arrow-down
        5
        ·
        edit-2
        7 months ago

        I am just making fun of all those AI doomsayers on Reddit. It’s nowhere close enough to be even called such. It’s just a mindless algorithm, a tool. Math operation. Are calculators smart? Well yes from a certain point of view.

    • humorlessrepost@lemmy.world
      link
      fedilink
      English
      arrow-up
      43
      arrow-down
      18
      ·
      8 months ago

      This wasn’t made for programmers. It was made for middle management who think the reason the ticket is taking so long is because the devs can’t type more words per minute.

        • EatATaco@lemm.ee
          link
          fedilink
          English
          arrow-up
          19
          arrow-down
          4
          ·
          8 months ago

          The other poster is either speaking from a place of ignorance, as they’ve never really used it, of they just aren’t smart enough to learn how to use a new tool.

          As much as middle management sucks, devs blaming management for their own inability to learn is almost on the same level.

    • katy ✨@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      18
      arrow-down
      3
      ·
      8 months ago

      i mean i still think tab/auto completion is good to save time.

      the problem is when people become reliant on it and just have it write entire chucks of code without going through it and checking it or changing it after the baseline is done.

      • fossyou@lemm.ee
        link
        fedilink
        arrow-up
        5
        arrow-down
        2
        ·
        8 months ago

        Then that wouldn’t exactly be a time saver, but rather time-consuming? Paradox

        • katy ✨@lemmy.blahaj.zone
          link
          fedilink
          arrow-up
          7
          arrow-down
          3
          ·
          8 months ago

          i mean finishing a variable declare with a tab is pretty convenient.

          as is autocompleting an html5 structure.

          • Gamma@beehaw.org
            link
            fedilink
            English
            arrow-up
            2
            arrow-down
            2
            ·
            8 months ago

            Yeah, usually it’s pretty good autocomplete. Definitely makes my coding faster (and highlighting a chunk of SQL and asking it to modify it in plain English is magic)

      • TherouxSonfeir@lemm.ee
        link
        fedilink
        arrow-up
        6
        arrow-down
        5
        ·
        8 months ago

        Autocomplete is fine, but do we need “AI” to figure out left and right?

        And I agree, chunks of code are bad.

    • Tiefling IRL@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      10
      arrow-down
      3
      ·
      edit-2
      8 months ago

      Stuff like this is really useful when variable names are annoying, or when you have to repeat the same monotonous pattern over a large batch of code.

      My favorite use of AI in code so far has been refactoring deprecated feature flags. “Replace enableXYZFeatureFlag with true and optimize the code”. Bam, 1-2 hours’ worth of crunch work solved in minutes.

      • Kache@lemm.ee
        link
        fedilink
        arrow-up
        11
        arrow-down
        2
        ·
        8 months ago

        If it takes 1+ hours of work to remove a feature flag branch in an area of code, I wouldn’t trust the correctness of anything the AI writes and would be super skeptical about anything the humans had written.

        • Tiefling IRL@lemmy.blahaj.zone
          link
          fedilink
          arrow-up
          6
          ·
          edit-2
          8 months ago

          It takes a long time because it hits a lot of files, not because it’s logically complex. Also, that’s why unit and integration tests exist.

      • BurningnnTree@lemmy.one
        link
        fedilink
        English
        arrow-up
        2
        ·
        8 months ago

        Can you please describe how you do this? I thought Github Copilot can only make changes to the currently open tab? It’s been a few months since I’ve used it, and I’ve only used the Visual Studio version, which I think isn’t as good as the Visual Studio Code version. Has Copilot already gotten to the point where you can tell it to make changes to an entire codebase?

        • Tiefling IRL@lemmy.blahaj.zone
          link
          fedilink
          arrow-up
          3
          ·
          edit-2
          8 months ago

          I do go file by file, but I just copy and paste the same query into each. It also gives me a chance to do a quick review before moving on. It’s still a manual process but it’s a HELL of a lot faster than manually refactoring.

          (I can’t give too many more details though since I use proprietary software that isn’t public facing)

    • Oinks@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      7
      arrow-down
      1
      ·
      7 months ago

      You could say that about any kind of autocomplete. Why would people install snippet plugins into their vim/emacs? Sure you can just type everything by hand but it’s just more convenient.

      Personally I find these kinds of inline AI suggestions make a more convincing use case than trying to prompt engineer a Chat based LLM and diverting your attention to phrasing specifics instead of the actual problem space.