<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/sources/jsPlainEnglish/best-of/2021/05" -->

---
title: Best JavaScript in Plain English posts — May 2021
description: The most upvoted JavaScript in Plain English posts from May 2021, curated by the daily.dev community.
canonical: https://daily.dev/sources/jsPlainEnglish/best-of/2021/05
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:url: https://daily.dev/sources/jsPlainEnglish/best-of/2021/05
og:type: website
og:site_name: daily.dev
og:title: Best JavaScript in Plain English posts — May 2021 | daily.dev
og:description: The most upvoted JavaScript in Plain English posts from May 2021, curated by the daily.dev community.
og:image: https://media.daily.dev/image/upload/s--VAY5ToZt--/f_auto/v1724209435/public/daily.dev%20-%20open%20graph
---

# Best of JavaScript in Plain English — May 2021

1. 1  
[](https://daily.dev/posts/javascript-2021-new-features-xejgb0mku "JavaScript 2021: New Features")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
JavaScript 2021: New Features  
JavaScript 2021: New Features. Tirlochan Arora discusses some of the new features of JavasScript that are very useful and can help us achieve more by writing less code. JavaScript has added three new logical operators to the existing collection. Integers are data types among strings, arrays, etc.  
114  
7
2. 2  
[](https://daily.dev/posts/open-source-needs-you-rklmrukjd "Open Source Needs You")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Open Source Needs You  
Nearly every JavaScript tool you use is open sourced. Being a part of this momentous community may be the most rewarding and transformative experience you get to go through as an engineer. Getting yourself familiar with the open source scene will take some effort and time. There are many ways to refactor to get started.  
54  
3
3. 3  
[](https://daily.dev/posts/typescript-javascript-with-no-surprises-vojf0zcmm "TypeScript — JavaScript with no surprises")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
TypeScript — JavaScript with no surprises  
TypeScript is an open-source programming language introduced by Microsoft in 2012\. Last year, Github marked it among the top 10 most wanted programming languages. 15% of JavaScript bugs can be detected by TypeScript, says Shivam Bhasin. The TypeScript code is compiled to vanilla JS before executing by the TypeScriptCompiler.  
35  
2
4. 4  
[](https://daily.dev/posts/javascript-errors-and-exception-handling-qdmkvfxr1 "JavaScript — Errors and Exception Handling")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
JavaScript — Errors and Exception Handling  
When an error occurs, the JavaScript code stops running and shows an error message. Try… catch is a block of code and it will be the solution. The err from catch(err) defines an error object and provides details of how to handle this error. When using the throw statement, we can control the flow and customize our own error.  
35  
1
5. 5  
[](https://daily.dev/posts/understand-javascript-array-methods-in-7-minutes-r5-bcxpcj "Understand JavaScript Array Methods in 7 minutes")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Understand JavaScript Array Methods in 7 minutes  
understand JavaScript Array Methods in 7 Minutes. Understanding by categorizing the long-list of JavaScript array methods is a great way to comprehend these built-in methods. For eg. insertion, deletion, copying, concatenating two arrays, searching, there are multiple methods available for each of these operations.  
34  
3
6. 6  
[](https://daily.dev/posts/usequery-instead-of-fetch-while-calling-an-api-wzwbgzbyg "useQuery Instead of Fetch While Calling an API")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
useQuery Instead of Fetch While Calling an API  
React doesn’t come with its own fetching library, so developers came with their own implementation to fetch the data from the server. The problem is, it is very hard to code the caching based fetching system to effectively avoid network call duplication. useQuery Instead of Fetch While Calling an API.  
34
7. 7  
[](https://daily.dev/posts/the-essentials-of-a-react-application-architecture-xi6eyjyrq "The Essentials of a React Application Architecture")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
The Essentials of a React Application Architecture  
29  
1
8. 8  
[](https://daily.dev/posts/top-10-mistakes-to-avoid-when-using-react-vo6apdgg7 "Top 10 Mistakes to Avoid When Using React")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Top 10 Mistakes to Avoid When Using React  
React has quickly become the most popular front-end framework in the tech world. It’s used by big tech companies such as Facebook, Netflix, Airbnb, and many more. React developers are in high demand, and the demand continues to grow. We’ll explore the top 10 mistakes React developers make — and how to fix them.  
28
9. 9  
[](https://daily.dev/posts/functional-programming-closures-and-memoization-in-javascript-vv8zasxuz "Functional Programming: Closures and Memoization in JavaScript")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Functional Programming: Closures and Memoization in JavaScript  
Functional programming is a declarative type of programming style. It is a programming paradigm in which we try to bind everything in pure mathematical functions style. A closure is the combination of a function bundled together (enclosed) with references to its surrounding state (the… developer.mozilla.org Memoization is a specific form of caching.  
24
10. 10  
[](https://daily.dev/posts/learning-typescript-concept-overview-acxsndvgz "Learning TypeScript: Concept Overview")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Learning TypeScript: Concept Overview  
TypeScript was developed by Microsoft and released in 2012\. It is a superset of JavaScript, meaning it is comprised of JavaScript’s features and offers additional features as well. TypeScript is written in files with the extension .ts . All code in these files gets run through the TypeScript transcompiler.  
23
11. 11  
[](https://daily.dev/posts/build-a-music-streaming-app-like-spotify-with-react-native-2pyu3ho9b "Build a Music Streaming App Like Spotify with React Native")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Build a Music Streaming App Like Spotify with React Native  
Build a Music Streaming App like Spotify: Cost, Features, Business Model, Process. Hoe Much Does it Cost To Create a Music streaming App Like Spotify? How much does it cost to turn a profit from this music streaming application? Why have we chosen React Native to create a music streaming app like Spotify?  
23  
1
12. 12  
[](https://daily.dev/posts/a-quick-guide-to-call-apply-and-bind-methods-in-javascript-dpcxwbp3e "A Quick Guide to Call, Apply and Bind Methods in JavaScript")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
A Quick Guide to Call, Apply and Bind Methods in JavaScript  
The call, apply and bind methods are some of the most important and often-used concepts in JavaScript. They are very closely related to the this keyword. Using a call method we can do function/method borrowing, we can borrow functions from other objects and use it with the data of some other objects. With call() you can write a method once and then inherit it in another object.  
23
13. 13  
[](https://daily.dev/posts/7-steps-to-modernize-and-optimize-your-react-app-ofqkygbk0 "7 Steps to Modernize and Optimize Your React App")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
7 Steps to Modernize and Optimize Your React App  
Mucahit Gurbuz shares 7 steps to Modernize and Optimize Your React App. He explains how to convert classful components to functional ones. He also shares his experiences upgrading to webpack 5 and v5 in a separate blog post. The blog is in Turkish, but you can read it and apply it to your projects.  
22  
1
14. 14  
[](https://daily.dev/posts/react-hook-usecallback-qn2-lwgfd "React Hook: UseCallback")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
React Hook: UseCallback  
React's useState and useEffect hooks are used to manage state in functional components. The useEffect hook is used to mimic the componentDidMount() function. When a value within the dependency array changes, the useEffect will be called again. This can lead to a repetitive re-render cycle. The fix is surprisingly simple.  
21  
1
15. 15  
[](https://daily.dev/posts/top-10-javascript-interview-questions-qduas-afe "Top 10 JavaScript Interview Questions")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Top 10 JavaScript Interview Questions  
A truthy value is like true and a falsyvalue is like false. A prime number is a natural number that is only divisible by 1 and itself. A function that is passed as an argument inside of another function is called a callback function. Find the largest element of an array using the for-loop method.  
21
16. 16  
[](https://daily.dev/posts/material-ui-styling-has-never-been-so-easy-sbfm3ehqc "Material UI — Styling Has Never Been So Easy")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Material UI — Styling Has Never Been So Easy  
In React, you may find that you want to give style to your React components in a fast and easy manner. Material-UI comes from Google’s Material Design. With this library, your website will look like you were a designer for your whole life but maybe you never did it before.  
20
17. 17  
[](https://daily.dev/posts/stop-using-actions-in-vuex-3agamqhru "Stop using actions in Vuex")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Stop using actions in Vuex  
Remove all your “business logic” from your Vuex store by moving them into regular functions. Veysel Ozdemir explains how to do this in a single line of code. This article applies to both VueX and Redux, but since I’m working with VUEx these days, I will give examples in Vue x.  
19  
1
18. 18  
[](https://daily.dev/posts/what-are-pure-and-impure-functions-in-javascript--hp8spdeoc "What are Pure and Impure Functions in JavaScript?")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
What are Pure and Impure Functions in JavaScript?  
Pure functions are functions whose output strictly depends upon the input passed. Impure functions are those whose output doesn’t just depend on the input data passed. In an interview I was asked multiple variants of the pure function and I was unable to answer. So thought of writing a detailed explanation which would help audience.  
18  
1
19. 19  
[](https://daily.dev/posts/client-side-rendering-vs-server-side-rendering-f1-tfpzg4 "Client-Side Rendering VS Server-Side Rendering")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Client-Side Rendering VS Server-Side Rendering  
An Intro Guide to Understanding Client-Side VS. Server-Side Rendering. Alyssa E Easterly explains the pros and cons of both approaches. The pros of client-side Rendering include fast website rendering after the initial load. The negatives include frequent server requests that can cause bottlenecking.  
18
20. 20  
[](https://daily.dev/posts/how-to-create-a-sticky-footer-in-css-0coi1tany "How to Create a Sticky Footer in CSS")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
How to Create a Sticky Footer in CSS  
Easy trick to design one of the key elements of a webpage. Use it to build your footers and make sure they stay at the same position even when you are scrolling up or down. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type.  
18
21. 21  
[](https://daily.dev/posts/solving-complex-filters-with-the-chain-of-responsibility-design-pattern-in-javascript-vw25zajug "Solving Complex Filters with the Chain of Responsibility Design Pattern in JavaScript")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Solving Complex Filters with the Chain of Responsibility Design Pattern in JavaScript  
Chain of Responsibility Design Pattern in JavaScript. Solving Complex Filters with the Chain of Responsibility design Pattern inJavaScript. Use this pattern to create a clean, maintainable, and clear design for important filters on base objects. Back to Mail Online home. back to the page you came from.  
17
22. 22  
[](https://daily.dev/posts/stop-writing-ugly-javascript-fetch-functions-874no6nac "Stop Writing Ugly JavaScript Fetch Functions")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Stop Writing Ugly JavaScript Fetch Functions  
Fetch() calls are usually written in the middle of a boilerplate block of code. The first .then() is usually the thing you actually want to do with the data you get back from the database. The code is not DRY, but it's a lot more readable if it's written in a reusable way.  
17
23. 23  
[](https://daily.dev/posts/new-alternative-of-redux-for-react-gmmfm19ye "New alternative of Redux for React")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
New alternative of Redux for React  
Preact is a state management library for React, weighing only 4.8 Kb. The library is still under development, but you can already try it. Source code on Github. A New Alternative to Redux for React — For Faster & Lighter Web Development Ruru Maash Follow us on Twitter @RuruMaash.  
15  
3
24. 24  
[](https://daily.dev/posts/why-you-should-use-useswr-instead-of-usestate-when-calling-apis-p3ahdblmy "Why You Should Use useSWR Instead of useState When Calling APIs")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Why You Should Use useSWR Instead of useState When Calling APIs  
SWR (State While Revalidate) is a React hook used to fetch data from the server. It provides plenty of features for performance, correctness and stability. The SWR is built by the Next.JS team with high performance in mind. It has build caching system and deduplication systems.  
14  
2
25. 25  
[](https://daily.dev/posts/micro-frontends-with-podium-ui1yzcbip "Micro Frontends with Podium")  
Article  
![Avatar of jsPlainEnglish](https://media.daily.dev/image/upload/s--Dg5QTRuI--/f_auto,q_auto/v1686665538/logos/pe)JavaScript in Plain English · 5y  
Micro Frontends with Podium  
How to build micro frontends in React, Vue.js, and Web Components using Podium. Podium is a framework for composing micro frontend on the server-side. It is implemented in JavaScript and runs on Node.js. The goal is creating something suitable for an organisation with multiple autonomous teams, both vertical and horizontal.  
12  
1

[See all JavaScript in Plain English archives](/sources/jsPlainEnglish/best-of)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@graph":[{"@type":"CollectionPage","@id":"https://daily.dev/sources/jsPlainEnglish/best-of/2021/05#page","url":"https://daily.dev/sources/jsPlainEnglish/best-of/2021/05","name":"Best JavaScript in Plain English Posts — May 2021","description":"The most upvoted JavaScript in Plain English posts from May 2021, curated by the daily.dev community.","isPartOf":{"@type":"WebSite","url":"https://daily.dev"}},{"@type":"ItemList","@id":"https://daily.dev/sources/jsPlainEnglish/best-of/2021/05#items","numberOfItems":25,"itemListElement":[{"@type":"ListItem","position":1,"url":"https://daily.dev/posts/javascript-2021-new-features-xejgb0mku","name":"JavaScript 2021: New Features"},{"@type":"ListItem","position":2,"url":"https://daily.dev/posts/open-source-needs-you-rklmrukjd","name":"Open Source Needs You"},{"@type":"ListItem","position":3,"url":"https://daily.dev/posts/typescript-javascript-with-no-surprises-vojf0zcmm","name":"TypeScript — JavaScript with no surprises"},{"@type":"ListItem","position":4,"url":"https://daily.dev/posts/javascript-errors-and-exception-handling-qdmkvfxr1","name":"JavaScript — Errors and Exception Handling"},{"@type":"ListItem","position":5,"url":"https://daily.dev/posts/understand-javascript-array-methods-in-7-minutes-r5-bcxpcj","name":"Understand JavaScript Array Methods in 7 minutes"},{"@type":"ListItem","position":6,"url":"https://daily.dev/posts/usequery-instead-of-fetch-while-calling-an-api-wzwbgzbyg","name":"useQuery Instead of Fetch While Calling an API"},{"@type":"ListItem","position":7,"url":"https://daily.dev/posts/the-essentials-of-a-react-application-architecture-xi6eyjyrq","name":"The Essentials of a React Application Architecture"},{"@type":"ListItem","position":8,"url":"https://daily.dev/posts/top-10-mistakes-to-avoid-when-using-react-vo6apdgg7","name":"Top 10 Mistakes to Avoid When Using React"},{"@type":"ListItem","position":9,"url":"https://daily.dev/posts/functional-programming-closures-and-memoization-in-javascript-vv8zasxuz","name":"Functional Programming: Closures and Memoization in JavaScript"},{"@type":"ListItem","position":10,"url":"https://daily.dev/posts/learning-typescript-concept-overview-acxsndvgz","name":"Learning TypeScript: Concept Overview"},{"@type":"ListItem","position":11,"url":"https://daily.dev/posts/build-a-music-streaming-app-like-spotify-with-react-native-2pyu3ho9b","name":"Build a Music Streaming App Like Spotify with React Native"},{"@type":"ListItem","position":12,"url":"https://daily.dev/posts/a-quick-guide-to-call-apply-and-bind-methods-in-javascript-dpcxwbp3e","name":"A Quick Guide to Call, Apply and Bind Methods in JavaScript"},{"@type":"ListItem","position":13,"url":"https://daily.dev/posts/7-steps-to-modernize-and-optimize-your-react-app-ofqkygbk0","name":"7 Steps to Modernize and Optimize Your React App"},{"@type":"ListItem","position":14,"url":"https://daily.dev/posts/react-hook-usecallback-qn2-lwgfd","name":"React Hook: UseCallback"},{"@type":"ListItem","position":15,"url":"https://daily.dev/posts/top-10-javascript-interview-questions-qduas-afe","name":"Top 10 JavaScript Interview Questions"},{"@type":"ListItem","position":16,"url":"https://daily.dev/posts/material-ui-styling-has-never-been-so-easy-sbfm3ehqc","name":"Material UI — Styling Has Never Been So Easy"},{"@type":"ListItem","position":17,"url":"https://daily.dev/posts/stop-using-actions-in-vuex-3agamqhru","name":"Stop using actions in Vuex"},{"@type":"ListItem","position":18,"url":"https://daily.dev/posts/what-are-pure-and-impure-functions-in-javascript--hp8spdeoc","name":"What are Pure and Impure Functions in JavaScript?"},{"@type":"ListItem","position":19,"url":"https://daily.dev/posts/client-side-rendering-vs-server-side-rendering-f1-tfpzg4","name":"Client-Side Rendering VS Server-Side Rendering"},{"@type":"ListItem","position":20,"url":"https://daily.dev/posts/how-to-create-a-sticky-footer-in-css-0coi1tany","name":"How to Create a Sticky Footer in CSS"},{"@type":"ListItem","position":21,"url":"https://daily.dev/posts/solving-complex-filters-with-the-chain-of-responsibility-design-pattern-in-javascript-vw25zajug","name":"Solving Complex Filters with the Chain of Responsibility Design Pattern in JavaScript"},{"@type":"ListItem","position":22,"url":"https://daily.dev/posts/stop-writing-ugly-javascript-fetch-functions-874no6nac","name":"Stop Writing Ugly JavaScript Fetch Functions"},{"@type":"ListItem","position":23,"url":"https://daily.dev/posts/new-alternative-of-redux-for-react-gmmfm19ye","name":"New alternative of Redux for React"},{"@type":"ListItem","position":24,"url":"https://daily.dev/posts/why-you-should-use-useswr-instead-of-usestate-when-calling-apis-p3ahdblmy","name":"Why You Should Use useSWR Instead of useState When Calling APIs"},{"@type":"ListItem","position":25,"url":"https://daily.dev/posts/micro-frontends-with-podium-ui1yzcbip","name":"Micro Frontends with Podium"}]},{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Sources","item":"https://daily.dev/sources"},{"@type":"ListItem","position":3,"name":"JavaScript in Plain English","item":"https://daily.dev/sources/jsPlainEnglish"},{"@type":"ListItem","position":4,"name":"Best of","item":"https://daily.dev/sources/jsPlainEnglish/best-of"},{"@type":"ListItem","position":5,"name":"May 2021"}]}]}
```

