# photography

every photograph this company has is made in this folder, by `wish.py`, out of layered text. none is
written by hand, none comes from anywhere else, and none is retouched after the fact. `site/` holds
real photographs from a site, and they are only ever references (law 9).

```
./wish.py say NAME        the prompt exactly as it will be sent. costs nothing
./wish.py try NAME        one picture into tries/NAME-N.jpg, the prompt that made it beside it
./wish.py check NAME [N]  the check print: the picture read back against its own wish
./wish.py keep NAME N     that try becomes NAME.jpg, the plate
./wish.py where           every picture and the files that use it
```

a picture is `NAME.jpg` with `wish-NAME.txt` beside it. the wish opens with `key: value` lines, the
way a `.link` does, and then says in prose only what this one picture wants:

```
mode: room | object | flat | material | plate | building
in: studio                the place it stands in, if it stands in one
frame: 16:9 | 2:3 | 9:16
with: <path>              a reference image put into the picture; as many as the picture needs
size: 2K                  1K if not said
```

`wish.py` composes the prompt in one order and sends it to gemini: the wish, its mode, its place,
`style.txt`, the frame. nothing else is sent, ever.

the poster plates are the one exception to a file each, because twenty-four materials are a
library and not twenty-four documents: `plates.txt` is one line per material, `name | the prose`,
and `mode-plate.txt` says everything else about all of them. on one screen you can see the whole
library and tell when two materials are saying the same thing, which twenty-four files hid.
`plate-table` is not a material study and keeps its own wish beside the picture.

a picture can move a little. `./wish.py film NAME` sends `NAME.jpg` and its one line in `films.txt`
to gemini omni and nothing else, and `NAME.mp4` lands beside the picture, silent, as the model made
it: never slowed, cut or graded, and a wrong take is filmed again over it. only what a model moves
well is filmed — water, sky, haze, leaves — so the films are the structures, never a room, a hand or a
face. beside was filmed eleven times first, on veo and on omni, and every take broke on the people:
fingers melting into a pen, a man walking through a desk, a face turning to the lens. the long
requests made it worse. a picture and one short line is the whole of it.

a page is not a deck. the ten films of the tour are 110 MB as the model made them, and a still is 3 MB;
the site's first screen plays all ten. `./wish.py web NAME` writes `web/NAME.jpg` and `web/NAME.mp4`: the
still no wider than 1920, the film re-encoded (x264, crf 27) and nothing else — every frame, the same
length, the same colour, so the rule above holds: never slowed, cut or graded. the ten are 27 MB that way.
the deck plays the originals and the site asks for `web/`; a film that is filmed again is made for the web
again. `where` counts a use under `photo/web/` as a use of the picture.

