JSK Weekly - September 18, 2019

Did you know that for countries who write the date as mm/dd/yy, this entire last week has been a palindrome week? Starting with 9/10/19 and ending today with 9/19/19! Seems fitting then to kick off this week's newsletter with Yazeed Bzadough's Palindrome Checker story on freeCodeCamp's blog: "A Walkthrough of the FreeCodeCamp Palindrome Checker Project."

Wanting to give Microservices a try? Check out Ashan Fernando's "Microservices is a Destination: What about the Journey?" story on the Bits and Pieces blog. All about efficiency and performance? Check out Giancarlo Buomprisco's piece on RxJS Patterns titled: "RxJS Patterns: Efficiency and Performance" or if you're keen on understanding some of JavaScript’s quirks then Chidume Nnamdi looks at how the V8 engine works in "Strict and Type–Converting Comparisons: JS Under the Hood", also both on the Bits and Pieces blog.

For a variety of React related stories this week head on over to LogRocket's blog and make yourself comfy. From search UI research with Ryan Harris in "Redoing search UI with React Context and refs" to design system building with Emmanuel Yusufu in "Building a design system with Grommet and Storybook" as well as both Ovie Okeh and Peter Ekene Eze tackling state management in "State management using only React Hooks" and "Simplifying state management in React apps with batched updates", respectively, you could be staying a while!


Understand array methods by implementing them - all of them

To use a method on a given array, we type [].methodName. They are all defined in the Array.prototype object. Here, however, we won't be using these; instead, we'll define our own versions starting from the simple method and build up on top of these until we get them all.

Authored by: LogRocket

Strict and Type-Converting Comparisons: JS Under the Hood

Understand some of JavaScript's quirks by looking at how the V8 engine works. If you're not already familiar with the difference between 'strict' and 'type-converting' comparisons in JS - read about it here (before you continue reading). Use Bit to share, install and collaborate on individual JS modules/ UI components.

Authored by: Bit

Microservices is a Destination: What about the Journey?

If you have been involved in the decision-making process, with reasonable doubts to start the next big software project using Microservices, you are not alone. Success stories told by software giants like Amazon, Netflix, eBay moving to Microservices inspires us. When you hear words like agility, speed, and scale who doesn't want to try Microservices, right?

Authored by: Bit

Duplication in State Management: A Story of a Bug

The demo has three inputs that represent three different available categories. The user can modify the title of each category. There is a dropdown to choose one of the three available categories. Once a category is chosen, it displays its title and ID. NOTE: This demo was built solely for the demonstration of this bug.

Authored by: Bit


4 Ways to Fix 'this' in JavaScript

I like in JavaScript the possibility to change the function execution context, also known as this. For example, you can use array methods on array-like objects: The other side of the coin is that this keyword is difficult to grasp. In this post, I will explain easy ways to fix this value in common situations.

Authored by: Dmitri Pavlutin

How JavaScript works: Optimizing the V8 compiler for efficiency Blog

Understanding how Javascript works is key to writing efficient Javascript. Forget about insignificant millisecond improvements: mis-using object properties can lead to a 7x slowdown of a simple one-liner. Given Javascript's ubiquity across all levels of the software stack (a la MEAN or replacements 1, 2, 3,) i nsignificant slowdowns can plague any if not all levels of your infrastructure - not just your website's menu animation.

Authored by: LogRocket

How to Remove a Character from a String in JavaScript

A common form of string manipulation in JavaScript is to remove a character from a string. Let's explore all of the ways we can do this in JavaScript. You're probably thinking that there is a String function called remove, aren't you? Unfortunately tere isn't a remove String method in JavaScript, however, there is the replace method.

Authored by: Upmostly

Understanding JavaScript Execution Context and How It Relates to Scope and the `this` Context

In JavaScript, you write some code and it gets interpreted by the JavaScript engine. To understand what happens behind the scenes, you need to have an understanding of the basics. In this article...

Authored by: gitconnected

A Walkthrough of the FreeCodeCamp Palindrome Checker Project

Project 1 from JavaScript Algos and DS Certification. This is the blog version of my walkthrough. If you prefer video here is the YouTube video link. Write a function called palindrome that takes a string, str. If str is a palindrome, return true, otherwise return false.

Authored by: freeCodeCamp.org


Read-Only Array and Tuple Types in TypeScript

