<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Niklas Beinghaus</title>
    <description>The latest articles on DEV Community by Niklas Beinghaus (@njoerd).</description>
    <link>https://dev.to/njoerd</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2462946%2F4079ff5c-af25-4722-8a6b-e7b9b0f4861d.png</url>
      <title>DEV Community: Niklas Beinghaus</title>
      <link>https://dev.to/njoerd</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/njoerd"/>
    <language>en</language>
    <item>
      <title>Less, But Better: Dieter Rams' Design Principles for Platform Engineering in the Agentic AI Era</title>
      <dc:creator>Niklas Beinghaus</dc:creator>
      <pubDate>Thu, 16 Apr 2026 11:15:27 +0000</pubDate>
      <link>https://dev.to/njoerd/less-but-better-dieter-rams-design-principles-for-platform-engineering-in-the-agentic-ai-era-5fh1</link>
      <guid>https://dev.to/njoerd/less-but-better-dieter-rams-design-principles-for-platform-engineering-in-the-agentic-ai-era-5fh1</guid>
      <description>&lt;p&gt;In the late 1970s, Dieter Rams looked at the world and saw what he called "an impenetrable confusion of forms, colours and noises." He responded with ten principles of good design. They were written for physical products, but they've outlasted most of the products themselves.&lt;/p&gt;

&lt;p&gt;Now look at platform engineering in 2026. Nearly 90% of enterprises run internal developer platforms. AI agents are getting RBAC permissions and resource quotas. MCP has over 10,000 published servers under Linux Foundation governance. Agent2Agent protocols handle distributed orchestration. FinOps is merging with GreenOps.&lt;br&gt;
We are surrounded by an impenetrable confusion again, just a different kind: tools, protocols, agents, abstractions, all piling up faster than anyone can evaluate them.&lt;/p&gt;

&lt;p&gt;Rams asked himself: &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Is my design good design?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Platform engineers should steal that question!&lt;/p&gt;

&lt;h2&gt;
  
  
  The Principles, Translated
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Innovative, but never for its own sake
&lt;/h3&gt;

&lt;p&gt;Rams said innovation must develop in tandem with technology, never as an end in itself.&lt;br&gt;
The MCP ecosystem, A2A protocols, AI-powered golden paths: adopt them where they solve real delivery pain. A platform that integrates MCP to replace dozens of bespoke API adapters is doing real work. One that adds an MCP layer to an internal tool three people use, just to be "agentic," is chasing fashion. I see the second pattern more often than I'd like.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Useful, as in, actually usable
&lt;/h3&gt;

&lt;p&gt;A product is bought to be used. Can a developer go from zero to production on a Golden Path without filing a ticket? Can an AI agent provision a staging environment through an MCP tool with the same governance guardrails?&lt;br&gt;
If you're not treating your platform as a product, with developers as customers, you're not doing platform engineering yet. Evan Bottcher wrote this in 2018. The DORA reports have confirmed it every year since. It still isn't obvious to everyone.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Aesthetic: elegant abstractions
&lt;/h3&gt;

&lt;p&gt;Aesthetics in platforms isn't about your portal's colour scheme. It's the Terraform module that provisions a compliant namespace in 12 lines. The CI/CD template that works out of the box. The MCP tool schema clear enough that an agent discovers and invokes capabilities without extra prompting.&lt;br&gt;
A Golden Path that requires 47 environment variables is not a path. It's a labyrinth.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Understandable, to humans and agents
&lt;/h3&gt;

&lt;p&gt;Rams designed products that talked to you. The physical form communicated the function without a manual.&lt;br&gt;
Platforms now serve two completely different cognitive models: developers who navigate through portals and docs, and AI agents who navigate through structured schemas and tool definitions. MCP exists because the old approach, where every model-to-tool combination needed a custom integration, didn't scale. The protocol makes the platform talk to agents the same way Rams' designs made a radio talk to its owner. That's not a metaphor. That's what self-describing interfaces do.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Unobtrusive: enable, don't dictate
&lt;/h3&gt;

&lt;p&gt;The platform exists to enable, not to micromanage. Golden Paths should be the easiest route, not the only route. Guardrails should prevent catastrophe (public S3 buckets, production deploys without tests) without policing every architectural choice.&lt;br&gt;
An agent with RBAC so restrictive that it needs human approval for every single operation isn't an autonomous agent. It's a chatbot with extra steps.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Honest: deliver what you promise
&lt;/h3&gt;

