An artist who builds software.

Twenty years of paint, plaster, and welded steel. Software is the newest material.

Neil Young — scratchboard portrait, white line on black
Neil Young — scratchboard. The original no longer exists; this photograph is the record.
01

Selected work

Scratchboard, spray, plaster, charcoal, pastel, acrylic, colored pencil, welded steel.

Grandmother mural in lavender — photo-real portrait inside spray abstraction Grandmother mural in sepia — photo-real portrait inside spray abstraction
Grandmother MuralsSPRAY ENAMEL ON WALLOne for each grandmother — photo-real portraits held inside spray abstraction.
Grandmother's Kitchen — grandfather in the doorway, grandmother at the stove
Grandmother's KitchenACRYLIC ON BOARDGrandfather in the doorway; grandmother at the stove.
Child — charcoal and pastel portrait on orange ground
ChildCHARCOAL & PASTEL ON ORANGE GROUND
Two Men — acrylic double portrait on black ground
Two MenACRYLIC
Woman in the Piazza — smiling woman crossing a stone square, acrylic
Woman in the PiazzaACRYLIC
Rider — man in sunglasses on a bicycle against a deep red ground, acrylic
RiderACRYLIC ON PANEL
Untitled steel installation, installed — plasma-cut tree, city skyline and falling figures, viewer at left
Untitled (Steel Installation)PLASMA-CUT PLATE STEEL, WELDED TO ANGLE-IRON FRAMEWall installation — a tree dissolving into a skyline, roots becoming figures.
Event Horizon installed — gilded iconography ringed by cut-steel arms on a gallery wall
Event HorizonPLASMA-CUT PLATE STEEL, WELDED TO ANGLE-IRON FRAME
Event Horizon — gilded iconography ringed by cut-steel arms, straight on
Event HorizonPLASMA-CUT PLATE STEEL, WELDED TO ANGLE-IRON FRAME
House, Dissolving — cut silhouette of a house shedding colored geometric fragments
House, DissolvingCUT STEEL AND PAINTED WOOD
Corridor installation — black cut-out figures dissolving into folded color fragments along a hallway
Corridor InstallationMIXED MEDIA ON WALL
Face — plaster and mesh sculpture
FacePLASTER AND MESH
Florence Market — acrylic cityscape with market vendor
Florence MarketACRYLIC
Side Street — narrow Italian street under a deep blue sky, acrylic
Side StreetACRYLIC
Argentina, Corner at Night — rain-lit street corner under lit windows, acrylic
Argentina, Corner at NightACRYLIC
Serpent and Hands — pastel, serpent coiled through outstretched hands
Serpent and HandsPASTEL
Resting — acrylic portrait of a girl resting on her arm
RestingACRYLIC ON PANEL
The Band — scratchboard study after the 1969 album cover, white line on black
The BandSCRATCHBOARDStudy after the cover of the 1969 album.
Skull — pale bone form emerging from a near-black ground, acrylic
SkullACRYLIC
Layered Head — portrait built from overlapping translucent strokes, drawn on iPad
Layered HeadDIGITAL — DRAWN ON IPAD
Pinkerton — Allan Pinkerton in a bowler hat against a scumbled gray field, after the 1862 Antietam photograph with Lincoln
PinkertonACRYLIC ON PANELAfter the 1862 photograph with Lincoln at Antietam.
Capoeira study — figure falling, colored pencil Capoeira study — figure crouched mid-turn, colored pencil Capoeira study — figure extended, colored pencil
Capoeira SeriesCOLORED PENCILFigure studies from capoeira — balance, momentum, weight.
Life drawing — charcoal, male figure from behind
Life DrawingCHARCOAL
02

Projects

Selected software systems — browser-based 3D, civic AI workflows, spatial data interfaces, working apps, and interactive games.

ThreadKeep

A native macOS app that turns iMessage history into a searchable, local-first archive — built directly on Apple's undocumented message database.

macOSSwiftUILocal-firstArchive
threadkeep.xyz

atrium.earth

A museum for sculpture in the browser — rooms you move through, with large 3D scans streamed progressively so the space stays fast.

THREE.JSWEBGL3D
atrium.earth

worldbook.earth

An interactive atlas: 239 countries shaded live across dozens of data layers, with migration and refugee flows drawn as moving currents.

WEBGLMAPPINGDATA VIZ
worldbook.earth

WPCNA

Civic infrastructure for a White Plains neighborhood council. Residents submit notices; an AI pipeline triages them for human review — a person always makes the call. Ask White Plains answers questions from the site's own content.

CIVICAI-ASSISTEDSTATIC SITE
View live

Ad Arma

A turn-based strategy wargame on a hex grid. Original ruleset, custom engine — I designed the rules and built every line.

GAME DESIGNJAVASCRIPTWEB
ad-arma.com

treefort.lol

A private clubhouse network: forts you knock to enter, with a wall, a paint room, and a gif machine. No accounts, no feeds, no analytics — one Cloudflare Worker, zero dependencies. The management is a dog.

CLOUDFLARE WORKERSD1 + R2ZERO DEPENDENCIES
treefort.lol
03

About

I'm a mixed-media artist who builds software. For twenty years the materials were paint, plaster, charcoal, and welded steel; now it's mostly code. The questions are the same — form, composition, space.

Earthquake relief in Haiti. Teaching in West Africa. Furniture fabrication in Ulster County. Painting and sculpture throughout.

Connecticut College — B.A., 2008

Tools I work in

Swift / SwiftUI · React · TypeScript · Python · Node

04

Archive

The longer record. Click anything to view.

Let's make something.