Blog

No Nested Ternary

This article introduces the no-nested-ternary rule, including its advantages, implementation details, and relevant …

· 1 min
Code QualityJavaScript

Reading the Alibaba Java Development Manual

Thoughts after reading Alibaba’s Java Development Manual (Taishan Edition) and how to internalize the conventions.

· 2 min
Code Quality

Architecture Decision Records — ADR

An introduction to Architecture Decision Records (ADRs): why teams need them, how to use them, and a template to start.

· 1 min
Architecture

TypeScript Decorator Practice

Overview of TypeScript decorators, how to enable them, and a practical example transforming Redux action types.

· 2 min
TypeScript

Google Engineering Practices — CR and MR

Takeaways from Google’s engineering practices on changelists (CLs), merge requests (MRs), and code reviews (CRs).

· 2 min
Code Quality

Site Security - CSP

Why CSP matters for site security, how to configure it via headers or meta tags, and common policies worth enabling.

· 2 min
Network Security

Emoji Explained (Simple Guide)

What emojis are (characters, not images), encoding basics, why JS string length varies, and practical notes.

· 3 min

Keyboards Explained (Simple Guide)

A quick primer on keyboard terminology: modifier keys, zones, layouts, and customization tools.

· 2 min
Hardware Devices

Migrating from TSLint to ESLint

TSLint is deprecated—here’s why you should migrate, what the roadmap says, and both automated and manual steps to switch …

· 2 min
Code Quality

Migrating from ts-loader to babel-loader

Why I switched from ts-loader to babel-loader, sample configuration, performance notes, and common questions.

· 1 min
TypeScript

Improving Redux Saga Error Readability

This article introduces improving Redux Saga error readability, including usage scenarios and implementation details to …

· 1 min
React

关于PayPal的使用

本文介绍关于PayPal的使用,包括使用场景、实现细节等,以提高关于PayPal的使用的效率。

· 2 min

Quickly Copy File Paths on Mac

This article introduces quickly copying file paths on Mac, including advantages, implementation details, and related …

· 2 min
Mac

WebSocket Reading Notes

Notes from reading a book on WebSocket, including its purpose, security, related protocols, the OSI model, and key …

· 3 min

Implementing WebSocket in Projects

Spring Boot + React example for broadcasting events via WebSocket/STOMP, plus deployment gotchas.

· 3 min
WebSocket

Implementing a Loading Middleware with Redux-Saga

Shows how to toggle global loading masks at the saga layer, wrap effects with middleware, and avoid repetitive spinner …

· 1 min
React

Beginning CSS Preprocessors: Key Takeaways

This article introduces the book "Beginning CSS Preprocessors", covering its advantages, implementation details, and …

· 3 min
CSS

Case Styles in Frontend Programming

Common case styles (Pascal, camel, kebab, snake, dot) and pragmatic conventions by context.

· 2 min
Code Quality

[Translation] Event Handler Naming in React

This post translates and discusses naming conventions for event handlers in React, with practical guidance and …

· 3 min
ReactJavaScriptTranslation

Playing with ThinkPad X1 Carbon 2019

This article introduces playing with the ThinkPad X1 Carbon 2019, including usage scenarios and implementation details …

· 2 min
Windows

Implementing One-Click Screenshot Upload to Image Hosting with Alfred

This article introduces implementing one-click screenshot upload to image hosting with Alfred, including usage scenarios …

· 2 min
Productivity Tools

For Information Freedom — Part 3 (2020)

Notes on maintaining access to Google for learning: a working v2ray+websocket+https setup and quick deployment tips.

· 1 min

window.open Basics

A clarification on window.open URLs, relative vs absolute paths, dev vs build behavior, and why both may 'work' during …

· 2 min
JavaScript

JS Precision Math: Choosing big.js vs mathjs

This post compares big.js and mathjs for JavaScript precision calculations, including pros, size, and usage …

· 2 min
JavaScript

Eliminating Dead Code in TS Projects

How to remove dead code in TypeScript projects with compiler settings, lint rules, and tooling so you keep the codebase …

· 2 min
TypeScript