• tyler
    link
    fedilink
    arrow-up
    25
    arrow-down
    4
    ·
    3 days ago

    Article written like it’s someone that just discovered types even though a majority of the programming world said to use types for decades…

    Also I completely disagree with the assertion that you should write everything including backend in typescript in order to share types. You should be using a schema and generating your types if you are writing large systems. That way any service that uses your APIs can generate the types as well and isn’t locked in to your language.

    And please dear lord stop writing backend code in JavaScript or typescript or any scripting language.

    Other than that, yes, use types. They literally do exactly what every proponent of types has said they do for years. Turns out it’s a huge benefit!

    • bitcrafter
      link
      fedilink
      arrow-up
      12
      ·
      edit-2
      3 days ago

      Article written like it’s someone that just discovered types even though a majority of the programming world said to use types for decades…

      Yeah, how dare the author discover something that they did not know before and get so excited about it that they wanted to write an article about what they learned! That is a completely inappropriate thing to do with a personal blog.


      Edit: Finally figured out how to link the image to the original comic. (I needed to embed the image link inside of another link.)

      • tyler
        link
        fedilink
        arrow-up
        3
        ·
        3 days ago

        They mention their company numerous times over, sure doesn’t seem like a personal blog. It seems like a company discovering something that has been documented over and over again.

  • livingcoder
    link
    fedilink
    arrow-up
    3
    ·
    2 days ago

    In Rust, using the Option and Result types make the general flow of the application much easier to organize, make modular, and reuse.

  • Slotos@feddit.nl
    link
    fedilink
    arrow-up
    18
    arrow-down
    1
    ·
    3 days ago

    I can often implement 80% of a new feature without ever running the code.

    I really love how they then go and invent their own TDD acronym to justify this. Types are proofs, and they replace a whole category of borderline superficial tests with useful assertions, but claiming that you implement a <random number>% of a feature when you haven’t once verified it is… a reason I regularly cuss at code and remain employable. Keep it up.

    • SwordInStone@lemmy.worldOP
      link
      fedilink
      arrow-up
      16
      ·
      3 days ago

      They probably mean “not running” as “I’ve written the types and the static type checker is not giving an error”

  • traches@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    3 days ago

    I’ve tried to use that NonEmptyArray type in the past and it was a real pain in the ass getting the type checker to believe that no, for realsies this array is not empty I just checked the length two lines ago. Is there some trick I don’t know or has it gotten smarter about that in recent updates?