• grego.sh@programming.dev
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    1 hour ago

    Laugh all you want, I once made something like that work. Not with one prompt of course. More like two days of prompting, but still… I’m sure if I was doing it by hand it would take me a week of work at least

    • JohnEdwa@sopuli.xyz
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      2 hours ago

      It’s possible it reduces the probability of things like wrongly answered stack overflow questions from being used, so it might actually work a bit.

      Kinda like how with image generation, you get vastly better results by adding a negative prompt such as “low quality, jpeg artifacts, extra fingers, bad hands” etc, because the dataset from boorus actually do include a bunch of those tags and using them steers the generation to do thing that don’t have features that match them.

      • skuzz@discuss.tchncs.de
        link
        fedilink
        arrow-up
        1
        ·
        49 minutes ago

        The better way rather than using a vague “make no mistakes” is to feed a template of stylistic preferences like “only var type this, only structures like this, we avoid certain structures or variable types” - as the context window is repeatedly compressed during work, “make no mistakes” probably gets contorted to, “mistakes! make!” then, “MISTAKES!!!”, like “NO, money down!”

        Bonus points if the style is stored in the repo as a template, so when the change is done you can just simply go, “ok, now read that style doc again and fix what you re-f’d up”. Sometimes it’ll even go re-read the style doc itself of its own volition.

        Using an LLM for dev is like directing an intern on 5 espressos to complete a coding task, but dumber.

  • bleistift2@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    108
    arrow-down
    2
    ·
    edit-2
    1 day ago
    1. Rename every file from *.js to *.ts
    2. Set the compiler options
      {
        "checkJs": false,
        "allowJs": true,
        "noEmitOnError": false, // so the compiler compiles code it can’t prove right yet. Reset this after you’re done migrating
      }
      
    3. Install type packages for dependencies that don’t bring type information out of the box, for instance
      npm i -D @types/d3
      
    4. Add // @ts-nocheck to the beginning of every file.
    5. Go through your project file by file, remove the comment from (4) and add types until the errors are gone. And probably fix some errors along the way.

    Abbreviated from “TypeScript Cookbook” by Stefan Baumgartner.

  • trxxruraxvr@lemmy.world
    link
    fedilink
    arrow-up
    38
    ·
    edit-2
    1 day ago

    This is my colleague and I will have to clean up the crap, because he doesn’t understand what’s in his own commits.

    • abbadon420@sh.itjust.works
      link
      fedilink
      arrow-up
      44
      ·
      1 day ago

      Fire him. I’m a teacher and I’ve got some wonderfull and talented students that can’t find a job because companies are affraid to hire juniors because of idiots like him.

      • trxxruraxvr@lemmy.world
        link
        fedilink
        arrow-up
        4
        ·
        15 hours ago

        I’m not his manager. He is a good designer though, so I’m fine as long as he stays with his css and photoshop.

  • shalafi@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    20 hours ago

    Somebody clue me in on Typescript. I’m somewhat familiar with scripting, PowerShell guy here.

    • Feyd@programming.dev
      link
      fedilink
      arrow-up
      11
      ·
      18 hours ago

      Is JavaScript plus static type checking and a few other syntax enhancements. It is much easier to maintain software with static type checking. The typescript compiler outputs JavaScript

    • mercano@lemmy.world
      link
      fedilink
      arrow-up
      7
      ·
      18 hours ago

      It’s a superset of JavaScript. The big add is static typing, reducing the chance of runtime type errors. It compiles to vanilla JavaScript for distribution. Other new features include enums, interfaces, and generics for more type safety.

      • humorlessrepost@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        4 hours ago

        Genuine question: is it really a superset if it’s not still valid javascript? Isn’t it more of an abstraction layer on top of javascript?

        • CookieOfFortune@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          2 hours ago

          In practice people don’t use Typescript as a superset since they have stricter compiler settings, which would make valid JavaScript fail to compile.

        • mercano@lemmy.world
          link
          fedilink
          arrow-up
          2
          ·
          3 hours ago

          Superset means all valid JavaScript is also valid Typescript. (At least, so long as you don’t have compiler setting on that requires all variables to have a type declared.)

    • AugustWest@lemmy.world
      link
      fedilink
      arrow-up
      5
      ·
      edit-2
      18 hours ago

      It’s basically just a programming language based on and inclusive of JavaScript, but with extra features.