Blog

Type Issues When Using React with TypeScript

This article introduces type issues when using React with TypeScript, including their advantages, implementation details, and relevant resources. These steps can help improve efficiency when handling React TypeScript type issues.

Oct 23, 2019

Reading Notes: Redux in Action

Key takeaways from Redux in Action plus a year of hands-on Redux work: immutability, async handling, action patterns, component organization, middleware, and performance.

Oct 20, 2019

Governing the Frontend API Layer

From ad‑hoc exported functions to an OO API layer with clear namespaces, shared base paths, and naming conventions.

Oct 16, 2019

interface vs type in TypeScript

When to use interfaces vs. type aliases, what the TypeScript docs recommend, and how the ESLint/TSLint rule works.

Oct 15, 2019

Essential JetBrains IDE Plugins

This article introduces commonly used JetBrains IDE plugins, including their advantages, implementation details, and related resources. These steps can help improve efficiency when working with JetBrains IDE plugins.

Oct 13, 2019

React Debugging - Plugins

This article introduces React debugging plugins, including their advantages, implementation details, and relevant resources. These steps can help improve efficiency when using React debugging plugins.

Oct 10, 2019

One-Click Connection to Cisco AnyConnect Secure Mobility Client

This post explains how to connect to Cisco AnyConnect Secure Mobility Client with one click, including the manual steps and an automation script.

Oct 6, 2019

Redux-Thunk Source Code Walkthrough

Step-by-step walkthrough of redux-thunk’s implementation: how it wires into Redux, how applyMiddleware composes dispatch, and why thunk differs from saga.

Oct 5, 2019

Modern Frontend Optimization: A Deep Dive into Tree Shaking

Single-page applications (SPAs) offer a smooth user experience but often suffer from massive bundle sizes. Tree shaking is a crucial technique for eliminating 'dead code' and keeping your production assets lean.

Oct 4, 2019

My Chrome Extension List

My frequently used Chrome extensions for daily use and development, with brief notes and tips.

Oct 3, 2019

React Project Unit Testing

This post explains how to unit test React projects, including setup, utilities, and practical examples.

Oct 2, 2019

Jest Unit Test Configuration

This article provides an introduction to Jest unit test configuration, including the advantages, implementation details, and related resources. These steps can help improve efficiency in Jest unit test configuration.

Oct 2, 2019

Abandoning Navicat, Switching to DataGrip

This article introduces abandoning Navicat and switching to DataGrip, including usage scenarios and implementation details, to improve efficiency in transitioning from Navicat to DataGrip.

Oct 1, 2019

Automate Tasks with Hammerspoon

Using Hammerspoon (Lua) to automate tasks on macOS: small utilities, Wi‑Fi events, audio control, and notifications.

Sep 28, 2019

JSX.Element vs React.ReactNode Comparison

This article provides a detailed comparison between JSX.Element and React.ReactNode types in React with TypeScript, including their differences, usage scenarios, and practical examples from antd source code.

Sep 28, 2019

Frontend Route Design

Guidelines for clean, readable, user-friendly routes with examples and rationale.

Sep 27, 2019

MacBook Pro 2015 Model External Dual Monitor Setup

This article shares my experience setting up dual external monitors with a MacBook Pro 2015 model, including the challenges, solutions, and technical details for achieving an efficient multi-display workspace.

Sep 26, 2019

Accessing Intranet Domains Over VPN

Notes on accessing intranet DNS/services over VPN: DNS split, hosts overrides, and resolver behavior.

Sep 22, 2019

Misunderstandings About put Operations in Redux-Saga

This article explores common misunderstandings about put operations in Redux-Saga, including usage scenarios, implementation details, and the difference between blocking and non-blocking operations to improve understanding of Redux-Saga.

Sep 22, 2019

Introduction to Webpack HMR

An introduction to Webpack HMR, including its benefits, how it works, setup details for Angular/React/Vue, and references to help you use HMR effectively.

Sep 15, 2019

TSLint Does Not Catch TypeScript Errors

Explains why linting alone isn’t enough—TSLint enforces style but won’t catch TypeScript type errors, so add tsc to your git hooks.

Sep 10, 2019

Creating Email Templates in Apple Mail

This article introduces how to create email templates in Apple Mail, including advantages, implementation details, and related resources to improve efficiency.

Sep 8, 2019

Handling Exceptions in Redux-Saga

Walks through failure modes in saga effects, covers try/catch, safe wrappers, and effect-level middleware to keep watchers alive despite errors.

Sep 7, 2019

My Experience After Two Weeks with the Bose 700

This article introduces the author's experience after two weeks with the Bose 700, including its advantages, implementation details, and related resources to improve efficiency.

Sep 4, 2019

Implementing Less and CSS Modules in Projects

Why our React project paired Less with CSS Modules, the webpack/TypeScript setup, and how we organize themes vs. component styles.

Sep 1, 2019