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?

    • hswolf
      link
      fedilink
      11 year ago

      I strongly disagree with this, web dev is great because you can serve hundreds of different devices with the same code, I can’t imagine developing native solutions to each one, yikes

  • Hemingways_Shotgun
    link
    fedilink
    English
    10
    edit-2
    1 year ago

    TypeScript is the new DOC format.

    Create a language/format. Spend all of your effort making it ubiquitous until it becomes the default “standard” in the workplace. Then charge a metric fuck-tonne for the “official” software that makes use of it.

    It’s how Office became their cash cow. They create the proprietary doc format, get everyone using it, and once it’s embedded in the workplace, charge exorbitantly for the software that uses it.

    Once they get everyone using TS as a new industry standard, they’ll find a way to make people have to pay for it. Mark my words.

    • @[email protected]
      link
      fedilink
      101 year ago

      I honestly think this is fearmongering. Yes, Microsoft is a shitty company that has done shitty things, but:

      • the Typescript repo is licensed with Apache 2.0, which means the community can always fork it if they do bad/evil stuff
      • there are competing type checkers in the works, which would fully remove any Microsoft influence from a developer using Typescript
      • there already are competing compilers which are broadly used

      The only real option they have to do what you’re describing is to implement new features that could be used for monetizing it - there would be some inertia regarding community forks. But even then I can’t come up with any monetization model that could make sense. Do you have a specific example in mind?

      • Hemingways_Shotgun
        link
        fedilink
        English
        21 year ago

        I hope you’re right. But my trust level for corporations is somewhere between 0 and 0.1

    • afox
      link
      fedilink
      41 year ago

      But it’s so sexy. Strongly typed language? *Scoff

  • @[email protected]
    link
    fedilink
    121 year ago

    In a small company with a non-complex product, there is a chance that TS creates more slowdowns than not.

    In a large company with multiple cooks in the kitchen and a complex product, I’m personally of the mindset that there is substantial gain from typescript. I’ve had coworkers tell me it’s bullshit, and then I do the smallest lift possible to convert and the amount of bugs it reveals are insane.

    Is it necessary? No, probably not. But unless everyone’s a 10/10 dev working on the world’s simplest product, why not just do it and enjoy the benefits?

    INB4 JavaScript blahblah, yeah I’ve added type hints to pure JS projects too and discovered bugs. At this point I don’t get it. Typical resistance I get is that it’s too prescriptive and lacks JS’s dynamic nature - well, fuck off, I don’t want to read through 200+ lines of code where you’re changing types and shit on me willy-nilly.

  • Cyclohexane
    link
    fedilink
    61 year ago

    The only valid argument against typescript is that it is too similar to vanilla JavaScript. It does not go far enough. We need type systems like Ocaml’s.

    I suppose you can also complain about needing a build step, but I find this silly. There are so many tools that make this easy or automatic.

      • Cyclohexane
        link
        fedilink
        21 year ago

        I won’t remember everything, but one very important things comes to mind:

        in Typescript, it is very difficult to assert on a type (let me know if you’re not familiar with what I mean by this and I can explain further). In OCaml, this is trivial using pattern matching.

        Why would you need that? The idea of a type system is it doesn’t let you apply a function on a structure without the structure being of the right type. But the lack of type assertion in TS makes people follow hacky workarounds, which defeat the purpose of type system.

        There are a couple of other things, like immutable types by default, automatic tail call optimization, functors enabling higher kinded types, etc.

        Also in ocaml, you don’t have to annotate any types on any variable or parameter, and you’ll still get full type protection.

        • @[email protected]
          link
          fedilink
          2
          edit-2
          1 year ago

          Oh, so what you’re describing is strong typing. I thought it was a unique feature of Ocaml. But in reality, any strong-typed language will have this as well.

          And yeah, Typescript merely “suggests” typing, and it will allow you to build the project even if you ignore the type errors. A build system refusing to, well, build, if there are typing errors usually takes care of this, but again, the dev team may as well not implement this.

  • @[email protected]
    link
    fedilink
    61 year ago

    I don’t think your manager is sane.

    Why on earth would we move back to JavaScript at this point.

    Disclosure: I am a TypeScript dev and my boss is fully invested in Microsoft at this point. We use C# .Net and we use Azure and Teams.

  • @[email protected]
    link
    fedilink
    English
    101 year ago

    I don’t see it dying from my perspective. Its only been getting better and better. The only thing I could see displacing it in my org is maybe Rust due to WASM proving a transition path.

    We use TS on the back end to leverage our teams existing skill set and libraries we’ve built up.

    I know it’s a meme to use “the next best thing” in the ecosystem, but we’ve been really happy with the newish Effect library + Bun runtime. Effect is like a merger of the older fp-ts/io-ts libraries (same author works on both) with Zio from the Scala ecosystem. It vastly simplifies the former and the new stuff with dependency injection and defect management is refreshing. With the Bun runtime, we see a 15x faster startup time (great for dev). Its halved the RAM requirements in prod. We don’t even need to transpile… We still do for prod to tree-shake dev-only code to ensure its not available in prod, but deploying to dev is FAST.

    • I Cast Fist
      link
      fedilink
      21 year ago

      20 years into the future, once WASM has been widely adopted, a browser within a browser will have been created, with its own equivalent javascript, which will then lead developers to create a WASM equivalent for a web browser running in a WASM browser, running on a bloated OS.

    • @[email protected]
      link
      fedilink
      11 year ago

      We use TS on the back end to leverage our teams existing skill set and libraries we’ve built up.

      I know you said this, but I’m still curious why not just something like Go, which I was able to basically learn in 3 days- just coming from a mostly JS and C++ background

      • @[email protected]
        link
        fedilink
        English
        21 year ago

        I’m coming from a Haskell/Scala background. This job just pays more. TS has been “good enough” for types. I don’t think I could be as effective without them at this point.

      • @[email protected]
        link
        fedilink
        21 year ago

        As a Go dev, its simplicity is arguably taken too far. For example there are no union types or proper enums

        • @[email protected]
          link
          fedilink
          31 year ago

          Yeah. I started as a C++ dev, fell in love with Go, then ended up on Rust.

          Felt like a nice middle ground of “It’s got the types I need, but it feels good to dev on”

          I really did enjoy using go for smaller projects though, would do so again.

        • @[email protected]
          link
          fedilink
          11 year ago

          That’s fair, I know they’re actively rejecting inheritance, but I wish you could make like a prototype. Like say, a function can take a struct with these fields. Which yeah an interface can do but is much more clunky

  • @[email protected]
    link
    fedilink
    281 year ago

    When anyone in a professional setting says they don’t like having a mega corp supporting something I lose a bit of respect for their opinion tbh.

    Yes we all know mega corps suck.

    But if you’re using anything in a professional production environment that is meant to last in the long term this is 100% what you want.

    • @[email protected]
      link
      fedilink
      61 year ago

      Some of us are old enough to remember the browser wars and EEE, so I definitely understands not wanting to be sucked into some mega corps eco system with future lock-ins. Often you can’t do anyhhing else, but that doesn’t mean it doesn’t suck.

      • @[email protected]
        link
        fedilink
        11 year ago

        Same. Writing sites that relied on IE was always a stupid decision and kinda invalidated the point of writing a web app.

        I think most people knew that and the managers fucked up big time pushing it. At least in my experience.

        But that’s very different to choosing a programming language.

    • @[email protected]
      link
      fedilink
      11 year ago

      I mean it is fair to say sometimes it depends on the mega corp, if the whole thing relies on one corp if they’re funding dries up then the whole project dies. But I also don’t really think typescript would die without Microsoft now

  • tiredofsametab
    link
    fedilink
    81 year ago

    I’m not a FE guy so don’t write it much, but I’d always rather use typescript if I had to use anything like JS. Our FE guys use typescript at my current job and my previous one as well

  • TehPers
    link
    fedilink
    English
    171 year ago

    Imagine changing your file extension from .js to .ts and calling it a fad. JS is TS. The difference is that TS does more (by actually doing stuff before runtime as a static analyzer, similar to eslint). If TS is a fad, then modern web dev is a fad.

    Which, to be fair, it is.