Note: This post is half a joke. I am not suggesting we replace tests with ritual or swap CI for dancing. I am also not trying to mock any specific religion or faith. I am borrowing the old language of prayer as a metaphor for uncertainty in the age of AI.

Introduction

Software engineers have spent a very long time loving reproducibility.

  • same input, same output

  • same code, same behavior

  • same test, same result

  • reproduce the bug, isolate the cause, fix it

That instinct is deeply compatible with the ethos of modern science. The Royal Society adopted the motto Nullius in verba in 1662: do not simply trust someone's word; appeal instead to experiment and evidence. And in a modern formulation, the National Academies describe reproducibility as obtaining consistent results under the same data, methods, code, and conditions.

That ethos has entered software engineering at the level of muscle memory. Lint, tests, type checks, CI, deterministic builds. We spent a long time pulling code away from prayer and toward reproducibility.

And then AI arrived.

AI is useful, fast, and no longer optional. But at the same time, a large part of what it produces is probabilistic. At least for language models, the natural explanation is that they generate the next token by sampling from a conditional probability distribution over possible continuations. You can see this both in research descriptions of autoregressive language models and even in practical tooling docs such as OpenAI's help page on logit_bias, which explicitly talks about shifting token likelihood.

So here we are: members of a profession that loves determinism, now delegating part of our daily work to a probabilistic transcendent thing.

That is why I suspect humanity may return, at least a little, to prayer.

Humanity Has Always Prayed Before What It Could Not Control

By "prayer," I do not only mean asking a god for favors. I mean something broader: a human practice of orienting ourselves toward what we cannot fully understand or control.

The Britannica entry on prayer describes it as communication with the sacred or holy, and notes that prayer appears across religions and historical periods. It also points out that prayer has long been tied to literature, sacrifice, and collective practice.

Human beings did not merely fold their hands in silence. We:

  • made music for prayer

  • danced for prayer

  • built for prayer

  • wrote books for prayer

  • organized processions and formal acts for prayer

It does not take much history to see this. Göbekli Tepe, for example, is described by UNESCO as a monumental pre-pottery Neolithic site, often discussed in connection with ritual and communal gatherings. Humanity, it seems, was building enormous structures for ritual long before it built issue trackers.

A more familiar example, at least from where I stand, is Britannica's discussion of Shinto shrines, where ritual life is entangled with music, dance, procession, and offerings. In Japan, words such as gagaku, kagura, and shishi mai still carry that embodied sense that prayer was never just an inward thought.

That is the key point: humans have always built forms around what exceeded them. Prayer had gesture, sound, space, architecture, and books.

Science Cleanly Separated Prayer from Knowledge

One of the great achievements of modern science was that it separated these things much more sharply.

  • it separated desire from verification

  • it separated communal ritual from factual confirmation

  • it separated beautiful narrative from reproducible procedure

Of course the real history is messier than that, and the relationship between religion and science cannot be reduced to simple opposition. But at the level of method, modern knowledge increasingly privileged not "who said it" but "can it be reproduced?"

Software inherited that attitude quite faithfully. In many ways, software has been one of the most diligent students of modern scientific discipline.

  • bugs should be reproducible

  • tests should remain stable across runs

  • the same commit should yield the same artifact

  • rules should live in static analysis rather than in prose

Prayer may remain in the privacy of the human heart, but it was not supposed to enter the decision process of a production deploy. That was the modern posture.

But AI Brought Probability Back into the Garden of Determinism

AI has now brought noise back into that garden.

This is not just the shallow claim that "AI lies." It is a more structural issue.

Language models are, at bottom, systems that operate over probability distributions. A research paper may phrase it in one way, product documentation in another, but the practical consequence is obvious to anyone working with these systems:

  • the same request can yield a slightly different result

  • small prompt changes can suddenly change the model's mood

  • context placement matters

  • some days a model feels brilliant, and the next day it feels mysteriously dull

That puts us in a strange condition.

On one hand, we cannot really refuse AI anymore. The speed difference is too large.

On the other hand, we cannot treat its output like a perfectly deterministic function. Of course we can surround it with evaluators, tests, lint, type systems, and review. But the first draft still arrives with the scent of probability on it.

At that moment, software development becomes, in part, an activity where reproducibility alone is not enough, but where we still have to hope for a good outcome.

Prayer Returns, Though Not as a Replacement for CI

Now for the half-joking core claim.

I think software engineers working with AI will gradually invent new rituals.

For example:

  • always playing the same music before creating a new repo

  • reciting the same prompt template before a difficult implementation

  • treating AGENTS.md almost like scripture

  • saying "this model is in a good mood today"

  • wiping the desk before deploy for no technical reason whatsoever

  • treating inference cost as a kind of offering

Technically, some of these rituals are meaningless. But not entirely meaningless. The point of ritual is not only to change the outside world directly. It is also to stabilize a community's posture toward uncertainty.

Just as prayer in religious history was both personal and communal, AI-age ritual may also align the team's emotional rhythm. Nobody truly believes that a small office ceremony will lower perplexity. But many teams will believe, correctly, that it helps them approach uncertainty together.

That, to me, is a small return of prayer.

Modern software engineering became strong by understanding, decomposing, reproducing, and controlling. AI introduces a new kind of object: something we cannot fully understand, yet still must collaborate with.

The answer is not to abandon science. Quite the opposite.

  • lock down what can be made deterministic

  • keep tests and type checks

  • strengthen evaluation

  • widen the boundary of what can be verified mechanically

And then, for the uncertainty that remains, humans may become just a little more ritualistic.

So the workflow of the future engineer may look like this:

  1. write the tests

  2. tune the seed and the temperature

  3. still feel uneasy, so put on quiet music

  4. finally, fold your hands

That would be a procedure both extremely modern and strangely ancient.

The Rock of the Greatest Programmer

And yes, I also imagine a more ridiculous future.

When beginning a new project, we first visit a place that enshrines a giant rock said to house the spirit of the greatest programmer. There we remove our shoes, open our laptops in silence, and recite prompts like liturgy.

"Keep syntax errors far from us."

"Cast out the mysterious off-by-one."

"Guide the dependencies of useEffect in righteousness."

"Grant mercy to this pull request in the eyes of the reviewer."

Someone rings a small bell. Someone starts a thin synth pad. Someone runs pnpm test.

Then everyone bows once toward the rock and says:

May today's model be slightly wiser than yesterday's.

Do I know whether the spirit of the greatest programmer really lives inside that rock? Of course not. But for now, that is not so different from the fact that none of us can fully explain everything going on inside AI systems either.

Conclusion

Human beings have always prayed, sung, danced, built, and written in the face of what they could not fully master. Science took the reproducible parts of that human struggle and sharpened them into method. Software engineering became one of its best heirs.

And yet AI has reintroduced probability into the center of that world. That is why I imagine engineers returning, just a little, to prayer.

Not by abandoning tests. Not by replacing method with superstition. But by keeping science in one hand and rediscovering, in the other, the posture of prayer.

We are not going back to a pre-scientific age. We are discovering that even after science, some human gestures remain useful when uncertainty refuses to disappear.

Software development may end up resembling an older human activity than we expected: hoping for good outcomes, arranging forms, aligning with collaborators, and finally looking upward for just a second.

At the very least, anyone already asking AI to write code has one foot in that future.