# James Alaniz > Software engineer writing about LLM systems, debugging discipline, AI-product architecture, and side projects. The corpus on this site is a multi-week empirical research arc (213 harvests, 30 games, structured reproducibility) plus general-audience writeups of the same findings. ## General posts Narrative writeups for non-specialist readers. Each pairs with a research post on the same topic. - [Database as Debugging Loop](https://jamesalaniz.dev/blog/database-as-debugging-loop): I spent a day debugging a personal AI voice assistant where the telemetry database became the shared context with the agent. The pattern that fell out — telemetry in a queryable shape — turned out to be more portable than the specific stack: the same loop works with local logs, a local database, or an observability stack, as long as the agent has a programmatic connector. - [Writing Isn't Verification — and Neither of Us Caught It](https://jamesalaniz.dev/blog/writing-isnt-verification): I wrote a careful set of rules to make an AI a better writer for my blog. It followed every rule. It also let about twenty facts go out the door wrong. Writing rules and verification rules are two different disciplines, and I had only written one of them. - [Two Kinds of Things an AI Gets Wrong](https://jamesalaniz.dev/blog/what-an-ai-gets-wrong): I spent a few weeks measuring where an AI confidently made things up — and it turns out 'hallucination' wasn't one thing. It was two. - [The Time I Thought 'More Data' Would Fix My AI](https://jamesalaniz.dev/blog/more-data-didnt-fix-my-ai): I added a 'universal coverage' backup source to my AI's grounding pipeline, expecting it to fill the gap on the games Wikidata didn't cover. The hypothesis behind it didn't hold. What that taught me about 'more data' vs. 'the right data.' - [AI That Respects Creators](https://jamesalaniz.dev/blog/ai-that-respects-creators): Some AI tools feel like they're quietly siphoning from you; others send real viewers and subscribers back to you. The difference isn't a feature you add later — it's a shape baked into the architecture long before anyone writes a privacy policy. Here's what that shape could look like. - [Why I rebuilt the site in Next.js](https://jamesalaniz.dev/blog/why-next-js): Moving off an ASP.NET template I never customized. Here's why Next.js made sense. ## Research posts Empirical writeups with run IDs, SQL queries, and methodology receipts. Source-of-truth for any numerical claim cited in the general posts. - [Runtime vs. Harvest: A Design Pattern for RAG Over Third-Party Content](https://jamesalaniz.dev/blog/research/runtime-vs-harvest-design-pattern): Where you fetch and when you fetch can be two of the most consequential architectural decisions in retrieval-augmented generation. Latency, cost, and infra are the easier axes to reason about; the attribution axis is the one this post focuses on, because it turns on a single binary architectural property — does the pipeline persist third-party content? — where the others are parameter tuning. - [Two Kinds of Hallucination, a Discrete Confidence Cliff, and What It Costs](https://jamesalaniz.dev/blog/research/hallucination-taxonomy-confidence-cliff): Empirical data from 200+ harvests across 30 distinct games run through an LLM-generated reference-content pipeline splits the fabrications I observed cleanly into two buckets with different responses to intervention, sitting beneath a judge-side confidence distribution that clusters at a handful of discrete values. - [Universal Coverage Isn't Enough: Grounding Sources Must Align With Schema Slots](https://jamesalaniz.dev/blog/research/grounding-schema-alignment): A counterintuitive result from trying to make an LLM-authored synthetic game wiki more accurate: the source with the widest coverage didn't help on the games that needed it. Three consecutive negative results across Steam, Wikidata, and IGDB in this research pointed at the same diagnosis — and the implication for retrieval-augmented generation over a structured schema, at least in my setup, is 'fit matters more than size.' - [Data Appendix: Runs, Cohorts, and Methodology](https://jamesalaniz.dev/blog/research/data-appendix): The run-by-run A/B structure behind the research posts — ungrounded baseline runs, grounded runs, per-harvest verdicts for the 31-harvest snapshot (30 distinct games), and the exact metrics each post cites. ## About the author - [About](https://jamesalaniz.dev/about): Bio + links to GitHub and ORCID (0009-0003-9620-0241). - [Contact](https://jamesalaniz.dev/contact): Ways to get in touch. ## Editorial standards - [Blog Writing Standards](https://jamesalaniz.dev/standards): The 14-rule editorial-verification discipline applied to every post on this site, including a CI-enforced linter and a weekly LLM-judge audit. Useful context for understanding why the corpus's prose is structured the way it is. ## Citations - [BibTeX for every post](https://jamesalaniz.dev/citations.bib): Pre-generated BibTeX entries (`@misc`) for the entire corpus. Suitable for ORCID bulk-import or LaTeX `\cite{}` references.