Francis Ngo

Recent Posts

June 12, 2023

How Migrating from Vanilla Redux to Redux Toolkit Improved State Management

In the world of React development, state management is a crucial aspect of building scalable applications. As projects grow in complexity, managing applications state efficently becomes paramount. Redux, a predictable state container of JavaScript applications, emerged as a popular choice but developers often faced challenges due to its verbosity and boilerplate. To address these concerns, the creators of Redux introduced Redux Toolkit, a comprehensive utility kit design to streamline Redux usage.

June 07, 2023

Understanding TypeScript - Unsoundness and Caveats

The goal of TypeScript, a static type system for JavaScript is to detect and prevent mistakes. But many statically typed languages have holes in their type safety: they'll allow some code that definitely isn't correct when looked closely. TypeScript is one such language.

May 29, 2023

Understanding TypeScript - Structural Typing

Structural Typing is a concept in TypeScript where the type or behavior of an object is determined by its structure and the operations that can be performed on it, rather than its explicity type declaration. It focuses on the "shape" of an object rather than its specific type.

May 28, 2023

Understanding TypeScript - Generics

Generic functions in TypeScript are functions that can work with different types of data. They allow the ability to write reusable code that can handle multiple data types without sacrificing type safety.

May 28, 2023

Understanding TypeScript - Function Overloading

Function overloading in TypeScript means that a single function can have multiple versions with different sets of parameters or return types. It's like having different "versions" of a function that can handle different situations. TypeScript will automatically choose the correct version of the function based on the arguments provided when calling it.