The Night the XML Validator Saved My Data — And Why I Then Built It for Everyone
I had corrupted XML in production. The validator I needed didn't exist. So I built one.
This one has a specific origin story. I was working on a data pipeline that ingested XML files from an external vendor. One night, the pipeline failed. Silently. No error in the logs, no alert. Just... stopped processing.
Six hours later I found it: a single malformed XML file had corrupted the queue. One bad closing tag — </item> where it should have been </items> — had broken everything downstream.
I tried to find a good online XML validator. Most were garbage. They'd tell you "invalid XML" without telling you where or why. One good one existed but required you to paste your XML into a tiny textarea that couldn't handle large files.
I wanted a validator that would:
- Accept large files via upload, not just paste
- Tell you exactly which line and column the error is on
- Show you the surrounding context so you can understand it
- Validate against a schema if you have one
Built it in a weekend. Added schema validation the following weekend. That tool has now validated tens of thousands of files. Every time there's an error report, I imagine someone avoiding the same 6-hour debugging session I had.