Slide 1

Slide 1 text

.NET Developers Conference 2025 p”AI”r Programming statt Vibe-Coding Wie hole ich das Beste aus AI-Assistenten heraus? Sebastian Gingter Developer Consultant – Thinktecture AG [email protected]

Slide 2

Slide 2 text

▪ What to EXPECT ▪ Overview of coding assistance powered by Large Language Models (LLMs) ▪ Pragmatic use cases ▪ Suggestions on how to leverage AI tooling for the best ▪ What not NOT TO EXPECT ▪ Claude / Codex / Copilot deep dives ▪ ML & AI fundamentals p”AI”r Programming statt Vibe-Coding: Wie hole ich das Beste aus AI-Assistenten heraus? Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 3

Slide 3 text

p”AI”r Programming statt Vibe-Coding Wie hole ich das Beste aus AI-Assistenten heraus? Sebastian Gingter Developer Consultant [email protected] .NET Developers Conference 2025

Slide 4

Slide 4 text

▪ Generative AI in business settings ▪ AI driven Developer Productivity & Software Quality ▪ All things .NET ▪ Microsoft MVP for .NET & Azure AI Services ▪ [email protected] ▪ https://www.thinktecture.com Sebastian Gingter Developer Consultant @ Thinktecture AG Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 5

Slide 5 text

Agenda ▪ AI Assisted Coding ▪ Why does it work & when not? ▪ What are our tools? ▪ Behind the scenes ▪ Expectation Management ▪ Pair Programming Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 6

Slide 6 text

Agenda ▪ Potential problems ▪ Possible solutions ▪ Context is king ▪ Conclusion Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 7

Slide 7 text

AI Assisted Coding Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 8

Slide 8 text

Why does it work? ▪ Language Models are great at languages ▪ Programming languages: very simple syntax & grammar ▪ LLMs usually are trained to follow instructions very well Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 9

Slide 9 text

When does it not work? ▪ Being cheap. ▪ Good reasoning and good code output requires using good (= large / expensive / non-local) models ▪ You want (or need) Sonnet / Opus 4.5, GPT-5.1 (Codex 5.1), Gemini 3 Pro (Preview)… Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 10

Slide 10 text

Different Tools ▪ IDEs ▪ IDE Plugins ▪ CLIs ▪ “Tastes” ▪ Subscription-Based ▪ Bring your own Key (ByoK) ▪ Cloud and local LLMs Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 11

Slide 11 text

IDEs ▪ Visual Studio 2026 /w Copilot ▪ VS Code /w Copilot (Microsoft / GitHub) ▪ Cursor ▪ Windsurf (previous Codeium) ▪ Kiro (AWS) ▪ Void (Open-Source Cursor Alternative) ▪ JetBrains (all) Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 12

Slide 12 text

IDE Plugins ▪ GitHub Copilot (VS, JetBrains, VS Code) ▪ Kilo Code (VS Code, JetBrains, Cursor) ▪ Cline (previous Claude Code) (VS Code) ▪ Tabby (VS Code) ▪ Roo (VS Code) ▪ Augment Code (VS Code, JetBrains, Cursor) Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 13

Slide 13 text

CLIs ▪ Codex CLI (OpenAI) ▪ Claude Code (Anthropic) ▪ GitHub Copilot CLI (GitHub) ▪ Gemini CLI (Google) ▪ Cline CLI Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding ▪ ForgeCode ▪ Aider ▪ Plandex ▪ GPT Engineer ▪ Smol Developer

Slide 14

Slide 14 text

Behind the scenes Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 15

Slide 15 text

Expectation management… ▪ “AI is useless. It’s like an extremely dumb intern, it always makes the same mistakes, and I have to tell it everything over an over again.” ▪ Of course! ▪ LLM’s don’t have memory or persistence. Only their context is relevant. Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 16

Slide 16 text

Expectation management… ▪ LLMs are a statistical melting pot of training data ▪ LLMs are trained on a lot of freely available source code ▪ What code is freely available (and thus trained on), and what code is NOT freely available (and not trained on?) ▪ Libraries, samples, (unfinished) pet & side-projects vs. real enterprise applications, products and your codebase Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 17

Slide 17 text

Expectation management… ▪ AI is just a tool ▪ Tools around AI are different tools ▪ We need to understand how it works to use it correctly ▪ We need to use the correct tool for the job Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 18

Slide 18 text

