Coffee
Coffee (source: Pexels)

I recently asked Cory House, Pluralsight author and Microsoft MVP, about JavaScript development and getting started with React. At the O'Reilly Fluent Conference, Cory will be presenting a workshop, Build a JavaScript development environment.

You’re giving a workshop at Fluent in June on building a JavaScript development environment. Why has building a modern JavaScript app become so complicated and what are your best tips for getting started?

JavaScript development is complicated because we keep raising the bar. A few years ago, few people even minified or tested their code. We slapped a script tag on the page and started writing code in the global namespace. But applications have grown increasingly complex and JavaScript has grown up. So today, we're expected to bundle to save HTTP requests, to minify to save bandwidth, to transpile in order to provide cross-browser support, and much more.

To get started, I suggest learning a popular framework or library like React or Angular. You'll be doing a lot of things you don't understand at first, but you can slowly dig in and learn how they work as you find time. JavaScript has become a huge language, so getting started with simple, concrete examples lets you slowly learn while adding value along the way.

React is incredibly popular and is a leading framework/library in the “want-to-learn-about” category for most frontend developers (State of JS). The ecosystem around React is also beginning to stabilize and best practices have emerged. What’s your advice for newcomers to React? Any common pitfalls to avoid?

I suggest starting with reading the React docs and creating a simple example using create-react-app. The Facebook team has done a wonderful job creating comprehensive docs and a reliable starter kit. I've also published a couple courses that introduce React and explore related libraries like Flux and Redux.

With the rise of single page apps (SPAs) in recent years, client-side rendering has become the new normal. Do you feel think this style of architecture is here to stay?

Absolutely. I believe client-side rendering is here to stay. It enables rich interactivity, saves bandwidth, and utilizes a tech stack that can deliver not just web apps, but mobile apps and desktop apps as well. Client-side rendering won for all these reasons and more. I explored this in detail in "Here's Why Client-side Rendering Won."

What do you feel are the most crucial non-technical skills for developers working on the modern web?

The ability to discern signal from noise. With so many new libraries being released every week, it's critical to have a good sense of what's worth paying attention to. I like to wait until I've seen something mentioned multiple times before I dig in. That's a good sign many people are intrigued.

You’re speaking at Fluent this year. What other sessions/topics are you most interested in checking out at the show?

As a React developer, I'm excited for Max Stoiber's session on styling React components. I'm also really interested in exploring functions as a service, and there are multiple interesting sessions on this topic.

Article image: Coffee (source: Pexels).