mar-2026
a respite from the snowy onslaught of february. rainy signs of spring. its march.
the first day of march was a joy. after a dinner with my parents kayla and i headed to a purim concert of some of our favorite klezmer bands, west philly orchestra and mariposas galacticas. while we werent in costume it was great to dance with so many folks, celebrating, being joyous.
my hebrew name mordecai, מָרְדֳּכַי, comes from this holiday where mordecai warned esther, אֶסְתֵּר, of hamans plot to annihilate the jewish people.
i tend to try to lean on that background as much as i can remember. of my "namesake". there is a lot of injustice and cruelty in this world to people. that reality has continued as horrors continue in palestine. in iran. in lebanon. in so many places at the hands of the united states both domestically and globally.
it can feel like a shout into the ether to denounce the atrocities from afar. i try to do my best to do good to the people in my immediate. and part of resistance is showing joy. dancing. in the face of authoritarianism.
*-------------------------------------------------------------------------------------------------*
the early weeks of march saw the return of the neighborhood soccer group. while it was a smaller turn-out of around 6 people weve consistently seen double that the following weeks :^)
last year after taking part in a local league with my roommates we decided it would be nice to have a group that meets and is...well...a little more casual. we really liked running around and playing but some folks just took the winning and losing too seriously. so we started an ad-hoc group thats grown of the past year. theres no fee. no skill requirement or expectation. we dont even keep score. we just want to play.
it was really nice to be back running. i sprained my toe pretty bad in autumn last year and spent the winter resting it (after mistakenly not resting it enough in the autumn) and being in the depths of winter i was feeling a little stir-crazy - itching to get back to playing.
the field had been wet and muddy but i dont think anything couldve stopped me. i needed to move badly.
*-------------------------------------------------------------------------------------------------*
in the previous update i alluded to some workshop of sorts to share my love for field recording. in march i hosted the first of the three!
while i had planned to guide folks through the library exploring a space that is meant to be without sound, i foolishly forgot the public library is closed on sundays.
oof
nevertheless a healthy showing of curious faces arrived! i showed them the different gear - mics and the like, and we set off in groups around the area.
after a couple hours of wondering we reconvened at a cafe. it was truly one of the most heartwarming moments of my adult life to hear folks excited to just be listening to the sounds around them in this new way. its something i certainly have been loving since being introduced to it by good friend yaka.
there are two more trips planned before this all culminates in a performance so if youre in the area and interested feel free to reach out :^)

*-------------------------------------------------------------------------------------------------*
march excitedly continued forward with a stay in rural pennsylvania house (animal) sitting for a family-friend. this meant watching over: 1 dog, 9 chickens, and 6 (mostly outdoor) cats.

