Explainer · WebRFC 8259 requires exactly three things to be escaped inside a JSON string. Everything else is optional. The one that actually breaks pipelines is a lone surrogate — legal in JSON text, impossible in UTF-8, and silently replaced the moment your data is written out.
Daniel Okonkwo · 13 min read
Explainer · BusinessThe same company, the same year, reads 1.02×, 1.52× or 2.56× depending on where rent is put and whether principal is grossed up for tax. Two of those pass a 1.25 covenant and one does not.
Camille Laurent · 17 min read
Comparison · PropertyOverpaying earns exactly your mortgage rate, certainly and untaxed. An investment must therefore beat that rate divided by one minus the tax on its return — which at a 3.2 % mortgage means 4.57 % in a French ordinary account and 3.20 % inside the German savings allowance, before any reward for taking risk.
Camille Laurent · 15 min read
Guide · FinanceThe usual advice is that a buy-back gets worse with age, because the price rises. The French scale is written to be actuarially neutral, so that is not quite what is happening — and once you see what actually moves the answer, the decision changes. Computed on the current parameters.
Camille Laurent · 14 min read
Explainer · FinanceA missing quarter in France costs you twice over, through two separate mechanisms that most explanations mention only one of. A German point is a single arithmetic step and much easier to price. Both are computable, and the 2026 figures changed more than usual.
Camille Laurent · 14 min read