JSK Weekly - January 15, 2020

Hopefully everyone has settled nicely into the new and shiny 2020 by now! Speaking of new things, whether it's a new job, new hires in a business or new developers to trial for a project, there is something for everyone this week.

Codementor is dishing out talent in "Find vetted JavaScript mentors on Codementor", Eric Elliott breaks down some guidelines on the tough choices hiring managers have to make in "What to Pay JavaScript Developers in 2020" and Adi S's final part of a three part JS Interview Question series is out in "JavaScript Interview Questions You Need To Know — Part III."


Programming Habits You Should Adopt

Just because they make you a better programmer Programming habits, we all have them. Both good and bad. But when you start adopting the right programming habits you can seriously boost your efficiency. Not only will these good habits impact you, but most likely they will also impact the people around you.

Authored by: gitconnected

13 ways to vertical center Blog

Back in the good old days, the limits of CSS were such that even "simple" things like vertical centering posed a challenge, with some of us even relying on JavaScript solutions. It was fragile, it was very constrained, and there was always that one exception that made it fail.

Authored by: LogRocket

How to migrate a database schema at scale Blog

Any nontrivial application requires a database that will evolve over time to support new features or to fix scaling problems with queries. It may be fine to change your database schema by hand in a console but only if your web application is very small, is in beta with a very low audience, or is a hobby project.

Authored by: LogRocket

Balancing quantitative and qualitative user engagement Blog

For as long as there are things happening, someone, somewhere will want to quantify them - and someone else standing nearby can be relied upon to share their opinion that the first person is wasting their time. This is a fact of life. The tension between qualitative and quantitative analysis is age-old.

Authored by: LogRocket

LESS versus CSS

Introduction Dealing with a large volume of plain CSS can be annoying when you face weird styling issues. When working with complex web applications, keep your CSS code as clean as possible. That's why you need the LESS preprocessor to simplify your work and save time.

Authored by: Syncfusion


Find vetted JavaScript mentors on Codementor

Stuck on a weird bug or error? Have live 1:1 sessions with vetted senior developers who will save the day when Stack Overflow fails you. They’ll also review your code so you don’t accidentally crash your app, or be your pair programming buddy if you need an extra set of eyes. Join us and connect with 500,000+ developers in the Codementor community.

Authored by: Codementor

What to Pay JavaScript Developers in 2020

As hiring managers, we have a lot of tough choices to make. One choice most hiring managers get wrong is compensation for developers. This article will help you get in the right ballpark based on your needs.

Authored by: Eric Elliott

The Best JavaScript Tutorials

JavaScript is the most widely used scripting language on Earth. And it has the largest library ecosystem of any programming language. JavaScript is the core language of the web, and the only programming language that can run in all major web browsers. Notably, JavaScript has no relation to Java.

Authored by: freeCodeCamp.org

Use 'Promises' | Async/Await | in place of JavaScript Callbacks.

We should use Promises which allows us to access asynchronous method and return values to synchronous methods. and Async/Await is the extension of promises. Understand what `Synchronous` and `Asynchronous`. Understand `Callback` - with an Example.

Authored by: Ankit Maheshwari

JavaScript Interview Questions You Need To Know - Part III

The final part of a three part JS Interview Question series. A: This might be easier to look at in code first: Basically the && operator (read as Logical AND) finds the first falsy value in the expression and returns it. If it does not find a falsy value it will return the last value in the expression.

Authored by: JavaScript in Plain English

The most confusing thing in Javascript: The `this` keyword

You know those concepts that you learn over and over again, yet they seem to vanish from your memory no matter how many notebooks you fill with detailed notes?

Authored by: Zach Gollwitzer

A class-based enum pattern for JavaScript

In this blog post, we examine a pattern for implementing enums in JavaScript that is based on classes. We'll also take a look at Enumify, a library that helps with the enum pattern. Table of contents: An enum is a type that consists of a set of values.

Authored by: Axel Rauschmayer


My best VSCode Linting/Formatting configuration for Typescript Projects

A Code formatter solves the stylistic part of the code organization. It's about things like spaces, tabs, semicolons, and quotes... For that, I choose to use one of the most popular too for Javascript formatting: Prettier . A Linter is more about best practices for good quality software and general consistency.

Authored by: Andréas HANSS

How to Install and Begin Using TypeScript

TypeScript is one of the current hot topics in web development and for good reasons. It allows us to type cast when declaring variables which means we explicitly set the type of data we expect back, throws errors if the returned data is not the type we expected to get back or if a function call has too few or too many arguments, and that's just a sampling of everything it offers.

Authored by: freeCodeCamp.org

Cool New Features Released with TypeScript 3.6

Lots of new features are released with TypeScript 3.6. It includes features for iterables such as stricter type checking for generators, more accurate array spreading, allow get and set in declare...

Authored by: John Au-Yeung


6 Useful Decorators to use in your Angular projects

Little was known of these advanced JS features until Angular 4 was released. It formed the basis of modules in Angular via @NgModule, the basis of components by the @Component, DI via @Injectable and many others. Even though Angular has provided us with plenty of built-in Decorators, you'll most likely find yourself needing to create your own custom ones.

Authored by: Bit

Export Data to Excel Sheet in Angular 8

A guide to export data in excel file in Angular In this article, we will learn on how to export data in Excel sheet by using Angular 8. With the xlsx library, we'll be able to export data to Excel sheet.

Authored by: gitconnected

Angular: How to support IE11

