SINDHU KRUTTIVENTI
The Reflecting Pool
algorithms and divinity
Date
Type
Tools
2025
Individual
JavaScript
People once gazed into water for answers. Now we ask algorithms.The Reflecting Pool is an interactive projection on a table. A visitor holds a question in their mind and reaches over the water. An overhead camera reads how their hand moves, and an algorithm pulls an answer out of the current, letter by letter, along with how sure it is.

The piece asks a simple question: does an answer feel more trustworthy because a computer gave it, or less?
The Pool
There are no instructions to read. The pool waits with a hand written in drifting text and two short prompts: hold a question in your mind, then reach over the water.When a hand appears, the written hand dissolves into the current and fragments of words begin to surface. The water parts around the fingertip and follows its movement. A pinch asks the question.
How it reads you
The moment of the pinch is treated as a reading. The camera turns the visitor's movement into four traits:
Hesitation: how long they waited before pinching (certain to hesitant)
Unrest: how much the hand trembled (still to restless)
Depth: where on the pool they reached (surface to deep)
Stir: how much they moved since the last answer (calm to stirred)

The word READING appears and the traits light up one by one, so the visitor sees the machine take their measure before it answers.

Every answer in the oracle is a line I wrote, tagged with the kind of visitor it speaks to. The algorithm compares the visitor's reading with each answer and picks the closest fit, with a little chance. The same gesture always returns the same answer. A steadier hand gets a more decisive choice.Under each answer, the machine shows its work: what it read, the raw measurements, and a match score.

The score measures how well the answer fits the reading, not whether it is true. That gap is the point of the piece.
Design decisions
Answers that make sense.
The first version generated sentences word by word with a Markov chain. With a small, poetic corpus it produced broken grammar that read as noise. The final version chooses complete lines and puts the intelligence into the selection, so every answer is legible and feels aimed at the person.

‍One surface, not layers.
The water, the drifting particles, and the letters are all driven by the same ripple simulation, so the hand's wake bends everything together instead of sitting on top of it.

‍Answers made of the water.
For each letter of the answer, the nearest matching letter already flowing in the stream is pulled into place. The answer is literally assembled from the current, then released back into it.

‍Feedback within a second.
Testing showed that a silent pause after a pinch felt broken. The reading phase, a gold highlight, and a soft chime now confirm the gesture immediately.

‍Sound without files.
All audio is synthesized live in the browser: water and a swish that follows hand speed, a pad, chimes for each trait, and a bell whose pitch rises with the match score.
Reflection
Visitors treated the match score the way people treat a confident algorithm: as evidence. The answers are general enough to fit anyone, yet the reading and the number made them feel personal. The piece sits in the gap between being measured and being understood.Next, I want to calibrate each reading to the visitor's own baseline, expand the set of answers, and show the runner-up answers the machine rejected, so the weighing becomes visible.