Weekend JavaScript Newsletter

ISSUE #180

TypeScript 3.6, Rewritting Slack Desktop, Algebraic Effects, And More


TOP STORIES

Algebraic Effects for the Rest of Us | Dan Abramov

Have you heard about algebraic effects? My first attempts to figure out what they are or why I should care about them were unsuccessful. I found a few pdfs but they only confused me more. (There’s something about academic pdfs that makes me sleepy.)

When a rewrite isn’t: rebuilding Slack on the desktop | Slack Engineering

A new version of Slack is rolling out for our desktop customers, built from the ground up to be faster, more efficient, and easier to work on. Conventional wisdom holds that you should never rewrite…

Announcing TypeScript 3.6 Beta

Today we’re happy to announce the availability of TypeScript 3.6 Beta. This beta is intended to be a feature-complete version of TypeScript 3.6. In the coming weeks we’ll be working on bugs and improving performance and stability for our release candidate, and eventually the full release.

JAVASCRIPT UPGRADE

⭐ JavaScript Upgrade Screencast

Apart from this newsletter I also run a JavaScript screencast exploring and explaining the latest trends. I'm really into ReasonML recently so that's why the latest JSU video is about it. The second part comes tomorrow in which we'll focus on what's making that language created by Facebook shine: pipe operators, pattern matching and more, well, types. For the JSU other videos check here. Oh, and as usually for the WeekendJS subscribers, this link will give you 22% off.

MODERN JAVASCRIPT

The nullary coalescing operator progressed to Stage 3! 🎉

The nullary coalescing operator is intended to handle these cases better and serves as an equality check against nullary values (null or undefined).

Design Patterns in Modern JS Frameworks

A break down of the 5 most common design patterns used in modern JS frameworks.

JavaScript Array Operations Cheat Sheet

Resources and hints from developers for developers. JavaScript Array Operations Cheat Sheet

REACT

React code splitting made simple. Easily reduce bundle.js

On average right now around 200-500kb of JS is sent down the pipe to the client. Way to much for my personal taste. Since a lot of website use react, today we will look how to reduce that in a simple and easy way, applicable to almost any app. Let’s start with why our bundle.js […]

MISC STORIES

Browser polyfill madness, Mozilla and IE | Daniel Caldas

Recently I have experienced the real pain of polyfilling Number.isSafeInteger method. What is a polyfill you ask? It happened at work; something was not working for IE 11, and there was a lot of culprit pull requests, but one in particular sparkled my attention. In this pull request, there was...

Understand the JavaScript SEO basics

This guide describes how Google Search processes JavaScript and best practices for improving JavaScript web apps for Google Search.

Dissecting A Dweet: Mini Black Hole | Killed By A Pixel

Today we will be examining my most popular dweet, a miniature black hole simulation! It’s one of my easiest dweets to explain and the code is fairly straightforward. Read on for a full analysis…

WEBCOMPONENTS

The State of Web Components | Michael Karén

Has the modern Web Platform evolved to the point where we can start using native components? As developers, we know that reusing code is a good idea. Does this mean we should use Web Components?

MITHRIL

Mithril 2 released

A modern client-side Javascript framework for building Single Page Applications. It's small (9.55 KB gzipped), fast and provides routing and XHR utilities out of the box.

Weekend JavaScript

Top JavaScript news and articles straight into your inbox every Friday. Everything you need to be successful in your career. From the new hot web frameworks to IoT and robotics.
1008 have already joined.