Culture / Development

This Week in Programming: Nitpicking Angles in the State of JavaScript 2019

20 Dec 2019 1:00pm, by

Another survey, another opportunity to point out all the ways everything is wrong. This week’s entrant to the category of surveys everyone on the Internet is finding fault with is the State of JavaScript 2019, an annual survey done by Sacha Greif and Raphaël Benitte. On the technical-distinction end of the survey, there appears to be one particular issue that holds water for a lot of observers — that of the distinction (or lack thereof) between Angular and AngularJS.

There is a big difference between the original AngularJS and the subsequent Angular 2 and Angular 4 JavaScript frameworks. AngularJS was originally released by Google as an open source, JavaScript-based framework back in 2009 for dynamic front-end web app development, whereas Angular 2 and the backward-compatible follow-up Angular 4 are both open-source, TypeScript-based front-end web application platforms. While Angular 2 and Angular 4 are now commonly referred to as merely “Angular,” many point to this lack of distinction in the survey as one that leads to an unfair skewing of the numbers.

In a GitHub pull request on the topic, developer Suguru Inatomi writes that “It’s unfair because 1) The name convention about Angular/AngularJS is not well-known yet. 2) Many developers have experience in years ago with AngularJS-only 3) So, it is natural that “Used it > would avoid” raises. 4) Even if they have experiences with Angular, it is not clear which Angular the survey asks about.”

Looking at the survey numbers around Angular, The New Stack analyst Lawrence Hecht points out that there was a big drop in “people that have used Angular before but would not use it again” between the 2017 and 2018 State of JavaScript surveys, with the number jumping from 10% to 40% — a jump that correlates with the timing around the introduction of the term “Angular” as referring to Angular 2, and not AngularJS.

At the same time, Hecht points out, the 2019 StackOverflow survey and JetBrains survey demonstrate the effect of wording on the end results. 23% of JavaScript developers in the JetBrains survey regularly use Angular, which is similar to the 22% that use “Angular and would do so again” found in the State of JavaScript report. But JetBrains also asked about AngularJS, with 47% of AngularJS users also said they use the newer Angular. Overall, the total “Angular and/or AngularJS” is similar to that reported in the StackOverflow study.

Given the correct context, Hecht argues, the State of JavaScript report actually appears to be representative of the Angular developers and is not overly affected by unique sample bias. So, phrasing aside, Hecht points out that all of this obscures the fact that Angular is poised to ride the coattails of the TypeScript’s rise, a formally-typed superset of JavaScript that is incredibly hot, with 86% of the people that plan to continue using TypeScript also planning to continue using Angular.

Meanwhile, there’s one major issue with the data, as pointed out by software engineer and blogger Laurie Blarth that may do more to skew the data than anything else — that it is overwhelmingly dominated by men!

Blarth subsequently points out that she intentionally used the word “troubling” over “surprising” — because, indeed, the exclusion of women in tech continues to be a troubling, but not surprising, thing.

This Week in Programming

  • A Saying About Eggs and Baskets… Earlier this week, The Information reported that Google executives had set 2023 as a deadline to beat Amazon and Microsoft in cloud, according to reports of a conversation in early 2018 on the matter. Essentially, should the company’s cloud offering not reach the number two spot, Google would consider killing off its cloud offering, says the report. Of course, Google has a reputation for killing off products, so the “news” came as no surprise to many, though many others have come forward to debate the merits of such a report. So, there you have it — yet another reason for the existence of “multicloud”, the only buzzword that describes a state of necessity rather than a state of desired being.
  • GitLab Looks at the Future of Merge Requests: For you GitLab users out there, now’s the time to get in on the ground-ish floor for bringing real-time collaboration to the future of merge requests. The company is seeking feedback on what it says “could be the future of Merge Requests and code review,” which could consist of a number of features, from presence indicators to features that catch you up on what’s happened while you were away. But don’t take our word for it — check out the full blog post or the video for a full outline of some potential new features.

  • GitLab Moves Observability to Core: As you likely know, GitLab operates on an open-core model, and this week the company announced that it was moving their observability suite to Core, which means that observability features like custom metrics, logging, tracing and alerting will all be making the transition from their proprietary codebase to the open source codebase in 2020, and you can follow along on the progress.
  • JetBrains Brings iOS Support to Android Studio: InfoWorld reports that JetBrains is bringing iOS device support to Android Studio with a plug-in that will allow developers to run, test, and debug Kotlin applications on iOS devices and simulators. The plug-in is set to be available in preview in 2020 and, while it won’t provide language support for Swift or Objective-C, it will let you Android-first developers test for iOS compatibility in your preferred IDE.
  • Is Julia Faster For Data Science? Julia is a language that’s said to do it all, and a blog post this week over at Toward Data Science asks if it might do it all, and faster than data darling Python. Well, if the question of whether Julia is faster than Python lingers for you, head on over, because they do some benchmarking, even comparing Julia with “some kind of optimized/vectorized Python code (like used by Numpy functions).” As they write, “Numpy is seriously fast,” but “Julia scores higher when complex logic is introduced in the computing problem.” Head over for all the details.
  • IntelliJ in 2020: No, that’s not a campaign slogan — JetBrains has offered an IntelliJ platform roadmap for 2020 that highlights what the company envisions for its IDE (and others based on the IntelliJ platform) in the year ahead. The changes, they write, are “centered around two main themes: performance and support for modern development workflows.” Starting as early as the first release in 2020, they say that they want to target issues like indexing performance, UI freezes, loading and unloading plugins without having to restart, and support for cloud execution and collaborative editing. If that isn’t enough, they say that “the efforts described in this post are only a small part of what our team has been working on, and we plan to publish more information on our plans after the holidays,” so we’ll keep an eye out for what’s next.

The New Stack Analyst Lawrence Hecht contributed to this post. 

Feature image via Freerange Stock.

A newsletter digest of the week’s most important stories & analyses.