Live data from Hacker News

Roadmap to becoming a React developer in 2018

github.com

71–80 of 153 posts

Re: Roadmap to becoming a React developer in 2018

#71
post #68
post #63

I understand this is opinionated and "personal", but on the off chance that this might make React less intimidating, let me chime in and say that you can do professional work (and build pretty much any reasonable application) without: - really understanding "semantic HTML" (if you know what div's and span's are, you're ready to get to work), - understanding flexbox (you can, and many pro developers do, just use a CSS…

That's really stretching the definition of "professional work". If you're just gluing third party components and libraries together you're going to end up with a bloated mess. This is why javascript/front-end developers get so much flak - there is a prevailing opinion that you can just fake it and not bother to learn best practices, not bother to test, and not bother to care about performance. If you do not consisten…

If you've invested the time to derive a first-principles understanding of why every element in a React environment works the way it does, and what the alternatives are, and why you're going to use any given alternative, I can understand being irritated with the idea that there's a happy path that people can traverse to get to your level of productivity with 1/50th the amount of effort.

What I don't really get is the reason why their work is going to be less professional and effective than yours will be; among other things, they're much less likely to pointlessly reinvent wheels.

Really, the critique you're delivering applies only to a couple of the points I'm making, and, subtextually, it really applies primarily to the use of CSS/React frameworks like Bootstrap and Material and Foundation and Grommet. I think an ordinary developer can throw a dart to pick any of those frameworks and end up with better, less-janky, more usable UI than they would get by DIY'ing it first (and, inevitably, adopting a framework anyways).

It's a weird quirk of web development, not shared by any of the other kinds of front end development I've been exposed to in the ~22 years I've been shipping code, that "pro" UI has to be done from scratch. WinAPI and OSX developers get UI toolkits from the platform vendor, and while you might work outside those toolkits for some custom stuff, eschewing it entirely will get you looked at funny.

But use a decent UI toolkit on the web and you're "just gluing third party components together".

Re: Roadmap to becoming a React developer in 2018

#72
post #47
post #26

Earlier quoted context omitted.

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...

Now is a good time to learn front-end tech. Skipping YUI was good, but you should learn at least one of Mithril, React, Preact, Inferno. I recommend Mithril for learning and React for job opportunities. It's OK to have skipped CoffeeScript, but you don't want to skip TypeScript in 2018. The past couple of years have been good as it has increasingly harmonized with ES6.

You can work perfectly fine in the industry without typescript.

Re: Roadmap to becoming a React developer in 2018

#73

Crazy to me how far we’ve come from HTML and some script tags. Part of me is really sad that the web is big and complicated and ugly now. I just don’t have the patience to read some new framework author’s long winded and grandiose tutorial and ode to themselves. Why is it so hard to do seemingly simple things? I can remember 10 years ago training up someone with no programming experience at all to competency in a few…

Are you implying that the websites being built in 2008 were as sophisticated and complex as the sites in 2018? Have you considered technologies like React Native which mean you don't need to maintain 4 different entirely separate codebases for your 4 different frontends?

And instead we have a 1 bloated codebase that is slow on 3 platforms and doesn't provide native features?

The fascination with 1 codebase doing multiple things is funny.

Re: Roadmap to becoming a React developer in 2018

#74

I am a professional developer who primarily uses React and I actively avoid most of this. I keep up with the community so know (or at least know about) almost all of this, but choose not to use it all. The direction I have seen react go is exactly the opposite of the reason I liked it in the first place. It was simple and JUST A VIEW LAYER. How it became all of this is just typical software devs over complicating thi…

This. You don't even have to use react if you understand one way binding flow, entire dom update logic can be written in 100-200 lines of code.

Re: Roadmap to becoming a React developer in 2018

#75
post #63

I understand this is opinionated and "personal", but on the off chance that this might make React less intimidating, let me chime in and say that you can do professional work (and build pretty much any reasonable application) without: - really understanding "semantic HTML" (if you know what div's and span's are, you're ready to get to work), - understanding flexbox (you can, and many pro developers do, just use a CSS…

> really understanding "semantic HTML" (if you know what div's and span's are, you're ready to get to work)

If you're not willing to at least think about making things accessible to screen readers, you're not being "professional".

Re: Roadmap to becoming a React developer in 2018

#76
post #68
post #63

I understand this is opinionated and "personal", but on the off chance that this might make React less intimidating, let me chime in and say that you can do professional work (and build pretty much any reasonable application) without: - really understanding "semantic HTML" (if you know what div's and span's are, you're ready to get to work), - understanding flexbox (you can, and many pro developers do, just use a CSS…

That's really stretching the definition of "professional work". If you're just gluing third party components and libraries together you're going to end up with a bloated mess. This is why javascript/front-end developers get so much flak - there is a prevailing opinion that you can just fake it and not bother to learn best practices, not bother to test, and not bother to care about performance. If you do not consisten…

Interesting perspective: I think the precise opposite is true.

Redux, react-router, design patterns are gluing third party components together. The number of people who blindly run create-react-app without a hint of real understanding of what boilerplate it installs, or how many dependencies it pulls in, what those components do, is overwhelming.

You're right: the prevailing opinion is that you can just fake it; drop in redux, follow a nice straightforward guide on creating some actions and reducers step by step without having to make any real architectural decisions about application state or even fully understand the mechanics of dispatch lifecycle.

(Note: not a criticism of Redux, Redux is fine, rather a criticism of any ecosystem where hordes of relative beginners run automated boilerplate generators and slap together convention-over-configuration apps run on the most populist trending paradigm with no attempt to understand the—possibly very good—reasons these patterns became fashionable)

tptacek is pointing out that one can focus on learning your individual components (general definition of the word, not React.Component) properly, rather than learning the "way" to put all the recommended bits together at a high level and not understand each deeply. e.g. learn React, rather than trying to learn React+Redux+router; it will give you a much more professional understanding of the boundaries between these dependencies too.

> If you do not consistently produce work of professional quality you just might not be a professional.

I'm sorry but this sentence comes across a little conceited. If you are unable to grok the composition of your own product how can you even begin to ascertain its quality?

Re: Roadmap to becoming a React developer in 2018

#77

There is missing just one point: prepare that in 2019 most of the things will be different, the rest will be obsolete.

React has been around for five years now. JS ecosystem change fatigue articles and comments are what's really going out of style. ;-)

Re: Roadmap to becoming a React developer in 2018

#78
post #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 any…

Now convert that into a blog and post it to HN. The fight vs. bloatelitists has just begun!

Re: Roadmap to becoming a React developer in 2018

#79
post #73

Earlier quoted context omitted.

Are you implying that the websites being built in 2008 were as sophisticated and complex as the sites in 2018? Have you considered technologies like React Native which mean you don't need to maintain 4 different entirely separate codebases for your 4 different frontends?

And instead we have a 1 bloated codebase that is slow on 3 platforms and doesn't provide native features? The fascination with 1 codebase doing multiple things is funny.

You're acting as if React makes it impossible to do anything else. As needs to be iterated every time we have one of these threads: you're still free to do it the "old way" -- writing your backend in X lang, your iPhone app in Swift, your Desktop apps in C++, your Android app in Java, and your web frontend in HTML/SASS/JS/jQuery. Nobody is stopping you.

The truth is that people want their apps on multiple devices these days, and many apps wouldn't exist without react, at least not a port for your platform of choice. Yes, React sacrifices convenience for performance, but that has always been a trade-off. You'll notice very few people writing apps in C these days.

That being said:

What native features are you lacking?

What apps are you using that are noticeably slower than native alternatives?

My main complaint with React Native is the memory usage, but that is getting better and better and my computer has tons of RAM these days.

Re: Roadmap to becoming a React developer in 2018

#80
post #26

Earlier quoted context omitted.

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...

That's silly. GWT was a solid platform for quite a large number of years, and is still used in quite a large number of enterprises. Also, there are a lot of good ideas in there that the JS community is only just catching up to, like dead code elimination. A lot of modern javascript/typescript syntax is inspired by CoffeeScript. And CS is so trivially easy to learn that "saved a few brain cells" sounds like intellectu…

Plain old good Java, C#, C++, JavaScript and SQL.

Since 1993, C only when not allowed to use C++ instead.

Post reply on HN