What If the Code Doesn't Matter Anymore?

What If the Code Doesn't Matter Anymore?

๐—ช๐—ต๐—ฎ๐˜ ๐—œ๐—ณ ๐˜๐—ต๐—ฒ ๐—–๐—ผ๐—ฑ๐—ฒ ๐——๐—ผ๐—ฒ๐˜€๐—ปโ€™๐˜ ๐— ๐—ฎ๐˜๐˜๐—ฒ๐—ฟ ๐—”๐—ป๐˜†๐—บ๐—ผ๐—ฟ๐—ฒ?

Most programmers arenโ€™t very good at writing requirements.

Itโ€™s not because theyโ€™re lazy or careless. Itโ€™s because ๐˜„๐—ฒ ๐—ฑ๐—ผ๐—ปโ€™๐˜ ๐˜๐—ฒ๐—ฎ๐—ฐ๐—ต ๐—ถ๐˜.

In most CS/EE programs, the focus is on algorithms, data structures, and writing code that works.

Nobody teaches you to say: โ€œLetโ€™s discuss how to describe what the system ๐˜€๐—ต๐—ผ๐˜‚๐—น๐—ฑ do clearly, unambiguously, and completely.โ€

Programmers often donโ€™t develop that skill until theyโ€™re senior engineers.

But hereโ€™s the twist.

We may be heading toward a future where your ability to code matters less than your ability to specify what the code should do.

๐—™๐—ฟ๐—ผ๐—บ ๐—”๐˜€๐˜€๐—ฒ๐—บ๐—ฏ๐—น๐˜† ๐˜๐—ผ ๐—”๐—œ: ๐—”๐—ฟ๐—ฒ ๐—ช๐—ฒ ๐—ฅ๐—ฒ๐—ฝ๐—ฒ๐—ฎ๐˜๐—ถ๐—ป๐—ด ๐—›๐—ถ๐˜€๐˜๐—ผ๐—ฟ๐˜†? When higher-level language compilers first appeared, many programmers were skeptical.

They pored over the generated assembly, shaking their heads:

โ€œ๐˜๐˜ตโ€™๐˜ด ๐˜ฏ๐˜ฐ๐˜ต ๐˜ฐ๐˜ฑ๐˜ต๐˜ช๐˜ฎ๐˜ข๐˜ญ. ๐˜๐˜ตโ€™๐˜ด ๐˜ช๐˜ฏ๐˜ฆ๐˜ง๐˜ง๐˜ช๐˜ค๐˜ช๐˜ฆ๐˜ฏ๐˜ต. ๐˜ ๐˜ค๐˜ฐ๐˜ถ๐˜ญ๐˜ฅ ๐˜ฅ๐˜ฐ ๐˜ฃ๐˜ฆ๐˜ต๐˜ต๐˜ฆ๐˜ณ ๐˜ฃ๐˜บ ๐˜ฉ๐˜ข๐˜ฏ๐˜ฅ.โ€

And they were often rightโ€ฆat first.

As compilers matured and hardware got faster and cheaper, priorities shifted. They stopped obsessing over machine code and focused on the what and whyโ€”not how every instruction worked. Most stopped looking at the assembly output altogether.

Fast-forward to today.

Weโ€™re hearing a similar refrain about AI-generated code. When developers use AI to โ€œvibe codeโ€ (expressing intent in natural language), the critics are quick to respond:

โ€œ๐˜›๐˜ฉ๐˜ช๐˜ด ๐˜ค๐˜ฐ๐˜ฅ๐˜ฆ ๐˜ช๐˜ด ๐˜ด๐˜ญ๐˜ฐ๐˜ฑ๐˜ฑ๐˜บ, ๐˜๐˜ตโ€™๐˜ด ๐˜ฏ๐˜ฐ๐˜ต ๐˜ฆ๐˜ง๐˜ง๐˜ช๐˜ค๐˜ช๐˜ฆ๐˜ฏ๐˜ต, ๐˜•๐˜ฐ ๐˜ณ๐˜ฆ๐˜ข๐˜ญ ๐˜ฅ๐˜ฆ๐˜ท๐˜ฆ๐˜ญ๐˜ฐ๐˜ฑ๐˜ฆ๐˜ณ ๐˜ธ๐˜ฐ๐˜ถ๐˜ญ๐˜ฅ ๐˜ธ๐˜ณ๐˜ช๐˜ต๐˜ฆ ๐˜ต๐˜ฉ๐˜ช๐˜ด.โ€

Itโ€™s the same tune, different instruments.

If AI keeps improving and hardware keeps getting faster and cheaper, we may be heading to the same place:

One where ๐—บ๐—ฒ๐—ฒ๐˜๐—ถ๐—ป๐—ด ๐˜๐—ต๐—ฒ ๐—ฟ๐—ฒ๐—พ๐˜‚๐—ถ๐—ฟ๐—ฒ๐—บ๐—ฒ๐—ป๐˜๐˜€ matters more than how clever the code looks. Maybe programmers will even stop looking at the code all together.

๐—ฆ๐—ผ ๐—ช๐—ต๐—ฎ๐˜ ๐——๐—ผ๐—ฒ๐˜€ ๐—ง๐—ต๐—ฎ๐˜ ๐— ๐—ฒ๐—ฎ๐—ป ๐—ณ๐—ผ๐—ฟ ๐—ฌ๐—ผ๐˜‚? If youโ€™re not great at writing requirements, you should work on that skill ๐—”๐—ฆ๐—”๐—ฃ. Take a class, read a book, offer to help with the spec.

If the future of software really becomes telling an AI ๐˜„๐—ต๐—ฎ๐˜ to build, then development ๐—ฅ๐—˜๐—ค๐—จ๐—œ๐—ฅ๐—˜๐— ๐—˜๐—ก๐—ง๐—ฆ ๐—”๐—ฅ๐—˜ ๐—ง๐—›๐—˜ ๐—ก๐—˜๐—ช ๐—–๐—ข๐——๐—˜.

Even if that future never fully materializes, learning to write clear, testable, complete requirements will still make you a better programmer:

  • Youโ€™ll think more clearly.
  • Youโ€™ll design more robust systems.
  • Youโ€™ll collaborate more effectively.

Whether leading a team or prompting an AI, youโ€™ll benefit from speaking the language that matters most: ๐—ง๐—ต๐—ฒ ๐—น๐—ฎ๐—ป๐—ด๐˜‚๐—ฎ๐—ด๐—ฒ ๐—ผ๐—ณ ๐—ถ๐—ป๐˜๐—ฒ๐—ป๐˜.

#ai #requirements #WolffElectronicDesign


No comments yet.