&lt;p&gt;This one haunts every team that marketed a "self-service" portal that still requires three Slack messages to get anything done. Or shipped "AI-powered infrastructure" that turned out to be a ChatGPT wrapper around the docs.&lt;br&gt;
AI-generated Terraform that passes linting but omits IAM restrictions is dishonest platform output. AI didn't eliminate the work. It shifted it from writing configs to validating them. An honest platform acknowledges that shift and builds the validation tooling to match.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Long-lasting: stable interfaces over trending tools
&lt;/h3&gt;

&lt;p&gt;Rams' 606 shelving system was designed in 1960 and is still in production. It was built around timeless constraints (gravity, wall space, human reach), not around 1960s aesthetics.&lt;br&gt;
Build on durable abstractions. MCP now sits under the Agentic AI Foundation at the Linux Foundation, with Anthropic, Google, Microsoft, AWS, and OpenAI as backers. Open governance is the best signal of longevity we have for a protocol. Put your investment into the interfaces between components, not the implementations behind them. Implementations get replaced. Good interfaces survive.&lt;/p&gt;

&lt;h3&gt;
  
  
  8. Thorough: nothing left to chance
&lt;/h3&gt;

&lt;p&gt;Does your error message tell the developer what went wrong and how to fix it, or does it dump a stack trace? Does your MCP tool response include structured error codes, or unstructured text that breaks the agent's reasoning chain? Does your policy-as-code make non-compliant deployments technically impossible, or just discouraged?&lt;br&gt;
In regulated industries like finance, healthcare, or fiscal technology, this isn't about quality polish. Compliance baked into the infrastructure layer is the whole reason the platform exists.&lt;/p&gt;

&lt;h3&gt;
  
  
  9. Environmentally friendly: cloud waste is environmental waste
&lt;/h3&gt;

&lt;p&gt;Rams talked about environmental responsibility before it was mainstream. In 2026, the FinOps Foundation treats Cloud Sustainability as a core capability. Dashboards show dollar costs and carbon emissions next to each other.&lt;br&gt;
Data centers generate emissions on the scale of the aviation industry. But here's the useful part: eliminating an idle VM or rightsizing a cluster that's twice the size it needs to be cuts your bill and your carbon footprint at the same time. Teams that schedule flexible workloads (training runs, batch jobs) during renewable energy peaks are already doing this at scale.&lt;br&gt;
Every idle resource is waste. Every overprovisioned cluster is pollution. But that's the platform team's problem to solve through better defaults, not the developer's problem to solve through extra approval steps. Rams didn't ask the radio buyer to think about energy efficiency. He designed it in.&lt;/p&gt;

&lt;h3&gt;
  
  
  10. As little design as possible
&lt;/h3&gt;

&lt;p&gt;Every 2026 prediction adds responsibilities to the platform team: agent governance, MCP, ML pipelines, FinOps, security-by-design, carbon tracking. The temptation to build a maximalist platform that does all of it is real.&lt;br&gt;
Rams would say: weniger, aber besser. Less, but better.&lt;br&gt;
The best platforms don't have the most features. They have the right feature at the right moment, and everything else stays invisible. An MCP server should expose the smallest useful set of tools. A governance policy should enforce the fewest constraints that actually keep things safe.&lt;br&gt;
The Braun ET 66 calculator has exactly the controls it needs. Every button earns its place. Your platform service template should meet the same bar.&lt;/p&gt;

