• The type checker is actually pretty smart and can handle a lot of weird use cases, especially in strict mode (if you mark everything as Any type, that’s on you). The fact that the underlying language is very dynamic can be both good and bad. It’s good because you can be flexible when you need to be, but it also won’t prevent you from writing really shitty code, which lends it its reputation.

    I don’t know if you’ve ever tried writing frontends in Java, but it is terrible, especially if you want to make dynamic and accessible UIs. You don’t use a power drill when you need to hammer a nail.

    • atyaz@reddthat.com
      link
      fedilink
      arrow-up
      2
      arrow-down
      10
      ·
      1 year ago

      My comment was obviously devoid of any nuance, I am on programmer humor after all. I actually do use typescript, but I think fixing issues in application code that isn’t used by other code is a waste of time. I also think there are lots of advantages of a very dynamic language, like usable REPLs and much easier debugging. We can take these advantages way further by embracing the dynamic nature of javascript, like how lisps do it for example. But instead, everyone is happy going down the route of turning it into another c# (nothing against c# but we don’t need all languages to be c# and java).