Thursday, May 6th, 2021
Any suggestions for a decently experienced developer completely new to JS? I’m kinda excited by TypeScript and React, but it seems like I’ll need to spend some time learning the basics first.
- How should I get setup to play around with the language? Especially excited about options for developing in VSCode.
- Do you have any favorite blogs/books/example projects I should take a look at?
- I’m mostly self-taught, but also open to great tutorials or more directed online learning resources.
I got so much great advice in response, I figured I'd summarize it here. First off, credit where credit is due, thanks to everyone with their replies
- Div Arora, former colleague at Zipline.
- Luke Madera, friend from Berkeley.
- Asher King-Abramson, fellow bubble soccer champion.
- Alain Hernandez, former colleague at Zipline.
- Ivan Wang, former colleague at Zipline.
- Sarah Trisorus, former colleague at Zipline.
- Matt Symonds, friend from Berkeley.
- Steve Cipriano, friend from Berkeley and former roommate in SF.
- Nick Speal, former colleague at Zipline.
As Div put it, "In terms of editors, ... most popular editors have on the spectrum of good to superb support for ts/react. VSCode is on the latter end based on what I’ve heard, and comes functional out of the box." This was my experience. My setup today includes only one VSCode extension, ESLint, but the general environment is great.
That said, I wouldn't summarily suggest you go straight to strict mode with TypeScript. I spent a couple days beating my head against the wall dealing with the loosely typed interface of the AWS SDK, where everything is optional. The best solution was to selectively turn on as many strict features as possible, but this didn't include strictNullChecks.
First off, as Nick put it, "the Mozilla Developer Network is the definitive go-to resource for any questions you have as you’re going along. Any time you have a question about how something in JS, HTML, or CSS works, MDN usually has the answer." Ivan similarly said he'd "100% recommend [MDN] over the crap like w3school that shows up first on google."
When it came to learning React, Div, Luke, Sarah, & Nick all recommended the Intro to React Tutorial, and I couldn't agree more.
Matt (as an App Academy alum) and Asher (as their former head instructor then lead software engineer) both recommended the App Academy content on JS. This seems like a great approach for someone with Ruby experience (that comes first in their curriculum), but I ended up skipping it for that reason.
Matt also sent me a really useful website, Full Stack Python, which itself contains some great resources for learning JS.
Web frameworks seem to come and go with such frequency that any blog post will almost immediately become out-of-date. That said, the consensus seemed to be that React would be a great place to start, given its popularity. Also mentioned were Vue and Svelte, and I was discouraged to try Angular given its steep learning curve and (apparent) downswing in popularity.
With React, multiple folks suggested create-react-app as a great way to get started, along with NextJS. I got pretty excited about Jamstack, and ended up using NextJS for that reason, and I enjoyed going through their tutorial.
Questions | Comments | Suggestions
If you have any feedback and want to continue the conversation, please get in touch; I'd be happy to hear from you! Feel free to use the form, or just email me directly at firstname.lastname@example.org.