&lt;h2&gt;
  
  
  Quick reference
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;#&lt;/th&gt;
&lt;th&gt;Rams&lt;/th&gt;
&lt;th&gt;Platform Translation&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1&lt;/td&gt;
&lt;td&gt;Innovative&lt;/td&gt;
&lt;td&gt;Adopt MCP, A2A, AI agents only where they solve real pain&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2&lt;/td&gt;
&lt;td&gt;Useful&lt;/td&gt;
&lt;td&gt;Serve all personas: devs, SREs, AI agents, compliance&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3&lt;/td&gt;
&lt;td&gt;Aesthetic&lt;/td&gt;
&lt;td&gt;Clean abstractions, consistent interfaces, clear schemas&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4&lt;/td&gt;
&lt;td&gt;Understandable&lt;/td&gt;
&lt;td&gt;Self-describing for both humans and AI agents&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;Unobtrusive&lt;/td&gt;
&lt;td&gt;Opinionated defaults with room for autonomy&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6&lt;/td&gt;
&lt;td&gt;Honest&lt;/td&gt;
&lt;td&gt;Real self-service, transparent SLAs, honest AI boundaries&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7&lt;/td&gt;
&lt;td&gt;Long-lasting&lt;/td&gt;
&lt;td&gt;Stable interfaces over trending implementations&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;8&lt;/td&gt;
&lt;td&gt;Thorough&lt;/td&gt;
&lt;td&gt;Helpful errors, automatic compliance, nothing arbitrary&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;9&lt;/td&gt;
&lt;td&gt;Env. friendly&lt;/td&gt;
&lt;td&gt;Green defaults baked in: efficient regions, rightsized templates, auto-scale-down&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10&lt;/td&gt;
&lt;td&gt;As little as possible&lt;/td&gt;
&lt;td&gt;Fewest capabilities that solve the most important problems&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;p&gt;The organizations that will build the best platforms in 2026 are not the ones adopting the most tools. They're the ones that pick the fewest tools that solve the most important problems, and then execute well.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;&lt;em&gt;weniger, aber besser&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Sources
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://www.vitsoe.com/us/about/good-design" rel="noopener noreferrer"&gt;Dieter Rams: Ten Principles for Good Design&lt;/a&gt; — Vitsœ&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://platformengineering.org/events/platform-engineering-in-2025-what-changed-ai-and-the-future-of-platforms-2025-12-09" rel="noopener noreferrer"&gt;Platform Engineering in 2025: What Changed, AI, and the Future of Platforms&lt;/a&gt; — platformengineering.org&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://platformengineering.org/blog/10-platform-engineering-predictions-for-2026" rel="noopener noreferrer"&gt;10 Platform Engineering Predictions for 2026&lt;/a&gt; — platformengineering.org&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://martinfowler.com/articles/talk-about-platforms.html" rel="noopener noreferrer"&gt;What I Talk About When I Talk About Platforms&lt;/a&gt; — Evan Bottcher, martinfowler.com&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://blog.modelcontextprotocol.io/posts/2026-mcp-roadmap/" rel="noopener noreferrer"&gt;The 2026 MCP Roadmap&lt;/a&gt; — David Soria Parra, Model Context Protocol Blog&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.linuxfoundation.org/press/linux-foundation-announces-the-formation-of-the-agentic-ai-foundation" rel="noopener noreferrer"&gt;Linux Foundation Announces the Agentic AI Foundation (AAIF)&lt;/a&gt; — Linux Foundation&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.finops.org/framework/capabilities/cloud-sustainability/" rel="noopener noreferrer"&gt;Cloud Sustainability&lt;/a&gt; — FinOps Foundation Framework&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>platform</category>
      <category>architecture</category>
      <category>design</category>
      <category>ai</category>
    </item>
    <item>
      <title>I Built an MCP Server for KubeCon EU 2026: Here's How AI Agents Can Plan Your Conference</title>
      <dc:creator>Niklas Beinghaus</dc:creator>
      <pubDate>Thu, 05 Mar 2026 11:00:33 +0000</pubDate>
      <link>https://dev.to/njoerd/i-built-an-mcp-server-for-kubecon-eu-2026-heres-how-ai-agents-can-plan-your-conference-2he8</link>
      <guid>https://dev.to/njoerd/i-built-an-mcp-server-for-kubecon-eu-2026-heres-how-ai-agents-can-plan-your-conference-2he8</guid>
      <description>&lt;p&gt;&lt;br&gt;
KubeCon + CloudNativeCon Europe 2026 has 500+ sessions across 4 days, dozens of evening parties, 16 co-located events, and a venue the size of a small airport. Planning your week is a project in itself.&lt;/p&gt;

&lt;p&gt;So I built an MCP server that lets AI assistants do it for you.&lt;/p&gt;
&lt;h2&gt;
  
  
  What's MCP?
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://modelcontextprotocol.io/" rel="noopener noreferrer"&gt;Model Context Protocol&lt;/a&gt; is an open standard that lets AI models call external tools. Think of it as giving Claude (or any compatible agent) the ability to search databases, call APIs, and interact with real-world data — instead of just working from its training data.&lt;/p&gt;
&lt;h2&gt;
  
  
  What kubecon-eu-mcp Does
