Live data from Hacker News

Roadmap to becoming a React developer in 2018

github.com

21–30 of 153 posts

Re: Roadmap to becoming a React developer in 2018

#21

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've noticed this spirit of "learn everything" all over the React and JavaScript community, and I don't think it's a good thing.

I strongly disagree there. The only way for an engineer to make good decisions as to what tools / framework to pick from is to know and understand as much tech as possible.

It is fundamental for an engineer to do this job of tech-watching in order to not become religious and blinded by the tool it's currently using.

React is good , but it has it's own issues. If you don't do the effort of learning other tech ( Angular , Vue ) you have absolutely no idea what those issues are, and you will just learn how to work with them ( Atomized ecosystem , Heavy Boilerpate ) and basically accept them as a normal thing.

They aren't.

Learning other tech makes you more encline to try new things and to criticize the tool you are working with and how to improve them.

Re: Roadmap to becoming a React developer in 2018

#22
I'm torn. I don't think the aim should be "become a ${framework} developer" but just become a solid programmer with specialization in front-end technologies. If I needed to bounce out of front-end and into another tech role, I wouldn't have too hard of a time because I'm familiar with more than Javascript (I started learning programming with Ruby and Rails, but got my first professional gig doing analytics/seo).

I feel like this is a more compelling tech tree (not mine): https://github.com/kamranahmedse/developer-roadmap

Re: Roadmap to becoming a React developer in 2018

#23

I'm torn. I don't think the aim should be "become a ${framework} developer" but just become a solid programmer with specialization in front-end technologies. If I needed to bounce out of front-end and into another tech role, I wouldn't have too hard of a time because I'm familiar with more than Javascript (I started learning programming with Ruby and Rails, but got my first professional gig doing analytics/seo). I fe…

> become a solid programmer with specialization in front-end technologies.

Sure. In this case I would write that as "Software Developer with experience in Javascript, HTML, CSS, and React".

Well... You could probably replace that with "Frontend Developer with experience in React".

Except that React is a frontend framework, so you might as well simplify that as "React Developer". And now we're back where we started.

Re: Roadmap to becoming a React developer in 2018

#24
post #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 st…

Who cares about face. The best time to learn is when you have to. That's not to say be lazy, it's to say continuously challenge yourself so you frequently "have to".

Re: Roadmap to becoming a React developer in 2018

#25
I've never learned any programming language / framework with a step-by-step component learning. I usually grab a simple task ( make a todo app, make a hello world, etc. ) and do it.

Funny enough I've worked with and know almost all of the yellow circles on this diagram only because I needed them at some point.

Re: Roadmap to becoming a React developer in 2018

#26

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…

As one grows old we learn to avoid learning every new fad until dust settles.

I saved a few brain cells by not bothering with GWT, CoffeeScript, mootools, YUI, prototype...

Re: Roadmap to becoming a React developer in 2018

#27
This chart is over complicated and I feel like it's meant to throw you off and make you feel like React programming is over complicated, which it isn't.

Don't let this scare you away from React. React is simple.

Remember, React is just the view layer. You can do whatever you want outside of React. You don't have to buy into anything else. And if you want to, you can buy into them piecemeal. You're not locked into anything, don't worry!

Here's a short cheat sheet:

- Use create-react-app. It does every single boilerplate thing perfectly for you. You don't need to worry about gulp or weback for a single second.

- Don't worry about yarn. Don't even worry about npx. Just use npm. There are binaries inside ./node-modules/.bin/ if you need them.

- You absolutely do NOT need a CSS preprocessor with React. When you make reusable components, you can just add style={...} to them and you have good old fashion encapsulation.

- Want Types? Just add TypeScript, you have nothing to lose, it's battle tested and very easy to integrate lately. It won out over Flow. Don't want types? Skip this! You don't need them! Skip PropTypes, it's falling out of use and if you're using TypeScript then it's not even a little helpful.

- Want Routing? Use React-Router 4. They ditched the old imperative API. Now is honestly just shorthand for "if location.href matches this pattern, then render this given thing in my place" and if you think of it like that then you never have trouble with it again.

- Want to react to events imperatively, maybe from Socket.io? Use Kefir. At the mouth of the stream you create a function that takes events in, and pass it to a component that gives it a handler that takes incoming events and handles them. Think of it like Unix pipes except you get to create both ends and pass them around your app. Still too complicated? Just write your own function that does exactly this for you, BAM suddenly it's demystified and you can delete it and install Kefir now.

- Want to manage your state? Just pass things as props and use setState! You really don't need to learn Redux or Mobx, they are overkill for 90% of apps. People only seem to adopt them because they think they need them, because of pages like OP's.

- Don't worry about GraphQL! fetch works great, there is a built in polyfill in create-react-app, and Express.js makes it really easy to pass JSON around.

- Worried about testing frameworks? Don't even worry about testing if you don't want to! Test driven development is great if your manager or client wants it, but it's absolutely not necessary to writing a good product. Anyone who says otherwise either belongs to or leads a cult. Software development is a job, not a religion! There is more than one way to skin a cat ;) If you still want tests, create-react-app has some stuff built in for that. I've never used it but I hear it's good.

I strongly believe React is the future. We do have some problems with bundle sizes but if the community pulls together and React gets enough love and attention, we'll keep fixing these things like we consistently have been. And don't worry about all the extras, none of them are necessary to learn and get productive!

Re: Roadmap to becoming a React developer in 2018

#28

I'll probably get down-voted to oblivion for suggesting this, but is there a C#/.Net developer roadmap? I can only find quite generic front/back end developer roadmaps online.

Not really, because there is a wide spectrum of stuff you might do.

- Do you want full stack?

- Native frontend (which one Forms, WPF, UWP)?

- Web frontend (Forms, MVC, .NET Core MVC, Sharepoint, Sitecore)

- Distributed computing (WCF, Akka.NET, Orleans, SignalR)

- Database access (ADO.NET, Dapper, EF, EF Core)

- Game development (Unity, MonoGame, CocosSharp, Xenko)

There are many other possible groupings, so it depends a lot in what you want to focus.

Have you had a look at MVA videos?

https://mva.microsoft.com/#developers

Re: Roadmap to becoming a React developer in 2018

#29

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…

It's not bad to offer suggestions on what to learn if you're looking to solve some particular problems. It's a cheat sheet. But cheat sheets like the one OP linked to scare people like me away! It shows everything all at once without any context as to why you would want to use each part over its alternatives (including none).

If I made a chart like this one, I would take out CSS preprocessor section completely, replace the whole Build Tools section with "create-react-app", remove PropTypes and Flow in favor of TypeScript, move the State Management into a separate de-emphasized chart, and a bunch more.

Re: Roadmap to becoming a React developer in 2018

#30
post #19

Earlier quoted context omitted.

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 st…

Who cares about face. The best time to learn is when you have to. That's not to say be lazy, it's to say continuously challenge yourself so you frequently "have to".

It's not about face. It's about being able to effectively deliver stuff without needing to blow all estimates because you have to learn everything.

My family doctor constantly has to learn about new things, but he needs to have a basic foundation so he doesn't have to learn everything every time a new patient comes in the door. If he did, I'd go see someone else.

Post reply on HN