Slashdot Mirror


Microsoft's TypeScript Dominates In 'State of JavaScript 2018' Report (stateofjs.com)

This week a Paris-born designer/developer (now living in Osaka) announced the results of the third annual "State of JavaScript" survey of over 20,000 JavaScript developers in 153 countries "to figure out what they're using, what they're happy with, and what they want to learn."

An anonymous reader writes: Among its findings? The number of people who have used Microsoft's TypeScript and said they would use it again has increased from 20.08% in 2016 to 46.7% in 2018, "and in some countries that ratio even went over 50%." More than 7,000 respondents indicated they liked its "robust, less error-prone code" and another 5,500 cited "elegant programming style and patterns." A blog post announcing the results declares TypeScript "the clear leader" among other syntaxes and languages that can compile to JavaScript.

Meanwhile, when it comes to frameworks, "only React has both a high satisfaction ratio and a large user base, although Vue is definitely getting there." Elsewhere the report notes Vue has already overtaken React for certain metrics such as total GitHub stars. "Angular on the other hand does boast a large user base, but its users don't seem too happy," the announcement adds, although later the report argues that Angular's poor satisfaction ratio "is probably in part due to the confusion between Angular and the older, deprecated AngularJS (previous surveys avoided this issue by featuring both as separate items)."

94% of the survey's respondents were male, and "Years of experience" for the respondents seemed to cluster in three cohorts in the demographics breakdown: 27.8% of respondents reported they had 2-5 years of experience, while 28% reported 5-10 years, and 24% reported 10-20 years.

There's a beautiful interactive graphic visualizing "connections between technologies," where a circle's outer red band is segmented based on the popularity of JavaScript libraries, while hovering over each band reveals the popularity of other libraries with its users. But while this year's results were presented on a "dark mode" web page, the survey's announcement concedes that this year's trends didn't include many surprises.

"TL;DR: things didn't change that much this year."

