41554 blogs · [
{
"id": "01a087bd-7ee6-7012-a371-b27e8bb1862a",
"title": "Plugin Architecture Across Service Boundaries: An API Contract with Pydantic & FastAPI - Pt. 1",
"url": "https://patrickm.de/plugin-architecture-across-service-boundaries-an-api-contract-with-pydantic-fastapi-pt-1/",
"published_at": "2026-08-30T07:16:14+00:00"
},
{
"id": "01a0821d-d704-7120-bd04-e65034ebec87",
"title": "Static Protocols in Python: Behaviour Over Inheritance",
"url": "https://patrickm.de/static-protocols-in-python/",
"published_at": "2026-01-05T09:23:00+00:00"
},
{
"id": "01a087bd-7ee6-7012-a371-b27e8cd735de",
"title": "How to build internal developer tools with a small team",
"url": "https://patrickm.de/building-internal-dev-tools/",
"published_at": "2025-10-26T14:23:03+00:00"
},
{
"id": "01a087bd-7ee6-7012-a371-b27e8d88d359",
"title": "When is a knowledge graph open or closed world? And how to create a company wide implementation strategy",
"url": "https://patrickm.de/knowledge-graph-open-or-closed-world/",
"published_at": "2025-10-03T14:08:04+00:00"
},
{
"id": "01a087bd-7ee6-7012-a371-b27e8e1e861e",
"title": "The LLM Hype Train: A Pamphlet[?] You Should Read With Your Manager",
"url": "https://patrickm.de/llm-hypetrain-pamphlet/",
"published_at": "2025-08-30T16:09:01+00:00"
},
{
"id": "01a0821d-d704-7120-bd04-e6503524c351",
"title": "Pytest Fixtures: How to Use & Organize them in your Test Architecture",
"url": "https://patrickm.de/pytest-fixtures-how-to-use-organize-them-in-your-test-architecture/",
"published_at": "2025-05-09T15:27:37+00:00"
},
{
"id": "01a0821d-d704-7120-bd04-e65035df63a6",
"title": "How bugs made me believe in TDD",
"url": "https://patrickm.de/why-tdd/",
"published_at": "2025-05-02T06:30:45+00:00"
},
{
"id": "01a0821d-d704-7120-bd04-e65036da96b3",
"title": "Why Celery Tasks trigger signals twice",
"url": "https://patrickm.de/why-celery-tasks-trigger-signals-twice/",
"published_at": "2025-04-17T09:26:37+00:00"
},
{
"id": "01a0821d-d704-7120-bd04-e650374b6de0",
"title": "Pytest Fixtures: Einführung, Nutzung & Organisation in deiner Testarchitektur",
"url": "https://patrickm.de/pytest-fixtures-einfuehrung/",
"published_at": "2025-03-16T17:03:07+00:00"
},
{
"id": "01a0821d-d704-7120-bd04-e6503780a0bb",
"title": "Warum ich TDD praktiziere und wie es auch dir helfen kann",
"url": "https://patrickm.de/warum-tdd/",
"published_at": "2025-03-09T19:09:32+00:00"
},
{
"id": "01a087bd-7ee6-7012-a371-b27e9128f316",
"title": "Wie schreibe ich eine Cold Email?",
"url": "https://patrickm.de/wie-cold-email/",
"published_at": "2025-02-23T09:20:58+00:00"
},
{
"id": "01a087bd-7ee7-7252-8f00-7829c35fc096",
"title": "Wie du das richtige SaaS-Pricing findest und Fehler vermeidest",
"url": "https://patrickm.de/wie-saas-pricing/",
"published_at": "2025-02-09T09:22:03+00:00"
},
{
"id": "01a0821d-d704-7120-bd04-e65038049791",
"title": "Wieso Celery Tasks Signale doppelt triggern",
"url": "https://patrickm.de/wieso-triggert-celery-signale-doppelt/",
"published_at": "2025-01-12T20:12:12+00:00"
}
] posts Claim your blog