โšก Non-deterministic code generation existed before AI.

Originally published on LinkedIn

โšก ๐—ก๐—ผ๐—ป-๐—ฑ๐—ฒ๐˜๐—ฒ๐—ฟ๐—บ๐—ถ๐—ป๐—ถ๐˜€๐˜๐—ถ๐—ฐ ๐—ฐ๐—ผ๐—ฑ๐—ฒ ๐—ด๐—ฒ๐—ป๐—ฒ๐—ฟ๐—ฎ๐˜๐—ถ๐—ผ๐—ป ๐—ฒ๐˜…๐—ถ๐˜€๐˜๐—ฒ๐—ฑ ๐—ฏ๐—ฒ๐—ณ๐—ผ๐—ฟ๐—ฒ ๐—”๐—œ. Thereโ€™s a flimsy argument that AI-generated code is uniquely dangerous because itโ€™s of its non-deterministic output.

Letโ€™s be blunt.

If I give the same task to 10 engineers - with 10 different reviewers to judge - different seniorities, different tastes, different scars from past systemsโ€ฆ

Are you getting the same PR at the end? - Same structure? - Same abstractions? - Same naming? - Same performance? - Same security posture? - Same number of review comments and iteration? - Same quality?

No. Youโ€™re not.

And letโ€™s stop pretending the inputs are pristine.

Most requirements are vague. I'm talking about the non functional ones the engineers are meant to flesh out, not functional ones which product owners are far better at in comparison. These requirements are what you should be code reviewing against.

- How are you defining maintainable? - How are your coding standards applied? - Is there even a reference architecture or patterns to even build against let alone test against?

So what happens?

Engineers fill in the gaps. - They infer intent. - They project past experience. - They guess.

This is not a flaw AI introduced. It's software engineering today, it's coding against incomplete requirements and hoping anything gets caught before it goes live, before and after AI was here.

๐Ÿ‘‡ ๐—œ๐—ณ ๐˜†๐—ผ๐˜‚๐—ฟ ๐—ฝ๐—ฟ๐—ผ๐—ฐ๐—ฒ๐˜€๐˜€ ๐—ฑ๐—ฒ๐—ฝ๐—ฒ๐—ป๐—ฑ๐˜€ ๐—ผ๐—ป:

- Vibes and experience instead of measured standards - Seniority instead of explicit architecture and documented decisions - Code reviews instead of meaningful non functional test coverage - Manual eyeballing instead of automated quality gates

โ€ฆyou were vibe-coding long before AI showed up.

AI didnโ€™t invent non-determinism.

It just stopped letting us pretend we were deterministic as software engineers in the first place.

It's easier to point a finger at AI than be honest with ourselves, manual coding software engineers aren't any better at generating code, and been doing the exact same thing forever, making it up the best they can.

#SoftwareEngineering #AI #CodeReview #EngineeringLeadership #DevCulture