Live data from Hacker News

Roadmap to becoming a React developer in 2018

github.com

11–20 of 153 posts

Re: Roadmap to becoming a React developer in 2018

#11

I'm always fascinated by these -- it puts hard earned skills (that I would otherwise take for granted) in perspective. Thanks! A few suggestions: I would argue that Redux isn't required (but suggested), and instead a Flux implementation is required. I would also argue that SASS (or LESS) preprocessor experience isn't required but also just suggested.

I've been using plain css for my React stuff so far but I do miss a lot of the syntactic sugar Sass allows, like nested selectors, BEM extrapolation, colour utilities etc. What is the norm for people these days when it comes to CSS and React? is css-in-js very popular at all?

I'm happily using SASS with React. If you're using webpack it's very easy to integrate (just add the SASS loader on top of the CSS loader and you can `import styles from './styles.scss'` in your JS files. Optionally, you can also integrate with the CSS modules option from the CSS loader.

I think CSS in JS is moderately popular. But I would hazard a guess that there are still at least as many people using SASS.

Re: Roadmap to becoming a React developer in 2018

#12
I've noticed this spirit of "learn everything" all over the React and JavaScript community, and I don't think it's a good thing.

Learning happens contextually as you figure things out. I see no use to learning half of the things on here that you'll never use. You do risk, however, in the confusing and complex JavaScript landscape, getting paralyzed by choice and never getting off the ground. I shutter thinking about how large some peoples' `package.json` files are.

There will always be a better way to build and some better technology. Build based on what you know and know how to pick tools when you run into a wall. When you need to refactor, you'll have a much stronger appreciation for /why/ you need some tool anyway.

Re: Roadmap to becoming a React developer in 2018

#13

Earlier quoted context omitted.

I've been using plain css for my React stuff so far but I do miss a lot of the syntactic sugar Sass allows, like nested selectors, BEM extrapolation, colour utilities etc. What is the norm for people these days when it comes to CSS and React? is css-in-js very popular at all?

Styled-components has been a godsend, especially in apps that I'm working on with others. You really don't need nested selectors in most cases, since you're rarely thinking about the page context when dealing with a single react component. Styled components does namespacing for you and it's easy to share styles, colors, etc. across components for reusability (a la mix-ins) and portability via the props abstraction.

styled-components is what got me to switch from LESS to css-in-js, and I'm so grateful. Anyone interested learning about css-in-js for the first time would benefit from understanding the styled-components model, but there's already churn in that category, and new libraries inspired by styled-components that take it further. Here's an interesting perspective on the history of CSS-in-JS:

https://github.com/streamich/freestyler/blob/master/docs/en/...

Currently i'm working with Emotion (https://github.com/emotion-js/emotion) and enjoying it

Re: Roadmap to becoming a React developer in 2018

#14
Couple of nits & questions:

1) I'm surprised CSS preprocessors made it as a must, and CSS in JS as only recommended. I figured that would be switched, isn't the current golden path CSS in JS?

2) Is webpack a must these days? Can we not just throw everything in typescript? Maybe that's only personal preferences!

3) No one ever needs to know jQuery anymore ;)

Glad to see lodash made it though

Re: Roadmap to becoming a React developer in 2018

#15

Couple of nits & questions: 1) I'm surprised CSS preprocessors made it as a must, and CSS in JS as only recommended. I figured that would be switched, isn't the current golden path CSS in JS? 2) Is webpack a must these days? Can we not just throw everything in typescript? Maybe that's only personal preferences! 3) No one ever needs to know jQuery anymore ;) Glad to see lodash made it though

Don't throw away jQuery just yet.

Re: Roadmap to becoming a React developer in 2018

#17

Couple of nits & questions: 1) I'm surprised CSS preprocessors made it as a must, and CSS in JS as only recommended. I figured that would be switched, isn't the current golden path CSS in JS? 2) Is webpack a must these days? Can we not just throw everything in typescript? Maybe that's only personal preferences! 3) No one ever needs to know jQuery anymore ;) Glad to see lodash made it though

webpack can handle a ton of things that you can't simply do with tsc

Re: Roadmap to becoming a React developer in 2018

#18

I've noticed this spirit of "learn everything" all over the React and JavaScript community, and I don't think it's a good thing. Learning happens contextually as you figure things out. I see no use to learning half of the things on here that you'll never use. You do risk, however, in the confusing and complex JavaScript landscape, getting paralyzed by choice and never getting off the ground. I shutter thinking about…

Very true, in the end everyone has limited time and it's impossible to learn everything. However, I do personally like roadmaps/guides like this since, as a beginner, it's hard to figure out what you dont know. So being able to see a list of what's considered some of the most important/relevant topics is useful in that regard.

Still I totally agree that getting paralyzed is a big problem, it's way better to program something "the wrong/inefficient/bad way" rather than to program nothing. A big part of my learning and growth as a programmer has come from coding something terribly, realizing "hey, this kinda sucks, I bet there is a better way to do this.." and googling a bit until I learn a new/better method of doing X.

Re: Roadmap to becoming a React developer in 2018

#19

I've noticed this spirit of "learn everything" all over the React and JavaScript community, and I don't think it's a good thing. Learning happens contextually as you figure things out. I see no use to learning half of the things on here that you'll never use. You do risk, however, in the confusing and complex JavaScript landscape, getting paralyzed by choice and never getting off the ground. I shutter thinking about…

Once a deadline hits, it's a little late to START learning (some percentage of learning will always have to happen, but its a bit rough if it's a big piece, ESPECIALLY if other people around you don't have to. If this happens all the time, it starts looking bad on your performance).

Then you add the fact that learning something similar to what you already know is much easier than going from scratch (eg: learning a state management pattern/library if you already know another is much easier than if you have no experience with them).

You're totally right that learning everything up front is a waste of time, but you do need SOME foundation, especially as more and more people enter the market and you start competing with candidates (the days of infinite entry level positions are coming to an end, if they ever existed). That map looks like it's a lot, but it really isn't, especially if you think of it as "things you should have cursory knowledge of" rather than "things you should be expert in". Eg: I've never built a production app with the CSS libraries mentioned (even Bootstrap I've only used in throwaway projects for a few hours), but I've taken a peek at the doc of most of them, so I at least know where to start if it's ever necessary.

Re: Roadmap to becoming a React developer in 2018

#20

I've noticed this spirit of "learn everything" all over the React and JavaScript community, and I don't think it's a good thing. Learning happens contextually as you figure things out. I see no use to learning half of the things on here that you'll never use. You do risk, however, in the confusing and complex JavaScript landscape, getting paralyzed by choice and never getting off the ground. I shutter thinking about…

I’m on your side, but the “why” is simple: a lot of people hiring will want someone to know these things. Not all or even half, but there’s a disconnect between people learning for fun vs people that want a job ASAP.
Post reply on HN