Blog

Blog

Field notes on building and evaluating language-model systems, written from production work and from research — plus the open guides I keep up to date for people studying AI and data science. Everything here is free to read, takes corrections by pull request, and is archived with a DOI so it can be cited.

01Field notes

Recent writing

Short empirical pieces, usually built around one measurement on public data: what an LLM judge does when nobody is checking, what a benchmark’s annotation layer looks like underneath, what a leaderboard’s votes can and cannot establish. Each one comes with the code that produced its numbers.

  1. What an LLM judge actually does when you are not looking

    Three local models graded the same arithmetic, with one answer provably correct. One picked whichever answer was shown first 91% of the time.

02Series

Modern AI Engineering

Six chapters on the stack I use daily, from calling models well to serving them cheaply, with the trade-offs stated plainly and the failure modes named. They come from shipping LLM systems in production, mostly matching, ranking and content generation for a recruitment marketplace, and from doctoral research on explainable NLP and LLM evaluation.

Each chapter stands alone. If you already build with LLMs, start with Evaluation: it is the discipline most teams add last and need first.

  1. Chapter 1

    Calling LLMs well

    Structured outputs, streaming, retries, caching and cost control — the unglamorous 80%.

  2. Chapter 2

    Retrieval-augmented generation

    Chunking, hybrid search, rerankers, and how RAG actually fails.

  3. Chapter 3

    Agents and MCP

    Tool loops, the Model Context Protocol, and when not to build an agent.

  4. Chapter 4

    Fine-tuning and preference optimization

    Prompting vs. RAG vs. LoRA vs. DPO/GRPO — a decision guide, then the mechanics.

  5. Chapter 5

    Evaluation and LLM-as-judge

    The chapter closest to my research: evals that predict production, judges you can trust.

  6. Chapter 6

    Serving and inference optimization

    vLLM, quantization, KV caches, and latency and cost budgets that hold.

03Guides

Guides I keep up to date

These are living documents rather than posts: lists and paths that only stay useful if somebody maintains them. Each one has its own repository, checks its links weekly, and takes corrections by issue or pull request.

Guide

AI & Data Science Master’s Programmes in the Netherlands

Every master’s in artificial intelligence, machine learning and data science at a Dutch research university, with how admissions actually work, what it costs, and how to choose. I did my PhD in the Netherlands and stayed; this is the overview I wanted when I was comparing options. Every programme links to its official page, checked weekly.

mohammadi-hadi/ai-masters-netherlands · MIT

Guide

Machine Learning Summer Schools in Europe

Which schools exist, how to get in, how to fund it, and how to get real value out of the week. Written from four of them — the Explainable AI Summer School at TU Delft, OxML, the Generative Modeling Summer School in Eindhoven, and a LERU doctoral school.

mohammadi-hadi/ml-summer-schools-europe · MIT

Guide

ML Learning Paths

The question is never “what courses exist” — it is “I want this job, what do I do next”. Five ordered paths, for ML scientist, ML engineer, LLM engineer, data engineer and data scientist. Every entry says why it is there, and every path can be completed for free.

mohammadi-hadi/ml-learning-paths · MIT

Reading list

Awesome Explainable NLP

A curated list of papers, tools and resources on explainability and interpretability for NLP and large language models — feature attribution, probing, counterfactuals, faithfulness, and evaluation. Companion to my survey of explainable NLP across domains.

mohammadi-hadi/awesome-explainable-nlp · CC0 1.0

04Elsewhere

Related

Opening the Black Box is a free self-paced course in explainable AI for large language models: thirteen labs that run in the browser. The same material is taught as a five-day summer school for universities and teams. The playground lets you poke at a model’s explanations without writing any code.

NL Student Support is a separate free directory I maintain of the support services at 49 Dutch higher education institutions: psychologists, counsellors, study advisers, disability and financial support.

Corrections and additions to any of this are welcome as an issue or a pull request on the repository. New writing appears in the RSS feed.