<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>dkhoa.dev blog</title><description>Engineering notes by Phan Minh Dang Khoa: IoT, automation, AI and infrastructure.</description><link>https://dkhoa.dev/</link><language>en</language><item><title>Point-adjusted F1 flatters anomaly detectors: notes on TSB-AD</title><link>https://dkhoa.dev/blog/tsb-ad-point-adjusted-f1</link><guid isPermaLink="true">https://dkhoa.dev/blog/tsb-ad-point-adjusted-f1</guid><description>A NeurIPS 2024 benchmark re-scored 40 anomaly detectors on 1,070 curated time series, and a subsequence PCA came out on top of the univariate table.</description><pubDate>Sun, 25 Oct 2026 00:00:00 GMT</pubDate></item><item><title>GridFS uploads in NestJS: the file sits in memory first</title><link>https://dkhoa.dev/blog/gridfs-upload-memory</link><guid isPermaLink="true">https://dkhoa.dev/blog/gridfs-upload-memory</guid><description>In dkhoa-dev/nestjs-multer-gridfs, downloads stream but uploads buffer the whole file. Here is where, and what to change.</description><pubDate>Sat, 24 Oct 2026 00:00:00 GMT</pubDate></item></channel></rss>