4 min read

Challenging Determinism: Generative AI as the Quantum Moment in Software Development

For decades, working in tech meant living in a highly deterministic world. A given input would always produce the same output, as long as the system state didn’t change, of course.

If something went wrong, like a bug, it was always a logical issue. Okay, most of the time it was the user who was defective, like seriously, who could have thought of that usage flow? But since developers are cool people (and because the product and sales teams are gently yelling at us), we adapt the code to handle more cases.

And now… we have generative AI !

I spent an abnormally long time trying to find this meme on the internet, considering how much it flooded my LinkedIn feed. But here it is. Why do I suddenly feel like a boomer?

Don’t get me wrong, LLM-powered apps are an awesome opportunity. We can now build software components that are highly adaptable to a broad range of inputs. That means chatbots that don’t instantly fail if you type something outside the expected options.

But it also means harder-to-reproduce failures and unexpected behaviors.
Anyway, it got me thinking: is Generative AI the quantum moment in software development?

💡
Want weekly digests of the open-source ecosystem, subscribe to the newsletter now! I also publish bi-weekly reflections on topics related to open-source and software development.

A shaky parallel with the world of physics

Buckle up, we’re entering philosophical waters. First lets establish credibility with an historical citation.

The theory produces a good deal but hardly brings us closer to the secret of the Old One, I am at all events convinced that He does not play dice.

Albert Einstein - December 1926.

This is perhaps the most famous quote from the well-known physicist Albert Einstein. It comes from a letter to the German physicist Max Born.

To me, it perfectly symbolizes the difficult transition between two worlds: one deterministic, where we can describe reality precisely with equations and the challenge is finding the right ones, and another where we must introduce a probabilistic component into those equations. This is exactly the feeling I personally have with Generative AI entering the software industry.

I’m not a physicist and I don’t want to twist history further to suit my narrative. If you’re interested in the topic, I recommend reading Si Einstein avait su (If Einstein Knew) by Alain Aspect, Nobel Prize in Physics 2022.

What does this mean for a software engineer

💡
In this article, I won’t be discussing AI-generated code, but rather focusing on software embedding Generative AI-powered components. Please keep that in mind.

At first, it meant new, exciting possibilities. Why spend time creating a text parser when an AI can do it for me? My first truly satisfying experience with GenAI-embedded software development was realizing that I could easily build apps adapted to a huge, effectively infinite range of text inputs. Just ask the AI to convert them into a structured format or decide which part of the program to call next.

This post is for subscribers only