JSK Weekly - September 4, 2019

According to Google, the query "how to" is most often followed by either "make money fast" or "make pancakes" and something tells us those are two vastly different types of people. Luckily developers seem to be a little more consistent in their use of those two one syllable words. Like Krissanawat Kaewsanmuang talking coding techniques on TheBestDevlist in "How to use Throttle and Debounce in JavaScript" or Robin Wieruch sharing a quick excerpt from one of his daily tasks in "How to test React-Redux connected Components". Then we have Pawel Karniej getting busy with swiping motions in "How to make Tinder-like card animations with React Native" while Nwose Lotanna teaches us about functional components in "How to use stateless components in Vue.js", both on the LogRocket blog.

Another great read this week: Fernando Doglio teaches us how to answer one of the most frequently asked JavaScript interview questions in "Closures in JavaScript: Why Do We Need Them?" Giancarlo Buomprisco takes us through his thoughts about being a good teammate in "Soft Skills for Software Developers" and Chidume Nnamdi gives us a better understanding of the DI principle and how it is implemented in Angular in "SOLID: The Dependency Inversion Principle in Angular", all on the Bits and Pieces blog.


Make CRUD simple with Node, GraphQL, and React Blog

GraphQL reduces the complexity of building APIs by abstracting all requests to a single endpoint. Unlike traditional REST APIs, it is declarative; whatever is requested is returned. Of course, not all projects require GraphQL - it is merely a tool to consolidate data. It has well-defined schema, so we know for sure we won't overfetch.

Authored by: LogRocket

Angular vs. React vs. Vue: A performance comparison Blog

In this ever-changing world of technology, some tools have come to stay, while many others have faded into obscurity over the years. However, we can all agree that the JavaScript programming language is here to stay for the long term.

Authored by: LogRocket

Nearby Location Queries with Cloud Firestore

Use Geohashing to retrieve nearby locations in Google's Cloud Firestore. Querying for nearby places is an almost essential feature to many web and mobile applications. Let's dive into how you could implement this feature with Google Cloud Firestore.

Authored by: Jake Richards

Soft Skills for Software Developers

A write-down of my thoughts about being a good teammate, and what I wish every single one of my future colleagues would know. I'm my career, I have had the pleasure to work for several years with teams from different parts of the world, each with different ways, cultures, and experiences.

Authored by: Bit

Creating a full-stack MERN app using JWT authentication: Part 2 Blog

So far, we have covered the core functionality of JWT authentication in the first part of this series: " Creating a full-stack MERN app using JWT authentication: Part 1." The logic runs on the server side, and we need to have an interface that helps us to consume the logic.

Authored by: LogRocket


Closures in JavaScript: Why Do We Need Them?

Learn how to answer one of the most frequently asked JavaScript interview questions. Closures aren't a JavaScript-only concept, although if you're part of the JavaScript/Node.js community, you might've heard the term quite a bit. In fact, it is one of the many questions that are normally asked as part of technical interviews for JavaScript developers.

Authored by: Bit

Javascript data structure with map, reduce, filter, and ES6

If you are a fan of javascript and use it daily, then you will love this 😃 Javascript is a language that gives the freedom of writing code in any style, from imperative to declarative. Most programmers use imperative because either they are coming from OOPs background, maybe they love it, or they are not familiar with other styles.

Authored by: gitconnected

How to use Throttle and Debounce in JavaScript

Throttling and debouncing are two popular and widely performed coding techniques which will help to improve the performance of JavaScript code that undergoes execution repeatedly within a certain period of time. In this tutorial, we'll learn about the JavaScript Throttle and Debounce and how to implement them in our code to boost our code's performance and write better and faster code in JavaScript.

Authored by: TheBestDevlist

Build a JS Interpreter in JavaScript Using Acorn as a Parser

Learn how the JS engine works by building your own JS interpreter - in JS. In this post, we will learn how the JS engine works by building our own JS interpreter in JS! It's kinda weird, build a language interpreter using the language, isn't it?

Authored by: Bit

Avoiding bugs with data structures: using Sets in JavaScript

