Weekend JavaScript Newsletter
Top JavaScript news and articles straight into your inbox every Friday. Everything you need to be successful in your career. From the new hot frameworks to IoT and robotics.

ISSUE #108

Facebook legal dispute, JS concurrency, Maybe pattern, and more


SPONSORED BY

Become a data visualization engineer with React + D3v4

Learn the basics with interactive examples right in your browser. Dive into 7 projects that teach you how it all fits together. Build interactive visualizations, create animations, and build fast performance with canvas. Learn everything there is to know about building beautiful apps with React and D3.


egghead.io - Learn professional JavaScript tools with Tutorial Videos & Training

\* You don't need me to tell you those guys are awesome. The two my all-time favorite courses are [Getting Started with Redux](https://egghead.io/courses/getting-started-with-redux?utm_source=weekendjs) by Dan Abramov himself and of cause the iconic [Professor Frisby Introduces Composable Functional JavaScript](https://egghead.io/courses/professor-frisby-introduces-composable-functional-javascript?utm_source=weekendjs). As a Vue believer now I also have to include this one among my recommendations — [Develop Basic Web Apps with Vue.js](https://egghead.io/courses/develop-basic-web-apps-with-vue-js?utm_source=weekendjs). Now go ahead and give it a try!


HEADLINES

After governance breakdown, Node.js leaders fight for its survival | Zack Whittaker, ZDNet

The tumultuous events this week in the Node.js community were a long time coming. Insiders tell ZDNet how the community is trying to repair — and prepare for what's to come.


JavaScript Is Eating The World | Anthony Delgado, dev.to

Below is a list of 5 huge companies who have adopted the popular "hipster" server-side JavaScript engine for use inside high traffic, high profile production projects.


FACEBOOK LEGAL DISPUTE

Using GraphQL? Why Facebook Now Owns You | Dennis Walsh

TLDR: Facebook’s GraphQL spec doesn’t grant a patent license. Therefore, for reasons as set forth below, most GraphQL users infringe Facebook’s patents.


Patent Free React Ecosystem Migration Plan | Patrick Stapleton, OneSpeed

Due to recent news, you might consider moving away from React.js or any technology under Facebook’s BSD+Patents License. If you are considering migrating or if you're trying to evaluate the scope of a migration, we've provided you a table of contents to determine what you need to know.


MODERN JAVASCRIPT

Concurrent JavaScript: It can work! | Filip Pizlo, WebKit

With the recent addition of SharedArrayBuffer, concurrency is finding its way into the JavaScript language. This addition allows JavaScript programs to perform concurrent access to SharedArrayBuffer objects. WebKit supports SharedArrayBuffer and it has full optimization support in our compiler pipeline. Unfortunately, JavaScript does not allow any objects other than SharedArrayBuffer to be shared.


JavaScript Iterators and More | Brian Mock

A comparison and overview of generators, iterators, and iterables in JS


Broken Promises | Aldwin Vlasblom

Promises were a big step forward for JavaScript, but unfortunately they have several design flaws. It’s important that we acknowledge them, learn from them, and finally reconsider whether we should be embracing Promises the way we do.


Building a Maybe in JavaScript | Alex Young

Cannot read property "x" of undefined. I'm guessing if you're reading this you've seen that message before, and probably at some point wanted to throw something through your monitor.


REACT

When to use Component or PureComponent | Paul Christophe, codeburst.io

tldr; prefer PureComponent over Component, but never mutate your objects (and use other best practices)


How Pure CSS Images Helped Me Understand React Components | Michael Mangialardi

How did I overcome impostor syndrome and finally learn React? There are a few reasons but one of the most significant ones was learning how to make pure CSS images.


A feature based approach to React development | Ryan Lanciaux

There are a lot of opinions around how to arrange a React project. In this post, I want to talk about feature folders and why I think they are a great choice for React application structure.


A small trick to write clean reducers | Maxence Dalmais, Hacker Noon

Writing react-redux reducers might be sometimes painful. Specifically, you might have to write lots of boilerplate code just to change one value or flag in a nested object. We will see how a small trick can help us reduce this code.


Writing Scalable React Apps with the Component Folder Pattern | Donavon West

Discover how to organize your React components using the component folder pattern. It will help un-clutter your projects, and your life. It’s soon to be your new best friend.


Persisting data with localStorage and Redux middleware | Dane Sirois

In the following section, I am going to talk about how to use localStorage and where it fits within your application.


VUE.JS

Getting Started with Vue.js | Red Panthers

Vue.js pronounced as “view.js” is a much flexible and less opinionated framework than Angular. It’s similar to React but much simpler.


Unit Testing Vue.js Components with the Official Vue Testing Tools and Jest | Alex Jover Morales

Vue.js has become the framework of the year. It's very flexible, performant and easy to learn that lead to a massive adoption.Here I'll show you how can you test Vue.js components using the official vue-test-utils. Here I'll show you how can you test Vue.js components using the official vue-test-utils.


Vue 2 & Vuex Tutorial Version 2

This is an upgrade to the original Vue & Vuex tutorial with better resolution and implementing a 16:9 aspect ratio. This video covers the full installation o...


ELECTRON

Architecting Electron Applications for 60fps | Yoshua Wuyts, nearForm

A deep-dive into optimizations that should be made to achieve smooth rendering, and a low resource footprint for Electron on all platforms


TYPESCRIPT

From Javascript to Typescript — Highlights | Krzysztof Kaczor, Neufund

In this article, I want to present highlights of migrating one of our ES2016, Webpack, React, Redux application to Typescript. You can review the whole process directly on our github. It took about one full day of work to finish the migration.


LET'S BUILD SOMETING

Build a simple Telegram Bot with Node.js | The Devs

Ever since Telegram introduced bots in 2015, other messengers have added bots to their own platforms. But Telegram's extensive bot API and the freedom it offers the developer keep it at an edge ahead of its competitors.


NodeJS and GraphicsMagick: Cropping and resizing images on your server | Abinav Seelan, Camp Vanilla

Image manipulation is a common task that developers come across. Uploaded images may need to be cropped, resized, compressed, etc on the server before being saved off in a storage service like s3…