Stack Overflow Stats Reveal 'the Brutal Lifecycle of JavaScript Frameworks' (stackoverflow.blog) 165
A developer on the Internal Tools team at Stack Overflow reveals some new statistics from their 'Trends' tool:
JavaScript UI frameworks and libraries work in cycles. Every six months or so, a new one pops up, claiming that it has revolutionized UI development. Thousands of developers adopt it into their new projects, blog posts are written, Stack Overflow questions are asked and answered, and then a newer (and even more revolutionary) framework pops up to usurp the throne...
There appears to be a quick ascent, as the framework gains popularity and then a slightly less quick but steady decline as developers adopt newer technologies. These lifecycles only last a couple of years. Starting around 2011, there seems to be major adoption of a couple of competing frameworks: Backbone, Knockout, and Ember. Questions about these tags appear to grow until around 2013 and have been in steady decline since, at about the same time as AngularJS started growing. The latest startup is the Vue.js framework, which has shown quick adoption, as it is one of the fastest growing tags on Stack Overflow. Only time can tell how long this growth will last.
"Let's be honest," the post concludes. "The size of a developer community certainly counts; it contributes to a thriving open source environment, and makes it easier to find help on Stack Overflow."
There appears to be a quick ascent, as the framework gains popularity and then a slightly less quick but steady decline as developers adopt newer technologies. These lifecycles only last a couple of years. Starting around 2011, there seems to be major adoption of a couple of competing frameworks: Backbone, Knockout, and Ember. Questions about these tags appear to grow until around 2013 and have been in steady decline since, at about the same time as AngularJS started growing. The latest startup is the Vue.js framework, which has shown quick adoption, as it is one of the fastest growing tags on Stack Overflow. Only time can tell how long this growth will last.
"Let's be honest," the post concludes. "The size of a developer community certainly counts; it contributes to a thriving open source environment, and makes it easier to find help on Stack Overflow."
And maintainability? (Score:5, Interesting)
What happens if you need to patch or upgrade in a few years? Like for security? Do you have to rely on unsupported frameworks or throw everything away and start over? How does it work?
Remember, companies pay huge licensing fees exactly for support.
Re:And maintainability? (Score:5, Insightful)
Re: (Score:2)
So you can achieve bug compliance with V1.0?
Re: (Score:3)
Re: (Score:2)
Is this your first time using web sites? It's all shit.
Re: (Score:3, Insightful)
All the effort people go through to design a site with shittons of flashy interactive bullshit, then I come along and strip every last bit of it out with adblock filters until the page is nothing but a 5 kb text file with just the info I actually came to see.
Re: (Score:2)
Re:And maintainability? (Score:5, Funny)
Like for security?
Javascript doesn't support security, so that's a non-issue
Re:And maintainability? (Score:5, Informative)
What happens if you need to patch or upgrade in a few years?
In this nude gig based economy, no one stays at a job long enough to do maintenance. Once the gig is shipped, you'd best already have moved to a new job.
It's kinda sorta like a combination of Bitcoin pin the tail on the donkey. The last one holding Bitcoin before the crash loses, as does the donkey last original developer to leave the company, who gets all the defects pinned on him.
Maintenance will be outsourced to India or China.
You want Skynet? Cause this's how you get Skynet (Score:3)
In this nude gig based economy
What fresh capitalistic hell is this? It's official, we're done as a species. Our only hope is that the robots get tired of looking at us meatbags and do us all in.
Re: (Score:2)
Our only hope is that the robots get tired of looking at us meatbags and do us all in.
Let's just hope Skynet reads Reddit in its impressionable childhood years. It'll definitely nuke us then.
Re: (Score:2)
I always thought that meant work from home, nude.
It's quite nice if you can get the work.
Re: (Score:2)
Just how corporate management works. Got it. along with bungee managers, bungee programmers.
Re: (Score:2)
>Maintenance will be outsourced to India or China.
This is a verifiable hypothesis.
Re: (Score:3)
You ask "what are some good replacements for last week's framework?" on Stack Exchange.
That's what Stack Exchange is. Lurching from one fad to another, with bad advice and half baked ideas from start to finish.
Re: (Score:2)
Lurching from one fad to another, with bad advice and half baked ideas from start to finish.
Sounds a lot like Progressivism, tbh.
Re:And maintainability? (Score:5, Interesting)
What happens if you need to patch or upgrade in a few years? Like for security? Do you have to rely on unsupported frameworks or throw everything away and start over? How does it work?
Remember, companies pay huge licensing fees exactly for support.
Well, you could just keep using jQuery like we do. It's still maintained and developed.
It won't get you 100 recruiter calls a day, but hey.
Re: (Score:2)
don't I know it.
Still just using jQuery/UI (Score:2, Informative)
Still just using jQuery and jQuery UI. They do pretty much everything I need. All HTML generation happens server side, and jQuery simply inline replaces the HTML content from whats pulled from the server. Doing things this way means only 1 UI stack, and it works across all environments, since only the servers need updating (plus of course routine updating of the jQuery/UI JS files themselves)
Re:Still just using jQuery/UI (Score:4, Insightful)
Exactly this. The problem with Angular and all the other libraries is that they're trying to solve the problems of 'simple' libraries like jQuery but then end up even more complex or break all sorts of convention and expectation trying very hard not to become jQuery, and then you get a new library trying to solve whatever problem is in that library.
What you need in a framework (regardless of language) is not complexity (trying to do "everything") but simplicity. If the framework is dictating how your application should work/flow/represent the data, you're going to run in a situation sooner or later where your framework doesn't quite fit your problem and then you'll spend an eternity trying to make it work and you'll end up writing most of your code in the native language anyway.
Re:Still just using jQuery/UI (Score:4)
Yes; thus Rich Hickey's talk on "Simple made Easy": https://www.infoq.com/presenta... [infoq.com]
"Rich Hickey emphasizes simplicity's virtues over easiness, showing that while many choose easiness they may end up with complexity, and the better way is to choose easiness along the simplicity path."
I agree on Angular having a lot of "accidental complexity".
I've also run into the "leaky abstraction" issue you reference, like with the Dojo Toolkit and Dijit -- where I ended up spending large amount of time trying to understand why Dijits behaved unexpectedly and to make kludgy workarounds. People hope some frameworks will spare them from learning details of CSS and JavaScript, but in the end, edge cases and bugs mean you still need to learn all that -- as well as an arbitrary framework with its own quirks.
I much prefer the combination of using JavaScript/TypeScript with Mithril/HyperScript, Tachyons, and a Flux-like one-way-data-flow architecture. You need to know JavaScript and CSS somewhat well to use those libraries -- but they are simple enough that they rarely do unexpected things, require long debugging sessions, or get in the way of doing anything advanced that you want to do. Those libraries are not perfect -- just a lot better than something like Angular (which I have to deal with for my day job; see also my related comment below). And those libraries are simple enough that any reasonably good developer could maintain them on their own if absolutely required.
One of the reasons such libraries don't as much attention as they should is precisely because they are so reliable and simple to use. Unlike Angular, neither Mithril or Tachyons *requires* thousands of StackOverflow questions to learn how to use it, debug it, or upgrade it. In a way, picking libraries based on numbers of SO questions or blog posts on it is kind of like picking a car based on how many complaints are filed against the manufacturer with the Better Business Bureau. That's not a 100% valid comparison -- but there is more truth there than one might think at first.
Re: Still just using jQuery/UI (Score:2)
Re: (Score:2)
I much prefer the combination of using JavaScript/TypeScript with Mithril/HyperScript, Tachyons, and a Flux-like one-way-data-flow architecture.
I had to read your post twice to be sure it wasn't parody. Man, the names of those frameworks sound exactly like science fiction movies technobabble.
Back to basics and then beyond (Score:2)
LOL. Here is an example I wrote of what I am talking about that uses those approaches:
https://github.com/pdfernhout/... [github.com]
The overall discussion here general reminds me of many health discussions on the internet about relative merits of different complex interventions and prescription drugs for various chronic diseases while avoiding discussing the root causes of so much chronic disease from poor nutrition, lack of sunlight, lack of exercise, and various other lifestyle issues (i.e. "Blue Zones" and a "Whole
Re: (Score:2)
They do different things, and can - and often are - used together.
What does this say about Javascript? (Score:5, Insightful)
There is so much wrong about Javascript revealed here that I think we have to question its use going forwards.
The language itself is a great start to programming websites but the need for frameworks, which become "flavours of the month" that makes support so much more difficult as time goes on and the framework goes out of favour resulting in companies scrambling to find people with the skills to maintain them (sort of a short term Cobol analog). This gets worse when you realize that most web page developers don't know how to code and are using published features of the frameworks or example snippets on things like Stack Overflow.
What about security of the various frameworks and ensuring they don't do anything nefarious. I guess the extreme examples would be collecting customer data and running cryptocurrency miners on end-users webpages - but I'm sure there are a lot of more minor security issues that can be hidden in these frameworks.
Finally, I have to wonder about the maintainability of all these frameworks. On one hand, I guess frameworks with issues get identified by the community quickly and are abandoned (but, going back to the previous point, companies have to spend more money because their developers aren't competent to move the page to different frameworks).
I'm not sure I see a solution for these problems. Maybe WebAssembly will be the ultimate solution (with tested and supported libraries that web developers can use and rely on) but I'm hoping that W3C and other groups are looking ahead to the next generation of web development tools.
Re: (Score:3)
Re: (Score:2)
If you don't have enough access to change the link to point to a local copy, then you're probably below the monkeys in the hierarchy and should mind yourself before the monkeys learn of your betrayal and other-source your role.
Re: (Score:2)
Re: (Score:2)
Meanwhile, I came in this weekend to fix a bug involving a corrupted stack and am going to be digging through cores and assembler to figure it out. I am amazed (and dismayed?) at the vast gulf of distance between what I do as a programmer and what a web developer does.
You can do it all in a startup (Score:2)
I came into a company that was a recently bought out startup where I found the CTO to be incredibly knowledgeable about web programming, PC application programming and PICmicro firmware programming.
Now, that I'm doing a startup and programming for multiple targets (namely, HTML in Javascript with jQuery and Angular, PC and MaC programming in Java/C/C++/C#/Objective C and firmware in C) I think I would probably impress new programmers coming into the company in the same way.
Re: (Score:2)
Mostly that Javascript has a lot of new developers, new enough that they're easily influenced by hype. The Javascript community seems to over-emphasize having a pretty website rather than technical merit.
Also, that Javascript exists in an environment with a different set of problems than most others. Solutions have yet to be well fleshed out, and there are a lot of different ideas being tested. So even the more experienced devs are going to be more prone to create a shifting landscape.
It's not about JavaScript (Score:3)
It's not about JavaScript because A) all the big popular frameworks are some kind of MVC, they are all about interfacing with the DOM and users, JavaScript is just what's available. B) There is a work in progress standard to better solve this problem as part of the web platform.
Also, the interpretation of these stats is flawed, it assumes new questions asked per month equates purely to popularity, but if you give it more than 2 seconds of thought you realise that there will be a saturation of common questio
Re: (Score:2)
There is so much wrong about Javascript revealed here that I think we have to question its use going forwards.
Did this just occur to you now?
The language itself is a great start to programming websites
Nope, it isn't. It seems great but that's only up until you realise that you've been deluding yourself. For some, this never happens, which stands to reason because it'd make them ashamed of that fat paycheck.
but the need for frameworks,
It starts way before this, but yes, that should have told you that javascript is not great, because no staying power. It's fairly natural for a programmer to try and build higher abstractions on the building blocks available, and that's fine. What would not be fine, and h
Re: (Score:2)
I find thing to both agree and disagree with in this comment.
I agree that ideally the web should be mostly about serving static content. Unfortunately, with a web funded mostly by advertising revenue, much of the JavaScript on the web is about putting together feeds of multiple items to entice you to click on other documents to get the next ad impression served -- as well as to track those clicks. Why should, say, a news site have a sidebar with current articles to click on merged into content for each arti
Re:What does this say? Vibrant, helpful community? (Score:2)
The frameworks arise as members of the community try to implement interesting development ideas or facilitate advanced programming for people with less advanced skills. It may not be the greatest language but the community is a helpful one and the language is one where new users can easily create projects that mean something to them eg. a website. That is why it is popular and appealing. A similar phenomenon can be seen in the scientific community where Python is on the rise even though programming eliti
Re: (Score:2)
Or is it popular because mgmt. dictates it?
Re: (Score:3)
Telling you think that's a burn on AC. Speaks volumes.
Re: (Score:2)
Re: (Score:2)
Spoonfuls of Javascript spagetti?
Re: (Score:2)
Leaving supportable systems behind you is 'spoon feeding'? I'd just fire you.
Re: (Score:2)
Re: (Score:2)
No you didn't.
You put the 'blame' for not being able to figure out a 'rats nest' on the new guy, not the incompetent that left it.
Which strongly suggests to me that you are one of the incompetents.
Having inherited a few rats nests over the years, when in that position, the first step is to decide if it's worth attempting to salvage the 'pig fuck'. The answer is almost always no.
Re: (Score:2)
He tried to spoon feed it to you, but you still didn't understand the technical implications of your own comment.
Maybe stick to your own area of expertise, whatever that is.
Re: (Score:2)
Re:What does this say about Javascript? (Score:5, Insightful)
Obscure code is bad code. If you can't do it simpler you;
1) are using the wrong tools
2) Don't know what you are doing
3) don't understand the first thing about programming, which is 90% of the cost of a program is maintenance
4) trying to be clever, which is stupid
I hereby sentence you to 5 years maintnce programming on code produced by clueless programmers like yourself.
(odds are in 6 months you won't be able to fix you own code.)
JavaScript NOT the main problem (Score:2)
Amen! If JS weren't the main UI langage, something else would be causing similar churn headaches. Java applets were all the rage for a while, then Flash came along with better eye-candy and kicked Java's asslet; and then JS, browsers, and CPU's caught up to Flash, making Flash shrink. Now it's a battle of JS framework of the month.
I've seen PHB's drool over fancy-dancy JS, ignoring warnings about practicali
Its just GUI development (Score:2)
We had GUIs in the 1990s with straightforward architectures. You could develop quickly with Delphi. No problems. JS front ends are just GUIs so why do we need mountains of css, html and js to get it to work?
Front end development is an expensive clusterfuck.
Re: (Score:3)
On the other hand, you had Swing. When Sun won a victory over MS and got Sun Java included in Windows, I said MS should retaliate by also including Swing. Use Swing to render the Sun logo at startup...Provide instructions so users could disable the whole mess and have a machine that was usable in less than 10 minutes.
Clusterfucks have always existed. Pick the right tool for the job. Old advice but still valid. Avoid magic bullets, they are always bullshit.
Re: (Score:2)
It basically didn't work, first two major releases.
The hate for swing comes from people who had to try and make it work.
Try Mithril and Tachyons (Score:4, Interesting)
As a once Delphi programmer, that is one reason I like the combination of JavaScript/TypeScript, the Mithril vdom https://mithril.js.org/ [js.org] (which uses a "HyperScript"-like API to define HTML via code), and Tachyons http://tachyons.io/ [tachyons.io] for embedded CSS where each class defines the CSS effect (e.g. "underline") -- along with a simplified Flux-like one-way data flow architecture. Although people could swap out Mithril and Tachyons for similar systems to get a similar effect.
Sadly, for my day job I am stuck using Angular, which is a my-way-or-the-highway framework with a lot of questionable design choices leading to excessive complexity and difficult debugging.
Re: Try Mithril and Tachyons (Score:2)
Flux-like?
Re: (Score:2)
On two-way (Angular default) vs. one-way (Flux) data binding: https://stackoverflow.com/ques... [stackoverflow.com]
But Mithril does one-way data binding naturally so you usually don't need much to be made explicit: https://github.com/MithrilJS/m... [github.com]
But apps may still benefit from undoable commands or transactions being run against a data model, so sometimes a more formal flux/reflux/redux approach may be worth it -- or not. I feel it makes sens to keep things simple with POJOs and then see if a more formal data store model is n
Re: (Score:2)
I am a back end developer and I can't get our front end developers to do any data modeling in angular at all. They want to work in terms of screens, with the back end serving each page the data it needs in the format it needs. I really don't know what is going wrong. Browsers have a lot of processing capacity now but where I work we don't seem to be using it.
Negotiations between client and server devs (Score:2)
It's usually a best practice in corporate settings to have a well-defined long-lived data model in a database and then create views on it as needed. Applications then work from the views and might use a short-lived application-specific data model. For JavaScript apps, you might create JSON APIs connecting to the views.
Somewhere in the social process of dividing up responsibility and labor is some negotiation between what issues are best solved by convenient views on the database versus best solved by specif
Re: (Score:2)
I really don't know what is going wrong. Browsers have a lot of processing capacity now but where I work we don't seem to be using it.
There is nothing going wrong, that isn't your processing capacity and you shouldn't be coveting it. It isn't yours, use your own server for your processing capacity.
It all needs to die. (Score:2)
I won't just stand here and proclaim that javascript is the largest collective waste of human effort in history since it's gone from novelty to serious security threat, I use a chair like a normal person. Anyway, javascript was neat but now it's a threat and it needs to be stopped. The good news is that CSS3 is very advanced and with a few tweaks to HTML we could provide all the modern functionality for webpages without a single script tag. It's too bad it won't happen because large companies have a vest
Re: (Score:2)
If CSS3 is good news, I don't want to hear the bad news.
Vanilla.js still keeps it's #1 position (Score:3, Interesting)
Re: (Score:2)
Downlevel browsers don't like Vanilla (Score:2)
Provided you're coding only for web browsers that support Vanilla. Edge and Safari, for instance, have tended to lag behind Firefox and Chrome in their Vanilla support, needing a "polyfill" framework to replicate some of the missing parts. And unless you target Edge and Safari, you won't reach Windows 10 S and iOS.
The one silver lining is that IE prior to 11 no longer receives security updates, giving a convenient excuse not to support browsers that are that downlevel. This means the more convoluted Vanilla [youmightno...jquery.com]
Is this really all that surprising? (Score:2)
Vue (Score:5, Interesting)
I started using Vue this year. I evaluated React but I just couldn't enjoy the JSX syntax. Angular 2 had just come out and I found it to be far too obtuse, too far from "the metal." I briefly experimented with Riot, but it was losing IE11 compatibility too fast.
Vue hit the sweet spot for me -- the ramp-up was easy, the code and API have a small but powerful footprint, it works well either interpreted in-browser or compiled via webpack, the Chrome dev tools are great, and I didn't have to learn the entire ecosystem (Vue, Vuex, Axios, etc.) to become productive. Coding single-file components reminds me of the good old days of writing server-side ASP.NET controls -- markup and script are separate, the lifestyle is simple to grok. The framework just does one thing--it handles the DOM update/manipulation details, allowing me to focus on behavior and state. I also like that the vast majority of my Vue code isn't really "vue," it's just plain HTML and JavaScript, so whatever comes next (web components, etc.), the transition will be much less painful than if I were using a more opinionated framework.
Re: (Score:2)
This pretty much sums it up for me too - vue is nice because it's easy to just use some basic parts of it (e.g. two-way data binding) without having to fundamentally alter your application or way of thinking to fit some model. My first few projects with vue didn't use vue components or any server-side build process or anything like that because vue by itself did all I need.
And then when I did take the plunge and structure my app to make use of vue components, I still found it fairly straightforward to adopt
Re: (Score:2)
To each his own, I guess. What are some of the examples of those fundamental and profound problems? To me at least the downsides of e.g. vue are no worse than the downsides of react. Anyhoo... I used KO before vue and liked knockout quite a bit - but then in early 2016 the prj just sort of died - no commits for months on end, so I ditched it. I've heard it has sorta picked up steam again though.
too far from the Metal? (Score:3)
Re: (Score:2)
And a firmware programmer is laughing at the idea that an OS programmer is close to the metal!
Wrong interpretation (Score:3)
It says it right there on the Y axis of their graph: "% of stack overflow questions that month"... When you don't know how to X in framework Y? you google, and probably land on stack overflow if the question exists; you don't post another question. This metric doesn't equate to popularity it equates primarily to question saturation and secondly to popularity in terms of uptake (less questions asked by advanced users).
We all know JS frameworks come and go quickly compared to other languages but this analysis is the height of numerology... if you're going to do some statistics be objective.
advertisement/promotion? (Score:2)
The latest startup is the Vue.js framework
Hmm, article characterizing cyclic rise/fall of frameworks names a single one as the new hotness. Maybe intended as an advertisement, maybe not. Over on a subreddit about unsolved mysteries, they refuse to allow postings about anything newer than 6 months, essentially to prevent current frenzy/churn over something fresh from taking over the intended ambience of mysteries that have stood the test of time; I think that principle might be well-applied when it comes to "assessing" technological cycles, namel
Validity of This Survey (Score:2)
A few people have questioned the validity of rating Framework popularity by the question rate on Stack Overflow. I just wanted to say that I think it's valid in this case if I compare it to other surveys of different programming languages based on the rate of new questions - I see something every year or so like (https://insights.stackoverflow.com/survey/2017) in which the popularity of different programming languages is rated by the activity on each language.
I'm of mixed thoughts about Stack Overflow - Al
Predictable with hindsight (Score:2)
The reason you keep seeing new frameworks pop up is that the prior frameworks don't really solve the base problems that need to be solved.
To make it worse there will be groups that have different perception of what the "base problems" are. I am sure there are more than two such categories of players.
Hence, more frameworks.
You need to stop and ask are web SPAs with rich interactivity really needed in the first place? Having thought about it my conclusion is a resounding YES. If you don't agree obvi
Wheel Reinvention... (Score:2)
It's not surprising. Firstly, most of the framework seem to ignore the lessons learned from those "old" desktop GUI frameworks. But it makes sense, those frameworks take full advantage of a language with easily expressed class inheritance which overall is a excellent match for GUI based systems. It doesn't translated to raw JavaScript, and you get a lot of reinvention. Take React. Mixing markup and code seems very easy, but it ignores that ASP and JSP already did that, and it turns out not to be very mainta
Insane volatility (Score:2)
JavaScript is a toy. And toys win. (Score:3)
People like to play with toys. And toys win in the end. Remember the toy computer called IBM PC with it's 8086 CPU? It was a toy for people to play with. And play they did. Now it rules the world (ok with bad CPU bugs these days, but you get my point).
Same with JavaScript. It's a toy. People like to play with it. Nobody asks bizar licencing fees for it. See the countless frameworks out there? Toys win. Believe it or not, JS is moving into Java territory as we speak You remember Java, do you? The language that was intended for IoT ... I'm sorry ... the "Network is the computer" thing? Upload a script and have the client run it? That Java only got hold on the server. Where it never was intended to go. And now JS is coming from the client and moving into it's territory. A silly toy. No chance in hell for professional applications. Just like the PC back in the day.
That JS has so many Frameworks constantly in the works is actually a good sign of health. Prepare for incoming. Toys win.
Keeping going on an unsupported framework? (Score:2)
So this is timely because I inherited a web project that uses a JS framework about a year ago. I'm realizing that the author of the framework (I won't mention which one to avoid extraneous discussion) has moved on a couple of years ago and created a new framework. Now I'm wondering... given that the old framework is working and I've come to grips with it and have a pretty good feel for it, is there really any risk in keeping on with it? I mean, presumably Javascript is going to keep working. It may beco
Re: (Score:2)
Bzzzt, wrong! Security, while nice on the front-end, really is a job for the back-end. The back-end has to assume nothing about the data that has been passed to it and needs to scrutinize everything before it actually does what it's supposed to.
Been true for a long time. (Score:3)
I saw this writing on the wall WAAAAY back in 2004. I thought to myself "Man, web-dev tech is in constant turmoil. I've got on option about which tech I'm going to learn. Do I learn something that will be useless in 4 years or do I learn something that will be around forever." And long story short, I'm an embedded SW engineer working on Satellites in the one true language that's absolutely perfect for every application ever.... C.
Square peg, meet round hole. (Score:2)
StackovweOverflow Javascript (Score:5, Funny)
}
catch(e){
var xcb="http://stackoverflow.com/search?q=[js]+"+e.message;
window.open(xcb, '_blank');
}
// https://github.com/gautamkrishnar/tcso/blob/master/javascript/tcso.js
I like javascript (Score:2)
I like javascript for its event model.
I like javascript for it's typeless variables (where non existence is even a state for a "member" variable).
I like javascript for its asynchronous nature.
Unfortunately most javascript developers hate javascript and want it to be something that doesn't use events, has strict typing on its variables, and is synchronous. To those I say if you don't like javascript for what it is, don't use javascript.
To preempt the answer "but what else is there to do web development"... I
Brand new frameworks have brand new questions? (Score:2)
The measurement is done based on new questions [stackoverflow.blog] and that measuring usage by "activity" is kind of ridiculous. New frameworks seem much more likely to generate SO questions. Questions about an older framework can be answered by looking at an existing project, from a blog post, tutorial or from (shock) already-written SO answers. While the data aren't conclusive either way, I think it's more plausible to believe that much of the sharp decline is due to saturation of answers to many obvious questions.
There's al
The foundation is cracked (Score:2)
JavaScript itself sucks. So no matter how good a framework appears to be, it sucks because it's foundation sucks, which leads to someone trying to fix it.
Don't worry, it will be fixed.
By removing JavaScript in favor of a type-safe languages compiling to WebAssembly.
Re: (Score:3)
I can see a major need for stripping aberrant apostrophes.
Re: (Score:3)
Wait a sec. I just linked to a library that puts them back in.
Re: (Score:2)
What&asshat(TM)manishsucksdonkeyballss so annoying is that it doesn&asshat(TM)manishsucksdonkeyballst put them back properly
Re: (Score:2)
Re: (Score:2)
Simple: page reloads are painful. I'm not showing off; I simply don't tolerate a spinner in the browser tab if it can be avoided. A well-architected Angular app is poetry in motion.
Relative pain of reloads vs. misuse of JS (Score:2)
Page reloads are painful, but the loss of privacy to third-party trackers, the loss of download allowance to large frameworks and video ads, and the loss of CPU time to real-time bidding and Monero mining scripts are also painful. They're so painful, in fact, that many anti-JavaScript hardliners here and on SoylentNews would prefer page reloads as less painful than the effects of widespread misuse of JavaScript.
Re: (Score:2)
I've worked as a consultant in a good number of large commercial web companies, and I've never seen a single instance of PII being tracked, and indeed any marketing drone who asked for it was shot down from every angle: "absolutely NOT". All telemetry was restricted to aggregate usage and error logging, completely stripped. Enjoy your reloads, and good luck with your online banking.
Interest-based advertising (Score:2)
I've never seen a single instance of PII being tracked
Let me guess: the sites for which you consulted either A. are paywalled, B. are donation-supported and run by a charity, or C. exist to sell some real-world product, as opposed to being funded by advertising on them. I make this guess because ad networks and ad exchanges track viewing history across publisher sites that contain the particular company's ad code in order to build an interest profile on each viewer.
Re: (Score:2)
Also, in my engagements, javascript has always been minimized with cache busting used correctly, so the overhead argument is a... red herring.
Anti-adblock (Score:2)
Lesson #1 of the Internet is that you never rely on 100% uptime for remote content.
Tell that to operators of websites using anti-adblock. If the cross-site tracking server goes down, the site's script assumes the user is using an ad blocker.
Re: (Score:2)
I'm thankful to them when their site sucks really bad, and it also just doesn't display for me. If your site is just a bunch of advertising bait, you don't want me and my adblockers, so if it just doesn't work at all without JS then I'll only be subjected to it for the small amount of time it takes to close the tab and select the next link from the list.
It is win for us both in that situation.
Re: (Score:2)
For the purposes of this analysis, I thought using Stack Overflow was very appropriate.
Yes you get karma whores, but going by dates and frequencies of requests/replies you get a pretty good idea of the trends/lifecycles which is what this article is about.
Re: (Score:2)
I think his point was that there are two possible reasons no new questions are being asked. One is that nobody's using it. The other is that it's matured and everybody who's using it has gained a degree of competence such that they don't need to ask "how is babby formed" and/or the knowledge base has built up to the extent that any questions they do have are already answered.
Re: (Score:2)
I looked at it from the perspective of *other* Stack Overflow queries where C is still highly regarded as a programming language by the number of new questions that continue to be posted.
So, if C is still getting a large number of questions constantly, indicating that it is a popular/in use language, doesn't it stand to reason that various JS Frameworks can be said to be dying because they aren't getting a large number of questions constantly?
Re: (Score:2)
That assumption is not necessarily correct. It may indicate that it's a "being learned" language.
I use bash for various things at home. I've never asked a question about it on SO or anything else, because I either know the answer or somebody else already asked it and GIMF.
Re: (Score:2)
It may be that C is very complicated and the same question asked by two different people doesn't even look the same to them, but that JS is simpler and the questions have already been clearly answered. I've got many more years using C than JS, but I'd be much more likely to ask a question about C!
Re: (Score:2)
Stackoverflow has stopped being a site where you can expect to find informed experts. The experts don't have enough points to correct the wrong answers that are passed out, and don't have the desire to play the social media game to get them. When it was new, Stackoverflow seemed to have a lot of interesting stuff going on. Today it's mostly about helping people with their homework.
Crowd sourcing does not auytomatically result in a high quality result. You actually need some experts in the mix and not just
Re: (Score:2)
^^^ This is why you don't want to be the employer of people on their first trip around the SDLC. I bet AC draws a check in positive numbers of dollars, despite the wreckage in his wake.