'State of JavaScript' Survey Results: Good News for React and TypeScript (sdtimes.com)
"The JavaScript world is richer and messier than ever," reports this year's annual "State of JavaScript" survey, which collected data from over 28,000 developers on everything from favorite frameworks to flavors of JavaScript. SD Times reports:
"A few years back, a JavaScript survey would've been a simple matter. Question 1: are you using jQuery? Question 2: any comments? Boom, done!," the developers wrote. "But as we all know, things have changed. The JavaScript ecosystem is richer than ever, and even the most experienced developer can start to hesitate when considering the multitude of options available at every stage"...
On the front end, React remains the dominant framework. However, the survey found interest in Vue is steadily increasing, while Angular is losing steam. Developers are at a 3.8 [on a scale up to 5] when it comes to their overall happiness with front-end tools. On the back end, Express is by far the most popular contender with Koa, Meteor and Hapi slowly making their way behind Express. For testing, Jest and Enzyme stand out with high satisfaction ratings.
In 2016 only 9,000 developers responded for the survey, which had ultimately announced that "Depending on who you ask, right now JavaScript is either turning into a modern, reliable language, or a bloated, overly complex dependency hell. Or maybe both?"
InfoWorld notes that this year more than 28% of the survey's respondent's said they'd used TypeScript, Microsoft's typed superset of JavaScript, and that they'd use it again. And while React was the most popular framework, the second most-popular framework was "none," with 9,493 JavaScript developers saying they didn't use one.
On the front end, React remains the dominant framework. However, the survey found interest in Vue is steadily increasing, while Angular is losing steam. Developers are at a 3.8 [on a scale up to 5] when it comes to their overall happiness with front-end tools. On the back end, Express is by far the most popular contender with Koa, Meteor and Hapi slowly making their way behind Express. For testing, Jest and Enzyme stand out with high satisfaction ratings.
In 2016 only 9,000 developers responded for the survey, which had ultimately announced that "Depending on who you ask, right now JavaScript is either turning into a modern, reliable language, or a bloated, overly complex dependency hell. Or maybe both?"
InfoWorld notes that this year more than 28% of the survey's respondent's said they'd used TypeScript, Microsoft's typed superset of JavaScript, and that they'd use it again. And while React was the most popular framework, the second most-popular framework was "none," with 9,493 JavaScript developers saying they didn't use one.
JavaScript is for people who can't code. It tries to do everything, and does everything very poorly. It's the systemd of web browsers. If the respondents had any clue, they'd vote for JavaScript to be eliminated entirely.
The rest of the world as a whole is fucked.
I've said this before. I've been programming some 40 years. Awk, sed, TCL/TK, bash, Z80/8086/68k/MIPS/SH-4/32016 assembler, python, java. Oh yeah, C and C++, which have been my bread and butter for 35 years.
I've liked some languages (z-80 & 68k assembly, C, Python), disliked others (MIPS assembly, C++, TCL/Tk). But there is only one language I actively hate and that is Ecmascript, also know as Javascript. I found it mind boggling that my scripts would run differently on different PCs because "reasons". I spent 6 months coding Javascript and all I remember about it is shit like "oh, you're department sets this flag on install while mine doesn't? Gee, be nice to get a runtime error instead of wrong fucking answers".
Look at the options for the "per-library survey results":
[ ] I've never heard of it
[ ] I've HEARD of it, and am NOT interested
[ ] I've HEARD of it, and WOULD like to learn it
[ ] I've USED it before, and would NOT use it again
[ ] I've USED it before, and WOULD use it again
Notice there's no option for "I've actually deployed it to a production platform and it has been running stably for a year." I can attest that every interview candidate tells me they've used Angular 2/4/5 before, because they went through the tutorial. So be careful when using these results.
I am on a project that started with Angular 1, then took a significant delay to move it to Angular 2, even when it was in beta, because we thought it was more stable and it was the future. Now, it's #5 in the "Ive USED it before and WOULD use it again" category. Our latest front-end developer is threatening a coup unless we move to Angular 5 (which is actually quite easy, but still - WTH?) There's just no winning here! We can't develop stable software if the platforms lifetime is shorter than the time it takes to get a product to market!
You can't call yourself a JavaScript programmer until you've read "You Don't Know JS" by Kyle SImpson. Most JavaScript programmers know enough to get a JavaScript framework working but not enough to figure out how to solve a problem.
TypeScript seems to fix nearly everything I had a problem with regarding Javascript. And if you are using Angular and follow 90%+ of the instructional material out there you are using TypeScript. I had spent years avoiding Javascript and learned what I needed but without much enthusiasm.
The funny thing is that I don't really need strong type checking for designing my app. My IDE (WebStorm) needs strong type checking in order to be more helpful to me. Without TypeScript it is forced to make a lot of hellacious guesses (mostly wrong) about code completion. With the current version it is almost as solid as if I were programming Java.
The cherry on top is that I can still be as careless and sloppy as I want the way Javascript alone allows. Occasionally that is actually helpful. So all win for me.
And while React was the most popular framework, the second most-popular framework was "none," with 9,493 JavaScript developers saying they didn't use one.
This is encouraging, even if it is only a third. React functionality was being standardized in browsers naively at the same time that React was being developed. Hopefully eventually people will realize that.
And will people stop needlessly using ES6 Promises? The Promise pattern was always possible without a built-in object type and the built-in sucks major ass, and only browsers from the last 2 years support it (therefore 80% of the net doesn't) and yet all of these stupid banking websites are starting to require it just to log in (thanks to retarded React usually)
Running JavaScript on a grid of x86-64 & RISC-V machines maybe an Internet explosion as the movie Matrix.
The same issue is true with python, ruby, to a certain degree with C++ today (linux C++ ABI is totally fucked if you compile with the wrong compiler. And since it doesn't offer any sort of ELF metadata so the compiler will throw an error 'this library compiled with ABI xx while other libraries and/or compiler expect ABI yy' leads to all sorts of compilation issues (and occasionally runtime issues due to structure/mangling changes!) if your whole system isn't compiled against the same standard AND THE SAME COMPILER VERSION.
I believe this is slightly less common on the Microsoft side due to differing vcrun versions for each revision of the compiler toolchain, but even there you occasionally run into it with 3rd party compiled libraries when needing to merge older and newer versions of code.
Given that even C is hopping on this bandwagon now with the C17 changes, having not had any major stdlib or ABI changes since the 90s previously, I really worry as to the future of software design, and more importantly, the ability to recompile old code without wondering about what it had formerly been expected to do.
See subject: It can't affect me - I override it, reposting when it's unable to prove me validly wrong (& it never does) but it affects "your kind" (unidentifiable anonymous trolls) by ME running you DRY of your 'downmodpoints', easily.
I only post on my program when & where hosts help vs. the issue @ hand (or when trolls like you bring it up - especially since "your kind" hasn't done BETTER than I, lol).
* As to the rest of your bs? Please - I have no standing on 'bump stocks' @ all, & I don't talk Vatican conspiracies either - so You now vainly "trying to put words in my mouth I never said" you're doing? Is stupid & weak (like you).
APK
P.S.=> Grow up... apk
otherwise you're just spending your time chasing down the "flavor of the month" and constantly porting your shit from one to the next.
find what works, what works for you, and stick with it. you'll be far more productive than you would if you keep wasting time building on buzzwords and fads.
See subject: Running clientside script defeats logic of a client-server model (you run the script clientside raising powerbills). CGIBin/WinCGI does the same serverside (ISAPI/NSAPI libs/dlls too) NOT RAISING YOUR CLIENTSIDE POWERBILL (or sucking up YOUR cpu cycles, RAM & other forms of I/O in doing so).
Clientserver was ALL ABOUT THAT (making it better for you as the client, the important consumer of information).
* Javascript's also rampantly abused to deliver malicious code (or tracking of you) to you (I don't need to note that I am sure but I am for "posterities' sake").
APK
P.S.=> I block 3rd party scripts via hosts files (which work long before browser addons "script src" tag parsing do & more efficiently by outright blocking their source, no need to parse) via APK Hosts File Engine 10++ 32/64-bit https://www.google.com/search?hl=en&source=hp&biw=&bih=&q=%22APK+Hosts+File+Engine%22+and+%22start64%22&btnG=Google+Search&gbv=1/ ..,. apk
I don't know what the fuck is happening, but I now have a strange "Looking Glass" extension that unexpectedly showed up in my Firefox recently. I don't know what the fuck it is and I don't know how it got there, because I sure as hell did not install it.
I'm no expert on this stuff but I think that some malicious JavaScript might have compromised my Firefox to install this plugin that may be malicious.
I don't know what to do at this point. I've done the obvious thing and completely uninstalled Firefox, as it appears to have been compromised. I'll likely never be using it again. Since I don't know how far this contamination has spread, I have to assume that my entire Linux installation is affected. So I'm going to be wiping my drive and reinstalling from scratch today.
I really don't know what to think any more. I had always heard that Firefox was a secure browser, but now this extension just appeared out of nowhere, and now I'm stuck reinstalling my entire Linux installation just to be safe! This is one of the worst computing experiences I've had in a very long time.
I wish that JavaScript would just go away if it can contribute to my browser being violated like this.
for the win. :)
Examples of scripts that "run differently on different PCs"? Even just some links?
I've only coded c, c++, perl, php and fortran besides javascript so maybe I'm just a ignant tourist. I like c, perl and fortran. Despise php and just never got the hang of c++. After a bunch of years of php for $ node is very relaxing. Maybe you greyer beards can spin up quick web crud in an afternoon in c but I can't. On the front end react is a waste of time, angular is web dev for Kafka fans and jQuery works for quick and then write it out if needed.
There's no such thing as a JavaScript Framework since any function can be clobbered by a string or int or anything and there's no way to enforce parameter types. Kill JavaScript and we should use web assembly and write in real languages.
Isn't this a complaint about the runtime environment and not the language itself?
Yes. But who in their right mind would choose JavaScript if it weren't for the runtime environment? True, Node is faster as a server-side JavaScript implementation than CPython is as a server-side Python implementation, but it only got that way by sharing the V8 runtime with Google Chrome. How common is it in practice to use Node other than as a server for dynamic websites that also use JavaScript in the browser?
It's called WhomScript
You just convert Javascript English to any encrypted language of your choice, then you reconvert it back to Javascript then you make a C program that does less than 20 type enumerations and 1000 functions to loops then runs in a simple C built environment that executes that as a basic C construct modeled as simple as any procedural language can be.
Then, we release it for free and wonder why we built anything other than a runtime C interpreter with a few generous libraries...
Also, we made sure to type it out on both dvorak and qwerty keyboards.
It just doesn't know it yet.
But nobody in their right mind will use JS, when they can use whatever is their favorite language, and compile it to WebAssembly.
You can even use the same code for a program, an app and a web application. (See: The Godot game engine.)
And I'm saying that as somebody who doesn't hate JS (because I understand it and its intentions and what it should have become).
Other common uses of Node -- to host standalone desktop applications that are implemented in Javascript
Which leads to the Slack O(n) RAM problem: "Why am I wasting 365 MB of RAM and tens of MB of SSD space on Discord or Slack when it could use half that much RAM by sharing it with my other Firefox tabs?"
of the applications open on my mac on a day-to-day basis, the only ones not running on Node are Terminal and Outlook
And how much RAM does each use, especially on a Mac where end-user RAM upgrades are difficult or impossible to install?
The world is moving to PWAs
APIs used by Progressive Web Apps require HTTPS. Say a home user downloads a copy of a PWA to run on a web server on his home LAN, be it an otherwise unused desktop PC or a Raspberry Pi SBC. Will he have to buy his own domain in order to qualify for a certificate from Let's Encrypt?
PWAs also require the ability to listen for and accept connections from users' browsers. But in the era of IPv4 scarcity, a lot of home broadband Internet access plans don't allow incoming connections on (say) port 443, such as if the ISP uses carrier-grade network address translation (CGNAT) to put hundreds of subscribers on one public IPv4 address. If a home user downloads a copy of a PWA to run on a server on his home LAN, how will he be able to access it from his phone thorugh a second cellular ISP or his tablet through restaurant Wi-Fi. Or should users also lease hosting for their PWAs from Amazon or another VPS provider?
And if you're recommending use of PWAs hosted exclusively on the server of a publisher who collects usage statistics to sell to advertisers, please see the article "Who Does That Server Really Serve?".
As a 47 year software engineer, I view JavaScript as a complex and completely un-intuitive language. I HATE it.
I'm 45, I've programmed in c++, java, fortran, even actionscript in my time, and enjoyed using them all. However I cannot abide javascript, and that goes double for the 10000 vague, incomprehensible frameworks that surround it. It could be that I'm just getting old, but I find the whole javascript framework / html app development scene a fractal hall of mirrors. A pox on it all.
I know thereâ(TM)s many to-JS compilers. But how many of you guys are sold on functional programming.
Unless WebAssembly ends up torturing JS to death Reservoir Dogs style, itâ(TM)s death isnâ(TM)t good enough.
Almost correct except for the 'does everything poorly'. Clearly it doesn't do everything poorly. In fact it does most things as well, a lot of things differently, some things better (package management), and only two things poorly (classes (but not objects) and types). As for the latter two, you have to believe those are important and my experience is that they aren't in most practical cases. Bottom line seems to be that a good programmer will make as many (or few) errors no matter what language they are using. So better to say: Javascript is for people who _can_ code. If you have a problem with Javascript, the problem is actually you.
Most people got taught OO programming so they believe it to be the only way to do things but those of us longer in the tooth (say, started with Fortran and C and now working with JS/Node) realized a while ago that it usually isn't the way to go. Imperative and functional is way better for number crunching, object-based is far better than class-based, etc. And as for typing, well that's supposed to reduce errors and improve security. Maybe a 'yes' to the security bit, but a big 'NO' to errors in coding. The latter seem to be better addressed by teaching people how to code attentively and methodically.
"Consensus" in science is _always_ a political construct.