When working on a part of a user interface I like to constantly try to think about potential bugs that could occur, potentially when looking at taking input from users. Most components that take input will have code to prevent invalid input and bugs and you can't ever avoid this, but sometimes the right data structure can remove the amount of bugs you'll have to write code to deal with.

Authored by: Jack Franklin


The --showConfig Compiler Option in TypeScript

TypeScript 3.2 added a new --showConfig compiler flag to the tsc executable. The command tsc --showConfig calculates the effective tsconfig.json file and prints it to the console. This is useful for debugging configuration issues, particularly when used in conjunction with the extends property in a tsconfig.json file.

Authored by: Marius Schulz


SOLID: The Dependency Inversion Principle in Angular

Get a better understanding of the DI principle and how it is implemented in Angular. A. HIGH-LEVEL MODULES SHOULD NOT DEPEND UPON LOW-LEVEL MODULES. BOTH SHOULD DEPEND UPON ABSTRACTIONS. B. ABSTRACTIONS SHOULD NOT DEPEND UPON DETAILS. DETAILS SHOULD DEPEND UPON ABSTRACTIONS. This principle states that classes and modules should depend on abstractions not on concretions.

Authored by: Bit

Sharing Components with Angular and Bit

Bit is a tool that sits on top of tools we use every day such as Git and NPM that helps teams build components, test and render them in isolation, search and visualize them in a neat UI, and share...

Authored by: Bit


How to make Tinder-like card animations with React Native Blog

Tinder has definitely changed the way people think about online dating thanks to its original swiping mechanism. Tinder was among the first "swiping apps" that heavily used a swiping motion for choosing the perfect match. Today we'll build a similar solution in React Native.

Authored by: LogRocket

React Native: An Affordable Cross-Platform for Mobile App Development?

The number of smartphone users is soaring at incessant speed, the app business is facing numerous challenges. According to reports by Statista, the number of smartphone users worldwide now stands at 2.71 billion, and the same for tablet users stands at 1.23 billion.

Authored by: Bit

How to test React-Redux connected Components

The following implementation is a quick excerpt from one of my daily tasks as a software developer. If I run into a problem and arrive at an example that I find worth sharing, I will put a gist of the code up on this website.

Authored by: Robin Wieruch


How to use stateless components in Vue.js Blog

In this post, you'll learn about functional components and find out how to use stateless components in your workflow in Vue. You will need the following in your PC: Node.js version 10.x and above installed.

Authored by: LogRocket


You don't need Babel with Node Blog

If you've been active as a Node.js developer, or even dabbled in front-end libraries like React or Vue.js, then there's no doubt that you've likely run across Babel. What once began as a humble side project on Reddit, which you can see here, has now grown so much that it has fundamentally transformed how we build and develop Node.js applications.

Authored by: LogRocket

How I Automated My Job with Slack and Node

Implementing this was quite easy. The only thing that i had to take care of was the job schedule. We have different schedules such as daily, weekly and monthly.. I just had to check if the process has a weekly schedule then the difference between the creation time of the process and the current day is completely divisible by seven.

Authored by: Bit

Functional Programming

Using functional programming to avoid intermediate variables and nested functions

Often when we're developing a piece of code, we need to take one starting value and apply several functions to it before we return that value. Something like: The problem with this is that it's difficult to read. Whenever you add intermediate variables ( incompleteTasks, withoutBlockedTasks, etc.), you have to track which ones are passed as arguments to the next functions.

Authored by: Corey Cleary


3 methods for microservice communication Blog

In the world of microservice architecture, we build out an application via a collection of services. Each service in the collection tends to meet the following criteria: Loosely coupled Maintainable and testable Can be independently deployed Each service in a microservice architecture solves a business problem in the application, or at least supports one.

Authored by: LogRocket

Calling smart contract functions using web3.js - call() vs send()

I've recently been doing Udacity's Blockchain Developer Nanodegree, and the gotcha that has caused me the most wasted hours is the difference between calling a method in my smart contract using the call() vs send() web3.js methods. Using web3.js to call smart contract functions Web3.js

Authored by: Ire Aderinokun