Monorepo for Aesthetic.Computer aesthetic.computer
4
fork

Configure Feed

Select the types of activity you want to include in your feed.

grants: scaffold May open-call drafts + macOS mail bootstrap report

Adds RESEARCH + DRAFT v0 narratives for Error 406 [Netstalgia] (May 4),
NYABF Project Space (May 8), Oracle Egg BROILER (May 15), and a pre-essay
PITCH for Smarthistory; Francis Gallery parked pending source URL. Top-
level grants/SCORE.md tracks active deadlines and points to the (private)
vault honeydo for the inbox itself. Each draft mirrors the lacma-2026
narrative pattern.

Also adds reports/2026-04-24-mail-bootstrap-on-mac.md documenting the
Homebrew + vault-decrypt steps to make mbsync/mu/msmtp work on a fresh
macOS host: CRLF→LF, AuthMechs LOGIN, Linux→macOS path remap.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

+1381
+66
grants/SCORE.md
··· 1 + # Grants Score 2 + 3 + Active applications, deadlines, and status. Newest deadlines first. 4 + 5 + ## Open / In Flight 6 + 7 + | Application | Deadline | Amount | Status | Folder | 8 + |---|---|---|---|---| 9 + | Error 406 [Netstalgia] Not Acceptable | 2026-05-04 (23:59 CEST) | €1,500–7,000 (asking €5.5k) | DRAFT v0 ready | `error-406-netstalgia/` | 10 + | NY Art Book Fair — Project Space | 2026-05-08 | $3,500 stipend | DRAFT v0 ready | `printed-matter-project-space-2026/` | 11 + | Oracle Egg — BROILER Residency (Fall 2026) | 2026-05-15 (23:59 PST) | TBD | DRAFT v0 ready | `oracle-egg-broiler-2026/` | 12 + | ~~Francis Gallery solo painting exhibition~~ | parked | — | parked — different call than the public Summer Exhibition; awaiting source URL | `francis-gallery-2026/` | 13 + | Smart History — Contributor essay | rolling | unpaid | PITCH.md drafted (send first; PhD-or-equiv clause) | `smarthistory-essay/` | 14 + 15 + ### Drafted vs. submitted 16 + 17 + Every "DRAFT v0 ready" above means there is a `DRAFT.md` in the folder 18 + that's filled out top to bottom but **not yet trimmed against the 19 + actual application form's word counts**. The last step before each 20 + deadline: open the form, capture the exact field structure, trim the 21 + draft to fit, fill in unanswered questions, and submit. 22 + 23 + ## Submitted / Decided 24 + 25 + (none yet — see `grants/lacma-2026/` for prior reference.) 26 + 27 + ## Personal Logistics (not grants but tracked here) 28 + 29 + | Item | By | Status | Notes | 30 + |---|---|---|---| 31 + | Renew passport (Assonet trip) | before travel | todo | *vault: `personal/2026-assonet/`* | 32 + | File 2024 + 2025 federal/state tax | late | todo | *vault: `personal/2026-assonet/`* | 33 + | Covered CA vs MassHealth (residency) | open question | todo | *vault: `personal/2026-assonet/`* | 34 + | Meeting with SFPC | TBD | schedule | `personal/2026-sfpc/` | 35 + 36 + ## Soft / Maybe Later 37 + 38 + - Architecture (sales venue for artbooks) — research contact 39 + - Nina Atwater (sales venue for artbooks) — research contact 40 + - closefriends.email signup — Trevor McFedries weekly digest 41 + 42 + ## Inbox 43 + 44 + New opportunities (Fia forwards, me@jas.life mail, in-person asks) land 45 + in the **private vault honeydo** — 46 + `aesthetic-computer-vault/personal/honeydo.md.gpg`. Promote ones with 47 + real public-OK fit into a folder under `grants/` here with a 48 + `RESEARCH.md`, and link back from the vault honeydo. 49 + 50 + The honeydo lives in the vault (not in this public repo) because the 51 + inbox itself often contains forwarded contacts and source-mail context 52 + that's closed-source. 53 + 54 + ## Pattern for new applications 55 + 56 + Each application folder should contain: 57 + 58 + ``` 59 + <name>/ 60 + RESEARCH.md # what we found about the call: deadline, ask, jury, fit 61 + DRAFT.md # the canonical narrative source (form fields) 62 + budget.md (or .tex) # if applicable 63 + attachments/ # CV, work samples, references 64 + ``` 65 + 66 + Mirror the structure of `grants/lacma-2026/` (esp. `LACMA-2026-APPLICATION-DRAFT.md`) for narrative-heavy submissions.
+191
grants/error-406-netstalgia/DRAFT.md
··· 1 + # Error 406 [Netstalgia] Not Acceptable — Application Draft 2 + 3 + > **Deadline:** 2026-05-04, 23:59 CEST 4 + > **Deliverable:** browser-runnable online exhibition piece + terms of use, due 2026-10-30 5 + > **Ask:** **€5,500** (middle-upper of the €1.5–7k range — see budget) 6 + > **Submit:** https://error417.expectation.fail/406/netstalgia-not-acceptable/open-call 7 + > 8 + > *This draft is amount-flexible and section-flexible until we have the 9 + > actual form fields in hand. Word counts below are first-cut targets.* 10 + 11 + --- 12 + 13 + ## Project Title 14 + 15 + **The URL Tradition** — a browser-runnable counter-platform piece 16 + 17 + (Working title. Optional alternates: "Personal Computers Are Not Done Yet," 18 + "What An Address Was Supposed To Be," "Permanent Forks.") 19 + 20 + ## One-Sentence Description 21 + 22 + A live web piece where every keystroke makes a new URL — a working 23 + demonstration that the address bar can still be a creative interface, not 24 + a tracking surface, written into Aesthetic Computer's existing public 25 + hosting layer of 17,000+ user programs. 26 + 27 + --- 28 + 29 + ## Project Description (~400 words target) 30 + 31 + The web's original promise was that every program, every painting, every 32 + in-progress thought could have a permanent address that anyone could 33 + visit, fork, and continue. Forty years of platform consolidation turned 34 + the URL into a tracking primitive. **Netstalgia is the wrong response.** 35 + Wishing for the early web — the personal homepage, the GeoCities ring — 36 + fixes nothing, because the missing infrastructure was never the 37 + aesthetic. It was the *contract*: every artifact addressable, every 38 + artifact remixable, no platform between artist and audience. 39 + 40 + **Aesthetic Computer** has been quietly rebuilding that contract since 41 + 2021. KidLisp.com hosts 17,000+ user-written generative-art programs, 42 + each at a permanent URL of the form `kidlisp.com/$xxx`. Anyone can fork 43 + any program by appending it to any other URL. There is no app store, no 44 + moderation queue, no algorithm. The hosting layer is free and the source 45 + is on GitHub. 46 + 47 + **The proposed piece — *The URL Tradition* — makes that contract visible.** 48 + A single browser-runnable artwork where: 49 + 50 + 1. **Every keystroke is publishable.** As the visitor writes a KidLisp 51 + program live in the page, every state of the program is auto-minted as 52 + a permanent URL. No save button. No login. The URL bar is the 53 + manuscript. 54 + 2. **The address bar is the studio.** The piece lets visitors visit any 55 + prior visitor's URL, fork it, mix it with any other prior URL by 56 + concatenation, and watch the result run live. 57 + 3. **Inherited memory is a visible substrate, not a frame.** The piece 58 + surfaces the URL graph itself — what fed into this state, what comes 59 + after — so that "remix" stops being a metaphor and becomes the 60 + mechanic. 61 + 62 + The piece will run for the duration of the Error 406 online exhibition 63 + (end of 2026 onward) at a dedicated URL, with all visitor-generated state 64 + preserved as part of the work. After the exhibition, the piece continues 65 + at the same URL — as a permanent counter-platform demonstration, not an 66 + expiring artifact. 67 + 68 + **Why this fits Netstalgia Not Acceptable.** This is not a recreation of 69 + the early web. It's a working argument that the protocols, the 70 + addressing scheme, and the hosting layer the web actually offered — if 71 + you decline the platform — already deliver what we wish nostalgia could. 72 + The piece proposes (and implements) the URL as the unit of artistic 73 + authorship: not a citation, not a share, but the work itself. 74 + 75 + --- 76 + 77 + ## Artist Statement (~150 words target) 78 + 79 + I make instruments and tools for other artists to use. Aesthetic Computer 80 + is the central project — a creative computing system, a custom 81 + programming language (KidLisp), a social network, and a lending fleet of 82 + laptops flashed with a custom kernel. I have been arguing for years 83 + that the personal computer is not finished, that the web's original 84 + contract was real, and that the way to defend it is to keep building 85 + it. The URL Tradition piece is the most concentrated expression of 86 + that argument I can fit into a browser. It exists because every other 87 + form of the argument — the operating system, the laptop fleet, the 88 + hardware — is harder to ship to a global online exhibition than a 89 + single URL. That, itself, is the point. 90 + 91 + --- 92 + 93 + ## Fit With the Call's Themes 94 + 95 + | Call theme | How the piece engages it | 96 + |---|---| 97 + | **Protocols, networks, shared infrastructures** | The piece IS a working protocol stack — KidLisp + the AC hosting layer + permanent URLs. Source on GitHub. | 98 + | **Governance, moderation, sustainability within decentralization** | No moderation queue; every program is its own permanent URL; hosting paid by open-source sponsorship + studio funds, not VC. | 99 + | **Expanding user agency on restrictive platforms** | The piece is itself the alternative platform; visitors leave with permanent URLs they own. | 100 + | **Migration toward existing alternatives** | Built atop infrastructure that already exists and works (17,000+ programs, 2,800+ handles, 5 years of uptime). | 101 + | **Critical interrogation of inherited memories and power structures** | The piece argues against nostalgia explicitly — its companion essay (see deliverables) frames the URL Tradition as a contract, not a memory. | 102 + 103 + --- 104 + 105 + ## Deliverables 106 + 107 + 1. **The piece itself** — a browser-runnable URL (`error406.aesthetic.computer` 108 + or similar), live for the duration of the exhibition and after. 109 + 2. **Companion essay (~1,500 words)** — published as both a permanent URL 110 + and a printable single-sheet KidLisp card, expanding "The URL 111 + Tradition" argument for the exhibition catalog. 112 + 3. **Terms of use** — short, readable, in plain English. No tracking, no 113 + accounts, all visitor-generated content preserved at permanent URLs 114 + under a permissive license. 115 + 4. **Source code** — on GitHub (already public for the full AC stack). 116 + 5. **Documentation reel** — short video of the piece in use, for the 117 + exhibition front-matter. 118 + 119 + --- 120 + 121 + ## Risk and Process (Selection criterion #5) 122 + 123 + This piece is **deliberately under-finished at the moment of submission** 124 + and will be co-developed with the visitor traffic during the exhibition 125 + window. The risk is that visitors don't make anything interesting; the 126 + process commitment is that the piece will publish a periodic "URL of the 127 + week" curated edit *during* the exhibition, with the artist 128 + acknowledging that some weeks will be empty. Failure becomes part of the 129 + work. This is consistent with the call's stated welcome of "high-risk, 130 + process-oriented projects." 131 + 132 + --- 133 + 134 + ## Budget (€5,500 ask) 135 + 136 + | Item | € | 137 + |---|---| 138 + | Artist time: development + curation through exhibition window (≈12 weeks) | 3,000 | 139 + | Hosting + bandwidth + URL preservation infrastructure (Cloudflare, MongoDB, Digital Ocean Spaces) | 600 | 140 + | Companion essay writing + design + print run (100 cards, distributed in EU + LA) | 500 | 141 + | Documentation reel (production + editing) | 400 | 142 + | Translations of the piece UI + essay into ES, DA, ZH | 600 | 143 + | Contingency (8%) | 400 | 144 + | **Total** | **5,500** | 145 + 146 + --- 147 + 148 + ## Short Bio (~100 words) 149 + 150 + Jeffrey Alan Scudder is an artist, educator, and technologist based in 151 + Los Angeles. He builds instruments and tools for other artists, and 152 + keeps a live practice across performance painting, software writing, and 153 + teaching. Yale MFA (2013), Ringling BFA (2011). Author in Residence at 154 + UCLA Social Software with Casey Reas and Lauren Lee McCarthy. Creator of 155 + Aesthetic Computer, Whistlegraph, and No Paint. His open-source tools 156 + *No Paint* and *notepat* each reached the front page of Hacker News. 157 + Work in the collections of KADIST (San Francisco) and SMK (Copenhagen). 158 + Hosts biweekly NELA Computer Club demos at Plot.Place in Chinatown, LA. 159 + 160 + ## Long Bio / CV 161 + 162 + See `papers/cv/cv.pdf` (canonical AC CV). 163 + 164 + --- 165 + 166 + ## Source Materials Repurposed Here 167 + 168 + - `papers/arxiv-url-tradition/url-tradition.tex` — primary intellectual 169 + source for "The URL Tradition" framing 170 + - `papers/arxiv-sustainability/sustainability.tex` — "Who Pays for 171 + Creative Tools?" — funding-model argument 172 + - `papers/arxiv-network-audit/network-audit.tex` — current state of the 173 + 17,000-program hosting layer 174 + - `system/public/kidlisp.com/` — the existing hosting platform the 175 + piece extends 176 + - `papers/arxiv-kidlisp-cards/` — card format for companion essay print 177 + 178 + --- 179 + 180 + ## Submission Checklist 181 + 182 + - [ ] Open the actual application form, capture exact fields + word caps 183 + - [ ] Trim each section to the form's actual word count 184 + - [ ] Decide on final title (currently "The URL Tradition") 185 + - [ ] Confirm €5,500 ask vs. higher (€7k) or lower (€4k) based on form 186 + questions about scope vs. honorarium 187 + - [ ] Pull 3–5 work-sample images (existing KidLisp pieces as preview) 188 + - [ ] Record + upload short documentation video 189 + - [ ] Confirm exhibition URL slug (`error406.aesthetic.computer`?) 190 + - [ ] Final review for word counts, typos, and ES/DA/ZH translation note 191 + - [ ] Submit before 2026-05-04, 23:59 CEST
+83
grants/error-406-netstalgia/RESEARCH.md
··· 1 + # Error 406 [Netstalgia] Not Acceptable — Research 2 + 3 + > **Deadline:** 2026-05-04, 23:59 CEST 4 + > **Grant:** €1,500 – €7,000 (sliding scale) 5 + > **Submit:** https://error417.expectation.fail/406/netstalgia-not-acceptable/open-call 6 + > **Org:** Error 417 (organized in part by dyne.org foundation; second call after Error 417) 7 + > **Jury:** meets early June 2026; recipients informed mid-June 8 + > **Online exhibition:** end of 2026 (work delivery deadline 2026-10-30) 9 + 10 + ## What they're calling for 11 + 12 + Internet-art projects that take a clear-eyed look at the past while exploring how 13 + internet histories can open paths to more equitable futures. Not "old internet" 14 + nostalgia — but interrogation of platform power, data extraction, and the 15 + infrastructures we've inherited. Asking what protocols, networks, archives, and 16 + shared conditions are needed to build the internet we actually want. 17 + 18 + ## Eligibility 19 + 20 + Open worldwide to: 21 + - artists 22 + - collectives 23 + - curators 24 + - arts initiatives 25 + - exhibition spaces 26 + - online platforms 27 + - developers (software and hardware) 28 + 29 + ## Format of award 30 + 31 + - Grant (sliding €1.5k–€7k) 32 + - Mentoring sessions with members of the jury 33 + - Inclusion in online exhibition (end of 2026) 34 + 35 + ## Why AC fits 36 + 37 + - Aesthetic.Computer *is* a critique of platform-era computing through making. 38 + - The URL Tradition paper (`papers/arxiv-url-tradition/`) is the clearest single 39 + artifact framing AC's stance on protocols and shared conditions for the web. 40 + - The Library + AC Native OS '26 reframes "old hardware" as a site of cultural 41 + reuse rather than nostalgia — anti-Windows-10-EOL e-waste, against platform 42 + capture, in favor of artist-run infrastructure. 43 + - KidLisp + the social network are the "protocols, networks, archives" the call 44 + asks about, made tangible. 45 + 46 + ## Suggested angle 47 + 48 + **"Personal Computers Are Not Done Yet" → reframed for Netstalgia:** 49 + We are not nostalgic for the early web. We are arguing the second personal 50 + computing scene is just starting, and it has to be built on the lessons of why 51 + the first one was captured. The AC Library and AC Native OS are the 52 + demonstration: 240M stranded laptops, an artist-run lending fleet, a custom 53 + kernel that boots straight into a creative instrument, no app store. Online 54 + exhibition piece could be a browser-runnable demonstration of AC's URL tradition 55 + + a documentation reel from a Flash Day. 56 + 57 + ## Source materials in repo to repurpose 58 + 59 + - `papers/arxiv-url-tradition/url-tradition.tex` — main intellectual frame 60 + - `papers/arxiv-os/os.tex` — AC Native OS '26 paper 61 + - `papers/arxiv-sustainability/sustainability.tex` — "Who Pays for Creative Tools?" 62 + - `papers/arxiv-network-audit/network-audit.tex` — what the network looks like today 63 + - `grants/lacma-2026/LACMA-2026-APPLICATION-DRAFT.md` — recent narrative we can adapt 64 + 65 + ## Sources 66 + 67 + - [Open Call (canonical)](https://error417.expectation.fail/406/netstalgia-not-acceptable/open-call) 68 + - [Netstalgia Essay (frame)](https://error417.expectation.fail/406/netstalgia-not-acceptable/netstalgia-not-acceptable-essay) 69 + - [ArtRabbit listing](https://www.artrabbit.com/artist-opportunities/2026/may/error-406-netstalgia-not-acceptable) 70 + - [ArtsHub UK listing](https://www.artshub.co.uk/opportunity/error-406-netstalgia-not-acceptable-2632679/) 71 + - [dyne.org / LinkedIn](https://www.linkedin.com/posts/dyne-org_open-call-error-406-netstalgia-not-acceptable-activity-7444745380614795264-Dz6f) 72 + 73 + ## Next steps 74 + 75 + 1. Read the Netstalgia essay carefully (linked above) and pull 2–3 quotes to 76 + anchor the narrative against. 77 + 2. Draft `DRAFT.md` from the LACMA narrative, retargeted for an online 78 + exhibition deliverable rather than a public lab. 79 + 3. Decide grant ask: probably top of range (€7k) given the scope of the AC 80 + stack; or middle (€4k) if framed as a single Library Flash Day documentation + 81 + browser demo. 82 + 4. Pick the deliverable: online piece, video documentation, or a written essay 83 + companion. Cross-reference what the jury expects in the application form.
+170
grants/oracle-egg-broiler-2026/DRAFT.md
··· 1 + # Oracle Egg — BROILER Residency (Fall 2026) — Application Draft 2 + 3 + > **Deadline:** 2026-05-15, 23:59 PST 4 + > **Length:** 3–7 days, full facility access 5 + > **Window:** September – December 2026 6 + > **Submit:** Google Form linked from https://www.oracleegg.com/broiler 7 + > 8 + > *This draft is a starting frame; trim and re-shape once we have the 9 + > exact form fields. Length targets below are guesses pending the form.* 10 + 11 + --- 12 + 13 + ## Project Title 14 + 15 + **Library Orchestra — *notepat* on twelve flashed laptops** 16 + 17 + (Working title; alternate: *"What a room of personal computers sounds like."*) 18 + 19 + --- 20 + 21 + ## One-paragraph Description (~120 words) 22 + 23 + Twelve refurbished laptops, each booted directly into Aesthetic Computer 24 + from USB on the first day of the residency, become a network instrument 25 + for a single 30–45 minute room-scale piece. Each laptop runs **notepat** 26 + — an 8,466-line polyphonic instrument the artist built from scratch over 27 + two years, a sample-level audio engine running at 192 kHz with 32 voices 28 + of polyphony — and the twelve are linked over a local WebSocket relay so 29 + that what one player hears propagates to the others. The piece develops 30 + the *PLORK* (planetary laptop orchestra) thesis: cheap commodity laptops, 31 + flashed with a creative kernel, become an instrument library. The room 32 + becomes the instrument the room itself can play. 33 + 34 + --- 35 + 36 + ## What I Want To Develop During The Residency 37 + 38 + I have built the instrument (notepat). I have written the paper proposing 39 + this exact form (`papers/arxiv-plork/plork.pdf`, 8 pages). What I have 40 + *not* done is play twelve of these in one room. The residency is exactly 41 + the right length and shape to: 42 + 43 + 1. **Day 1 — Flash Day.** Twelve refurbished ThinkPad 11e Yogas (already 44 + stripped of their consumer OS, $128 per seat per `papers/arxiv-os/`) 45 + boot into Aesthetic Computer. Performers — local LA musicians — each 46 + take a laptop. The room becomes the instrument library. 47 + 2. **Days 2–4 — Open rehearsal.** Develop a 30–45 minute score for 48 + twelve networked notepats, voice, room mics, and the PA. The piece 49 + uses AC's existing WebSocket relay (the same code that powers 50 + real-time multiplayer in `system/public/aesthetic.computer/disks/`) 51 + so all twelve laptops can phase, sync, cross-modulate, listen to each 52 + other, and respond. 53 + 3. **Day 5 (or 6 / 7) — Public ticketed performance.** The score in 54 + front of an audience. Documentation reel for online release. 55 + 56 + The risk is real and acknowledged: I have never run twelve simultaneous 57 + laptops on one local network running a shared synth state. Days 2–4 are 58 + budgeted to fail openly, and the final-day performance is shaped by 59 + whatever the room actually does, not what was planned. 60 + 61 + --- 62 + 63 + ## Why Oracle Egg 64 + 65 + BROILER is for ambitious sound and performance work in early stages or 66 + active development. This piece is in active development on every 67 + component (notepat, the AC kernel, the WebSocket relay, the PLORK 68 + argument) — what's missing is the room. Oracle Egg's 3,000 sf loft in 69 + the Fashion District is exactly the kind of space the piece needs: enough 70 + floor for twelve laptop stations and an audience, run by musicians who 71 + understand the rehearsal-into-performance arc, with a culminating public 72 + moment that turns a residency into something an audience comes to. 73 + 74 + The residency is also the right cohort question: which LA musicians want 75 + to play this? I would invite a mix from the **NELA Computer Club** 76 + (biweekly demos at Plot.Place in Chinatown) and Oracle Egg's own active 77 + circles. Twelve players, mixed practices, one room, one piece. 78 + 79 + --- 80 + 81 + ## Logistics 82 + 83 + | Need | Who provides | 84 + |---|---| 85 + | Twelve refurbished ThinkPad 11e Yoga laptops | Artist (AC Library / shipped from LA studio) | 86 + | Twelve USB drives, pre-flashed with AC Native OS | Artist | 87 + | Twelve sets of headphones | Artist | 88 + | Local WebSocket relay (laptop or RPi) | Artist | 89 + | Eight to twelve cheap powered speakers + mixer + mic stands | Oracle Egg / artist (rider TBD) | 90 + | Local network (ethernet or 5GHz wifi without internet exit) | Oracle Egg / artist | 91 + | Performance space + door + ticketing | Oracle Egg | 92 + | Performers (≈8 invited) | Artist (LA-based, mix of NELA Computer Club + invited) | 93 + 94 + --- 95 + 96 + ## Honorarium / Cost 97 + 98 + The form will state Oracle Egg's policy. **My ask:** a per-day artist 99 + fee for performers (eight performers × $200/day × 4 days = 100 + $6,400 across the cohort), a $1,500 production budget for travel of 101 + shipped equipment + speaker rental + mixer rental, and an artist fee for 102 + the residency lead at Oracle Egg's standard rate. If Oracle Egg's 103 + policy is artist-fee-only with no production budget, I will adapt the 104 + piece to fewer performers (six instead of twelve) and use existing 105 + equipment. 106 + 107 + --- 108 + 109 + ## Performance Date Window 110 + 111 + September – December 2026. Strong preference for **early-to-mid 112 + October 2026** (lines up with the fall semester at UCLA Social Software 113 + where the AC cards are circulating, and with my own LA calendar). Will 114 + adapt as Oracle Egg needs. 115 + 116 + --- 117 + 118 + ## Short Bio (~100 words) 119 + 120 + Jeffrey Alan Scudder is an artist, educator, and technologist based in 121 + Los Angeles. He builds instruments and tools for other artists, with a 122 + live and active practice across performance painting, software writing, 123 + and teaching. Yale MFA (2013), Ringling BFA (2011). Author in Residence 124 + at UCLA Social Software with Casey Reas and Lauren Lee McCarthy. Creator 125 + of Aesthetic Computer, Whistlegraph, and No Paint. His open-source tools 126 + *No Paint* and *notepat* each reached the front page of Hacker News. 127 + Work in the collections of KADIST (San Francisco) and SMK (Copenhagen). 128 + Hosts biweekly NELA Computer Club demos at Plot.Place, Chinatown LA. 129 + 130 + --- 131 + 132 + ## Media Samples (to include) 133 + 134 + 1. **notepat performance reel** — 3 min, solo or duo on browser; pull 135 + from existing AC documentation. 136 + 2. **AC Native OS boot reel** — 60 sec showing a ThinkPad cold-booting 137 + into notepat from USB (kernel prototype landed Feb 2026). 138 + 3. **PLORK paper** — `papers/arxiv-plork/plork.pdf` (8 pp.) as written 139 + thesis. 140 + 4. **One previous live-performance still** (NELA Computer Club, 47th 141 + Venice Family Clinic Art Exhibition 2026, or a UCLA classroom). 142 + 143 + --- 144 + 145 + ## Source Materials Repurposed Here 146 + 147 + - `papers/arxiv-plork/plork.tex` — the PLORK / planetary laptop 148 + orchestra argument (primary intellectual frame) 149 + - `papers/arxiv-notepat/notepat.tex` — the instrument paper 150 + - `papers/arxiv-os/os.tex` — AC Native OS '26, the kernel that boots 151 + notepat as PID 1 152 + - `papers/arxiv-folk-songs/folk-songs.tex` — repertoire / score thinking 153 + - `papers/arxiv-whistlegraph/whistlegraph.tex` — graphic-score thinking 154 + - `system/public/aesthetic.computer/disks/notepat.mjs` — the instrument 155 + source 156 + - `gigs/dis-order-pamphlet-8.5x11-folded/` — example of how AC ideas 157 + travel into print form for an audience handout 158 + 159 + --- 160 + 161 + ## Submission Checklist 162 + 163 + - [ ] Open the actual Google Form, capture exact fields + word caps 164 + - [ ] Trim each section to fit the form 165 + - [ ] Decide ensemble framing (solo / "Jeffrey + AC Library Orchestra") 166 + - [ ] Confirm equipment count (12 vs. 8 vs. 6 laptops based on Oracle 167 + Egg's space + budget) 168 + - [ ] Pull the performance reel 169 + - [ ] Confirm performance date preference window 170 + - [ ] Submit before 2026-05-15, 23:59 PST
+77
grants/oracle-egg-broiler-2026/RESEARCH.md
··· 1 + # Oracle Egg — BROILER Residency (Fall 2026) — Research 2 + 3 + > **Deadline:** 2026-05-15, 23:59 PST 4 + > **Submit:** Google Form linked from https://www.oracleegg.com/broiler ("Apply Now") 5 + > **Length:** 3 to 7 days, full facility access 6 + > **Window:** September – December 2026 7 + > **Honorarium:** not disclosed publicly; ask in the form 8 + > **Location:** 939 Maple Avenue, Los Angeles, CA 90015 (Fashion District; 3,000 sf loft) 9 + > **Run by:** two active musicians; artist-run incubator for experimental music & performance 10 + 11 + ## What BROILER supports 12 + 13 + Ambitious new work in **sound and performance**: projects that challenge form, 14 + expand sonic language, take risks. Projects should be in **early stages or 15 + active development** — BROILER is not for finished work touring through. 16 + Culminates in a public performance. 17 + 18 + ## Why AC fits 19 + 20 + - **notepat.com** is an 8,466-line polyphonic instrument that runs in any 21 + browser and on AC Native OS at 192 kHz / 32 voices. It is *exactly* a 22 + laptop-orchestra instrument waiting for a room. 23 + - The **PLORK paper** (`papers/arxiv-plork/`) literally argues for a planetary 24 + laptop orchestra. BROILER is a perfect-scale demo of that thesis. 25 + - The **AC Library** lending fleet means we can bring 8–12 AC Blank ThinkPads, 26 + flash them on day 1, rehearse for 2–3 days, perform on day 5 — a full 27 + workshop-to-performance arc inside the residency window. 28 + - Oracle Egg's audience is exactly the right one for *Whistlegraph* and the 29 + *Sucking on the Complex* paper — performance + score + open instrument. 30 + 31 + ## Suggested angle 32 + 33 + **"Library Orchestra: notepat.com on twelve flashed laptops."** Pitch: 34 + - Day 1: Flash 12 AC Blank ThinkPads (donated/used, $128/seat) — the room 35 + becomes an instrument library. 36 + - Days 2–4: Open rehearsal with LA musicians and any Oracle Egg residents 37 + available; develop a 30–45 minute score for 12 networked notepats + voice 38 + + room mics. Use AC's WebSocket relay so all 12 laptops can phase, sync, and 39 + cross-modulate. 40 + - Day 5 (or 6/7): Public ticketed performance. Documentation reel for online 41 + release. 42 + 43 + This frames AC not as software but as a **room-scale performance instrument**, 44 + which is BROILER's exact lane. 45 + 46 + ## Source materials in repo 47 + 48 + - `papers/arxiv-plork/plork.tex` — planetary laptop orchestra argument 49 + - `papers/arxiv-notepat/notepat.tex` — instrument paper 50 + - `papers/arxiv-folk-songs/folk-songs.tex` — repertoire frame 51 + - `papers/arxiv-whistlegraph/whistlegraph.tex` — graphic score thinking 52 + - `system/public/aesthetic.computer/disks/notepat.mjs` — the instrument itself 53 + 54 + ## Open questions for the user 55 + 56 + - Do you want to apply solo or with a named ensemble? (Could be "Jeffrey + AC 57 + Library Orchestra" with TBD performers.) 58 + - Would NELA Computer Club members be performers, or is this a separate 59 + Downtown LA cohort? 60 + - Equipment: ship laptops, or have local LA artists bring their own and flash 61 + on site? 62 + 63 + ## Sources 64 + 65 + - [BROILER program page](https://www.oracleegg.com/broiler) 66 + - [Oracle Egg main site](https://www.oracleegg.com/) 67 + - [Calendar / past residencies](https://www.oracleegg.com/calendar) 68 + - [Support / pledge page](https://charity.pledgeit.org/oracleegg) 69 + 70 + ## Next steps 71 + 72 + 1. Open the Google Form and capture exact required fields (statement of intent, 73 + media samples, technical rider, dates preferred). 74 + 2. Confirm performance date window — September through December gives you 75 + flexibility; you'll want to align with other LA dates. 76 + 3. Decide ensemble framing. 77 + 4. Pull a 3-min notepat performance reel as the media sample.
+196
grants/printed-matter-project-space-2026/DRAFT.md
··· 1 + # NY Art Book Fair — Project Space — Application Draft 2 + 3 + > **Deadline:** 2026-05-08 4 + > **Stipend:** $3,500 (per JS — confirm in form) 5 + > **Submit:** Project Space proposal Google Form (link in NYABF FAQ) 6 + > 7 + > *This draft assumes the Project Space format gives 1 booth-or-installation 8 + > footprint + a presentation slot during the fair. Trim once the actual 9 + > form is open.* 10 + 11 + --- 12 + 13 + ## Project Title 14 + 15 + **The AC Papermill, Live** 16 + 17 + (Working title; alternates: "Programs As Cards," "The URL As Edition," 18 + "Aesthetic Computer Press.") 19 + 20 + --- 21 + 22 + ## One-Sentence Description 23 + 24 + A live publishing booth at the NY Art Book Fair where visitors write 25 + KidLisp programs that print themselves as single-sheet cards in real 26 + time, demonstrating the live tie between code, web hosting, and the 27 + printed page that sits at the center of the Aesthetic Computer 28 + publishing practice. 29 + 30 + --- 31 + 32 + ## What The Project Space Will Be (~200 words) 33 + 34 + A small footprint inside the fair: one table, one wall, one networked 35 + printer, two laptops. The setup runs continuously through the fair 36 + hours. 37 + 38 + - **Laptop A** boots into Aesthetic Computer's KidLisp environment. 39 + Visitors are invited to write a short program at the keyboard. Every 40 + state of every program gets a permanent URL. (KidLisp.com hosts 41 + 17,000+ existing user-written programs at this address scheme.) 42 + - **Laptop B** is a print-on-demand station. As soon as a visitor 43 + finishes a piece they like, it's rendered as a single-sheet 44 + index-card composition (screenshot + source + permanent QR-coded URL, 45 + monochrome, 2.75″ × 4.75″) and printed on the spot. The visitor 46 + takes their card. 47 + - **Wall display** of the existing AC papers: the AC Reader, twelve 48 + arxiv-format papers, the dis-order pamphlet, a stack of pre-printed 49 + KidLisp reference cards from the UCLA Social Software course. 50 + Everything free to take, restocked from a small inventory. 51 + - **Periodic "press runs"** — at scheduled times each day, the 52 + artist will compile that day's KidLisp programs into a small 53 + newsprint zine (16 pp.), printed in a short edition (50–100), free 54 + to take. 55 + 56 + The booth runs **continuously and unattended-friendly**. The artist 57 + will be present for the press-run moments and for visitor 58 + conversations; otherwise visitors operate the publishing themselves. 59 + 60 + --- 61 + 62 + ## Why It Belongs At NYABF 63 + 64 + The fair celebrates the printed thing. The Project Space format exists 65 + for presentations that frame a publication or printed-matter practice 66 + rather than just selling it from a table. Aesthetic Computer's 67 + publishing practice is unusual: the printed cards and the live software 68 + are the same artifact, the URL is the citation, the QR code is the 69 + delivery. The booth makes that visible by *running* the press at the 70 + fair. 71 + 72 + The piece also extends a five-year publishing arc that has produced: 73 + 74 + - **The AC Reader** (`papers/reader.pdf`) — a single-volume bound 75 + collection of all current AC papers 76 + - **The arxiv series** — 28 individual papers across `papers/arxiv-*/` 77 + - **The cards** — single-sheet KidLisp pieces, designed to fit the 78 + hand and the wall (`papers/arxiv-kidlisp-cards/`) 79 + - **The dis-order pamphlet** — recent printed pamphlet, 8.5×11 bifold 80 + (`gigs/dis-order-pamphlet-8.5x11-folded/`) 81 + 82 + The booth is the live edge of that practice — the part where the 83 + publishing happens in front of the reader. 84 + 85 + --- 86 + 87 + ## What Visitors Take Home 88 + 89 + - Their own KidLisp card (printed during their visit) 90 + - A permanent URL that runs their program forever 91 + - An AC Reader copy (one per visitor while supply lasts) 92 + - A dis-order pamphlet 93 + - Optional: stack of curated KidLisp reference cards (from the UCLA 94 + Social Software course set) 95 + 96 + --- 97 + 98 + ## Budget Sketch (against the $3,500 stipend) 99 + 100 + | Item | $ | 101 + |---|---| 102 + | Travel (LA ↔ NYC, four days) | 700 | 103 + | Lodging (four nights, modest) | 600 | 104 + | Equipment shipping (laptops + printer + cards) | 350 | 105 + | Print supplies (cardstock, newsprint zine paper, ink) for daily press runs across the fair | 800 | 106 + | Pre-printed inventory (AC Readers, dis-order pamphlets, KidLisp reference cards) | 600 | 107 + | Per diem / meals (four days) | 250 | 108 + | Contingency (≈6%) | 200 | 109 + | **Total** | **3,500** | 110 + 111 + If the stipend is confirmed at a different amount, the inventory and 112 + press-run line items scale up or down first. 113 + 114 + --- 115 + 116 + ## Logistics 117 + 118 + | Need | Provided by | 119 + |---|---| 120 + | Booth footprint inside the fair | Printed Matter | 121 + | Networked thermal or laser printer | Artist (ships from LA studio) | 122 + | Two laptops + USB drives + cables | Artist | 123 + | Wall display strips / clips for cards | Artist | 124 + | Pre-printed inventory for the wall + giveaway | Artist | 125 + | Power + wifi at the booth | Printed Matter | 126 + | Optional: small audio for the periodic press-run announcements | Artist | 127 + 128 + **Staffing:** Artist runs the booth solo for the duration of the fair. 129 + If selected and budget permits, may bring one helper for the busiest 130 + two days. 131 + 132 + --- 133 + 134 + ## Identity / Imprint 135 + 136 + **Apply as:** "Aesthetic Computer (Jeffrey Alan Scudder)" 137 + 138 + The booth functions as an imprint, not a solo-artist showcase. The 139 + imprint identity makes the social network and the open-source layer 140 + legible to the fair audience. 141 + 142 + (This is one of the open questions — discuss with Fia / collaborators 143 + before submitting.) 144 + 145 + --- 146 + 147 + ## Short Bio (~100 words) 148 + 149 + Jeffrey Alan Scudder is an artist, educator, and technologist based in 150 + Los Angeles. He builds instruments and tools for other artists, and 151 + keeps a live practice across performance painting, software writing, 152 + and teaching. Yale MFA (2013), Ringling BFA (2011). Author in 153 + Residence at UCLA Social Software with Casey Reas and Lauren Lee 154 + McCarthy. Creator of Aesthetic Computer, Whistlegraph, and No Paint. 155 + His open-source tools *No Paint* and *notepat* each reached the front 156 + page of Hacker News. Work in the collections of KADIST (San Francisco) 157 + and SMK (Copenhagen). Hosts biweekly NELA Computer Club demos at 158 + Plot.Place, Chinatown LA. 159 + 160 + --- 161 + 162 + ## Media Samples 163 + 164 + 1. Photo of the existing AC Reader (PDF cover) 165 + 2. Photo of the existing KidLisp cards in use at UCLA Social Software 166 + 3. Photo of the dis-order pamphlet 167 + 4. Short video of a visitor writing a KidLisp program → seeing it 168 + become a permanent URL → printing the card 169 + 5. Inventory shot of the four publication formats side-by-side 170 + 171 + --- 172 + 173 + ## Source Materials Repurposed Here 174 + 175 + - `papers/SCORE.md` — the papermill-as-mission frame 176 + - `papers/cards-convert.mjs` — the actual code that turns arxiv 177 + source into single-sheet card layout 178 + - `papers/arxiv-kidlisp-cards/` — example cards 179 + - `papers/reader.pdf`, `papers/reader.tex` — the AC Reader 180 + - `gigs/dis-order-pamphlet-8.5x11-folded/` — recent printed pamphlet 181 + - `system/public/kidlisp.com/` — the hosting layer that already runs 182 + the URL side of this 183 + 184 + --- 185 + 186 + ## Submission Checklist 187 + 188 + - [ ] Open the Google Form, capture exact fields + word caps + stipend 189 + amount 190 + - [ ] Decide imprint vs. solo-artist application identity 191 + - [ ] Source a thermal or laser printer suitable for booth use 192 + - [ ] Pre-print enough Reader / pamphlet / card inventory before fair 193 + - [ ] Confirm fair travel dates against other LA / NYC commitments 194 + (SFPC visit, Oracle Egg residency window if accepted) 195 + - [ ] Pull the visitor-flow video 196 + - [ ] Submit before 2026-05-08
+76
grants/printed-matter-project-space-2026/RESEARCH.md
··· 1 + # NY Art Book Fair — Project Space — Research 2 + 3 + > **Deadline:** 2026-05-08 4 + > **Submit:** Project Space proposal form linked from the 2026 NYABF FAQ 5 + > - Form (Google Forms): https://docs.google.com/forms/d/e/1FAIpQLSdgkY1vM_7eIBYN58OfjptF8HQlPwIioX6Zvst-Mccg1RWBVw/viewform?usp=dialog 6 + > - FAQ: https://printedmatterartbookfairs.org/faq 7 + > - Financial support page: https://printedmatterartbookfairs.org/are-there-opportunities-for-financial-support 8 + > **Amount:** $3,500 stipend (per JS — confirmed source). The publicly-listed 9 + > awards in the financial-support FAQ are separate tracks (Shannon Cane, 10 + > Volume Grant, Jason Polan); the Project Space stipend is documented in the 11 + > proposal form itself. 12 + 13 + ## What is a Project Space? 14 + 15 + From the FAQ: Project Spaces are "expanded presentations of books, prints, and 16 + ephemera" that go beyond the standard exhibitor table format. They are 17 + programmed presentations within the fair — installations, performances, 18 + demonstrations — that frame a publication or printed-matter practice rather 19 + than just selling it from a table. 20 + 21 + ## Why AC fits 22 + 23 + - AC has a real artbook-adjacent practice: **the AC Reader** 24 + (`papers/reader.pdf`), **the Cards** (`papers/arxiv-kidlisp-cards/`), the 25 + printed pamphlet at `gigs/dis-order-pamphlet-8.5x11-folded/`, and the body of 26 + arxiv papers across `papers/arxiv-*/`. The papermill literally exists to 27 + press AC ideas into printable form. 28 + - A Project Space lets us show the **printing pipeline as a living instrument** 29 + rather than a stack of finished products: visitors interact with KidLisp, 30 + the system prints a card, the card goes home with them. 31 + - This connects the "papermill" metaphor in `papers/SCORE.md` to a public 32 + performance of publishing. 33 + 34 + ## Suggested angle 35 + 36 + **"The AC Papermill, Live."** A Project Space where: 37 + 1. A laptop runs a KidLisp performance (the live source of the cards). 38 + 2. A networked print station produces single-sheet KidLisp cards on demand, 39 + one per visitor. 40 + 3. A small library of arxiv-AC papers is displayed and free to take. 41 + 4. Optional Flash Day mini-segment: visitors can flash a USB with AC Native OS. 42 + 43 + The Project Space proposal should foreground the **publication artifact** (the 44 + cards, the reader) as the cultural object, not the software. Printed Matter is 45 + about the printed thing. 46 + 47 + ## Open questions for the user 48 + 49 + - Do you want to apply as **Aesthetic Computer** (org) or **Jeffrey Alan 50 + Scudder** (artist)? Project Space framing usually favors a project/imprint 51 + identity. 52 + - Travel/logistics: NYABF is in NYC. If selected, who travels, who runs the 53 + print station, what equipment ships? 54 + 55 + ## Source materials in repo 56 + 57 + - `papers/SCORE.md` — papermill mission frame 58 + - `papers/cards-convert.mjs` — actual card builder 59 + - `papers/arxiv-kidlisp-cards/` — example cards already produced 60 + - `papers/reader.pdf`, `papers/reader.tex` — the AC Reader 61 + - `gigs/dis-order-pamphlet-8.5x11-folded/` — recent printed pamphlet 62 + 63 + ## Sources 64 + 65 + - [NYABF FAQ](https://printedmatterartbookfairs.org/faq) 66 + - [Financial support page](https://printedmatterartbookfairs.org/are-there-opportunities-for-financial-support) 67 + - [Submission Manager](https://printedmatterinc.submittable.com/submit) 68 + - [Project Space proposal form](https://docs.google.com/forms/d/e/1FAIpQLSdgkY1vM_7eIBYN58OfjptF8HQlPwIioX6Zvst-Mccg1RWBVw/viewform?usp=dialog) 69 + 70 + ## Next steps 71 + 72 + 1. Open the Google Form and screenshot/save the actual fields, including the 73 + stipend amount. 74 + 2. Decide: apply as imprint or artist. 75 + 3. Draft a 1-page Project Space pitch focused on the *printed* output (cards + 76 + reader), not the software underneath.
+89
grants/smarthistory-essay/PITCH.md
··· 1 + # Smarthistory — Contributor Pitch (Draft) 2 + 3 + > **Goal:** a short pitch + bio email to send to the Smarthistory 4 + > contributors team. Confirms eligibility under the "appropriate 5 + > qualifications" clause before drafting the full 800–1500 word essay. 6 + > 7 + > **Send to:** the contact form at https://smarthistory.org/contribute-an-essay/ 8 + > **Format:** plain prose, ~250 words total (pitch + bio). 9 + 10 + --- 11 + 12 + ## Subject Line 13 + 14 + Pitch: A practitioner-historian essay on Lillian Schwartz's 15 + *Pixillation* (1970) 16 + 17 + *[The object is a placeholder until JS confirms the work he wants to write 18 + about. Other strong candidates listed at the bottom of this file.]* 19 + 20 + --- 21 + 22 + ## Email Body 23 + 24 + Dear Smarthistory editors, 25 + 26 + I'd like to propose an 800–1500 word object-based essay on Lillian 27 + Schwartz's *Pixillation* (1970, 4 min, 16mm), a film-as-program made 28 + at Bell Labs that I think still doesn't get a fair reading in 29 + contemporary art history. I'd write it as a practitioner-historian — I 30 + make programs that are themselves artworks, and I can walk a beginning 31 + art-history reader through *Pixillation* as both an image and an 32 + algorithm, with the goal of leaving them able to look at any 33 + computer-generated artwork and ask better questions about it. 34 + 35 + I notice your contributor guidelines lead with the PhD requirement and 36 + make space for "appropriate qualifications outside traditional academic 37 + disciplines." I'm an artist, programmer, and educator: MFA from Yale 38 + School of Art (2013); currently Author in Residence at UCLA Social 39 + Software with Casey Reas and Lauren Lee McCarthy; have taught at UCLA, 40 + Parsons School of Design, and Southern Oregon University; my work is 41 + in the collections of KADIST (San Francisco) and the SMK National 42 + Gallery of Denmark; I gave the keynote at Korea HCI 2020 and India HCI 43 + 2019, and lectured at the New Museum in 2022 and at Chaos 44 + Communication Congress in 2018. I've spent fifteen years writing, 45 + teaching about, and making computer-generated art, and I'd be glad 46 + to send writing samples on request. 47 + 48 + If the editorial fit is right, happy to share a 500-word outline and a 49 + draft for review. Thanks for considering it. 50 + 51 + Jeffrey Alan Scudder 52 + mail@aesthetic.computer 53 + https://aesthetic.computer / https://kidlisp.com 54 + 55 + --- 56 + 57 + ## Object Candidates (pick one before sending) 58 + 59 + 1. **Lillian Schwartz, *Pixillation* (1970)** — algorithmic film at 60 + Bell Labs. Strong fit; under-discussed; lets the essay walk through 61 + image AND algorithm; situates Jeffrey's KidLisp lineage. 62 + 2. **John Whitney, *Catalog* (1961)** — analog computer animation; the 63 + foundational object for "computer-generated art." Bigger, more 64 + crowded, but the "what does the program do" walk-through is rich. 65 + 3. **Casey Reas, one of the *Process* series, e.g., *Process 7* (2005)** 66 + — contemporary, very accessible, but Reas is Jeffrey's current 67 + collaborator (UCLA Social Software), so there's a conflict-of-interest 68 + note to disclose. 69 + 4. **A specific KidLisp piece minted on Tezos** — most contemporary, 70 + most about JS's own lineage, but harder to sell as a "single object 71 + with art-historical weight" to a beginner audience. 72 + 5. **A Whistlegraph drawing** — same risk as #4, plus Smarthistory 73 + doesn't have a strong precedent for sound-image hybrids on a 74 + single page. 75 + 76 + **Recommendation:** lead with **#1 (Schwartz, *Pixillation*)** — best 77 + balance of art-historical heft, beginner-readability, and Jeffrey's 78 + qualifications-equivalent angle. Hold #3 in reserve if the editor 79 + suggests something contemporary. 80 + 81 + --- 82 + 83 + ## Next Step 84 + 85 + If JS confirms the object, send the email above with the right object 86 + filled in. **No full essay drafted until Smarthistory editors confirm 87 + the pitch is welcome** — the PhD-or-equivalent clause means a cold 88 + 1,500-word submission is more likely to be auto-rejected than a 89 + short, qualifications-aware pitch.
+64
grants/smarthistory-essay/RESEARCH.md
··· 1 + # Smarthistory — Contribute an Essay — Research 2 + 3 + > **URL:** https://smarthistory.org/contribute-an-essay/ 4 + > **Style checklist:** https://smarthistory.org/contribute-an-essay/essay-checklist/ 5 + > **Deadline:** rolling 6 + > **Compensation:** none (educational nonprofit) 7 + 8 + ## Eligibility — flag 9 + 10 + Smarthistory's stated qualification: 11 + 12 + > "Contributors have earned a Ph.D. in a relevant discipline and have 13 + > significant teaching experience, or in instances outside traditional 14 + > academic disciplines, hold other appropriate qualifications." 15 + 16 + Jeffrey holds an **MFA (Yale, 2013)** — not a PhD. The "appropriate 17 + qualifications outside traditional academic disciplines" clause is the open 18 + door, but it's not automatic. Practical implication: a Smarthistory submission 19 + should be **pitched first** before drafting, with a 1-paragraph proposal + 20 + brief CV that argues the qualifications-equivalent angle (UCLA Author in 21 + Residence with Casey Reas, taught at UCLA / Parsons / SOU, work in KADIST 22 + and SMK collections, two HN-front-page open-source tools). 23 + 24 + ## Format if accepted 25 + 26 + - 800–1500 words 27 + - Engaging, conversational, sometimes experiential tone 28 + - Opens with a "hook" 29 + - Targets beginning art history students 30 + - Object-based: focused on a **single work of art or monument**; biography and 31 + context flow from the object 32 + - Includes visual analysis that walks the reader through the work 33 + - Includes definitions for specialized terms (assume curious reader knows 34 + nothing) 35 + - Resources list at the bottom; first link is the institution where the object 36 + lives 37 + 38 + ## Suggested angle (only worth drafting once they confirm interest) 39 + 40 + **Object candidates inside Jeffrey's wheelhouse:** 41 + 42 + 1. A specific Whistlegraph drawing as a graphic score (object: the drawing; 43 + visual analysis: the graphic score as a document of singing and time). 44 + 2. A KidLisp piece minted on Tezos as a contemporary "object" — argues for 45 + the program-as-artwork in art-history terms. 46 + 3. A historical computer-art piece (e.g., one of the Whitney/Vasulka/Cohen 47 + works) framed against AC's continuation of that tradition. Most "art- 48 + historical" framing per Smarthistory's house style. 49 + 50 + Option (3) is the safest pitch — it places Jeffrey as a *practitioner-historian* 51 + writing about a precedent he extends, which is exactly the angle that lets the 52 + "appropriate qualifications" clause work in his favor. 53 + 54 + ## Sources 55 + 56 + - [Contribute an essay](https://smarthistory.org/contribute-an-essay/) 57 + - [Style checklist](https://smarthistory.org/contribute-an-essay/essay-checklist/) 58 + 59 + ## Next steps 60 + 61 + 1. Decide the single object you'd write about. 62 + 2. Draft a **1-paragraph pitch** + 4-line bio (not the essay itself) and email 63 + the Smarthistory contributor team. 64 + 3. Only draft the full 800–1500 words if they say yes.
+313
reports/2026-04-24-mail-bootstrap-on-mac.md
··· 1 + # Mail Bootstrap on This Mac — 2026-04-24 2 + 3 + ## Status check 4 + 5 + The repo has a fully designed mail stack (`ants/mail-mcp/server.mjs`, 6 + `toolchain/email/style-guide.md`, vault GPG entries for `mail@aesthetic.computer` 7 + and `me@jas.life`, `mu4e` config in `dotfiles/dot_config/emacs.el`). It runs 8 + in the AC devcontainer / Linux side. **It is not bootstrapped on this macOS 9 + host.** Specifically: 10 + 11 + - `mbsync`, `mu`, `notmuch`, `msmtp` — none installed (`/opt/homebrew/bin/` 12 + empty for all four; no `/usr/local/bin/` versions either). 13 + - `~/.mbsyncrc`, `~/.msmtprc`, `~/.authinfo.gpg` — none present. 14 + - `~/.mail-all/` (the Maildir the MCP expects) — does not exist. 15 + - `~/.cache/mu/xapian/` (the mu index path) — does not exist. 16 + 17 + The Slab menubar (`slab/menubar-swift/Sources/SlabMenubar/`) **does** have the 18 + Mail menu items the user remembered: 19 + 20 + - "Mail: <unread count>" parent 21 + - "Sync both" → `mbsync -a && mu index --quiet` 22 + - "Sync ac-mail" → `mbsync ac-mail && mu index --quiet` 23 + - "Sync jas-mail" → `mbsync jas-mail && mu index --quiet` 24 + - "Open sync log" (opens `~/.mail-all/sync.log`) 25 + 26 + The slab daemon and menubar are **installed and loaded** on this Mac 27 + (`~/Library/LaunchAgents/computer.slab.{daemon,menubar}.plist` are both 28 + loaded; `~/.local/share/slab/` is populated). So the menu items show up — 29 + but clicking "Sync both" right now is a no-op because the underlying 30 + `mbsync` / `mu` binaries don't exist on this Mac. That's the gap to close. 31 + 32 + ## What the mail-mcp expects 33 + 34 + From `ants/mail-mcp/server.mjs`: 35 + 36 + ```js 37 + const MU = .../opt/homebrew/bin/mu (or /usr/bin/mu) 38 + const MBSYNC = .../opt/homebrew/bin/mbsync 39 + const MSMTP = .../opt/homebrew/bin/msmtp 40 + const MAILDIR = $HOME/.mail-all 41 + const MU_DB = $HOME/.cache/mu/xapian 42 + const ACCOUNTS = { 43 + "ac-mail": "mail@aesthetic.computer", 44 + "jas-mail": "me@jas.life", 45 + } 46 + const DEFAULT_ACCOUNT = "ac-mail" 47 + ``` 48 + 49 + So the missing piece on this Mac is exactly: 50 + 51 + 1. **Binaries** (Homebrew): `isync`, `mu`, `notmuch`, `msmtp`, `gnupg`, 52 + `pinentry-mac`. 53 + 2. **`~/.mbsyncrc`** with two channels (`ac-mail` → Gmail IMAP for 54 + `mail@aesthetic.computer`, `jas-mail` → Gmail IMAP for `me@jas.life`), 55 + syncing into `~/.mail-all/{ac-mail,jas-mail}/`. 56 + 3. **`~/.msmtprc`** with two SMTP accounts mirroring those. 57 + 4. **`~/.authinfo.gpg`** holding the Gmail app passwords (encrypted to 58 + `mail@aesthetic.computer`'s GPG key — same recipient the vault uses). 59 + 5. **First-time `mu init` + `mu index`** to build the search DB. 60 + 6. **(Optional)** a launchd LaunchAgent that runs `mbsync -a && mu index` 61 + every 5 minutes so the mailboxes stay current without manual sync. 62 + 63 + ## Credentials — already exist 64 + 65 + Per `reports/2026-02-27-mail-inbox-emacs-mcp-secrets-report.md`: 66 + 67 + - `aesthetic-computer-vault/at/deploy.env` has 68 + `SMTP_USER=mail@aesthetic.computer` and `SMTP_PASS=<app password>`. 69 + - The Gmail app password tested working against `imap.gmail.com` from another 70 + environment (verified in that report). 71 + - Same recipient (`mail@aesthetic.computer`) is the GPG key for the vault. 72 + 73 + The `me@jas.life` Gmail app password — I don't see it surfaced in the report. 74 + Probably needs to be generated fresh in Google Account → Security → App 75 + Passwords if not already in the vault. 76 + 77 + ## Update 2026-04-24 — bootstrap actually run 78 + 79 + **Finished:** binaries installed, configs in place, first sync running. 80 + 81 + The vault already had `home/.mbsyncrc.gpg` and `home/.msmtprc.gpg` — 82 + **no need to write fresh config**, just decrypt those. But two macOS-side 83 + gotchas: 84 + 85 + 1. **Line endings.** Both vault configs are CRLF. macOS `mbsync` 1.5.1 86 + parses CRLF lines fine *except* that the `$` regex anchor in BSD 87 + `sed`/`awk` matches before `\n`, so any in-place edit using `^FOO$` 88 + silently no-ops. **Fix:** `tr -d '\r' < ~/.mbsyncrc > /tmp/x && mv /tmp/x ~/.mbsyncrc` 89 + before any sed/awk passes. 90 + 91 + 2. **Missing `AuthMechs LOGIN`.** The vault config doesn't declare an 92 + auth mechanism. macOS Cyrus SASL then errors with: 93 + 94 + ``` 95 + Error performing SASL authentication step: SASL(-7): invalid parameter 96 + supplied: ... near plain_clienttoken.c:195 97 + ``` 98 + 99 + **Fix:** insert `AuthMechs LOGIN` after every `TLSType IMAPS` line. 100 + 101 + 3. **Linux paths.** The vault config points at `/home/me/.mail{,-jas}/`. 102 + On macOS, rewrite to `/Users/jas/.mail-all/{ac-mail,jas-mail}/` — 103 + that's also where the Slab menubar's `mu` query expects to find them 104 + (`maildir:/ac-mail/INBOX OR maildir:/jas-mail/INBOX`). 105 + 106 + **One-shot bootstrap that handles all three:** 107 + 108 + ```bash 109 + brew install isync mu notmuch msmtp gnupg pinentry-mac 110 + 111 + mkdir -p ~/.mail-all/ac-mail ~/.mail-all/jas-mail ~/.cache/mu 112 + 113 + # mbsyncrc: decrypt → strip CR → remap paths → write 0600 114 + gpg --decrypt ~/aesthetic-computer/aesthetic-computer-vault/home/.mbsyncrc.gpg \ 115 + | tr -d '\r' \ 116 + | sed 's|/home/me/.mail/|'"$HOME"'/.mail-all/ac-mail/|g; s|/home/me/.mail-jas/|'"$HOME"'/.mail-all/jas-mail/|g' \ 117 + | awk '{print} /^TLSType IMAPS$/{print "AuthMechs LOGIN"}' \ 118 + > ~/.mbsyncrc 119 + chmod 600 ~/.mbsyncrc 120 + 121 + # msmtprc: decrypt → strip CR → write 0600 122 + gpg --decrypt ~/aesthetic-computer/aesthetic-computer-vault/home/.msmtprc.gpg \ 123 + | tr -d '\r' \ 124 + > ~/.msmtprc 125 + chmod 600 ~/.msmtprc 126 + 127 + # first sync + first index 128 + mbsync -a 129 + mu init --my-address=mail@aesthetic.computer --my-address=me@jas.life --maildir=$HOME/.mail-all 130 + mu index 131 + ``` 132 + 133 + The Slab menubar (`computer.slab.menubar` LaunchAgent — already loaded) 134 + will start showing the unread count after `mu index` completes, and 135 + its "Sync both / ac-mail / jas-mail" menu items become functional. 136 + 137 + --- 138 + 139 + ## Bootstrap script (proposed, not yet run) 140 + 141 + A first-cut script. Needs your review before running — it installs binaries 142 + and writes config to your home directory. 143 + 144 + ```bash 145 + # 1. install binaries 146 + brew install isync mu notmuch msmtp gnupg pinentry-mac 147 + 148 + # 2. create maildir tree 149 + mkdir -p ~/.mail-all/ac-mail ~/.mail-all/jas-mail 150 + mkdir -p ~/.cache/mu 151 + 152 + # 3. write ~/.mbsyncrc (dual-account, full Gmail folders) 153 + cat > ~/.mbsyncrc <<'EOF' 154 + # --- ac-mail (mail@aesthetic.computer) --- 155 + IMAPAccount ac-mail 156 + Host imap.gmail.com 157 + User mail@aesthetic.computer 158 + PassCmd "security find-generic-password -a mail@aesthetic.computer -s ac-mail-app-password -w" 159 + SSLType IMAPS 160 + AuthMechs LOGIN 161 + 162 + IMAPStore ac-mail-remote 163 + Account ac-mail 164 + 165 + MaildirStore ac-mail-local 166 + Path ~/.mail-all/ac-mail/ 167 + Inbox ~/.mail-all/ac-mail/INBOX 168 + SubFolders Verbatim 169 + 170 + Channel ac-mail 171 + Far :ac-mail-remote: 172 + Near :ac-mail-local: 173 + Patterns * !"[Gmail]/All Mail" !"[Gmail]/Important" 174 + Create Both 175 + Expunge Both 176 + SyncState * 177 + 178 + # --- jas-mail (me@jas.life) --- 179 + IMAPAccount jas-mail 180 + Host imap.gmail.com 181 + User me@jas.life 182 + PassCmd "security find-generic-password -a me@jas.life -s jas-mail-app-password -w" 183 + SSLType IMAPS 184 + AuthMechs LOGIN 185 + 186 + IMAPStore jas-mail-remote 187 + Account jas-mail 188 + 189 + MaildirStore jas-mail-local 190 + Path ~/.mail-all/jas-mail/ 191 + Inbox ~/.mail-all/jas-mail/INBOX 192 + SubFolders Verbatim 193 + 194 + Channel jas-mail 195 + Far :jas-mail-remote: 196 + Near :jas-mail-local: 197 + Patterns * !"[Gmail]/All Mail" !"[Gmail]/Important" 198 + Create Both 199 + Expunge Both 200 + SyncState * 201 + EOF 202 + 203 + # 4. store app passwords in macOS Keychain (no plaintext on disk): 204 + # you run these by hand so we never echo the password to Bash history 205 + # 206 + # security add-generic-password -a mail@aesthetic.computer -s ac-mail-app-password -w 207 + # security add-generic-password -a me@jas.life -s jas-mail-app-password -w 208 + # 209 + # (each prompts for the password) 210 + 211 + # 5. write ~/.msmtprc 212 + cat > ~/.msmtprc <<'EOF' 213 + defaults 214 + auth on 215 + tls on 216 + tls_starttls on 217 + tls_trust_file /opt/homebrew/etc/ca-certificates/cert.pem 218 + logfile ~/.msmtp.log 219 + 220 + account ac-mail 221 + host smtp.gmail.com 222 + port 587 223 + from mail@aesthetic.computer 224 + user mail@aesthetic.computer 225 + passwordeval security find-generic-password -a mail@aesthetic.computer -s ac-mail-app-password -w 226 + 227 + account jas-mail 228 + host smtp.gmail.com 229 + port 587 230 + from me@jas.life 231 + user me@jas.life 232 + passwordeval security find-generic-password -a me@jas.life -s jas-mail-app-password -w 233 + 234 + account default : ac-mail 235 + EOF 236 + chmod 600 ~/.msmtprc 237 + 238 + # 6. first sync + first index 239 + mbsync -a 240 + mu init --my-address=mail@aesthetic.computer --my-address=me@jas.life 241 + mu index 242 + ``` 243 + 244 + Then to keep it fresh: 245 + 246 + ```bash 247 + # every 5 min via launchd agent at ~/Library/LaunchAgents/computer.aesthetic.mailsync.plist 248 + # (separate task — write the plist after the first manual sync succeeds) 249 + ``` 250 + 251 + ## Why I didn't run this yet 252 + 253 + 1. **App passwords**: the `mail@aesthetic.computer` app password is in the 254 + vault but I shouldn't pull it out and write it to your Keychain without 255 + you confirming you want me to. The `me@jas.life` password I haven't 256 + found in vault — you may need to generate a fresh one. 257 + 2. **brew installs are slow + rewrite PATH**: worth a single confirmation. 258 + 3. **Vault unlock**: pulling the password requires unlocking the GPG vault 259 + (`vault-tool.fish` from the vault), which is your call. 260 + 261 + ## Decision the user needs to make 262 + 263 + - **(a) "Run the bootstrap, you have my permission to use the AC mail 264 + password from the vault and to prompt me for the jas.life one."** I'll 265 + do steps 1–6 and verify a sync. 266 + - **(b) "Just install the binaries; I'll handle the passwords."** I'll do 267 + 1–3 + 5 (config files), then stop. You add Keychain entries. 268 + - **(c) "Write a launchd plist too so it auto-syncs."** Add the LaunchAgent 269 + step after first manual sync succeeds. 270 + 271 + ## Wiring summary 272 + 273 + Once steps 1–6 succeed: 274 + 275 + - `slab/menubar-swift/` → "Mail: N unread" appears in the menubar with 276 + working "Sync both / ac-mail / jas-mail / Open sync log" items (already 277 + installed and loaded; just needs the binaries below it to function). 278 + - `ants/mail-mcp/server.mjs` → MCP server can read/write mail through Claude 279 + via the same Maildir. 280 + - `dotfiles/dot_config/emacs.el` → `mu4e` keys (`C-c m` open, `C-c M-m` sync) 281 + start working in Emacs. 282 + 283 + That's the whole stack the user was describing — present and wired, just 284 + missing the four Homebrew binaries and the two config files at home. 285 + 286 + ## Auto-sync — note 287 + 288 + Slab menubar **refreshes the unread count every 30 s** (`mu find`) but 289 + does **not** auto-trigger `mbsync`. Sync is on-demand via the menu items. 290 + If you want continuous background sync, install a launchd `StartInterval` 291 + agent that runs `mbsync -a && mu index --quiet` every N minutes. **Not 292 + installed by this bootstrap** — left as an explicit choice. Suggested 293 + plist if you want it: 294 + 295 + ```xml 296 + <!-- ~/Library/LaunchAgents/computer.aesthetic.mailsync.plist --> 297 + <?xml version="1.0" encoding="UTF-8"?> 298 + <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" 299 + "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 300 + <plist version="1.0"><dict> 301 + <key>Label</key><string>computer.aesthetic.mailsync</string> 302 + <key>ProgramArguments</key><array> 303 + <string>/bin/sh</string><string>-c</string> 304 + <string>/opt/homebrew/bin/mbsync -a >> "$HOME/.mail-all/sync.log" 2>&amp;1 &amp;&amp; /opt/homebrew/bin/mu index --quiet >> "$HOME/.mail-all/sync.log" 2>&amp;1</string> 305 + </array> 306 + <key>StartInterval</key><integer>300</integer> <!-- every 5 min --> 307 + <key>RunAtLoad</key><true/> 308 + <key>StandardOutPath</key><string>/tmp/computer.aesthetic.mailsync.out</string> 309 + <key>StandardErrorPath</key><string>/tmp/computer.aesthetic.mailsync.err</string> 310 + </dict></plist> 311 + ``` 312 + 313 + Load with `launchctl load ~/Library/LaunchAgents/computer.aesthetic.mailsync.plist`.