a printed thing is two pictures. `NAME.jpg` is the thing blank, the plate, and `NAME-printed.jpg` is the
same scene photographed again with our print on it: `mode: printed`, `with:` the plate, then `with:` the
print. the print is `prints/NAME.png`, made by `./print.mjs NAME PAGE` in Chrome from what already draws it
— the flat slide beside the mockup (125 the cup, 127 the kit, 129 the flag, 133 the notebook, 141 the
tee's back, 144 the badge, 146 the paper, 148 the envelope, 150 the card, 153 the label) or the mark itself
(`seal`, `lockup`, `mark` from `../logo/`). a thing that carries two prints, the door, is wished with both.
the slide shows `NAME-printed.jpg` and nothing over it. change a print, render it again, rewish.

## the canon

these files are the whole of it. everything further down this page is history — where the
rules came from and what the tries taught — and history is never a prompt. if a rule matters it
lives in a canon file, and it lives there once.

| file | what it holds |
|---|---|
| `style.txt` | every photograph: the photographer, real light, natural colour, no writing in frame, faces not readable, and the colour law |
| `mode-room.txt` | a room: long exposure, people blurred, hand-held and off-axis, worked in |
| `mode-object.txt` | one thing, blank, square to the camera, so our print can be made on it |
| `mode-printed.txt` | a blank plate photographed again with our print made on the thing: the plate and the print attached, the print copied exactly and in the material |
| `mode-flat.txt` | the same thing, straight down on the oak |
| `mode-material.txt` | one built thing, close, cropped hard, the joint on the diagonal |
| `mode-plate.txt` | a material alone, filling the frame: the posters' stock |
| `mode-building.txt` | a building at the distance of a person standing in front of it |
| `mode-elevation.txt` | a structure whole and alone, from far back with a long lens, so it reads as a drawing: nine of the cover's ten, and the sky they share |
| `plates.txt` | the poster plates: one line per material, the only thing that differs between them |
| `films.txt` | the films: one line per picture, what moves in it |
| `studio.txt` | the place ten pictures share: one big white space, white floor, oak in one block, designed black chairs, only macs, something green, desks that are worked at |

a wish that repeats what a canon file already says is wrong. a rule changes in one file, and every
picture under it changes with it.

## the laws

1. **red is the pen's.** red belongs to the engineer's pen and the marks that pen makes, and nothing
   else in frame is red, however small — so when red appears, someone is asking for a change. every
   other colour is free, which is what lets the clothes be casual and colourful. the machine's blue
   is never on an object, so the blue that arrives on a screen is always the machine's. `../COLOR.md` is why: red is the instruction to change in every structural program an engineer opens.
2. **the paper is white.** a drawing anywhere in frame is black ink on bright white paper, always,
   however old the set is: never yellowed, never cream, never sepia, never a blue or brown print. an
   issued sheet is black on white — `../COLOR.md` — and the very first attempt this folder ever made
   was a sepia haer register that came back cold. age shows in a crease or a worn edge if at all.
3. **the only words are ours.** nothing in frame carries writing. one exception is a drawing, and
   every drawing in a photograph is a real sheet of ours, attached with `with:` — the floor 73
   framing study, `../../product/floor-73/source/S-073-preview.png` — so the octagon and the title
   block are ours and never invented. the other is a printed thing (law 4): its print is ours too,
   attached the same way.
4. **what carries our mark is photographed with it, and the mark is ours.** the bag, the shirt, the
   badge, the door, the wall, the stamp, the sheet, the card, the envelope, the hat, the tube, the
   flag, the sign, the mug, the kit. each is photographed blank first, and the blank plate stays: it
   is the scene. then it is photographed again with the print on it, wished `with:` the plate and
   `with:` the print drawn flat by us — so the print is in the material, in its light and its folds,
   and it is never laid over a photograph in the slide. the mark is never gemini's: it is copied from
   ours, and a print that comes back misspelt, redrawn or recoloured is rewished.
5. **the product is never painted in.** a screen in a photograph is blank and the app is laid over it
   in the slide, because there are no pictures of the product anywhere — there is the product, at a
   moment.
6. **faces are not the subject.** nobody looks at the camera, and faces are small, turned, or bent
   away.
7. **a wrong picture is rewished, never repaired.** change a layer, try again, keep the one that
   lands. and when a frame is right, change only the count — never touch the angle to fix the
   clutter.
8. **nothing is darkened for the type.** no sky graded towards the top, no band of shadow at the
   foot, no fade anywhere so a line can sit there. the light is what the hour gives; a picture
   white does not read on is the wrong picture, and it is rewished for another crop or another hour.
   the one exception is not in the picture at all: the site's title block over a cover carries its
   own faint shade (`header.sheet.over` in `../styles.css`), because it sits at the top of every
   photograph and the top of a room is its windows. the line is still placed where the picture is dark.
9. **a site photograph is a reference, never a plate.** inbal's phone photographs from a real site
   (`site/`, 17 september 2026) go in with `with:` for a material's texture, its crop and the hard sun
   of a real site. the wish says so in its own words, and nothing in them is copied — not an object,
   not a mark, not a red box. what comes back is ours, made the way every plate is.

## what the tries taught

a try is working space. it lives in `tries/` with the words that made it until you keep one, and
then `keep` sweeps the round — the plate is in git, and what the rejected pictures taught is here,
where it can be read. thirty near-identical jpgs cannot be read.

- **a list comes back as a cast list.** the room mode once named the colours — a red top, a patterned
  shirt, a blue dress, a yellow sweater — and the picture came back with six people, one per colour,
  where the wish asked for two. said as a quality, colour in the clothes, it came back with two.
- **a count is dropped; a presence comes back.** one tree and one planter got no plants at all.
  something green is always in frame got plants in every draw.
- **a prohibition drawn harder draws the thing.** saying no profile, no cheek, no eye put the face
  back in every draw. the frame hides a face; the words do not. the draws that hold are the ones
  where the heads happen to bend low, about one in three, so the answer is more draws, not more
  prompt.
- **light is an hour, not an adjective.** the plan room went cool and clinical the moment its
  paper turned white, because nothing in the wish said when it was. naming the hour and where
  the sun is — late september afternoon, low and off to the left, long across the floor — brought
  the warmth back in one draw and left the paper white.
- **adjectives do not move a camera.** the plan room asked for a wide, generous, high-ceilinged
  room and came back a corridor every time, because the same wish said a long wall of drawers with
  the windows at the end and the camera just inside the door — which is a corridor, whatever
  adjectives follow. saying where the camera stands, in one corner looking across, fixed it in one
  draw. the frame is set by the camera's position and by nothing else.
- **moving the camera to solve something costs the frame.** twice, putting the camera behind their
  shoulders to hide the faces came back one-point down the table. the camera went back where it was.
- **the check print earns its cost.** it caught readable faces, invented names on a parapet,
  hoardings behind the trees, and a laptop lid turned to the lens — all things easy to miss and
  fatal in a full-bleed slide.
- **a picture that carries a drawing is an elevation.** the bridge is the one photograph in this
  folder with a drawing laid over it, so the frame is not the mode's off-centre view — it is square
  to the span, from far enough back that the towers stand plumb, because that is what a drawing is.
  the check print calls the symmetry a break every time, and every time it is wrong about this one.
- **naming the camera is not naming the frame.** the camera far out on the river came back tucked
  under the near tower six draws running, one tower in the picture and the other past the edge. what
  brought both in was saying what has to be inside the frame — both towers, entire, from pier to
  finial, with sky outside each of them and 1,595 feet open between.
- **the sky has to be something to draw on.** the first wish asked for a sky pale and slightly
  overexposed and got a beautiful picture the white line disappeared on — which is the stylesheet's
  rule arriving in practice: a photograph white does not read on is the wrong photograph. asking the
  sky to keep its tone everywhere, deeper at the top and never bleached at the horizon, fixed it in
  one round.
- **the flag is the bridge's own red.** every draw flies a small flag on each tower, and the check
  print calls it every time. it is eight pixels, it is what the bridge actually flies, and drawing
  harder against it only puts it back bigger.
- **the tone is fixed in the picture, never in the ink.** a photograph white does not read on is the
  wrong photograph or the wrong crop. the pale plates are why `.cover.pale` exists.
- **real people, not specks.** the first rooms had two or four people, small, young, in grey, and read as stock. mode-room now asks for working people of mixed ages, a grey-haired engineer among them, one near the camera and large, in the middle of something with each other — faces still turned away. only the rooms that were not there yet were rewished, office and floor; beside, desk and planroom stay as they are until they are.
- **a screen the app lands on has to be close.** beside first had the laptop small beside the two of them, and the app on it would have been a smudge; the screen was left blank and nothing was laid on it. near the camera and turned square to it, the screen is big enough to carry the app at a moment. the concrete band the line sits on has to be asked for whole: glass on a side wall reaches the top corner, and a light strip or a pendant in the band cuts a word — say where the glass is and where the lights hang.
- **airy was the wrong word for a poster.** mode-plate asked for a light and airy exposure and twenty
  boards came back with white type lying on cream. the exposure is now held down in the mode itself —
  the brightest part no lighter than a mid-grey card — and mode-material puts its quiet shadow in the
  lower third, where the line and the lockup sit. a pale stone stays pale in itself; it is photographed
  in shade. a try is kept only when white on its lower band reads at 3:1 or better, and then by eye:
  the first sandstone passed on contrast and carried a sentence of the prompt printed across its corner.

- **the light has a side, and it is the right.** the eight material boards set the caption, the line and the lockup
  down the left, and five of them had the lit plane there: white on sunlit concrete, travertine, a primed flange. nothing
  is darkened for it — mode-material says the sun comes from the right, so the shadowed plane is the left, where the type is.
  wished again with the old picture attached, the painter handed back the old picture, light and all, until the wish said
  what was wrong with it; then it turned the light or mirrored the frame. the plan is the one whose subject is white, so
  its sheet is asked into the upper right. the checker still calls the lit strip wider than a third on most of them, and
  on a portrait the line runs most of the width, so its last word can still touch the light. the red pen was remeasured
  onto the four that carry it (`../posters/marks.py`).

- **a proof comes back as the proof.** the first printed round sent one picture, the slide as it was — the
  plate with the print laid over it — and asked for it made real. the check print called eleven of the
  sixteen it read a digital overlay, the print still flat on top, and the tote beside its proof
  was the same picture. sent apart, the plate and the print on white, the model has to make the print
  on the thing, and it curved round the mug, dipped into the notebook's gutter and took the tote's weave.
- **what the plate does not say, the print decides.** apart, a notebook came back kraft, the lab's
  seal came back blue, the hard hat's mark grew to eight arms and one draw of the cards had no cards,
  the print lying on the bare oak. the wish names the stock and where on the thing the print goes;
  the rest is another draw. read the small type at full size before keeping: one card read
  structuralal.com.
- **a print comes back the size of its proof.** the print is drawn filling its white, and the model
  filled the hard hat's front with it: "small", "five centimetres", "a sixth of the shell" all came back
  a third of the shell. measured against something in frame — no wider than one of the brim's side
  clips — it came back half the size, a maker's mark found on a white shell.

- **the cover's ten are elevations, and so are their photographs.** the close answers the cover
  with the same structures standing, so each wish asks for the frame the drawing was: square on, whole,
  alone, the sky keeping its tone for the white name. a structure's own colour is the structure's — the
  forth's oxide and the golden gate's orange are what they are painted, not a mark, like the flag.
- **a wish for a whole thing sometimes comes back as a contact sheet.** two of the first sixteen were
  collages with a studio or a street in the other panels, and one laid the drawing on a table in front
  of the arch. nothing in the wish asked for it; another draw is the answer.

## the pictures

where each one is used is `./wish.py where`, never typed here, so it cannot go stale.

| file | what it is |
|---|---|
| `badge.jpg` | the badge on a lanyard, blank. landscape said in units, three wide to two tall, or it comes back portrait |
| `beside.jpg` | a woman and a man bent over one sheet, the laptop near the camera and square to it, blank, so the app is laid on it in the slide by its four measured corners. the plain concrete ceiling carries the line: we build it beside the engineers who sign |
| `billboard.jpg` | a digital billboard square on a building's face over a street of cafés, one woman walking under it: not wished, the merakite mockup from `bicycle/under/mockups/billbord/`, cropped to the slide. the screen is measured, 1352 by 698 px from (600, 113), and the wide board is laid on it |
| `frame.jpg` | a black frame on a wall of dark timber slats, a diagonal shadow across the paper: not wished, the mockup `outdoor-billboard-mockup.jpg` from `bicycle/under/mockups/outdoor posters/`. its printing is lifted and its light kept, and the wall carried on to the left to make the slide, by `design/posters/frame.py`, which prints where the paper is. the tagline board is laid on it multiplied, so the shadow crosses the print |
| `bridge.jpg` | the whole main span from far out on the river, both towers entire and plumb: an elevation on purpose, because the one-line drawing lands on it and the towers and cables have to coincide. the sky keeps its tone so the white line reads |
| `bridge-poster.jpg` | the manhattan tower of the brooklyn bridge, whole and plumb in the lower half, the upper third an even deep sky: made for the bridge board, whose line sits on top. bridge.jpg stays for the slides, where the one-line drawing is laid on it |
| `burj-khalifa.jpg` | the tower whole across the lake, palms at its foot. one of the cover's ten, photographed |
| `central-park-tower.jpg` | central park tower from 57th street, whole, the cantilever legible, the sky keeping its tone. one of yoram eilon's three |
| `hudson-yards-50.jpg` | 50 hudson yards from across tenth avenue, the fins and the setbacks, the high line at its foot. one of yoram eilon's three |
| `skyline.jpg` | lower and midtown manhattan from the brooklyn waterfront, the manhattan bridge crossing, a deep sky for the white line: every tower drawn by someone |
| `cards.jpg` | two blank cards, flat. set to the stock’s shape, not the artboard’s |
| `cn-tower.jpg` | the tower whole across the harbour, a low line of trees. one of the cover's ten |
| `cup.jpg` | a plain white mug on the oak, square to the camera at its middle, steam over the rim, the studio soft behind. `cup-printed.jpg` is it again with the datum fired into the glaze |
| `desk.jpg` | the studio from the mezzanine, four people, the rail in the near foreground |
| `door.jpg` | the glass door, blank, a plain white room strongly out of focus behind it and the top two thirds of the pane left pale |
| `eiffel.jpg` | the tower square to one face from the champ de mars, the arch between the legs. one of the cover's ten |
| `envelope.jpg` | two blank envelopes, flat. the seal lands on the point of the flap, because closing is the one thing an envelope does |
| `flag.jpg` | a tall white pole banner on a steel pole, blank, flat between its two arms, against a deep blue sky. `flag-printed.jpg` is it again with the banner dyed into the cloth |
| `floor.jpg` | a poured floor with the steel standing and a crew at work on it — an older engineer from behind with the roll, a younger one pointing up, two at a base plate — the city beyond: the thing that stands. the steel keeps the top dark for the site's line |
| `forth.jpg` | the three cantilevers from the firth, a little oblique: asking for the elevation brought the new crossings in behind it, and looking upstream from the east left it alone. one of the cover's ten |
| `friday.jpg` | the desk on a friday: s-073 printed and redlined, the pen, a glass of coffee on the oak beside it, never on the sheet. an object study, not a room — never shoot a screen, shoot the object on the oak |
| `golden-gate.jpg` | the main span square from the strait, both towers entire. one of the cover's ten |
| `hardhat.jpg` | the white hard hat on the oak, blank. the work point goes on the shell, once, in `hardhat-printed.jpg`; a wordmark at that size is a sticker |
| `lab.jpg` | the lab's kit straight down on the oak, blank: a letter pad, a triangular scale, a card tag on a string, a concrete test cylinder, a pencil. `lab-printed.jpg` is the kit with its prints |
| `material-block.jpg` | the corner of a block wall in hard sun, the arris on the diagonal, from `site/block.jpg` |
| `material-cage.jpg` | a reinforcement cage against the formwork, before the pour |
| `material-corner.jpg` | board-marked in-situ concrete, the arris on the diagonal |
| `material-plan.jpg` | s-073 printed and weighted with a batten on an unfinished block wall, from `site/plan.jpg`: our drawing on site |
| `material-reveal.jpg` | a travertine reveal and its shadow gap, timber battens beyond. the first plate that made the ink black |
| `material-soffit.jpg` | the underside of a composite deck and its beam connection |
| `material-splice.jpg` | a bolted splice plate, the weld bead beside it |
| `material-stirrup.jpg` | stirrups stacked, the same bend over and over, from `site/stirrups.jpg` |
| `millau.jpg` | the deck across the valley on its seven piers. one of the cover's ten |
| `notebooks.jpg` | two spiral notebooks, blank, straight down on the oak, one closed and one open flat. `notebooks-printed.jpg` has the lockup on the cover and the grid on the pages |
| `steps-sheet.jpg` | a large blank sheet on pale concrete steps, straight down, a stone on its corner. the joint lands on it |
| `sign.jpg` | a round lit blade sign, blank, on a dark facade at dusk. it came back a little turned from the camera, and `sign-printed.jpg` turns the seal with it, lit through the acrylic |
| `scaffold.jpg` | two blank billboard panels on scaffolding in an empty lot, faces square to the camera. the boards run live on them |
| `office.jpg` | one room, seven people in it: a grey-haired engineer and a younger one over a sheet at the near end, the set pinned along the wall. the concrete ceiling carries the slide's line; the glass starts below it |
| `one-wtc-poster.jpg` | the tower from the memorial plaza, whole in the lower two thirds, the upper third an even deep sky: made for the wtc-photo board, whose line and signature sit on top. one-wtc.jpg stays for the site, where the sketch is aligned to its pixels |
| `one-wtc-wide.jpg` | the tower alone, whole, landscape, 2K. a long lens from the far side of the plaza is what crops the rest of the site away and keeps the verticals straight |
| `one-wtc.jpg` | the tower from the plaza, a person’s distance, portrait. the hand sketch is drawn over it, aligned by the spire tip and the parapet |
| `papers.jpg` | two blank sheets, flat. the right one lies a degree off square and its printing lies with it |
| `petronas.jpg` | both towers whole over the park's trees, the skybridge between. one of the cover's ten |
| `planroom.jpg` | the archive: banks of flat files running away on the left, shelves of sealed sets above, the table across the near right with a sheet open on it, a drawer pulled out low, late warm afternoon light long across the floor. there is no red anywhere in it, and that is the law arguing — nothing in this room is being changed, every sheet in it is signed. the product layer over it is still to build: every set the firm signed, a blue reading head, each row washed yellow |
| `plate-table.jpg` | the oak the product is shown on, straight down, edge to edge, 2K. the middle of the frame is calm so a screen can sit on it |
| `stamp.jpg` | the stamp and a blank sheet, flat. the stamp face carries no engraving |
| `sydney-harbour.jpg` | the arch square from the harbour, the four pylons. one of the cover's ten |
| `tee.jpg` | a white tee held up to a blue sky: not wished, the mockup `BenditoMockup-B-T_Shirt.jpg` from `bicycle/under/mockups/merchandise/`, its chest print lifted by `../shirt/tee.py`. `tee-printed.jpg` has the lockup small on the chest |
| `tee-back.jpg` | a man in a pale heather tee with his back to the camera, a concrete wall behind: not wished, the mockup `t shirt back mockup.jpg` from `bicycle/under/mockups/merchandise/`, its four teal blocks lifted by `../shirt/back.py`. `tee-back-printed.jpg` has the name at the nape and the question big between the shoulders, in the knit |
| `tote.jpg` | a blank canvas tote hung by its handles over a steel railing post, hard sun on the dark mesh: not wished, the mockup `01-raw-tote-bag-mockup.jpg` from `bicycle/under/mockups/merchandise/`, cropped to 16:9. `tote-printed.jpg` has the stacked lockup in the canvas |
| `tube.jpg` | a drawing tube and a rolled set, flat. `tube-printed.jpg` has the label printed as a title block |
| `wall.jpg` | the white wall, blank, at the size of the room |

the poster plates — a material alone, one per board under `../posters/boards/`, and each one a line
in `plates.txt` — are
`cement`, `clay`, `concrete`, `copper`, `earth`, `granite`, `lime`, `oak`, `plywood`, `rammed`, `rebar`, `sand`, `sandstone`, `sky`, `steel`, `stone`, `timber`, `travertine`, `water`.

## where the language came from

learned from nicholas calcott's photographs of the oxman lab, 787 eleventh avenue, new york
(oxman.com/projects/lab; dezeen, 30 sept 2024; fast company). looked at, not read about. this is the
argument behind the canon, not a prompt: **the room is in a place** — the city is in every window,
and a blank white window is a void that reads cold. **green** — the lab is white and never without
something alive. **white, oak, black** — the black is what makes the white read warm instead of
clinical. **the work is lying around** — an empty table is a showroom. **real light** — daylight
from a wall of glass, slightly overexposed at the windows, the bones of the building showing.
**people are many, moving, ordinary** — the frame that says the most is the opening-day dance from
the mezzanine, a dozen people blurred mid-step among the desks; the architecture is sharp and still,
the people are a blur, and the blur is what says the lab is alive. **the frame** — the dead-centre
elevation is one of the frames, not the frame; a symmetrical room with two people posed at a table
is a showroom. **the material, close** — never a facade, never a skyline, never a whole anything.
**buildings** — one lens, the distance of a person standing there, never a drone and never a sunset.

six attempts found the room. haer register, grey and sepia: cold. all white with blank windows and
an empty table: colder. one-point and centred, two people posed over the set: a rendering of a
studio. from the mezzanine, off-axis, long exposure, seven people: the frame was right and too
crowded. the fifth lost the frame to fix the count and was a showroom again. the sixth is the
fourth's frame with four people, and that is the one — which is where law 6 comes from.
