This prompted me to make a few fixes: ~~break
Previously I only showed the chords for each section the first time they appeared, which meant that (a) a small screen the chords would scroll out of sight, and (b) if you don't know the songs well it's not obvious when to play which chords. I've now manually duplicated them, fixing both of these.
But this then makes the chords take up a lot more of the screen, so I've added a checkbox that lets people hide the chords.
I've added a few songs: Bold Orion, For the Longest Term, You've Got A Friend in Me, Give My Children Wings.
As you can see from the previous bullet, now you can link to
specific songs via URL fragments. This also simplifies my JS: for
some reason I'd written code that called scrollIntoView
when people clicked links. Now the JS annotates each header with
id=name-of-song
and inserts links that take you to
#name-of-song
, and the browser does the rest.
I'm still liking the combination of simple HTML for the authoring format combined with a little bit of JS for navigation. Each song is:
<h2>Title</h2> <h3>By Author</h3> <div class=song> <pre> chords go here </pre> lyrics with linebreaks preserved </div>And then at the end a bit of JS:
for (const h2 of document.getElementsByTagName("h2")) { const btt = document.createElement("a"); btt.href = "#top"; btt.innerText = "return to top"; h2.parentNode.insertBefore(document.createElement("p"), h2); h2.parentNode.insertBefore(btt, h2); h2.id=h2.innerText.toLowerCase().trim().replace( /[^\w\s-]/g, '').replace(/\s+/g, '-'); const li = document.createElement("li"); const a = document.createElement("a"); a.innerText = h2.innerText; a.href = "#" + h2.id; li.appendChild(a); toc.appendChild(li); } show_chords.onclick = function() { for (const pre of document.getElementsByTagName("pre")) { pre.style.display = show_chords.checked ? "block" : "none"; } };
Happy to take suggestions on how to make it more useful!
(This is an example of a post where I'm glad I can author with the
xmp
tag.)
Here's something I wrote up about last year, with links to the songs we did: Boston Solstice 2023 Retrospective.
We haven't finalize the song list yet, but the current draft is "Always Look on the Bright Side of Life", "Battle Hymn of the Rationalist Community", "Brighter Than Today", "Endless Lights", "Find My Tribe", "Gather Round", "Give My Children Wings", "No One Is Alone", "Old Devil Time", "Somebody Will", "The Circle", "The Mary Ellen Spider Song", "We Will All Go Together When We Go", "When I Die", "When I'm Gone", and "You've Got A Friend In Me".
Let me know if this sounds fun!
This is mostly based on two observations:
Even in a city where there's a lot of dance interest there are a lot of people who don't want to dance every week.
It's better if you know more of the people at a dance.
So let's say you're a person who wants to come occasionally, perhaps once a month. The experience of coming monthly to a weekly dance is ok: you know the regulars, there's some automatic coordination that happens when you and your friends like the same bands and callers, you can explicitly coordinate with your friends. But coming monthly to a monthly dance is much better: you are a regular. The more the dances are differentiated from each other the more people with a monthly appetite will end up attending the same dances each month.
In 2023 I saw that the total number of events (107) was down 20% from 2019 (132), where a lot didn't come back from the pandemic. This year we're back up to pre-pandemic levels, with 131, which is great to see!
Work | Nucleic Acid Observatory | |
Work | Speaking | |
Band | Kingfisher | |
Band | Free Raisins | |
Band | Dandelion | |
Code | Whistle Synth | |
Code | Apartment Price Map | |
Board | BIDA Contra | |
Board | Giving What We Can | |
Spouse | Julia | |
Child | Lily | |
Child | Anna | |
Child | Nora |