notes
Writing on ML, detection systems, agent tooling, and the occasional rabbit hole.
- 40 Chrome Extensions, 22M Users, One Undisclosed Offense Each
A forensic teardown of 40 Chrome extensions that read cookies, exfiltrate full browsing history, scrape page content, or enroll users in market-research panels, all undisclosed.
#security - Two Independent Post-Quantum PGP Implementations Now Interoperate
I tested ML-KEM and ML-DSA across Sequoia and GopenPGP. They talk to each other. Keyservers reject the keys. Here is what works and what does not.
#security - The "Zoo" of Performance Metrics: A Complete Guide to the Confusion Matrix
A comprehensive breakdown of every confusion matrix metric, explaining what it is, when to use it, and the formula behind it.
#ml - A Two-Axis System for Finishing Side Projects
A practical framework that sorts work by urgency and enjoyment, then turns vague obligations into atomic tasks.
#life - My journey to Machine Learning Engineering
From childhood web projects and physics to production ML systems: the path that shaped how I build.
- Why I Stopped Treating LLM Coding as Optional
How coding with language models moved from a novelty to a practical change in the way I build software.
#life#llm - Finding Malicious Files Faster with Group Testing
How pooled tests and adaptive search can identify rare malicious files with far fewer expensive scans.
#ml#math - From zero-shot classification to pairwise LLM ranking
How to overcome bias in zero-shot classification with LLM
- Measurement error in regression
Guide to linear and weighted regression, focusing on fitting with measurement errors and error propagation into parameters.
#ml - Use polars, not pandas
For those who are not familiar, polars is package like pandas, but faster, better and written in rust.
#ml#rust