Codesign: Between Code and Design

Codesign with LLMs and the Software Codesigner Profession

PDF: https://www.dumpanalysis.org/files/Codesign_Between_Code_and_Design-Vers...

I now rarely code explicitly and spend much more time on design. I use Codesign to describe this activity between code and design, nearer the design side. Coding assistants produce much of the source text, while I develop requirements, examine proposed implementations, and decide what evidence would support their acceptance.

In this article, I explore three readings of the same word. CODE overlaps with DESIGN in CO[DE]SIGN. CODE + SIGN treats generated code as an executable sign through which I can reconstruct design decisions and assumptions. CO-DESIGN describes developing the design together with large language models. I extend these readings to the proposed Software Codesigner profession, where CODE + SIGNER adds responsibility for deciding whether to sign off on an implementation.

I place this interpretation alongside established hardware/software co-design and prior work in programming, semiotics, and code review. I also connect it to software diagnostics: the decisions expressed in generated code can be compared with the evidence left by execution. A retry example shows how I can move between requirements, implementation, and diagnostic observations while working from the design side.