Перейти к содержимому

The New Economics of Software Engineering

The Next Commit

0:00 / 0:00

The New Economics of Software Engineering

171 просмотр · 8 дней назад
The Next Commit
13 подписчиков
171 просмотр · 8 дней назад
Tim Ottinger brings decades of Extreme Programming, Agile and software-craft experience to the demanding end of agentic engineering. His work asks how agents can accelerate delivery without eroding the architecture and knowledge that consequential, long-lived software depends on. In this episode, Tim explains why an agent’s simplest path through a task can gradually erase a system’s design—and why the foundations of XP are gaining new leverage. We examine his use of small end-to-end slices, test-driven development and a distinctive checkpoint at which the agent stops before refactoring. Tim also shows how agents, tests and Git make ambitious legacy modernization more practical, how repository evidence can support better structural decisions, and why coherence became his eighth Code Virtue. The result is more than old practice with new technology: agents may allow teams to apply their best engineering disciplines more consistently and with fewer compromises. About Tim Tim Ottinger, known online as Agile Otter, is a long-time Agile practitioner and “old XP guy” who works with architecture and development groups at LexisNexis on technical improvement and safe agentic development. He co-authored Agile in a Flash, contributed the chapter on meaningful names to Clean Code, and has written extensively about software design, testing, refactoring, naming and team practice. In this episode 00:57 — Introducing Tim Ottinger and his place in the early Agile community 02:11 — Moving boldly—and safely—into agentic development 03:10 — Code as knowledge representation, not only instructions 04:32 — Why agents favour primitive solutions that gradually erase design 06:04 — Architecture recovery, tripwires and technical safety 07:03 — TDD, atomic commits and managing cognitive load 09:07 — What is the agent equivalent of trained intuition? 11:07 — Turning principles and heuristics into usable evidence 13:18 — Finding hidden coupling in Git co-change history 16:09 — Deterministic tools that help an LLM decide where to investigate 20:51 — Small end-to-end slices and a disciplined test-first workflow 23:30 — Why the agent stops when it proposes a refactor 25:14 — Teaching a skill to reject coincidental duplication 27:09 — Bringing books and articles directly into agentic work 28:50 — Coherence as the eighth code virtue 30:27 — Profitable and unprofitable intellectual labour 33:25 — Preventing agents from reproducing legacy design problems 34:13 — Refactoring an unfamiliar legacy codebase with agents 38:07 — How agents change the economics of refactoring 38:57 — Git makes ambitious structural experiments disposable 39:39 — Why testing has become dramatically more viable 40:28 — Learning software engineering when agents write the code 43:31 — Focus, pairing and the art of doing one thing at a time 45:02 — Combining hand coding, agents and mutation testing in training 48:36 — Slicing and verification as critical developer skills 50:41 — Why established Agile practices are gaining new leverage 51:42 — Vibe-coded applications and choosing an appropriate engineering level 54:12 — Turning a prototype into production software 55:23 — A Short Guide to Naming and skills as a new publishing form Key ideas Agents tend to choose solutions that are mechanically simple and locally safe, but repeated local exceptions can gradually erase a system’s design. Fast implementation gives XP’s foundations—small increments, testing, refactoring and evolutionary design—new leverage rather than making them obsolete. Small end-to-end increments keep work demonstrable and preserve opportunities to steer when complexity or consequence demands close control. Tim stops the agent whenever it proposes a refactor. The transformation may be easy to automate, but deciding whether an abstraction represents something true about the system remains a critical judgement. Agents, automated tests and Git make ambitious legacy experiments more practical. Work that would once have been too expensive to try can be generated, assessed, discarded or attempted differently. Tim gives agents an evidence base through skills, architecture recovery and deterministic analysis of Git history, which can expose coupling that source dependencies miss. Coherent code makes learning profitable: concepts, vocabulary and representations reinforce one another, allowing knowledge acquired in one area to remain useful elsewhere. Books and articles can become agent skills, bringing established engineering knowledge directly into the coding session while leaving humans responsible for judging its application. Agents amplify both trajectories. Strong tests, clear concepts and coherent design become easier to reinforce; shortcuts and weak structure can accumulate just as quickly.