Live data from Hacker News

State of JavaScript 2021

2021.stateofjs.com

91–100 of 245 posts

Re: State of JavaScript 2021

#91
post #84
post #60

As someone new to front-end and who will probably only be building small hobbyist stuff by myself, is the mountain climb that is mastering React worth it? From my initial look into it, it seems incredibly complex.

No, it is not. Unless you are planning to use your experience for getting a job, it is not worth it. I would advise you to use vue or svelte.

Would most likely not factor into the career path as I don't have the time to dedicate myself to becoming a front-end pro

Re: State of JavaScript 2021

#92

Not familiar with much front-end work - can anyone give insight to what's gone on with Ember?

I just got a new job, mostly backend but with a bit of Ember thrown in, and I despise the framework. It's slow to work with, massive, and incredibly over-engineered and makes it so that creating the simplest of features is an absolute mess. Maintaining a sizeable Ember project is pure hell of traversing through 800 folders and files to find the one place the thing you're looking for is, since you can have a controlle…

Handlebars extends on Mustache which considers itself "logic-less" templating language. I think `{{#if (and foo bar)` goes against that principle, so introducing ie `shouldShowX` property on component which then depends on foo && bar and just using `{{#if shouldShowX` really helps.

Re: State of JavaScript 2021

#93
post #57
post #48

Only 22% make above $100k? [0] Those salary demographics makes me doubt the entire data set. Over 40% of respondents make less than $50k [0] https://2021.stateofjs.com/en-US/demographics/#yearly_salary Edit: Only 14% of respondents are in the US, which probably explains the above.

There's also a tab that divides it up by country. In the US, 58.4% makes $100k-$200k, and 16.1% over $200k.

The contrast is really stark when you compare it to for eg. India, where 64% of the respondents earn less than $50k. And this is likely with a skewed sample too - 343 respondents, of which I'd bet most are in FAANG and FAANG-adjacent companies (eg. Flipkart). The actual percentage that earn above 2 lakhs per month (= $50k p.a.) is likely less than 20%, even allowing for a strict definition of a "Javascript developer".

Re: State of JavaScript 2021

#94
post #22

I read this report every year. This year it feels the most like it's driven by hype (and marketing, hi Vercel!). In my professional and personal experience, react has never been better to use (in terms of features, DX, maturity, community, productivity), yet if you look at the "popularity" (oh dear) graph, it's basically just describing how older tech slides down while newer shiny tech comes in and is instantly the m…

It's always driven by hype, or maybe groupthink. Every year I feel bad for the Ember contributors when this thing comes out cuz the respondents boldly claim Ember's bad while also admitting they've never used it and have no interest trying it. The clear mark of a popularity contest.

Do they say Ember is bad, or that they just haven't used it and have no interest in trying it?

Re: State of JavaScript 2021

#95
post #48

Only 22% make above $100k? [0] Those salary demographics makes me doubt the entire data set. Over 40% of respondents make less than $50k [0] https://2021.stateofjs.com/en-US/demographics/#yearly_salary Edit: Only 14% of respondents are in the US, which probably explains the above.

Frontend development is not a great career path; it's mostly a young people's game. I know senior react developers in their thirties that are increasingly struggling to find well paying gigs because they are competing with young people at half their rate. A lot of frontend developers transition to full stack js and from there to doing more serious things using Go, Rust, or whatever. That's where the money is. It's a…

This hasn't been my experience at all. People are building increasingly complicated apps like Figma in the browser and are happy to hire senior developers and pay them well. If anything I see the number of back end roles diminishing as people increasingly delegate that stuff to various cloud services.

Re: State of JavaScript 2021

#96

Earlier quoted context omitted.

People inheriting old react codebases now have to deal with way more complexity. For example, everyone was using styled components 2-3 years ago and now they are moving away. The complexity styled components introduced has to be managed alongside the current trend (tailwind?). Old styled components codebase looks horrible. They end up with Java inheritance hell. You create a button, then create another button inherit…

I'm working on a codebase that evolved at the same pace as React, but without any thought for idiomatic principals. As a result, you have class-based components, purely functional components, hook based components, HOCs, Redux state passed in through the older functional way, Redux state passed in through an HOC, styled components, traditional CSS styled components, and anything else you can think of that was in vogu…

React's blessing and curse is that it is so (relatively) simple. It holds only one opinion, that UI should be a pure function of input/state. It leaves everything else up to "you", which is where the problem sets in.

Re: State of JavaScript 2021

#97

For testing, I've been exploring vitest which is missing from this list because jest looks unmaintained and has growing pain with typescript and esm support. https://vitest.dev/ It's a drop in replacement for jest. The only change you will need to make in most cases is adding an explicit import for expect, describe, and it. It works without any config with esm and typescript. It's also 5x faster in development. It in…

> has growing pain with typescript and esm support.

I'm curious - what do you mean by this? Been using Jest in multiple codebases with typescript and ES Modules and never ran into an issue.

Re: State of JavaScript 2021

#98
post #22

I read this report every year. This year it feels the most like it's driven by hype (and marketing, hi Vercel!). In my professional and personal experience, react has never been better to use (in terms of features, DX, maturity, community, productivity), yet if you look at the "popularity" (oh dear) graph, it's basically just describing how older tech slides down while newer shiny tech comes in and is instantly the m…

Nah, Angular is that bad

What do you consider "that bad" in Angular?

Re: State of JavaScript 2021

#99
post #3

Not surprised to see satisfaction drop with increase in usage for React. People feeling like they’re forced to use something because of external constraints (coworkers choices etc) are rarely satisfied with that choice. That’s the fate of any tool that becomes popular enough.

People inheriting old react codebases now have to deal with way more complexity. For example, everyone was using styled components 2-3 years ago and now they are moving away. The complexity styled components introduced has to be managed alongside the current trend (tailwind?). Old styled components codebase looks horrible. They end up with Java inheritance hell. You create a button, then create another button inherit…

Bad developers will write bad code no matter the pattern - styled components has never been a source of issues for us. Why would we move to a new “trend”? I think this is unique to the JS ecosystem.

Re: State of JavaScript 2021

#100

Earlier quoted context omitted.

I just got a new job, mostly backend but with a bit of Ember thrown in, and I despise the framework. It's slow to work with, massive, and incredibly over-engineered and makes it so that creating the simplest of features is an absolute mess. Maintaining a sizeable Ember project is pure hell of traversing through 800 folders and files to find the one place the thing you're looking for is, since you can have a controlle…

Handlebars extends on Mustache which considers itself "logic-less" templating language. I think `{{#if (and foo bar)` goes against that principle, so introducing ie `shouldShowX` property on component which then depends on foo && bar and just using `{{#if shouldShowX` really helps.

I do understand that reasoning, but that comes back to my annoyance with having to deal with a million files to do anything simple. I then need to create a backing controller if it wasn't there before, and if it is there, I need to add on an extra computed on top of the mess of other computeds already present. Why so complicated? JSX and Vue's flavor of templating is infinitely better, since it's basically just regular javascript in the template.
Post reply on HN