February 2023
Month archive / 9 posts
Wolf Eyes
Otoboke Beaver
The six massive pillars in the middle of Underground Arts make the stage invisible to big chunks of the room, and when it’s a sold out show like this one, finding an even halfway decent sight line can be next to impossible if you don’t get there early. I’ve been burned by this a few times now, so I think going forward I’ll need to commit to early arrival or just skip the show.
Tonight… See more →
Field Day: New York City
Featuring art from Tara Donovan, Odili Donald Odita, Edward Hopper, Guillermo del Toro, Alex Katz, and Nick Cave
As I mentioned in my 2022 year in review, I’ve developed a new habit over the past year as part of my creative practice—something I call a “field day.” Ideally at least twice a month or so, I’ll get out of the house for the day and absorb things in the outside world. It most often takes the form of visiting museums, galleries, and cinemas, but virtually any activity qualifies, as long as I’m out… See more →

Skinamarink
I only made it through about 20 minutes of this, and I think the filmmaker’s vision is at present too underdeveloped to sustain a feature length, but I’d still much rather see more of this kind of unorthodox exploration than another round of rote Blumhouse banality.
Side note for my fellow graphic design pedants: I’m not sure I’ve ever seen anyone miss the point of dot leaders quite so flagrantly as the opening credits of … See more →

The Suspect

Colours of Air
Python easing functions
For precise programmatic animation
- Translated from the JavaScript in Sean Yen’s Easing equations
- Illustrations adapted from Andrey Sitnik and Ivan Solovev’s Easings.net
Example usage:
duration = 30
for frame in range(duration):
return easeInOutQuad(frame/duration)
linear
def linear(t):
return t
easeInSine
def easeInSine(t):
import math
return -math.cos(t * math.pi / 2) + 1
easeOutSine
def easeOutSine(t):
import math
return math.sin(t * math.pi / 2)
easeInOutSine
def easeInOutSine(t):
import math
return -(math.cos(math.pi * t) - 1) / 2
easeInQuad
def easeInQuad(t):
return t * t
easeOutQuad
def easeOutQuad(t):
return -t * (t - 2)
easeInOutQuad
def easeInOutQuad(t):
t *= 2
if t < 1:
return t * t / 2
else:
t … See more →

Neighbors 2: Sorority Rising
