Privacy
This is a personal portfolio. It has no accounts, no sign-in, no newsletter, and no shop — there is nothing here to sell you and nothing of yours to sell. What follows is the whole of what it records.
What is collected
The site measures how it is used, in aggregate, with two services:
- Vercel Web Analytics — page views by path. It sets no cookies and does not follow you across sites.
- Google Analytics 4 — page views, plus a small set of timing events written for this site: how long a page holds your attention, which section of the homepage you were reading, how long an image stays open in the enlarge viewer, and how long an image is on screen in the archive. Time only accumulates while the tab is visible and you are actually doing something; a backgrounded or idle tab stops counting.
Alongside those events, Google Analytics records the ordinary technical details any analytics tool does: an approximate location derived from your IP address (city level, not the address itself), your browser, operating system and device type, the page you arrived from, and a randomly generated identifier that lets it tell one visit from another.
What is not collected
No name, no email address, no account, no payment details, no form submissions — the site has no forms. Nothing you type is captured. Google's advertising features are switched off: Google Signals and ad personalization are both disabled, so your visit here is not used to build an advertising profile or to retarget you. The site does not sell or share personal information, and it carries no advertising, no social trackers, and no third-party embeds beyond the two services named above.
Cookies and browser storage
Google Analytics sets cookies (named _ga and similar) to
recognise a returning browser. Vercel Web Analytics sets none.
Separately, the site keeps a few preferences in your own browser's local storage. These never leave your device and are not analytics: whether you have turned the film grain flicker off, your grain settings, whether you have turned the chromatic smear off, and a note that the opening film leader has already played once this session so it does not replay on every page.
Opting out
Any browser setting or extension that blocks Google Analytics will block it here, and the site is built to carry on working normally when it is blocked. If you would rather switch off analytics for this site specifically, open your browser's developer console on any page and run:
localStorage.setItem('ga-off', '1') That setting persists in your browser until you clear it, and no analytics will load on any page of this site while it is set.
Hosting
The site is hosted by Vercel, which processes requests and keeps short-lived server logs (including IP addresses) for security and operations. Files are served from Vercel's global network.
Links out
Project and film pages link to places like GitHub and YouTube, and those links open in a new tab. Once you follow one you are on someone else's site, under their privacy policy, not this one.
Your rights
Depending on where you live — for example under the GDPR in the UK and EU, or the CCPA in California — you may have the right to ask what personal data is held about you, to have it corrected or deleted, and to object to its processing. Because this site holds no account and no contact record, in practice the analytics identifier described above is the only thing tied to your visit, and clearing your cookies removes it. For anything further, or to make a request, email mjl423@cornell.edu.
Changes
If what the site records changes, this page changes with it. Last updated 9 September 2026.