&lt;/h2&gt;

&lt;p&gt;It exposes 12 tools, 4 resources, and 5 prompts that connect your AI assistant to live KubeCon data:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Session tools:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;search_sessions&lt;/code&gt; — find talks by keyword, speaker, topic, or track&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;get_schedule&lt;/code&gt; — full schedule for any day&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;find_speaker&lt;/code&gt; — look up what someone is presenting&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;score_sessions&lt;/code&gt; — get personalized session rankings based on your role and interests (scoring rubric from &lt;a href="https://github.com/FredrikCarlssn/kubecon-event-scorer" rel="noopener noreferrer"&gt;kubecon-event-scorer&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;detect_conflicts&lt;/code&gt; — check if your top picks overlap&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Party tools:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;find_parties&lt;/code&gt; — discover evening events scraped from conferenceparties.com&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;plan_party_route&lt;/code&gt; — optimized party-hopping route through Amsterdam&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Logistics:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;get_venue_info&lt;/code&gt;, &lt;code&gt;get_hotel_info&lt;/code&gt;, &lt;code&gt;get_travel_info&lt;/code&gt; — venue rooms, hotel blocks, transit from Schiphol, airline discount codes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Data comes live from the official &lt;a href="https://kccnceu2026.sched.com/" rel="noopener noreferrer"&gt;sched.com iCal feed&lt;/a&gt; and &lt;a href="https://conferenceparties.com/kubeconeu26/" rel="noopener noreferrer"&gt;conferenceparties.com&lt;/a&gt;, with in-memory TTL caching.&lt;/p&gt;
&lt;h2&gt;
  
  
  Try It
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;uvx kubecon-eu-mcp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Add to Claude Desktop (&lt;code&gt;claude_desktop_config.json&lt;/code&gt;):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"mcpServers"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"kubecon-eu-mcp"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"command"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"uvx"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"args"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"kubecon-eu-mcp"&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then just ask naturally:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;"What AI talks are on Wednesday?"&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;"Plan my evening on Tuesday — I want food and networking"&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;"Build me a 4-day itinerary as an SRE interested in eBPF and observability"&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;"Are there conflicts between the sessions I picked?"&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Meta Angle
&lt;/h2&gt;

&lt;p&gt;KubeCon EU has a co-located event called &lt;strong&gt;Agentics Day: MCP + Agents&lt;/strong&gt; on Monday — focused entirely on the Model Context Protocol and AI agents in cloud-native.&lt;/p&gt;

&lt;p&gt;So yes, this is an MCP server to help you plan your attendance at the MCP event. We've achieved recursion.&lt;/p&gt;

&lt;h2&gt;
  
  
  How It's Built
&lt;/h2&gt;

&lt;p&gt;The stack is intentionally simple:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Python&lt;/strong&gt; with &lt;a href="https://github.com/modelcontextprotocol/python-sdk" rel="noopener noreferrer"&gt;FastMCP&lt;/a&gt; (the official MCP Python SDK)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;httpx&lt;/strong&gt; for async upstream fetching&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;icalendar&lt;/strong&gt; for parsing sched.com's iCal feeds&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;BeautifulSoup&lt;/strong&gt; for scraping party listings&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pydantic&lt;/strong&gt; for data validation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;No database. No config files. Everything is fetched live and cached in memory. Install it, run it, done.&lt;/p&gt;

&lt;h2&gt;
  
  
  Links
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub&lt;/strong&gt;: &lt;a href="https://github.com/njoerd114/kubecon-eu-mcp" rel="noopener noreferrer"&gt;github.com/njoerd114/kubecon-eu-mcp&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;PyPI&lt;/strong&gt;: &lt;a href="https://pypi.org/project/kubecon-eu-mcp/" rel="noopener noreferrer"&gt;pypi.org/project/kubecon-eu-mcp&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;KubeCon EU 2026&lt;/strong&gt;: March 23-26, RAI Amsterdam&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;MIT licensed. PRs welcome. See you in Amsterdam.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>mcp</category>
      <category>cloudnative</category>
      <category>kubecon</category>
    </item>
  </channel>
</rss>
