The React Newsletter #54

The Ultimate Reading List for Developers

I’ve been a software developer for some time now. I started with web development in 2004, moved to a full stack position in 2009 and began developing for iOS in 2013.

I began my professional journey by reading three books — one about HTML, one about CSS and one about SQL. The rest came from Google, Stack Overflow and blogs. The internet is amazing — as a young developer I was reading 5 or more articles every day. You can really find quality information that will get you to the level you want — for free.

My general programing knowledge comes mostly from my computer science degree and work experience. Yes. Turns out you learn a lot from just programming and facing different situation while working with different teams.

One thing I’ve always wanted to do is read more software development books, but there‘s an endless list of “Must Read Books For Developers”. The list of lists of “Must Read Books For Developers” isn’t small either…

Every book is great in its own right but there are just too many to read in one lifetime. Maybe two lifetimes even. This could get a little overwhelming and always prevented me from picking up my first book as a professional. Turns out — I’m not the only one.

Read more

Yarn vs npm: Everything You Need to Know

Yarn is a new JavaScript package manager built by Facebook, Google, Exponent and Tilde. As can be read in the official announcement, its purpose is to solve a handful of problems that these teams faced with npm, namely:

  • installing packages wasn’t fast/consistent enough, and
  • there were security concerns, as npm allows packages to run code on installation.

But, don’t be alarmed! This is not an attempt to replace npm completely. Yarn is only a new CLI client that fetches modules from the npm registry. Nothing about the registry itself will change — you’ll still be able to fetch and publish packages as normal.

Should everyone jump aboard the Yarn hype train now? Chances are you never encountered these problems with npm. In this article, we’re going to compare npm and Yarn, so you can decide which is best for you.

Read more

Supporting large scale React apps

Watch video

Form Validation As A Higher Order Component Pt.2

This is the second and final part on implementing a higher order component for validating form inputs. Part one was solely focused on implementing the validation itself and not concerned with React or higher order components. For a better understanding of the validation implementation, you might want to read the first part, although you can follow along if you’re only interested in the React part.

In this follow up we will use React and Recompose to build a higher order component that accepts a function or a class containing form elements and take care of validating the inputs and returning and rendering the errors when needed.

Read more

Autocomplete Widget with React

This project will guide you through building an autocomplete function similar to the one that you might see in Slack (a popular messaging app), as shown in figure 1, when you type something in the search box. For simplicity, our widget will work with room names (the rooms in a chat application).

Read more

The Most Important Eslint Rule for Redux Applications

tl;dr Run yarn add --dev eslint-plugin-import and add "import/named": 2to your .eslintrc rules to prevent accidentally importing constants that don’t exist to your reducers.

Read more

Building the Case for Static Types in your React Applications

React.js has grown quite popular over the last couple of months and thus it’s no surprise that me and my colleagues got to work on a range of projects built with some combination of tools like React, Redux, Immutable, Webpack and JSX.

Most of our projects have relatively young code bases, only a couple of them are older than a year. It’s those older projects — the ones which have already gone through some changes in teams and requirements already — that I’d like to talk about here.

The general opinion amongst me and my colleagues about React and the other tools mentioned previously has been very positive. We enjoyed building applications with these tools and to us they are a big leap forward when it comes to the development of single page apps.

I’m happy to see techniques of functional programming becoming more popular. Our web apps have been more stable since we are building them with pure functions, immutability and atomic state management in mind.

However, most of the React projects that I have worked on were not (yet) using static types.

I don’t want to get into the heated fundamental discussions about static vs dynamic types. Instead I’d like to give just one particular example where types would be tremendously useful for your web application.

Read more


Originally published at us4.campaign-archive2.com.

Like what you read? Give Maurice de Beijer a round of applause.

From a quick cheer to a standing ovation, clap to show how much you enjoyed this story.