68 comments

  1. 10-20 years experience on... by Anonymous Coward · · Score: 0

    Frameworks that came out about 5 years ago, love it!

    1. Re:10-20 years experience on... by Anonymous Coward · · Score: 0

      I teach Javascript to my high school students, that way they can put it on their resumes. Several have gone on to become full-blown Javascript programmers, I even had one come back and talk to a more recent class. It's a fantastic skill to have.

    2. Re: 10-20 years experience on... by Anonymous Coward · · Score: 0

      Just what we need. More unskilled JavaScript monkeys let out into the wild.

      Good job you did your part.

      Asshole.

    3. Re: 10-20 years experience on... by Anonymous Coward · · Score: 0

      Keep 'em coming. K, plz, thx.

    4. Re: 10-20 years experience on... by Anonymous Coward · · Score: 0

      Hahahaha

    5. Re: 10-20 years experience on... by Anonymous Coward · · Score: 0

      If they're being taught as early as high school, and you still consider them "unskilled JavaScript monkeys", what exactly is good enough for you?

    6. Re:10-20 years experience on... by Anonymous Coward · · Score: 0

      Frameworks that came out about 5 years ago, love it!

      No, typescript is another JavaScript flavor. It is not just a framework. However, it is very similar to original JavaScript with certain features added to it (e.g. constructor, interface, etc.). Not really new though. It is that MS wants to create and have their own flavor in anything they want to. Same old same old story of their business model.

  2. Javascript is like special olympics by Anonymous Coward · · Score: 0

    Javascript is like special olympics. Even if you make best java scripts you are still the retarded.

    1. Re: Javascript is like special olympics by Anonymous Coward · · Score: 0

      Those retards are still faster, smarter and more efficient than you'll ever be. You occupy that special place where nobody can be bothered to even host a competition, because literally everyone on the planet is superior to you in all possible aspects.

    2. Re: Javascript is like special olympics by Anonymous Coward · · Score: 0

      Watch this man! Tap ta ta tap tap. See? A clear as mud function to make text blink

    3. Re: Javascript is like special olympics by Anonymous Coward · · Score: 0

      Octopi have legs not arms I say. 8 legs they have.

      When people ask me: "AC, good sir, how many arms do Octopi have?" I reply, stylishly, with the daring, but correct answer of none, sir. Zero arms. They jave eight legs though.

  3. The Typing of The Scriptures by Quakeulf · · Score: 1

    I've used the JS on and off since 2006. I've been through the JQueries and a few other works of frame, but only recently started looking into the TS. It feels a tiny bit like a merge of .NET and JS to me.

    1. Re: The Typing of The Scriptures by Anonymous Coward · · Score: 0

      Agree it does look kind of like that bull-oney

  4. JS Fail by Anonymous Coward · · Score: 0

    This says more about what's missing in JavaScript that people want than any success for Microsoft. I guess inheritance is useful after all.

    1. Re:JS Fail by Anonymous Coward · · Score: 0

      If you're implying that JavaScript doesn't have inheritance, then that says a lot more about your level of ignorance than it does about JS.

    2. Re:JS Fail by vux984 · · Score: 2

      "This says more about what's missing in JavaScript that people want than any success for Microsoft. I guess inheritance is useful after all."

      Strong typing is the feature that javascript was missing that typescript adds, which is pretty much why TYPEscript exists.

      It dramatically improves the maintainability of code.

    3. Re:JS Fail by Anonymous Coward · · Score: 0

      I have no formal programming knowledge, but I learned javascript so I could build a website for my business. It became an obsession to keep learning more. I used to pick apart jquery scripts and free them of the need for the library. Then I started porting java and openprocessing scripts to javascript. I ported PVector to javascript and made all the functions from openprocessing for my own template.
      stirfry.atwebpages.com/flappynueral.html

      I don't get the need for types. Is it for people who can't follow what all the variables are?

    4. Re: JS Fail by Anonymous Coward · · Score: 0

      If Microsoft recognizes that deficiency and created TS because of it and is proving successful why does that not count as a win for Microsoft?

    5. Re:JS Fail by Anonymous Coward · · Score: 0

      Type checking results in compile time errors and less runtime errors.
      Ideally you want to capture flaws earlier (fail fast) and typescript helps achieve this.

    6. Re: JS Fail by AuMatar · · Score: 1

      If you have to ask that, you've never written a program that wasn't completely trivial in your life

      --
      I still have more fans than freaks. WTF is wrong with you people?
    7. Re:JS Fail by ilsaloving · · Score: 1

      Because you have no formal programming knowledge, you don't know what you don't know.

      There are entire realms of rigour involved with software development that help create quality, self-documenting, maintainable code. Strong types are just one aspect of that, because if you make a type error you will know at compile time, rather than runtime or possibly never.

      It's not a matter of "can't follow what all the variables are". Mistakes can and will be made. Furthermore, as someone more bluntly responded, once you get to more complex and larger code-bases, you *can't* follow what all the variables are because you would have to remember thousands or 10s of thousands of not just basic types but god knows how many classes.

  5. 94% Male by Anonymous Coward · · Score: 0

    94% male out of 20000 people. Cue the alarmists saying that men are preventing women from learning JavaScript.

    1. Re:94% Male by Anonymous Coward · · Score: 0

      Clearly women are to smart to waste their time with all this bullshit.

      Good on them I say.

    2. Re:94% Male by Anonymous Coward · · Score: 0

      Clearly women are to smart to waste their time with all this bullshit.

      *too

      You're welcome.

    3. Re:94% Male by ShanghaiBill · · Score: 1

      94% male out of 20000 people. Cue the alarmists saying that men are preventing women from learning JavaScript.

      Or that men are preventing women from responding to surveys about JS.

    4. Re:94% Male by Anonymous Coward · · Score: 0

      Why don't you pseudo-male bitches stop whining about what females might do. No wonder you faggots are INCEL, GOP. God damn you actual bitches need some real victimstance in your pathetic lives.

    5. Re: 94% Male by Anonymous Coward · · Score: 0

      Good on you, I say.

      I agree.

    6. Re: 94% Male by Anonymous Coward · · Score: 2, Funny

      Why don't you pseudo-male bitches stop whining about what females might do. No wonder you faggots are INCEL, GOP. God damn you actual bitches need some real victimstance in your pathetic lives.

          - Furiously typed on my iMac, at starbucks

    7. Re:94% Male by Anonymous Coward · · Score: 0

      *not

  6. Bad for non developers by Anonymous Coward · · Score: 1

    You used to be able to give a HTML/CSS guy a Photoshop file and they could produce all the static content for the developer.
    Now with all these frameworks and JavaScript ecosystem these people feel overwhelmed and you end up needed someone with a technical background to do something which needs more of a visual eye

  7. TypeScript ans VSCode are an example ... by Qbertino · · Score: 4, Interesting

    ... of MS for once not screwing up open source. They've regained some karma with me. It's a long way to go but a good start. As for JS transpiled client and server-side web development there is no better way to go right now than with TypeScript and VSCode. Tooling and integration is excellent and VSCode is feature rich and really surprisingly performant.
    Both come recommended from yours truly. And it's about 25 years ago I've said something like this of an MS product.

    --
    We suffer more in our imagination than in reality. - Seneca
  8. TL;DR EditorDavid is no editor at all. by Anonymous Coward · · Score: 0

    Executive summaries go UP TOP, EditorDavid. And in fact, that's what the summary is supposed to be. So if you STILL think you need to add a "TL;DR" at the bottom... you just announced to the world that YOU SUCK AS AN EDITOR, EditorDavid.

    1. Re: TL;DR EditorDavid is no editor at all. by Anonymous Coward · · Score: 1

      You must be new here.

      Enjoy your stay. We usually don't take too kindly to strangers.

  9. IMPERSONATING ME AGAIN? apk by Anonymous Coward · · Score: 0

    I've no version 11.0++/3.0++ & gweihir KNOWS u IMPERSONATE me https://it.slashdot.org/commen... c6gunner proves it https://linux.slashdot.org/com... he forgot to SUBMIT as AC & using his registered 'lusrname' instead (because he tried to mock me both BEFORE & after I FAIRLY challenged him to show he's done better work - he had ZERO).

    & NO WAY I'd "cry" like you "playing victim ne'er-do-wells" on /. (TROLL /.ers, not all) OR post on hosts offtopic.

    YOU HELPED ME https://science.slashdot.org/c... (& you quit trying to make me look bad trying to "tell lies" on hosts as "ME" IN YOUR IMPERSONATIONS of me e.g. https://tech.slashdot.org/comm... as regards Intel speculative execution attack? Hosts PREVENT 'EM)

    APK

    P.S.=> I KNOW the 2nd to last link above's KILLING YOU - YOU ACTUALLY HELPED ME getting me to see if hosts stop more than portsmash (& Meltdown + Spectre too) & "lo & behold" - hosts WORK on 'em - U LOSE... apk

    1. Re: IMPERSONATING ME AGAIN? apk by Anonymous Coward · · Score: 0

      Don't you have a shift to work today, taking it in the butt from truckers at the Pilot Travel Center off I-81 near your house?

  10. TL;DR for the TL;DR: by Anonymous Coward · · Score: 0

    It's still an abomination.

  11. I dunno by 93+Escort+Wagon · · Score: 1

    Somehow writing your code in one language, which is then transcompiled into a different language, which is then interpreted at runtime seems like a recipe for unnecessarily introducing security issues.

    --
    #DeleteChrome
    1. Re:I dunno by Anonymous Coward · · Score: 3, Insightful

      Or possibly reducing them as the TS-to-JS compiler can actually check your code for various obvious correctness things?

      You've written a function that only works on integers, how about letting the compiler check you're only feeding integers into it?

    2. Re:I dunno by Anonymous Coward · · Score: 1

      This isn't very different from C being compiled to Assembly, or Java/.NET to Byte Code. A lot of developers seem to be concerned with one form of transpilation, but seemingly not of the other forms that have pre-existed it.

      The only unusual step here is that JS undergoes another step via each browser implementation, and finally into machine code, where as the other languages go directly to machine code from their form.

    3. Re:I dunno by h33t+l4x0r · · Score: 1

      seems like a recipe for unnecessarily introducing security issues.

      I thought that was the goal.

    4. Re:I dunno by Anonymous Coward · · Score: 0

      A transpiler run ahead-of-time by the developer and delivered to the client as JavaScript can't introduce any new security issues that weren't already present in the browser's JavaScript engine.

      There are lots of other issues a transpiler can introduce -- retraining your staff to be comfortable with a new language/workflow, more complex debugging environment as a result of having to translate back one more layer, etc -- but thankfully security issues (assuming we're talking about the site attacking the browser or the user attacking the server) are not one of them.

    5. Re:I dunno by tepples · · Score: 1

      This isn't very different from C being compiled to Assembly

      The difference is that in the case of a C program in a mainstream PC operating system on default settings, the user has the opportunity to make the choice to download and run the program or not. In the case of JavaScript in a mainstream web browser on default settings, the browser publisher and website operator have made this choice for the user.

  12. EEE history, repeating itself. Remember JScript? by Anonymous Coward · · Score: 0

    It was Microsoft's attempt, to embrace, extend and extinguish JavaScript.
    JScript was like JavaScript, but incompatible. Yet dominating, due to IE dominating.
    They were halfway done with the extinguish part, when Firefox started to gain power.

    Looks like they are still being Microsoft, and apart from a slightly different approach, haven't changed at all. Unlike what some blackeyers around here keep repeating. (Cue the "No true Scotsman ...").

  13. Re:EEE history, repeating itself. Remember JScript by Anonymous Coward · · Score: 0

    It was Microsoft's attempt, to embrace, extend and extinguish JavaScript.

    No it wasn't. JScript, just like Javascript, was an implementation of the ECMAScript specification with added extensions.

    JScript was like JavaScript, but incompatible.

    You could just as well say that Javascript was like JScript, but incompatible. They both derived from ECMAScript and both added their own non-standard extensions.

    Looks like they are still being Microsoft, and apart from a slightly different approach, haven't changed at all. Unlike what some blackeyers around here keep repeating. (Cue the "No true Scotsman ...").

    I think the problem is you don't know what TypeScript is, TypeScript is a language that compiles to Javascript. If they added extensions that created non-standard Javascript then TypeScript code wouldn't run in anybody's browser, far from extinguishing Javascript it would actually extinguish TypeScript because it would be completely useless in that nobody would be able to run it. In any case why would you think MS would want to extinguish Javascript?

    Im not sure what your theory here actually is but given you clearly don't know what TypeScript is and don't know the history of JScript/Javascript wrt ECMAScript it just seems like you're very very confused.

  14. The next story is ... by CaptainDork · · Score: 1

    ... Microsoft's TypeScript Dominating Ransomware.

    --
    It little behooves the best of us to comment on the rest of us.
    1. Re:The next story is ... by Anonymous Coward · · Score: 0

      Since everything written in TypeScript is actually sent over the wire as JavaScript...your quip doesn't even make any fucking sense. Learn what it's about before trying to be a smartass.

    2. Re:The next story is ... by CaptainDork · · Score: 1

      Listen up, asshole.

      When God said, "Let there be light." Trump may have thrown the switch but I designed the fucking switch.

      --
      It little behooves the best of us to comment on the rest of us.
  15. A fudge on a kludge by aberglas · · Score: 1

    Adding static typing to JavaScript would be like adding a preprocessor to C that had a proper concept of arrays and did not do pointer arithmetic. Every true C hacker "knows" that pointer arithmetic is essential for performance and would put up with it's removal for a minute.

    Likewise, every true JavaScript hack knows that constraining the type of a variable is a straight jacket, that code should be free, and that TypeScript is the work of the devil.

    In both cases, you are trying to make Java out of something that is not Java. Tying to make a silk purse out of a sow's ear.

    1. Re:A fudge on a kludge by Richard_at_work · · Score: 2

      Google liked Typescript enough to switch mainstream Angular development over to it...

    2. Re:A fudge on a kludge by Anonymous Coward · · Score: 0

      Just shows how the rot is setting in at Google.

      Real men don't need no TypeScript.

    3. Re:A fudge on a kludge by Anonymous Coward · · Score: 0

      Google liked Typescript enough to switch mainstream Angular development over to it...

      I recently learned how to develop full-blown applications using JavaScript. I compared both the native NodeJS without third-party libraries and JavaScript with NPM modules. I much preferred the native approach because it made understanding how JavaScript works much easier and intuitive. By the way, I originally learned to develop computer programmes using BASIC and then 6502 assembly language so I appreciate small efficient code.

    4. Re: A fudge on a kludge by Anonymous Coward · · Score: 0

      You should write your code in asm.js.

    5. Re: A fudge on a kludge by tigersha · · Score: 1

      You did see the âwill not use againâ(TM) part on the typescript chart, right?

      Ok, that is not because of typescript, but the three weeks of Angular 1 I did once left a real bad taste in my mouth.

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
    6. Re: A fudge on a kludge by tigersha · · Score: 1

      I meant the Angular chart, sorry.

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
    7. Re:A fudge on a kludge by Anonymous Coward · · Score: 0

      You're trolling, right?

      Because you've just said the dumbest and most uninformed things I've ever read on Slashdot.

      (Posting this as AC so as not to lose mod points.)

  16. Javascript practices by cordovaCon83 · · Score: 2

    I, for one, welcome our TypeScript overlords. JavaScript continues to work its way deeper and deeper into the tech stack. It was okay playing fast and loose with types at first when the code was relatively simple and straightforward and not hard to debug and didn't cause the whole stack to fail. Not so much any more. Then there's all those JavaScript best practices. My favorite is when I'm told that the code is "self-documenting" (read - no comments, no docs), then I jump into some "self-documenting" code and I'm being fed a value whose type is not clearly defined nor its source clearly documented. Maybe if I'm lucky the default property type and even a default value is defined in the file, courtesy of yet another library. My opinion is such that JavaScript is not scaling well as it gets implemented further and further and that a lot of what I've seen called JavaScript best practices would be called sheer laziness in any other language. TypeScript relieves us of a couple of those woes.

    1. Re:Javascript practices by Anonymous Coward · · Score: 0

      >then I jump into some "self-documenting" code and I'm being fed a value whose type is not clearly defined nor its source clearly documented

      If this is happening, then the code was written by someone who wouldn't be saved by typescript - if they are that bad at programming then they will be making other errors that typescript can't fix. Maybe learn to not be so loose with your variables and you wouldn't need typescript to begin with.

  17. Re:EEE history, repeating itself. Remember JScript by pezezin · · Score: 1

    Cool stoy bro, but in this case:

    - Typescript is open source, with an Apache 2.0 license: https://github.com/Microsoft/T...
    - JavaScript deserves to die in a fire. And thankfully now we finally have WebAssembly.

  18. 50% angular users don't want to use angular again by Anonymous Coward · · Score: 0

    Fascinating points in the survey results:

    - 50% of the developers with Angular experience don't want to use it again.
    - Front end frameworks have a 2 year hype lifespan and then get replaced with something else
    - Cordova has among the highest percent of developers experienced in it which will not use it again

    Business decision - How much will it cost to get decent developers in 4 years to work on a large system built in today's hot front end framework? Will any developers be available?

    Programmer Bob: Hey, lets use cool new framework X, back end technology Y and data store Z
    Manager Zot: Yes, lets add yet another 3 soon to be unknown technologies to that dozens we've added over the last 5 years which no one knows anything about.

    Experienced the pet tools collection at 3 different companies, each struggling to support and extend systems which none of the original developers were still around to work on them.

  19. Re: 50% angular users don't want to use angular a by Anonymous Coward · · Score: 0

    Cordova is probably the most misunderstood framework of all times. People somehow mistake it as a front-end framework to app development.

    Well, it is not.

      Its purpose is to enable smartphone app develpment by JavaScript across any device that supports a webview and some form of native to JavaScript binding. That's really all it does and it is good at it.

  20. Dominate ? or not ? by Vapula · · Score: 1

    According to the stats,
    - Typescript only comes as second, E6 has about two time the number of happy users
    - Typescript and Flow are the only one with a non-negligible part of UNHAPPY users (more than 5% which is 1/9 Typescript user, where most of the solutions have only about 1% unhappy users)
    - it has the biggest proportion of "heard it, would like to learn"...

    As far as I can see the stats, it looks like it's more E6 that dominates the Javascript environment... But with 86% of happy users, it leave very few room for improving it's numbers...

  21. History rewriting much? Read the old news! by Anonymous Coward · · Score: 0

    I was there, kid. ECMAScript didn't even exist back then!

    There were freaking news and lawsuits over it for years, for fuck's sake!

    JavaScript was invented at Netscape. Microsoft just copied it. (Embrace.)
    But JScript was NOT compatible with JavaScript. (Extend.) I had to code for that shit every day. since IE dominated. (Extinguish.) I know.
    ECMAScript was created later, when the ECMA wanted to make JavaScript a standard.
    Since they wanted a clean and nice standard, they added things that were not yet added to JavaScript. (Partially due to backwards compatibility.)
    Then, they got implemented in JavaScript, and much later, after a shitload of fighting and lawsuits hitting the news for years, also in JScript. Partially. So there'd "always" be some annoying remains, just out of childish spite.

    So don't give me that rewritten history bullshit. No matter how much MS creeped up your ass, into your mind. I was literally there. Talking to those guys, sometimes even face to face. It was my day job back then.

    Go Google the news from back then, if you don't believe me.

  22. Oh my sweet dear oblivious kid. by Anonymous Coward · · Score: 0

    You get to know Microsoft, as soon as it comes back to bite you in the ass.
    Open source never stopped Microsoft. Just look at the whole SCO case.
    Or the BSD underpinnings in Windows NT.

    Maybe you need to have your own experiences...
    If only you'd not ruin it for us too in the process...

    . . .

    I agree about JS needing to die in a fire though. :D
    Along with PHP, C++, any BASIC, (ba)sh-likes, XSLT, the write-only parts of Perl, and using C above the low kernel / driver level.

    1. Re:Oh my sweet dear oblivious kid. by pezezin · · Score: 1

      But TypeScript being open source means that, were Microsoft to try to close it, the community would fork it.

      Regarding the languages that deserve to die, why C++? Even with all its crazy complexity, we don't have a language that can fully replace it yet.

    2. Re:Oh my sweet dear oblivious kid. by Anonymous Coward · · Score: 0

      You get to know Microsoft, as soon as it comes back to bite you in the ass.
      Open source never stopped Microsoft. Just look at the whole SCO case.

      But Typescript just compiles to Javascript. Have you actually got a theory here or do you just hate Microsoft without having any understanding of what Typescript is?

      What exactly are you so fearful of here? Do you even know?

  23. Re:EEE history, repeating itself. Remember JScript by itsdapead · · Score: 1

    JScript probably was all about tying people in to Internet Explorer by implementing an almost-but-not-quite Javascript.

    Typescript, on the other hand, really is just a pre-processor for Javascript that gives you 'compile-time' type checking and a bunch of new/proposed ECMAScript features - and then spits out standard Javascript code targeted at whatever version of JS/ECMAScript you want to support. Rather than locking you in to particular browsers, it levels the playing field between browsers, since you can start using bleeding-edge ECMAScript features in your source code now without requiring users to have the latest version of your favourite browser.

    What you won't appreciate unless you've tried it is that the output from Typescript is not just standard JavaScript (of the version you specify) but legible Javascript - not some hyper-optimised, minified mess. They've actually avoided including a minifier/optimiser/obfuscater at the TypeScript stage - you can use one of those on the JS output if you want. If you start worrying about that MS scorpion on your back, you really can just ditch Typescript and start working directly with the JavaScript output.

    Of course, if you wouldn't touch Javascript with a bargepole you probably won't want anything to do with Typescript. I'm sure that there are platform-independent zero-install options for delivering Haskell, Rust and Python apps to non-tech users out there somewhere.

    --
    In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
  24. Re: 50% angular users don't want to use angular a by Anonymous Coward · · Score: 0

    Ahh the 1990s futility of wrapping html/js in a browser control and calling it a non-browser application.