Blog
-
The demo is cheap. Production isn't Pricing Cost to build an app with AI, and what Lovable won't do
What an app built with Lovable costs compared with commissioning one, and the engineering behind the gap: domain, architecture, tests and resilience.
-
From €36,000, and what nobody includes Pricing Custom SaaS development cost: prices by phase
Starting prices by phase, what moves the price, what quotes usually leave out, and what a small SaaS costs to keep running in its second year.
-
What matters is which law the provider obeys Infrastructure EU infrastructure and the GDPR: requirements and real cost
Where the servers sit matters less than which law the provider answers to. What changed in June 2026 and how to run a SaaS without leaving EU jurisdiction.
-
Three ways to isolate, three prices Architecture Multi-tenant data isolation: three ways, three price tags
One database with tenant_id, a schema per customer or a database per customer. What each one costs you, and the SaaS security flaw that beats SQL injection.
-
The debate is asking the wrong question Security JWT vs sessions: the debate asks the wrong question
Cookie or JWT comes second. What matters is who decides when a session ends, and there a signed token has a problem that almost nobody mentions.
-
A charge that happens twice Payments Idempotency: why a retried payment gets charged twice
A double charge is rarely the payment provider's fault. Someone assumed a request only ever gets sent once. How to fix it, and what it costs.
-
Rarely the database's fault Performance Slow Postgres queries are rarely the database's fault
N+1 queries, missing indexes and the execution plan. How to diagnose a slow query in Postgres without upgrading the server or switching technology.
-
The team sets the threshold Architecture Monolith or microservices: team size sets the threshold
Almost nobody splits services over a scaling problem. They split over a coordination problem, which is why a small team nearly always loses by doing it.
-
Three steps, and almost nobody does the third Databases Zero-downtime database migrations: expand and contract
Renaming a column takes the product down during the deploy. The pattern that prevents it has three steps, and almost nobody carries out the third one.
-
The provider will fail. You don't have to Resilience API resilience: surviving slow, unreliable providers
When your product depends on other people's APIs, they will fail. Latency budgets, circuit breakers, bulkheads and graceful degradation, in practice.