Pair Programming? ▪ Driver ▪ writes code ▪ Observer / Navigator ▪ reviews on the go ▪ considers “strategic” decisions as they happen ▪ Similar to aviation: Pilot Flying & Pilot Monitoring Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 19

Slide 19 text

Pair Programming? ▪ Roles are switched regularly ▪ Different tools for different roles ▪ CLI -> AI is the Driver ▪ IDE Integration / Chat: AI should be the Navigator ▪ Beware of the vibe….! Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 20

Slide 20 text

Potential problems Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 21

Slide 21 text

Potential problems ▪ AI as driver ▪ Overwhelming fast pace ▪ Human is too slow to keep up generated code ▪ Do we really want to only review new code? Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 22

Slide 22 text

Potential problems ▪ Tool & model selection ▪ Switching tools / models with same instructions yields very flaky results ▪ Model doesn’t know our guidelines ▪ Models sometimes change random stuff Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 23

Slide 23 text

Possible solutions Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 24

Slide 24 text

Possible solutions ▪ Prevent reviewing becoming overwhelming ▪ Organizational solutions where possible ▪ e.g. automatic code formatting ▪ Limit arbitrary code changes to the minimum ▪ Let the model “explain” its rationale with the code Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 25

Slide 25 text

Possible solutions ▪ Provide exact and on-point instructions (aka Prompt engineering) ▪ Make use of templates ▪ Adjust your instructions all the time ▪ ➔ Context Management Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 26

Slide 26 text

Context is king Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 27

Slide 27 text

Context is King ▪ LLMs love Markdown ▪ README.md, AGENTS.md, CLAUDE.md, Contributing.md etc. ▪ Memory ▪ Tasks, Todos, Guidelines etc. need to be memorized ▪ Dependencies ▪ Model needs to know the APIs or else… ▪ it can / will hallucinate calls https://github.com/josix/awesome-claude-md Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 28

Slide 28 text

Context is King ▪ Provide a Manifesto / Constitution for a project ▪ Defines rules that must be followed always ▪ Idea: Spec-driven-development? ▪ maybe try GitHub Spec Kit https://github.com/github/spec-kit Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 29

Slide 29 text

Context is King ▪ MCP (Model Context Protocol) provides access to information (context) as tool calls ▪ but... Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding https://julsimon.medium.com/why-mcps-disregard-for-40-years-of-rpc-best-practices-will-burn-enterprises-8ef85ce5bc9b

Slide 30

Slide 30 text

Context ist King: MCP ▪ Some Examples: ▪ Context7 ▪ Playwright ▪ GitHub (issues, source) ▪ Atlassian MCP Server (Jira, Confluence) ▪ Apidog ▪ Sequential Thinking MCP Server (well… ) ▪ … Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 31

Slide 31 text

Context is King ▪ Claude now supports “Skills” ▪ Skill: ▪ Selective context / instructions as Markdown file in a separate folder, supported by scripts (tools) where needed ▪ e.g. Awesome Thinking https://github.com/PawelGerr/ai-plugins https://docs.claude.com/en/docs/agents-and-tools/agent-skills/overview Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 32

Slide 32 text

Context is King ▪ Sub-Agents help with context management ▪ Sub-Task does not clutter context window of main agent https://anthropic.mintlify.app/en/docs/claude-code/sub-agents https://code.visualstudio.com/docs/copilot/customization/custom-agents Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 33

Slide 33 text

Context is King ▪ Sub-Agents can be instructed much more specifically ▪ Backend- and / Frontend-Specialists ▪ WPF to Angular rewriter ▪ WCF to Web API converter ▪ Code-Reviewer ▪ Performance reviewer / Security reviewer ▪ Test-Engineer… Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding https://anthropic.mintlify.app/en/docs/claude-code/sub-agents https://code.visualstudio.com/docs/copilot/customization/custom-agents

Slide 34

Slide 34 text

Conclusion Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 35

Slide 35 text

Conclusion ▪ Try to stick to one tool ▪ but maybe don’t completely commit to it - yet ▪ For new models: try them out ▪ adjust prompts ▪ compare results ▪ upgrade when results are reliable Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 36

Slide 36 text

Additional things to consider ▪ Feature sets are still very different ▪ Model availability is important ▪ Share experiences with your team ▪ We’re all still in the learning phase! Wie hole ich das Beste aus AI-Assistenten heraus? p"AI"r Programming statt Vibe-Coding

Slide 37

Slide 37 text

Thank you! Sebastian Gingter [email protected] https://thinktecture.com/sebastian-gingter .NET Developers Conference 2025