2025-09-09 21:00:00
Entropic Thoughts recently reanalyzed the data I'd shared on the relationship between mask requirements and dance attendance we've seen at BIDA. They conclude:
Other sources account for most of the variation in dance attendance, and masking only plays a small part. The amount of the total variation contributed by masking requirements is 5 %. This number is called the coefficient of determination, and its square root is the correlation: 0.21. This correlation is low enough that we cannot conclude that masking has a significant effect on attendance.
...
"But it still looks like masking has an effect!!" It does. It's just that if the effect is there, it is small enough that we cannot statistically prove an effect with just 44 dances. Assuming the coefficient of determination really is 5 %, and we are aiming for a traditional significance level of 0.05, the sample size curves tell us we would need over 80 dances to be sure of the effect of masking.
The approach they took in their post involves some statistics that make assumptions about the distribution of the data. While these assumptions may well be right, now that we have fast computers we can often use simulations to avoid this. I decided to have a go at analyzing this data with a permutation test.
In this approach, you permute (shuffle) the labels and then check what fraction of permutations led to an outcome at least as extreme as observed. In this case the attendance numbers were:
I decided to operationalize "at least this extreme" as the ratio of the average attendance at mask required to mask optional dances and wrote some code to simulate. With 10M simulations, which coded in very lazy python run for 27s on my Mac, I found that 19.3% of simulations passed that test, which can be expressed as p=0.193.
The bottom line is the same, however: while the pattern we saw is more likely in worlds where mask-optional dances are more popular, there's enough variation from other sources that with 23 dances there's still a decent chance that this apparent difference isn't real.
2025-09-08 21:00:00
We planned to trial far UVC and glycol vapors at the BIDA contra dance last night: these are two options (beyond masks and ventilation) for reducing infectious aerosol inhalation. Both worked without issues.
I set up the far UVC Aerolamp on the stage, slightly angled down, primarily aiming to clear the air above the dancers:
And the glycol vapor, 1 part TEG to 3 parts water by weight, in an ultrasonic humidifier. This went right in front of the intake fan: [1]
Logistically neither was much hassle, and we didn't get complaints about either. I would really like to measure how well they're working, but all the experiments I can think of (measuring the decrease in viable airborne bacteria?) are serious investments.
I also measured CO2 levels with my M2000 [2]:
These are high CO2 levels: this was our first dance back after the summer and attendance was high. Looking at our attendance sheet, I count 265; I'd guess occupancy peaked at ~230 since some people leave early, others arrive late, and some people are in the entryway and bathroom.
One thing you'll notice on that chart is that we kept the hall for some extra time at the end to measure longer. We'd like to estimate how much fresh air we're bringing in with the fans, and one way to do this is to fill the air with something (in this case, the CO2 people exhale) and then measure how quickly it decays:
I had Gemini and GPT-5 fit an exponential decay constant, and both gave me k=0.095. You can see it's not a perfect fit: it decays more quickly initially, and then decreases. I think this is because while the room has some mixing (with ceiling fans), it's not perfectly mixed.
With primary dimensions of 62x47ft and a height of ~20ft, I get ~5,600 CFM (62 * 47 * 20 * 0.095). At last night's (higher than usual) attendance this is 24 CFM/person.
The actual amount of fresh air people experience will vary a lot across the hall: I measured in the corner farthest from the incoming air. Overall, then, I think this is an underestimate of the amount of ventilation the typical person is experiencing.
(A different reason why I'd like to know how many CFM we're getting is to estimate how much TEG to vaporize. I'd previously guessed 8,000 CFM which still seems plausible: some portion of the air we're bringing in is going to go in one door and out the other without very thorough mixing.)
Next step will probably be a survey to understand how the community feels about applying these regularly going forward.
[1] We lent the fan out during the summer, which we've never done
before and generally try to avoid with our gear. It came back with a
busted switch. Thanks to Al for fixing it, in about 25 minutes before
the dance started!
[2] I also tried using Harris' Aranet4, but because I didn't realize I needed to switch it to 1-min sampling I didn't get very useful results.
2025-08-26 21:00:00
I'm working out the logistics for trialing triethelyne glycol for pathogen control at a contra dance, and I need something to put the liquid glycol into the air. I'd initially been thinking of using a fog machine, but after discussion with friends who work in the area it sounds like an ultrasonic humidifier would work better. Instead of using heating and cooling, these use vibration, and put out much smaller droplets.
I got a random cheap humidifier on Amazon ($30) but (a) TEG is more viscous than the water its designed for and (b) its output is probably higher than I need. I decided I'd dilute the TEG to resolve both of these.
First I tested with just water, and I used distilled water because these humidifiers can turn the minerals in tap water into a fine dust it's better not to breathe. I filled the humidifier, weighed it, ran it for an hour on high, and weighed it again. I measured it losing 122g (2g/min), though this is likely an overestimate: instead of weighing the whole device before and after (like I did later) I weighed how much water I poured in (accurate) and then weighed what was left (inaccurate, due to not all the water coming out).
Nix fits a photo op into his busy
campaign schedule
My goal is a concentration of about 1mg/m3 in a stream of 8,000 CFM of incoming air. Converting 8,000 CFM to m3/min I get 227 m3/min, so to put out 1mg/m3 I need 227 mg/min.
If TEG+water behaves similarly to water I should combine six parts water with one part TEG by mass. But the higher viscosity of TEG means it vaporizes more slowly, and after some trial and error I landed on three parts water to one part TEG. In a 60min test I measured mass decreasing by 56g, which is 0.233g/min (56g / 60min * 25% TEG).
This is way closer to my target (0.233g/min vs 0.227g/min) than I had any right to expect, and I don't expect it to be quite this close in practice.
For the 2025-09-07 dance I'm planning to mix up 3:1 TEG to distilled water at home, where I have a scale. I'll want about 300g, so I can turn it on as soon as we turn on the fan and not worry about running out.
Note that these figures are all for a large dance hall with thousands of cubic feet of air coming in every minute. So literally don't try this at home: this is way too high a concentration for your living room.
2025-08-23 21:00:00
Before having kids I thought teaching them to clean up would be similar to the rest of parenting: once they're physically able to do it you start practicing with them, and after a while they're independent and do it reliably. You invest time and effort up front, but it pays back reasonably quickly with benefits for both you and the kid. While we've (n=3) had good success in some areas ( street safety, microwave usage, walking to school, tooth brushing, ...), tidying has not been one of these.
Early on I tried a lot of getting them to clean up, but it was very slow, tended to dissolve into battles, and didn't seem to be getting much better over time. Instead, we've mostly moved to finding specific places where they can take on a bounded responsibility. The goal is to give them practice without overwhelming them, and to use natural consequences to avoid fights:
Lily (11y) and Anna (9y) clear their places when they're done eating, carrying their plates etc to the kitchen sink. We started doing this after we got a pair of cats who love to get into human food, and it's become very important to get dishes into a state of low potential energy right away. If they don't do this there's often a crash and an urgent puddle of milk.
Lily had a sleepover last night. Her room is generally messy enough that there wouldn't be a place for her friend to sleep. But she understood (from past sleepovers) that part of hosting was cleaning to where there was space for an air mattress, and to where her friend would feel comfortable. She cleaned up without being asked, and was proud to show me.
Similarly, Anna wanted to turn on her AC tonight. She knew that a requirement for this was that she'd need to tidy a path between the door and the AC so I could come in and shut it off when I went to bed. She almost didn't turn on the AC because of not wanting to clean up, and talked with me about her dilemma, but did decide to clear a path.
Our dining room table is a place for both projects and meals. When we're getting close to dinner I'll often ask the kids "are any of these things yours?" and they'll put away their portion.
After I tidy away large objects, I'll sweep everything remaining into a pile in the middle of the room; tidying a pile requires less willpower than repeatedly searching for things that need putting away:
Typically I'll then sort through it myself but other times I'll ask the kids to put away anything they want to keep from the pile, with the plan that I'll throw away the rest.
This does work, but the kids find it more stressful than I'd like, since they're worried I'll be throwing away something worth keeping. I've never actually thrown away something they want (since I keep asking "is everything left stuff I can throw away") but they still don't like it ("you wouldn't throw away that Duplo, would you!?"). Combined with often being in a hurry when I'm sweeping, I don't tend to do this much.
I'll often only be willing to play a game with them if they'll clean up their previous game first.
Sometimes I'll use the strategy of everyone cleaning up for a set amount of time (some people use a clean-up song, recorded or sung), but not often because it's hard to address shirking well.
Julia has a range of things she'll do with the kids, like sorting through their accumulated papers and projects. This post isn't an attempt at an exhaustive list.
Part of what makes all of this hard in common spaces is that responsibility among multiple kids is unclear. I usually can't tell who made what mess, but even if we agree on the facts it can be philosophically challenging. For example, say Lily gets out cloth, Anna starts playing with it too, Lily departs, and then Anna departs. Lily couldn't have cleaned it up when she was leaving without getting in Anna's way, but does Anna take on full responsibility for Lily's cloth fragments as soon as she starts to play? Should the kids race to be done first? Do you need to come back later and clean up whenever the other is finished? These are tricky questions where adults are generally able to navigate with some combination of designated responsibilities (ex: a specific person does dishes) and relaxed doing-your-part (ex: trying to clean more dirty dishes than you generate), but our kids are still on the young end for this.
The goal is still to get the kids to where they're responsible adults and good housemates, and I do see them moving in this direction. But I also think I'm being a bit lazy here, erring towards choices that minimize only short term work and conflict. I'm going to think more about how to be more intentional about growing their responsibilities here, cleaning up for them in fewer cases, and getting them closer to pulling their own weight.
Comment via: facebook, lesswrong, mastodon, bluesky, substack
2025-08-22 21:00:00
I generally find the numbers printed on pasta boxes for cooking time far too high: I'll set the timer for a minute below their low-end "al dente" time, and when I taste one it's already getting too mushy. I decided to run a small experiment to get a better sense of how cooked I like pasta.
I decided to use Market Basket Rigatoni. [1] It's a ridged cylinder, and I measured the ridges at 1.74mm:
And the valleys at 1.32mm:
The box recommends 13-15 minutes:
This is a house brand pasta from a chain centered in a part of the country with a relatively high Italian-American population, so you might think they'd avoid the issue where Americans often cook pasta absurdly long:
I boiled some water, put in the pasta, and starting at 9min I removed a piece every 15s until I got to 14:30:
Here's the minute-by-minute, cut open so you can see the center of the noodles:
My family and I tried a range of noodles, trying to bisect our way to the ideal cooking time. I was happiest at 10m15s, but ok between 9m15s and 11m30s. Julia thought 9m45s was barely underdone, while 11m45s was barely overdone. Anna liked 10m30s. Lily didn't like any of them, consistently calling them "too crunchy" up through 10m45s and then "too mushy" for 11m0s and up. Everyone agreed that by 12m45s it was mushy.
Instead of 13-15min, a guideline of 10-12min would make a lot more sense in our house. And, allegedly, the glycemic index is much lower.
My mother and her siblings grew up in Rome, and I wrote asking about what they'd noticed here. My uncle replied "my bias is that Americans are wimps for soft pasta" and the others agreed.
I tried using a cheap microscope to investigate, whether there were interesting structural differences, but even with an iodide stain I couldn't make out much. Here's 3min:
And 7min:
And 13min:
On the other hand, the kids and I did have fun with the microscope.
[1] We called these "hospital noodles" growing up, because when my
mother had been in a hospital for a long time as a kid (recovering
from being hit by an impatient driver while crossing the street) they
had served Rigatoni as their primary pasta shape.
2025-08-17 21:00:00
I play by ear, and when I write tunes I normally save them by making a recording. This isn't ideal for sharing, though, especially with people who are more comfortable learning tunes from dots. I last had a go at this ten years ago, and decided to give it another try.
I was first curious whether AI advancements meant I didn't need to learn how to do this at all: could I just give my recording to a program and have it figure it out? I tried several things without success (each in Claude Opus 4.1, Gemini Pro 2.5, and GPT-5):
basic-pitch
(open source pitch to midi converter), uploading the midi,
and asking for sheet music.
basic-pitch
, then midi2ly
to convert
to LilyPond score format, uploading that, and asking it to clean it up
I ran these all on the tune I used last time since I had "ground truth" there. The one that came closest was the last in Claude, which got the melody mostly right but the rhythm way off:
It ought to look something like this:
The Duck Pond
Seems like automation isn't there yet, at least not the tools I tried. I decided to go ahead manually.
I started with a tune I wrote on vacation this summer, after Nora had a close call in a duck pond. I was still pretty shaken up, playing was helpful emotionally, and this tune came out. It only has four notes (she's four) and with the combination of range and specific notes I think it would land correctly for (Scottish) bagpipes. I started on paper:
Then I typed it into MuseScore:
Initially (as you can see on paper) I had the rhythm wrong, but it was hard for me to tell. The issue is that hearing a fiddle tune played robotically by the computer always sounds some amount of wrong, and the tricky thing is telling whether the issue is the quantization vs having written the wrong thing. A friend (hi Charlie!) and I played some tunes at a party and I got him to take a look, and after he said the issue was definitely in the writing I came back, gave this another chance, and am decently happy now.
Here's some playing it slowly, on mandolin (electric but not plugged
in) and piano, to give a sense of how I'm imagining it:
(mandolin, mp3)
(piano, mp3)
Truncated Piano
I had another go, on a tune I wrote about a year ago. I'd just gotten my new 73-key piano for gigs, and was excited to play it a lot. Again I started on paper:
This one has several mistakes, including that I wrote out twice as fast as it actually goes, and it doesn't actually use triplets. But overall it was much easier to get down than the previous one. Getting it into MuseScore went smoothly, partly because this one is simpler and partly because I'm starting to get the hang of the tool. Here are the dots:
Here's what it sounds like:
(mp3)
Polka No Bears
This was starting to get fun, so I did another. This is a tune I wrote last summer on vacation with my family in the Poconos. We saw a lot of bears, and even more evidence of bears, mostly of interactions with insufficiently secure trash containers. Again starting on paper:
I realized after writing it down that it felt too repetitive, and in fact I had often been playing it AAB without thinking about it. So this afternoon I added a third part to go in between the two parts I wrote before. This has had much less time to gel, and I'm not sure whether I'll still be happy with it in a few days.
And an audio version:
(mp3)
Highland Rd
In late Summer 2019 a marchy Englishy tune was bouncing around my head. I didn't end up doing anything with it other than whistling it into my phone, but now that I can write things up it seemed like a good time to get it out. Named after a Somerville street that is an unusually nice place for a walk.
No paper this time: I tried starting right in with the computer since this one seemed like it would be easy enough.
And an audio version:
(mp3)
I'm excited to share these; while a more prudent approach would be to hang onto ideas and save them up for Kickstarter commissions and gifts, most likely if I tried that they'd never get out.
Other tunes I'd like to transcribe at some point: Nora's Waltz, Julia's Waltz, Turkey Strumstick.