to go from being truly immersed in the sounds of a busy part of philadelphia to thrusting myself into the countryside was a bit of a whirlwind. exhilarating and unnerving almost.
but the time was really nice. windows open. the sounds of frogs waking from slumber with the pitter-patter of rain on a tin roof. and while there was a storm and the power went out there was deep appreciation for the change of pace and scenery.
the most stressful thing was probably keeping up with the amount of eggs the chickens were laying.
*-------------------------------------------------------------------------------------------------*
in my previous update i mentioned working on a simple script to run my field recordings. its come a long way from the idea phase and now runs a script where im able to load, over a local network, audio files and play, edit, stop, filter various samples on the spot.
its really fun to be working on something technical like this in my personal and creative life instead of just work. ive been thinking of more use-cases, more creative coding projects i want to do (similar to the little python script on the homepage that acts like a tiny mycelial network).
i enjoy the look of code. i think its fun to look at. for anyone curious here is some of the code for this script :^)
-- ─────────────────────────────────────────────────────────
-- Polls
-- ─────────────────────────────────────────────────────────
local polls_dur = {}
local polls_loaded = {}
for i = 1, NUM_VOICES do
local slot = i
polls_dur[slot] = poll.set("dur_" .. slot, function(val)
if val and val > 0 then
voices[slot].duration = val
if voices[slot].file_path then
for _, f in ipairs(fm.files) do
if f.path == voices[slot].file_path then
f.duration = val; break
end
end
end
state.dirty = true
end
end)
polls_loaded[slot] = poll.set("loaded_" .. slot, function(val)
local loaded = (val == 1)
if loaded ~= voices[slot].loaded then
voices[slot].loaded = loaded
state.dirty = true
end
end)
end
-- ─────────────────────────────────────────────────────────
-- Helpers
-- ─────────────────────────────────────────────────────────
local function next_empty_slot()
for i = 1, NUM_VOICES do
if voices[i].file_path == nil then return i end
end
return nil
end
local function last_filled_slot()
for i = NUM_VOICES, 1, -1 do
if voices[i].file_path ~= nil then return i end
end
return nil
end
local function assign_to_slot(slot, file)
local v = voices[slot]
v.file_path = file.path
v.name = file.name
v.loaded = false
v.duration = 0
v.is_playing = false
v.in_point = 0.0
v.out_point = 1.0
v.lpf = 20000
v.hpf = 20
v.amp = 0.8
v.rev_mix = 0.0
v.rev_room = 0.5
v.pitch = 0.0
v.fade_in = 2.0
v.fade_out = 2.0
v.pan = 0.0
v.loop = true
engine.load_voice(slot, file.path)
polls_dur[slot]:start(0.5)
polls_loaded[slot]:start(0.5)
-- Mark loaded after 2s — SC buffer read is fast for typical WAVs
v.loaded = false
local load_slot = slot
clock.run(function()
clock.sleep(2)
voices[load_slot].loaded = true
print("fieldwork: slot " .. load_slot .. " ready")
state.dirty = true
end)
state.dirty = true
print("fieldwork: slot " .. slot .. " <- " .. file.name)
end
local function clear_slot(slot)
engine.stop_voice(slot)
voices[slot] = new_voice()
if polls_dur[slot] then polls_dur[slot]:stop() end
if polls_loaded[slot] then polls_loaded[slot]:stop() end
state.dirty = true
end
local function launch_voice(slot)
local v = voices[slot]
if not v.file_path then
print("fieldwork: slot " .. slot .. " empty")
return
end
-- Mark loaded optimistically so UI shows ready state
v.loaded = true
engine.play_voice(
slot,
v.in_point, v.out_point,
1.0,
v.amp,
v.lpf, v.hpf,
v.rev_mix, v.rev_room,
v.pitch,
v.fade_in, v.fade_out,
v.pan,
v.loop and 1.0 or 0.0
)
v.is_playing = true
state.dirty = true
print("fieldwork: launched slot " .. slot .. (v.loop and " [loop]" or ""))
end
local function stop_voice(slot)
engine.stop_voice(slot)
voices[slot].is_playing = false
state.dirty = true
end
local function stop_all()
engine.stop_all()
for i = 1, NUM_VOICES do voices[i].is_playing = false end
state.dirty = true
end
*-------------------------------------------------------------------------------------------------*
for march:
- movies -- i only watched one movie? it was 28 years later the bone temple! ive been a fan of these movies for some time so i had to continue on. but i think as i get older the gore and violence really gets to me. though, interestingly, i also started watching the pitt. which is obviously much more realistic. im really quite squeamish especially with medical stuff. but i consider this more of uh...exposure therapy...stay tuned on how that works out (i swear Dr K i will get my blood work done !)
- books -- going out: walking, listening, soundmaking. this has been informing a lot of my workshops on field recording. and its just genuinely cool to read about some of the different practices people have taken to making sound. really lovely and meditative read for me.
- dnd -- ive been playing dnd online and in-person for years now and one of my in-person groups got back together. there are some really funny people in that group and its just really great to play. if youre an adult reading this when was the last time you really leaned into play and if not do you think child-you wishes you would more? additional play included going to activate which is like a gamified obstacle course with hints of laser tag (solely it being very focused on the use of lights and lasers). very fun.
a friend of mine in the dnd group showed me a bass he made that looks like it would be played by a big toad in a bayou.
anyway. the weather is warming up. soccer is back. soon enough well be talking about the garden. tomatoes. heat.
im hoping to escape somewhere soon. allergies hit me hard. let me know if you have any ideas where spring allergies arent so bad.
heres to april though. see you then.
