This article explains why block-level elements cannot be contained within P tags, including the advantages, …
Why I upgraded from AirPods Gen 1, who should buy them, Gen 2 vs. Gen 1/Pro, battery life, and resale options.
This article introduces the deprecated componentWillReceiveProps, including usage scenarios and implementation details, …
This article introduces the react-intl v3 upgrade, including its advantages, implementation details, and relevant …
Reflections on the X-Y Problem and why clear, thoughtful questions save everyone time.
How we used Redis pub/sub to fan out WebSocket messages across clustered Spring Boot instances.
This article introduces how to implement one-click Bluetooth device connection using Alfred, including the advantages of …
Notes from building my first Chrome extension for JD.com coupon automation—key capabilities, workflow tips, and …
Migrated from Swiftype/local search to Algolia on Hexo + NexT: account setup, keys, theme and site config, indexing, and …
This article explains how to implement one-click Evernote search in Alfred, including why it is useful, the …
This article introduces implementing one-click OCR screenshot text recognition with Alfred, including OCR advantages, …
Diagnosing custom font flicker and practical fixes: CSS extraction, font preloads, file formats, font-display strategy, …
This article introduces how to implement one-click OpenConnect VPN login using Alfred, including the advantages of …
This article introduces the no-nested-ternary rule, including its advantages, implementation details, and relevant …
Thoughts after reading Alibaba’s Java Development Manual (Taishan Edition) and how to internalize the conventions.
An introduction to Architecture Decision Records (ADRs): why teams need them, how to use them, and a template to start.
Overview of TypeScript decorators, how to enable them, and a practical example transforming Redux action types.
Takeaways from Google’s engineering practices on changelists (CLs), merge requests (MRs), and code reviews (CRs).
Why CSP matters for site security, how to configure it via headers or meta tags, and common policies worth enabling.
What emojis are (characters, not images), encoding basics, why JS string length varies, and practical notes.
A quick primer on keyboard terminology: modifier keys, zones, layouts, and customization tools.
TSLint is deprecated—here’s why you should migrate, what the roadmap says, and both automated and manual steps to switch …
Why I switched from ts-loader to babel-loader, sample configuration, performance notes, and common questions.
This article introduces improving Redux Saga error readability, including usage scenarios and implementation details to …
本文介绍关于PayPal的使用,包括使用场景、实现细节等,以提高关于PayPal的使用的效率。