What is the Elephant Carpaccio Kata?
The Elephant Carpaccio Kata trains teams to break down large requirements into small, deliverable increments. Developed by Alistair Cockburn, the task is intentionally simple: a calculator for order values with taxes and discounts. Teams split this requirement into 15–20 independent, deployable slices – and implement them in short iterations.
The goal is not the finished calculator, but learning vertical slices: each increment should deliver real value and be independently deployable. Teams that previously thought horizontally in layers (database first, then backend, then UI) experience a shift in perspective through the kata.
Why a European Variant?
The core principle and learning experience remain unchanged. Two reasons speak in favour of an adaptation.
AI-assisted Development Makes the Original Task Obsolete
The kata allows any form of implementation: classic coding, vibe-coding, or a pure spreadsheet. The problem: Elephant Carpaccio has become part of the AI folklore. In LLM-augmented IDEs, a few keystrokes are enough to get the complete solution suggested – the original task appears in countless training datasets.
The task must therefore be varied so that AI-assisted autocompletion does not become an unintended shortcut – without having to forgo useful IDE support.
US Tax Terminology – an Unnecessary Context Switch
The original task uses US-American tax terms and state-specific rules. For European participants, this creates a distracting cognitive overhead: energy flows into domain questions rather than the actual goal – slicing increments.
The European variant replaces US states with EU member states and state tax with VAT. This lowers the entry barrier and simultaneously solves – at least temporarily – the AI problem: an unknown variant has not yet made it into training data.
The European Variant
Tax Rates
| Country | Country Code | Tax Rate (%) |
|---|---|---|
| Germany | DE | 19 |
| Netherlands | NL | 21 |
| Denmark | DK | 25 |
| Luxembourg | LU | 17 |
| Hungary | HU | 27 |
| France | FR | 20 |
| Italy | IT | 22 |
| Spain | ES | 21 |
| Poland | PL | 23 |
| Austria | AT | 20 |
Discounts
| Discount | Order Value |
|---|---|
| 3% | >= 1,000 € |
| 5% | >= 5,000 € |
| 7% | >= 7,000 € |
| 10% | >= 10,000 € |
| 15% | >= 50,000 € |
Calculation Formula
| # | Calculation | Formula |
|---|---|---|
| 1 | Order Value | Price * Quantity |
| 2 | Discount Amount | discount(Order Value) |
| 3 | Discounted Order Value | Order Value - Discount Amount |
| 4 | Taxable Value | Discounted Order Value |
| 5 | Tax Rate | taxRateForCountry(Country Code) |
| 6 | Tax Amount | Taxable Value * Tax Rate |
| 7 | Final Price | Taxable Value + Tax Amount |