TypeScript 3.4 added a bit of syntactic sugar to the language that makes it easier to work with read-only array and tuple types. We can now use the readonly modifier to create read-only array types (such as readonly string[]) or read-only tuple types (such as readonly [number, number]).

Authored by: Marius Schulz


Guarding your Angular modules 💂‍

A lot of Angular modules need to be imported with a static forRoot() function, via this function it allows us to configure the module. An example, perhaps the most known, is the Angular Router Module that needs a collection of routes, another example is the NgRx Store that needs the root reducers of the application.

Authored by: Tim Deschryver

What's new After Angular 8

In this blog post let's see what is going on with Angular 8 post the official release in May 2019. We got many new features with the release of Angular 8, Angular 9 will be released around November 2019.

Authored by: Angular In Depth


Simplifying state management in React apps with batched updates Blog

After making an update to your component's state using either useState or this.setState, parts of the component re-renders depending on the update. More so, if you have various calls to update the state within a React event handler like onClick, React makes the updates in a batch, instead of one at a time, reducing the number of renders the component will make.

Authored by: LogRocket

Mimic WhatsApp stories using React Native and Firestore Blog

Stories are now a trending feature of most social media applications, including WhatsApp, Snapchat, Instagram, and others. This feature gives us another avenue to share media in the form of images, videos, and text to your contacts or friends, and let you know who viewed your story.

Authored by: LogRocket

Why We Switched to React Hooks

Have you ever been tasked with extending a component that has a ton of branching logic, and realize that the component requires some state to make that new feature you're adding come to life?

Authored by: Bit

State management using only React Hooks Blog

The Hooks API has brought with it a whole new way of writing and thinking about React apps. One of my favorite Hooks so far is useReducer, which allows you to handle complex state updates, and that's what we'll be looking at in this article.

Authored by: LogRocket

Building a design system with Grommet and Storybook Blog

We've all heard the buzzword "design system" thrown up and down. But how do we make sense of it, and more importantly, how do we build one for ourselves? This post will guide you through creating a design system using React, Grommet, and Storybook.

Authored by: LogRocket

Redoing search UI with React Context and refs Blog

Recently, the product team at my company discovered the majority of our users were not utilizing filters when using our search interface. After looking at our analytics, it became apparent users weren't engaging with filters because they didn't know they existed. To fix this problem, we decided to rebuild our UI in order to highlight this functionality.

Authored by: LogRocket

Store React Form Data or State in Local Storage

React Local Storage with life cycle methods - Learn to store form data or form state in local storage using React life cycle methods.

Authored by: Digamber Singh

Redux without switch-cases (and some other tips)

Hello folks, today I'm here to show you guys a better way to structure your reducers, without the classic switch-case style on which most developers I've seen until today are so tied to.

Authored by: JavaScript in Plain English


Advantages of building applications with Vue.js

Vue.js is a JavaScript library for building web interfaces using the MVVM (Model-View-ViewModel) architecture pattern. Vue.js is entirely designed from the scratch up to be incrementally adopted. So...

Authored by: gitconnected


Working with Node.js on Hyper-V and WSL2 Blog

A major benefit of Node.js is that it offers multiplatform support. Whether you're running Mac, Linux, or Windows, the experience is nearly seamless. However, there can be subtle differences between each platform, especially when developing Node.js applications that interact closely with the underlying operating system.

Authored by: LogRocket

Full-text search with Node.js and ElasticSearch on Docker Blog

Full-text search can be both scary and exciting. Some popular databases such as MySql and Postgres are an amazing solution for storing data... but when it comes to full-text search performances, there's no competition with ElasticSearch. For those who don't know, ElasticSearch is a search engine server built on top of with an amazing distributed-architecture support.

Authored by: LogRocket

Let's download Instagram's images with JavaScript and Node.js

Hi guys! Recently I decided to embarked on something new and fun 😀😀😀. I wanted to try to create a website that allow users to download Instagram photos just by parsing their URL. Before we begin, you will need basic knowledge in HTML, CSS, Javascript and Node.js to proceed.

Authored by: JavaScript in Plain English

Libraries and Tools

RxJS Patterns: Efficiency and Performance

A rundown of all RxJS operators and techniques you can leverage to avoid needless computation and make your code snappier and faster RxJS is a library that helps make it easier to compose asynchronous or callback-based code, as described on its home page.

Authored by: Bit