In this article I will show you the steps I took to support Internet Explorer 11 with Angular. The first half of this will quickly show the steps you need to take, and the second half will break these steps down in more detail for anyone wishing to learn more.

Authored by: Colum Ferry

How to Intercept the HTTP Requests in Angular

HttpInterceptor Interface is All What We Need to Go. "How to Intercept the HTTP Requests in Angular" is published by Udith Gayan Indrakantha in JavaScript in Plain English.

Authored by: Udith Indrakantha


Using Suspense with react-query Blog

Suspense isn't exactly a new feature in the React ecosystem. However, if you don't know what Suspense is all about or you're just starting out with React, you should have a look here. In a bid to make writing React components easier and with less code, Hooks were introduced to manage states in functional apps - that's also not a new feature.

Authored by: LogRocket

React. 7 tricks to work with Styled Components

Useful tips to improve the use of Styled Components Recently I have been working on a project that is implemented on Styled Components and I have found it interesting to gather in a small article all the tricks or tips that I have been "discovering" to work with them.

Authored by: latteandcode

How to create a React Native app with PostgreSQL and GraphQL: Part 2 Blog

In the previous article, we created a GraphQL server with NodeJS and Express. We will now look to consume the endpoints in the server we created using a React Native mobile app. React Native allows us to develop applications that run on both iOS and Android devices.

Authored by: LogRocket

Create a Fullstack React Application in a few minutes

Whenever we start a new project there are always dozens of options and ways to get rolling. Here is a generator to get you started in a few minutes with a fullstack React application with an Express server.

Authored by: Fabiano Brito

From create-react-app to PWA Blog

Progressive web apps are a (terribly named) wonderful idea. You can build an app that serves all devices and form factors once using web technologies. It can be accessible over the web but also surface on the home screen of your Android/iOS device.

Authored by: LogRocket

How to Create Your First App with Electron and React

Have you ever wanted to build your own desktop app with electron and React? This tutorial will show you how to do it. You will learn how to create React app from scratch, how to connect it with electron. Then, you will learn how to configure Webpack to handle both.

Authored by: Alex Devero


A Step-By-Step Guide to Building Your First VueJS Plugin

As VueJS grows in popularity, community-created VueJS plugins are becoming more common and more powerful. In fact, there are some plugins that I find insanely useful. For example, there are amazing UI libraries and utility plugins that have saved me tons of time in development.

Authored by: matt maribojoc 🇵🇭

Making sense of Vue 3's composition API

Exploring the new way to structure components in Vue applications Vue has been around for a while now. It has been gaining immense popularity within the developer community and has managed to grab the attention of many react/angular developers. Much of this was owed to the absolutely simple and intuitive component APIs that exist in Vue.

Authored by: Bit

Creating Your First VueJS Custom Directive

In VueJS, directives are one of the best ways to directly edit the DOM. Some examples of directives in VueJS are v-if, v-show, v-bind, and so on. If you've worked in VueJS, you are definitely familiar with them. A VueJS custom directive is, as you may guess, Vue's way of letting us build additional directives for our projects.

Authored by: matt maribojoc 🇵🇭


GraphQL subscriptions with Node.js Blog

Ever wonder how Facebook notifies you when a friend posts something? Or how Google Maps updates your location in real time? The answer to these and many other modern mysteries is (among other things) GraphQL subscriptions. In this article, we'll provide a basic understanding of GraphQL subscriptions for events on JSON data in a Node.js server.

Authored by: LogRocket

How to handle data validation in Node using validatorJS Blog

Building backend APIs comes with many hassles. One of which is user input validation. It's important to add an extra layer of validation to incoming data because you can never rely on the users' input alone. There are many ways of carrying out input validation in Node.js.

Authored by: LogRocket

How to set up a Headless Chrome Node.js server in Docker Blog

Headless browsers have become very popular with the rise of automated UI tests in the application development process. There are also countless use cases for website crawlers and HTML-based content analysis. For 99 percent of these cases, you don't actually need a browser GUI because it is fully automated.

Authored by: LogRocket

Libraries and Tools

Dirty Terraform hacks Blog

Terraform is an amazing tool for managing infrastructure, and it's simple enough to get the hang of in just a few hours. However, once you get started using Terraform, you'll quickly run into tasks that seem easy yet have no obvious solution.

Authored by: LogRocket

Versioning Independent UI Components - Why and How

Why and how per-component SemVer enables better UI compositions and team independence. Today, most components are versioned as part of an entire project (e.g. component-library). This conflicts with the idea of composing modular UI applications. A developer that wants to adopt a slider component will have to introduce the whole library on a single version into their application.

Authored by: Bit

Sharing Dependencies in Micro Frontends

How to share dependencies in Micro Frontends This year microfrontends went from a rather exotic technology to a mainstream trend. Many new frameworks, libraries, and tools have been published. While different patterns for implementation exist, there are some problems that will appear in one form or another in any of these patterns.

Authored by: Bit


Testing Software: What is TDD?

Test Driven Development is a software development process that follows these steps: Write a failing test for one requirement. Implement just enough code to make the test pass. Refactor with confidence (if it's needed). TDD is like the scientific method, but for software. The scientific method is how we learn things about the world.

Authored by: Eric Elliott


Using border-radius to make shapes: how to build a flower Blog

We, as web-developers, spend a lot of time working with CSS and styling. Whether it's a simple website or a complex application, we need a good grasp of CSS to make it truly exceptional. It's not always as simple as it seems at first glance, and some tasks are quite complex.

Authored by: LogRocket