• sajran@lemmy.ml
    link
    fedilink
    arrow-up
    10
    ·
    1 year ago

    Meanwhile here I am thinking about pivoting my career from Python to Rust because I’ve grown to hate Python’s lack of typing. I also religiously write unit test even for minor personal projects.

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

      I’m a longtime fan of python, but honestly I don’t know how I lived with it before type hints. It still feels a little backwards from the original design philosophy of python, and it’s more verbose than other strongly typed languages, but it’s come to feel pretty natural all the same.

      • sajran@lemmy.ml
        link
        fedilink
        arrow-up
        3
        ·
        1 year ago

        Yup, IMO Python is so much better with type hints that I can’t help but think they should just be part of the language. Which is kinda stupid because of the “original philosophy” as you said. But on the other hand things like third party static type checkers and type stubs, or just untyped libraries can be a real PITA .

        Also, I acknowledge that the lack of typing can be an advantage for some people in some circumstances, even though I use typing even in the simplest and shortest scripts myself. Why would I want to figure out the types every time I look at the function if I can just write it down?

    • russ@programming.dev
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      1 year ago

      I suppose i should at least caveat by saying i don’t by any means advocate for all dynamic langs over statically typed, and i agree types/unit tests are necessary for most languages. So please don’t make me write python over rust!

      You can get the benefits of types/unit-tests via static analysis on a per-function basis with clojure and a library like malli, and for me that hits a minimalist sweet-spot.

      • jvisick@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Can you clarify what you meant about types, then? Because I’m not sure I really understand your point there.

        • russ@programming.dev
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 year ago

          Sorry, I liked this hot-take setup and I’m shooting from the hip a bit. Maybe i actually mean objects/classes, not types? Can’t everything just be a bag of key-values, like in clojure?

          I have been building mostly prototypes (games and wm-tools) for a year, so most of my context is getting things working to see if they are useful rather than locking them down.

          I thought about my argument a bunch, and while i have alot of complaints, it all sounds like non-specific whining to me, so i’ve decided to give up.

          types and unit-tests have their place. Fine! I admit it! i was pushing a hot-take I’ve had on a few occasions, and I’m glad to see this programming community is alive and well! If you need me I’ll be in my clojure repl.

          • sajran@lemmy.ml
            link
            fedilink
            arrow-up
            2
            ·
            1 year ago

            It’s also important to acknowledge how different is prototyping from writing production code which has to be extendable and maintainable for years by multiple developers.

            Your take isn’t even very hot when we are talking about prototyping 😉