I was talking to my manager the other day, discussing the languages we are using at $dayjob. He kind of offhandedly said that he thinks TypeScript is a temporary fad and soon everything will go back to using JavaScript. He doesn’t like that it’s made by Microsoft either.

I’m not a frontend developer so I don’t really know, but my general impression is that everything is moving more and more towards TypeScript, not away from it. But maybe I’m wrong?

Does anyone who actually works with TypeScript have any impression about this?

  • cbarrick@lemmy.world
    link
    fedilink
    English
    arrow-up
    16
    arrow-down
    5
    ·
    9 months ago

    Dynamic typing is not a fad.

    Python is older than Java, older than me. It is still going strong.

    • Dark Arc@social.packetloss.gg
      link
      fedilink
      English
      arrow-up
      9
      arrow-down
      1
      ·
      edit-2
      9 months ago

      Python also has a statically typed option these days.

      Edit: Previously said “strongly” instead of “statically”

          • FooBarrington@lemmy.world
            link
            fedilink
            arrow-up
            2
            ·
            9 months ago

            Ah, gotcha, thanks! I’d have loved a strongly-typed option.

            The static typing system is slowly getting there, but many useful Python patterns can’t be expressed yet. You can, for example, write a function that appends an item to a generic tuple - but you can’t concatenate two tuples. I really hope they keep expanding on the system!

              • FooBarrington@lemmy.world
                link
                fedilink
                arrow-up
                2
                arrow-down
                1
                ·
                9 months ago

                No:

                $ python 
                Python 3.10.13 (main, Jan 28 2024, 03:02:00) [GCC 13.2.1 20230918 (Red Hat 13.2.1-3)] on linux
                Type "help", "copyright", "credits" or "license" for more information.
                >>> def handle_foo(value: list[int]) -> bool:
                ...     return 42
                ... 
                >>> print(handle_foo(False))
                42
                
                • Sylveon@lemmy.blahaj.zone
                  link
                  fedilink
                  arrow-up
                  2
                  ·
                  9 months ago

                  I haven’t used Python since around the time when type hints first became a thing so I might be completely wrong here, but isn’t this because Python just generally ignores type hints? If you ran a static type checker like mypy over this it would complain right?

                  Also, if you actually did anything with the list that you couldn’t do with a bool (e.g. len(value)), it would throw an error too because Python is actually pretty strict about types, just only at runtime. That’s why it’s usually considered to be strongly typed, although people don’t seem to agree what exactly that’s supposed to mean.

    • hascat@programming.dev
      link
      fedilink
      English
      arrow-up
      7
      arrow-down
      1
      ·
      9 months ago

      This just blew my mind. I had always assumed Java was older. I started writing hobby projects in Java in the 90s. I don’t think I heard about Python until the early 2000s.

    • kameecoding@lemmy.world
      link
      fedilink
      arrow-up
      4
      arrow-down
      19
      ·
      9 months ago

      “Strong”… how many actual projects run on python?

      Half of the internet ( backend) runs on java, banking, your government systems, etc.

      It’s not a fad, it’s just unusable for anything other than research project and small time scripting, which to be fair, it’s what it’s designed for.

      • cbarrick@lemmy.world
        link
        fedilink
        English
        arrow-up
        12
        ·
        9 months ago

        You have no idea. Python (and Ruby) are used widely in the industry. Large parts of YouTube are written in Python, and large parts of GitHub are written in Ruby. And every major tech company is using Python in their offline data pipelines.

        I know of systems critical to the modern web that are written in Python.

        • kameecoding@lemmy.world
          link
          fedilink
          arrow-up
          2
          arrow-down
          19
          ·
          9 months ago

          With how shit youtube is I am not sure you made a great case for python mate.

          And every major tech company is using Python in their offline data pipelines

          Thats a meaningless statement, ETL tools can execute python as part of a multi step process and then yeah they use python in their data pipeline, but the ETL tool that orchestrates it is which is the actual value add software is not written in Python it’s written in Java, I know this for a fact…

          • RecluseRamble@lemmy.dbzer0.com
            link
            fedilink
            arrow-up
            19
            arrow-down
            1
            ·
            edit-2
            9 months ago

            With how shit youtube is I am not sure you made a great case for python mate.

            I’m not good with names about logical fallacies but that sure is one. You asked for “actual projects” and YouTube is one of the biggest and most popular platforms out there. That you personally dislike it is irrelevant.

            ETL tools can execute python as part of a multi step process and then yeah they use python in their data pipeline, but the ETL tool that orchestrates it is which is the actual value add software is not written in Python it’s written in Java

            So what’s your point, that interpreted languages don’t count because they’re interpreted? Why stop there? It’s the actual C compiler that was used to compile the JRE that brings the value here, so your ETL tool doesn’t count.

            You’re either a troll or a joke.

            • kameecoding@lemmy.world
              link
              fedilink
              arrow-up
              2
              arrow-down
              13
              ·
              9 months ago

              If you dont know the difference between software and script I am not sure I can explain it to you…

              • RecluseRamble@lemmy.dbzer0.com
                link
                fedilink
                arrow-up
                9
                arrow-down
                1
                ·
                9 months ago

                That distinction is not relevant at all in this discussion.

                But hey, I think that’s one I know: should count as a strawman.

                • kameecoding@lemmy.world
                  link
                  fedilink
                  arrow-up
                  2
                  arrow-down
                  6
                  ·
                  9 months ago

                  How is it not relevant? This is my comment you are replying to

                  It’s not a fad, it’s just unusable for anything other than research project and small time scripting, which to be fair, it’s what it’s designed for.

                  • RecluseRamble@lemmy.dbzer0.com
                    link
                    fedilink
                    arrow-up
                    5
                    ·
                    9 months ago

                    I’m sorry, apparently I missed that because of your dismissal of YouTube.

                    To make up for it I have another small scripting example for you: the Instagram backend runs on Python, too.

      • idefix
        link
        fedilink
        arrow-up
        9
        ·
        9 months ago

        I work in investment banking environments (calculations). Python is everywhere. Java and C++ as well.

        • kameecoding@lemmy.world
          link
          fedilink
          arrow-up
          2
          arrow-down
          13
          ·
          9 months ago

          Yeah calculations, not actual software… how is this hard to understand… you don’t write long lived, stable software that multiple developers work on that needs to do real work in python