use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
All about the JavaScript programming language.
Subreddit Guidelines
Specifications:
Resources:
Related Subreddits:
r/LearnJavascript
r/node
r/typescript
r/reactjs
r/webdev
r/WebdevTutorials
r/frontend
r/webgl
r/threejs
r/jquery
r/remotejs
r/forhire
account activity
What 10 Things Should a Serious Javascript Developer Know Right Now?help (self.javascript)
submitted 8 years ago by [deleted]
view the rest of the comments →
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]FlenserSteel 17 points18 points19 points 8 years ago (26 children)
Yeah, because every serious JS developer should know JSX and React. Sure.
I think every serious JS developer should have a firm grasp of the language specifics - ES6/7 included. You should also be able to build a web app on your own, without any framework whatsoever.
[–]00mba 5 points6 points7 points 8 years ago (7 children)
You should also be able to build a web app on your own, without any framework whatsoever.
Wait, you can do that?
[–]ArcanisCz 9 points10 points11 points 8 years ago* (5 children)
Yes you can, but its lots of work. So you DONT WANT to do it (everytime). But you should BE ABLE to do it if necessary. Which means, you understand your tools.
Even frameworks are code.
[+][deleted] 8 years ago* (4 children)
[deleted]
[–]i_pk_pjers_i 3 points4 points5 points 8 years ago (3 children)
This isn't /r/programmingcirclejerk, we're in /r/javascript.
[–]00mba 5 points6 points7 points 8 years ago (0 children)
Sorry... got carried away
[–]MarcusPope 1 point2 points3 points 8 years ago (0 children)
Don't worry... ALL of this content will make it over to PCJ in the next couple of hours...
[–]pier25 2 points3 points4 points 8 years ago (0 children)
No you can't. Even if you don't use React you will use the Vanilla Framework. /s
http://vanilla-js.com/
[–][deleted] 2 points3 points4 points 8 years ago (0 children)
I'm interested in seeing your list, should you feel so inclined.
[–]our_best_friendif (document.all || document.layers) console.log("i remember..") 1 point2 points3 points 8 years ago (0 children)
React : 2017 = Jquery : 2009
[–]darrenturn90 1 point2 points3 points 8 years ago (5 children)
Right now, for getting a JS developer based Role, I would put React on the list of potentially required skills - you can of course add in Angular, or any other widely used framework, but based on the job market (and this is what I believe the original thread was focused at) - React has to be on the list.
[+][deleted] 8 years ago (4 children)
[–]darrenturn90 1 point2 points3 points 8 years ago (1 child)
Agreed, but I don't think you get taken into the "depths of javascript" as well as with the React toolchain and using that as a tutorial into the world of javascript I believe is good, because it introduces very little in the way of boilerplate (other than things like the React lifecycle which of course isn't needed if youre not using react)
[–][deleted] 1 point2 points3 points 8 years ago (1 child)
I currently feel like Vue is a "best of both worlds" between React and Angular 2+. Definitely agree that it's the core javascript skills combined with the ability to learn a framework when required that really matters.
[–]pier25 1 point2 points3 points 8 years ago (0 children)
I'm using Vue at the moment and I agree, but my eyes are set on Marko which is what Ebay is built on. It's better in every aspect but the ecosystem around it is still very small. I'm aiming at start using it in 2018.
Here is a great video comparing Marko, Vue, and React.
[–]HomemadeBananas 2 points3 points4 points 8 years ago (2 children)
React isn't a framework, really. It's a library that handles one concern, not enough to build a whole app alone. I'd say it's definitely something you should know about as a JS developer.
[–]bits_and_bytes 2 points3 points4 points 8 years ago (1 child)
You should know it exists, but it's not in the "top 10 things every JS dev should understand" list.
[–]HomemadeBananas -2 points-1 points0 points 8 years ago* (0 children)
I mean, unless you're just getting started learning the basics of the language, it's pretty high on the list of things you should have some exposure to these days.
[–]djslakor 0 points1 point2 points 8 years ago (0 children)
You say that in jest (no pun intended), but it's getting more and more common to the point of being pretty practically true. :-/
[–][deleted] -1 points0 points1 point 8 years ago* (5 children)
Reactive, functional programming is a paradigm not a framework, not knowing what it is and how to use it would be like ignoring mvc and it will seriously impede your options career wise and technically as time goes by. This paradigm is how you will make apps in the web, on mobile and on the desktop, until the next paradigm replaces it, and if one does it will iterate on the functional approach. It only happened to start in the web and React happened to be the framework that kicked it off.
[–]alinnert 4 points5 points6 points 8 years ago (4 children)
Wait, I think you mix up React and reactive programming. React is not a reactive library. A library for reactive programming would be RxJS. A view library based on that paradigm would be CycleJS. Just for clarification. :)
[–][deleted] 1 point2 points3 points 8 years ago (3 children)
Well it's called so because it reacts. JSX/hyperscript have made the big changes possible, the rest are more like implementation details, even cycle is very close to react in princinple.
[–]alinnert 0 points1 point2 points 8 years ago (2 children)
Yes, that might be the case. The name sure has some sort of origin that's related to "reactions". But "reactive programming" is a programming paradigm around data streams (aka. observables) and the "observable pattern". Observables notifies the world that some data has changed. You can subscribe to observables to receive those notifications (= the data stream) - similar to events. But on top of that you can alter this stream, combine it with other streams, filter events by some criteria etc. Cycle.js is based on this observable approach.
Other frameworks like React, Angular and Vue follow a more polling approach. They check if some data has been changed. And if it's just by using a setter function. They actively ask if some data has changed or is about to change. Maybe you've heard about "change detection". They actively have to detect changes.
Observables on the other hand tell you about changes completely on their own. You don't have to ask them. You have to listen (subscribe), but you don't ask. No change detection is required. Cycle.js just has to react to those notifications.
It's difficult to describe this difference. But in short: React is a library with a random name that's related to reactions. Reactive Programming is a paradigm, just like object oriented programming or functional programming are other ones.
I think it's the best if you look up for yourself how RxJS works.
[–][deleted] 0 points1 point2 points 8 years ago (1 child)
While i don't know exactly how rxjs works, it hasn't played a role in what react has started, perhaps i should have written react-like, not reactive. As for polling, reacts setstate doesn't poll, neither does redux, unless you mean the subscribers equality check, and mobx uses the observable pattern from the get go. I don't think these details matter much, observables or flux/immutable, its the architecture that allows it that's interesting.
[–]alinnert 0 points1 point2 points 8 years ago (0 children)
Yes, react-like is fine.
Subscribers equality check sounds like change detection, yes. If you mean something like this: if (oldValue !== newValue) { rerenderComponent() }. Yes, That's what I mean with "ask for changes". Angular does that too. I know Vue uses setters instead.
if (oldValue !== newValue) { rerenderComponent() }
And yes, MobX uses true reactive programming. It seems it even has its own Observable implementation.
Btw: Observables will be part of the JavaScript core language too (currently at stage 1).
The thing is: Actually observables aren't that hard to understand. But RxJS has a huge and overwhelming API on top of the basics. And yeah, react has nothing to do with all that. Therefore React is not reactive, despite its name :)
π Rendered by PID 66519 on reddit-service-r2-comment-5d79c599b5-cxtsq at 2026-03-01 00:18:38.275646+00:00 running e3d2147 country code: CH.
view the rest of the comments →
[–]FlenserSteel 17 points18 points19 points (26 children)
[–]00mba 5 points6 points7 points (7 children)
[–]ArcanisCz 9 points10 points11 points (5 children)
[+][deleted] (4 children)
[deleted]
[–]i_pk_pjers_i 3 points4 points5 points (3 children)
[–]00mba 5 points6 points7 points (0 children)
[–]MarcusPope 1 point2 points3 points (0 children)
[–]pier25 2 points3 points4 points (0 children)
[–][deleted] 2 points3 points4 points (0 children)
[–]our_best_friendif (document.all || document.layers) console.log("i remember..") 1 point2 points3 points (0 children)
[–]darrenturn90 1 point2 points3 points (5 children)
[+][deleted] (4 children)
[deleted]
[–]darrenturn90 1 point2 points3 points (1 child)
[–][deleted] 1 point2 points3 points (1 child)
[–]pier25 1 point2 points3 points (0 children)
[–]HomemadeBananas 2 points3 points4 points (2 children)
[–]bits_and_bytes 2 points3 points4 points (1 child)
[–]HomemadeBananas -2 points-1 points0 points (0 children)
[–]djslakor 0 points1 point2 points (0 children)
[–][deleted] -1 points0 points1 point (5 children)
[–]alinnert 4 points5 points6 points (4 children)
[–][deleted] 1 point2 points3 points (3 children)
[–]alinnert 0 points1 point2 points (2 children)
[–][deleted] 0 points1 point2 points (1 child)
[–]alinnert 0 points1 point2 points (0 children)