I keep seeing posts of some drama with typescript. What happened?

  • yyyesss?@lemmy.world
    link
    fedilink
    arrow-up
    60
    ·
    1 year ago

    In my experience, that means they’re doing it wrong.

    I find that Typescript adds a lot of joy to my development experience. And I haven’t need any “gymnastics” since I invested in learning Typescript.

    • Veraxus@kbin.social
      link
      fedilink
      arrow-up
      14
      ·
      edit-2
      1 year ago

      Same, but I come from a C++ background so strong typing is in my blood. This sounds like people who write bad code complaining because the language/transpiler won’t let them write bad code.

      • Bipta@kbin.social
        link
        fedilink
        arrow-up
        4
        ·
        1 year ago

        That doesn’t seem a fair assessment at all. In strongly typed languages the types are part of the base syntax and usually not onerous, but rather straightforward to write. In TypeScript they’re tacked on in a way that makes quite a lot of work for developers while also making the code difficult to read and reason about (although good syntax highlighting certainly helps.)

    • AnUnusualRelic@lemmy.world
      link
      fedilink
      arrow-up
      7
      ·
      1 year ago

      I don’t do java- or typescript but that guy’s comment definitely translates as “I want to keep on writing messy code and you can’t force me to learn to clean my shit up”.

    • Cratermaker@discuss.tchncs.de
      link
      fedilink
      arrow-up
      4
      ·
      1 year ago

      I’ve heard it’s more of a problem on the library side. But I’ve personally had pains with ts when working with quirky features such as enums or discriminating unions. Part of the problem in my opinion is that the types all disappear at runtime, so you lose a lot of the joy of a statically typed language. For example, an API can pass you unexpected garbage and all your ts type wrangling helps not at all.

      • FooBarrington@lemmy.world
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        Well yes, if you don’t take care of properly typing external data, you won’t have it properly recognised. But that’s the same in any language that e.g. consumes external JSON data. Use the tools that Typescript gives you (like type guards) or the tools the community has built (like io-ts).

      • jpeps@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        For your API issue, have you tried using type guards or something more sophisticated like Zod?