Use a small expect script to automate OpenConnect VPN login steps at home, reducing repetitive prompts.
Discover essential Mac hotkeys to boost your productivity. Learn shortcuts for system-level operations, Finder, and …
What Babel and the TypeScript compiler actually do, and how to polyfill missing APIs in React/Angular projects.
This article introduces how to set up a mock server using Postman, including its advantages, implementation details, and …
This article introduces what's new in Node.js 10, including its advantages, implementation details, and relevant …
This article introduces commonly used Docker commands, including their advantages, implementation details, and related …
This article introduces how to migrate blog services to a domestic server, including usage scenarios and implementation …
This article introduces the comparison between Promises and Observables, including their advantages, implementation …
This post compares TypeScript and JavaScript and discusses whether you should migrate a project to TypeScript, covering …
This article introduces how to import third-party JavaScript in Angular projects, including advantages, implementation …
This post explains the 'Cannot find module inherits' error, including analysis and fixes that can help resolve build …
This article introduces my first experience with Docker, including its advantages, implementation details, and related …
This article introduces common hexo errors, including their causes, solutions, and implementation details. These steps …
This post summarizes differences between Bootstrap 3 and 4, including component changes and key features.
How I built a lightweight web platform on top of Hexo so I can draft and publish posts from any device.
This post explains how to downgrade iOS from a beta back to the stable release, including backup and recovery steps.
This post explains how to configure Nginx so a website is accessible only by domain, not by IP.
Walkthrough of issuing a Let's Encrypt certificate with acme.sh, wiring it into NGINX, and keeping it renewed …
This article introduces Nginx user IP passthrough, including its advantages, implementation details, and relevant …
Key differences between Angular 1.x and Angular 2 across controllers, change detection, DI, routing, and syntax.
Reflections and insights from my four years as a programmer. Emphasizing continuous learning, understanding the big …
This article introduces upgrading Angular 5 to 6, including the advantages of upgrading Angular 5 to 6, implementation …
This article provides an introduction to PhantomJS installation, including its advantages, implementation details, and …
This post shares my personal hardware toolkit, real usage impressions, and setup notes to help others choose and …
Approaches to cache static assets effectively: cache headers, version query params, and content hashing with pros/cons.