XPath Predicate Pitfall – //div[a=Download]/a/@href Returns Empty

Summary A developer encountered unexpected behavior while attempting to scrape a specific download link using XPath. The confusion stemmed from the necessity of explicitly repeating the element name (the a tag) both within the predicate (the filter) and in the path following the predicate. This post dissects the structural mechanics of XPath axes and predicates … Read more

Product Engineering vs Government Stability Career Path

Summary A junior engineer is facing a career-path divergence crisis. They are weighing the high-velocity, high-uncertainty environment of Product Engineering against the stability, predictability, and perceived “peace” of a Government Sector role. The core conflict is between Continuous Upskilling (High Entropy) and Static Job Security (Low Entropy). Root Cause The fundamental issue is a misalignment … Read more

Fixing Claude Code v2 Freezes on Windows Caused by Git Bash

Summary A critical production issue was identified where Claude Code v2.x would freeze indefinitely when executing shell commands (such as ls, find, grep, or ./gradlew) on Windows environments. The application would hang without output, leading to the accumulation of multiple zombie bash processes that required a hard restart of the tool. The issue was eventually … Read more

VS Code Local History Extension Data Loss at daysLimit 0

Summary A critical failure in the VS Code Local History extension resulted in the unintended mass deletion of versioned files. Despite the user configuring a daysLimit of zero—intended to disable the auto-purge mechanism—the extension bypassed this logic, performing hard deletes on historical files. This behavior triggered unexpected file synchronization events in OneDrive, leading to massive … Read more

Why Batch Scripts Fail to Log Off Remote Windows Sessions

Summary An automation attempt to clear user sessions across multiple remote Windows servers via a Batch script failed to execute any logoff commands. The script intended to iterate through a list of servers, parse the output of query session, and issue logoff or reset session commands while protecting the current user’s session. Despite appearing to … Read more

Fixing Flutter SSL Handshake Failures on Android 13 and Below

Summary SSL handshake failures occur on Android 13 and below when the backend API’s certificate chain includes the DigiCert TLS RSA4096 Root G5 root. The issue is triggered after the server was updated to send the full chain, which Flutter’s HttpClient validates against the platform trust store on older Android versions. Root Cause The Flutter HttpClient … Read more

Optimizing System Call Overhead in Kernel Drivers

Summary During a recent high-load stress test, we observed a catastrophic performance degradation in our kernel-level drivers. The investigation revealed a misunderstanding of how modular abstraction layers interact. While the concept of “layers” implies a clean hierarchy, the actual mechanism of communication—specifically the transition between User Mode and Kernel Mode—is where systems succeed or fail. … Read more

Preventing MongoDB $expr $push race conditions in production

Summary MongoDB’s $expr with $lt in the query filter and a single $push operation is atomic at the document level, so the array will not exceed the specified maximum when using this pattern alone. However, real-world production environments introduce additional pitfalls that can lead to race conditions or inconsistent state. Root Cause Atomicity is confined … Read more

Split Recommender Ratings Before Aggregation to Avoid Leakage

Summary Splitting the rating matrix into training and testing sets is a fundamental step before building recommender models. The goal is to keep the original distribution of users, movies, and ratings while preventing information leakage. This postmortem explains why the original notebook’s data preparation missed a proper split, the consequences, and how senior engineers reliably … Read more