# 02 Mar 2021, 07:55PM: Getting My First COVID-19 Vaccine In New York City:
On Saturday night I received my first vaccination dose against COVID-19. I've had minimal side effects and the appointment went very smoothly. Here's a longish post about eligibility in New York, booking the appointment, and how the process went.
You might be eligible, too
If you live in New York, it is very much worth looking at the eligibility criteria in detail. The current groups eligible for vaccination include new groups added within the last couple of weeks, including people with several health conditions. The conditions include several that I think people skimming may have overlooked. For instance, moderate-to-severe asthma, type 1 and type 2 diabetes, and hypertension are on the list. "Severe obesity (body mass index of 40 kg/m2 or higher), obesity (body mass index of between 30 kg/m2 and 40 kg/m2)" is on the list; I know a strength and conditioning coach whose BMI qualifies for that, just in case you're feeling unhappy about also being in that category (BMI: an extremely flawed measure). And "Intellectual and Developmental Disabilities including Down Syndrome," too, which probably include Autism Spectrum Disorder and Attention-Deficit/Hyperactivity Disorder, which I only realized because of folks talking about that on Twitter.*
If you have one of those health conditions: as the official guidelines on eligibility proof say:
You do not need documentation from your personal health care provider or any other proof of your condition to get a vaccine in NYC. It is only necessary for you to self-certify you have an underlying condition that makes you eligible. You will be asked to self-certify as part of the appointment scheduling process, or a vaccine provider will ask you to complete the below certification document before or at the time of your appointment.
And! As of today, eligible groups include
- Regional food bank paid or unpaid workers
- Food pantry paid or unpaid workers
- Permitted home-delivered meal program paid or unpaid workers
(If I know you personally I'll share why I'm eligible.)
Getting and preparing for the appointment
Once I realized I was eligible, I used TurboVax as an easy way to see when new vaccine appointments were available. I happened to refresh again one day and saw appointments available at Brooklyn Army Terminal. I'm glad I followed the TurboVax advice on having forms filled out ahead of time; I had several rounds of clicking on a time and immediately being told it was not available, then finally nabbed one.
I read the info sheet about the Moderna vaccine and followed the electronic instructions to fill out some patient info and consent forms online. And I made a to-do list ahead of my appointment: print out the appointment info, grab proof of my eligibility, fill out and print the confirmation that I filled out the day-of-vaccine online form, bring my insurance card and government ID, bring some proof of NYC residency just in case they wanted additional confirmation beyond my ID, and - since people on Twitter had reported 3-hour waits in the past few days at the Brooklyn Army Terminal location - prep for a long wait in an outdoors queue (water and a snack, a charged phone and power brick, a few fresh podcasts downloaded). And I assumed I would need to take a cab there and back, so my list also included ensuring I had a means to pay for those cabs. But a friend who is vaccinated and who has a car volunteered to drive me there and back!
Nearly no wait
We arrived like 45 minutes early and there was NO LINE. I did have to fill out about 1 page of paperwork that felt duplicative (maybe many people do not fill out the online stuff). How it went (all people I interacted with were wearing masks -- I think they were all women, by the way):
- Arrived and was immediately given a form and a pen; took maybe 3 min to fill it out.
- As soon as I was done, a worker walked me to a small standalone room -- kind of reminded me of a portable classroom from when I was in high school, but much smaller -- and another worker asked me some questions, took my ID and insurance card for a moment, took the form and eligibility proof, and typed a bunch of stuff into the electronic health records system. Also, she showed me available dates and times for my second dose, I chose one, and she scheduled it. This whole bit took maybe 5-10 minutes.
- As soon as that step was done, a worker walked me to another room elsewhere in the grid, divided in half by a curtain. A person at a computer was supposed to do one last bit of electronic health record stuff, I think, but seemed to be having trouble finding the right desktop icon to click. The clinician? finished with the person she was dosing on the other side of the curtain, and did the electronic health record stuff herself, and filled out the paper vaccination record card that I can take with me. And she injected me (with the Moderna vaccine), which felt about as painful as accidentally scratching my skin with my fingernail. I spent maybe 5-10 minutes in this room total.
- One of those workers walked me to the observation tent where patients waited 15 minutes in case we had a bad reaction to the vaccine. Some people sat quietly or talked with (I assume) the person they came with; some of us chitchatted with the clipboard-wielding workers, who every once in a while called someone's name to tell us we were free to go.
- I had been texting my friend throughout to let him know how fast things were going; once I was outside (at the well-lit and guarded entrance), I called him and he came from where he had parked and picked me up. It was now just about time for my originally scheduled appointment, and now I was already done!
On my way home I started feeling a little tingling at the injection site, and later that evening, some mild soreness. Sunday I had some more soreness in the upper arm (that felt like a muscle ache from exercise) and I went to bed a bit early and slept for about 10 hours, and Monday I had some mild soreness. Over the course of today I'd say the soreness has completely faded away. I've been able to do my usual workouts Sunday, Monday, and today without trouble.
(This is perfect, because to me the perfect level of side effects for this is "very mild, but just enough that I viscerally feel like it's working.")
I feel very happy about having gotten the first vaccine dose and it's been excellent for my mood, but talking more about that here feels like taunting the people who haven't been able to get it yet, so I won't dwell on that.
It's worth taking a fresh look at the current groups eligible for vaccination, including various health conditions, because some of those items may surprise you. And if you are eligible, it's worth taking a little look at TurboVax once in a while to see whether new appointments pop up that you could snag. Right now, TurboVax and an official state tracker say that there are first dose appointments available starting in April at Medgar Evers for Brooklyn residents.
I am so grateful for all of the infrastructure that got me/us here.
* There is no canonical list of intellectual and developmental disabilities recognized by New York State for the purpose of vaccine eligibility, as far as I can tell. I checked several pages within CDC's web content that cover developmental disabilities (including a COVID-specific page), called a New York vaccination helpline (the worker escalated and searched and got no definitive answer), and have now called one of my state-level legislators to suggest that they clarify this. Maybe they should coordinate with the Office for People With Developmental Disabilities and the Children and Youth with Special Health Care Needs Program, or maybe they should just point to the closest thing to a canonical list I found on the CDC's site -- I don't know what the answer is, but there needs to be some kind of way for people with various conditions to check whether they're eligible before turning up for the vaccination and maybe being told they're not!
# 08 Mar 2021, 03:56PM: Upcoming Talks in March and April:
I'm planning to deliver four talks or sessions in the next several weeks.
MozFest 2021 (online, has already begun): one session tomorrow and one day after tomorrow! "How To Get A Project Unstuck" (discussion, 2021-03-09 21:15 CET/3:15pm EST), and "Apply for Grants To Fund Open Source Work" (skillshare, 2021-03-10 21:15 CET/3:15 PM EST).
GitHub OCTO Speaker Series (online): "What Would Open Source Look Like If It Were Healthy?", March 30, 2021, 1:30 PM EDT. This (ridiculously ambitious?) talk will be streamed live on Twitch.
When I think about open source sustainability, I think about money, sure. But I also think about what configurations of funding would be more likely to keep legacy infrastructure ticking along AND provide R&D opportunities for innovators; what tooling we need; how a stronger ecology of consultancies would change the interactions among volunteers, companies, and other institutions; etc. I'll discuss what I've learned about healthy maintainership, and what a healthier future would look like for the open source industry.
And: RailsConf 2021 (online, April 13-15): "How to Get a Project Unstuck," a talk.
I've updated my increasingly unwieldy talks page accordingly. (Redesign coming in a few months, to that plus the rest of this site.)
# 12 Mar 2021, 12:58PM: A Strange Vision Of The After Times:
Yesterday someone, talking with me about what is ok to do once we're fully vaccinated, referred to that as "the After Time".
I mentioned in April that if the pre-pandemic past was The Before Times, and the post-pandemic future will be The After Times, then "right now is The During Times. Right? That feels right. Duration, during, endure, endurance."
I don't know yet whether it will feel like The After Times for me once I have received my second vaccination shot and then waited two weeks. But I do know that I am having a hard time with endurance right now.
My brittleness is counter to how so many things are going better, big and small. Spring weather, the new federal administration, the vaccine rollout, book stuff. I cannot do a standard push-up but I can do inclined push-ups, and today the trainer for my remote exercise class explicitly told me that my push-ups are coming along nicely.
My habits are helping pull me through. The exercise class, and the other ways I exercise with friends and Nintendo. My regular coworking sessions in videocalls with friends. These took energy to establish, and now they are repaying the favor... I would say that I feel like they're a conveyor belt, but it's nothing so well-designed. I am being dragged along an ocean floor by a chain of metal links. Someday the surface will show up again. The light will be a different color and won't weave around in the waves. The smells and the breeze will smash into me without warning. And all around me friends and strangers will bob to the surface, and look around, and cautiously start swimming over to one another. Those who made it.
# 12 Mar 2021, 04:25PM: MozFest 2021 Followup: How To Get A Project Unstuck:
This one-hour discussion session covered some of the same material as my Linux.Conf.Au 2021 lecture, on "How To Get A Project Unstuck -- And Fixing The Skill Gaps That Got Us Here" (outline and links; video).
Below are some session notes, including some of the live collaborative document we used to take notes during the discussion. I've removed individuals' and projects' names.
Autoconf (Case study: rejuvenating Autoconf; also see how my upcoming book is helping Autoconf's developers decide what to do next)
Pipenv (Pipenv case study)
Asking participants about their projects
- How old is the project?
- When was its last release?
- What kind of danger is it in? If no one intervenes, then 5 years from now, what will happen?
Principles of getting a project unstuck
Some premises I use in my work:
- There is no one tech industry and there is no one open source community.
- Open source contributors, as a population, disproportionately want to code.
- Skills are fungible; domain knowledge can be learned; credibility can be earned.
- Every open source project has a life cycle. (Including an end.)
Five major areas where legacy projects get stuck. I need help with the names for these categories! (And of course sometimes combinations of problems crop up.)
- strategy, e.g., what work do we need to prioritize, and how urgent is it? what is our goal, and should this project exist (or should we decommission it)? has the team agreed on these things?
- team, e.g., do we have enough maintainers to do the essential work, and do we have up-and-coming contributors who can replace us as maintainers in the future? does everyone know who has what powers, or are some people confused about who has the power to do certain things? do we run into team workflow problems when different groups want to participate at different speeds? is there a malicious, offputting, or flaky person who needs handling? do we have the social processes we need to support the project and each other, like meetings, mentorship programs, and Requests for Comment?
- connection, e.g., who are our users and what do they need? are we listening to them? are we responding quickly enough to their concerns? do they have a way of listening to us? who are our partners and upstreams? do we talk to each other? do new contributors fall through the cracks?
- workflow and digital infrastructure, e.g., do we run automated tests on every patch? do new issues, patches, and discussions get interlinked so developers and users can easily follow up? are there bottlenecks or duplications in the platforms we use to respond to issues, review code, and discuss the project in general?
- money, e.g., do we have enough money to do what we want to do? have we developed plans or proposals to turn money into progress? can we persuade funders to give us money?
Thank you to a participant who suggested "interfacing" rather than "connection". I do like that better.
The sequence of steps for gaining credibility within a project and helping turn it around:
- Settling in (doing routine tasks that do not require much trust, assessing and earning credibility)
- Taking charge (doing things that require trust but that the group has already agreed needs to happen)
- Making change (modifying and adding social, digital, financial, and legal infrastructure)
- Passing leadership over to successors and leaving
This is the outline of my forthcoming book. My sampler ebook of Getting Unstuck: Advice For Open Source Projects, available for free download once you subscribe to my 1-10 times per year newsletter, includes that full outline.
Questions & discussion
What kinds of "stuckness" have you seen in FLOSS projects? I feel like I've seen 5 major areas where legacy projects get stuck (strategy, team, connection/interfacing, workflow, and money). Does that reflect your experience?
- not having motivation to promote it
- "I think sometimes (especially in an operating system) we have too many requests and this makes the development of the core slower"
What circumstances make it easier or harder for projects to get unstuck?
- harder when it requires more dev skill to contribute
- how easy dev toolchain is, to bootstrap project
- whether project will accept small submissions or needs to be 100% complete ... a lack of small problems for people to fix
- "how much it is connected to other communities, sometimes if more than one community is using the project there will be more people willing to maintain it and help in general"
- findability & presence of important information, e.g., code location
- conflict over whether to release a breaking change, because of refactors/rewrites
- sometimes there is no one interested in taking the money to help improve the project, or the amount of financial support available is insufficient to hire someone in North America or Western Europe
(I was struck by how much easier it was for participants to come up with programmer-specific problems -- especially problems with onboarding new contributors -- than to remember and bring up people, money, and other problems. After all, most mature software projects have a backlog of patches awaiting review, and so making it easier for more new contributors to get onboarded is a less crucial bottleneck than widening the code review bottleneck, which is probably a team, workflow, and money problem.)
Do you know a stuck project? What support would you need to start getting it unstuck?
- I have all the support I need, except I need a push... I don't use the program myself anymore, I do this to help users, so lack of motivation.... thinking about motivation and how we help ourselves in moments when we need more
- need help improving core skills (managerial and similar professional/interpersonal skills)
Plans for followup
I suggested that people form optional accountability pairs, to talk with each other regularly and help both stay motivated to get their project unstuck. Two people did pair up.
# 15 Mar 2021, 11:21AM: Rick Steves, Underappreciated:
Jacob Kaplan-Moss suggested I write this up so here you go!
This weekend I listened to the "How I Built This" interview with entrepreneur Rick Steves.
You may have heard of Rick Steves and thought he was just another travel guidebook writer. He's not! He's a marijuana legalization advocate and serves on the board of director of NORML. He loves helping Americans travel outside our own country because he thinks US folks need to travel internationally more and widen our perspectives and reduce our American exceptionalism. His Lutheranism leads him to emphasize the equal importance of every single person on Earth; if you find 1999 and 2000 editions of his guidebooks you'll find an appendix about the need for a Jubilee Year to forgive the debts of developing countries. He "devised a scheme where I could put my retirement savings not into a bank to get interest, but into cheap apartments to house struggling neighbors" and encouraged fellow rich people to do the same.
He's an inspiration to me as an entrepreneur and as a teacher. He started off teaching a class on cheap European travel -- because no one else was doing it! -- and turned that lecture into his first book. Hearing that story reminded me that the book I'm writing will be a lot better if I test it out as a curriculum as I write it. So now I'm thinking about how to do that with real learners.
And I want to be an entrepreneur who, like Fred Rogers, like Anant Pai, like David Neeleman, like Rick Steves, found a need and filled it, while making money, employing people, and making a little slice of the world easier.
# 16 Mar 2021, 08:18PM: MozFest 2021 Followup: Apply for Grants To Fund Open Source Work:
This session was in two parts:
- a fifteen-minute video (a remix of the session I delivered at PyOhio, with five additional minutes of material)
- a one-hour discussion
The additional material in the MozFest video
, rough script
- a shout-out to the OpenHumans grant opportunity
- more hypothetical budgeting details: Seven months of working full-time is probably enough time for a skilled Python developer to port a command-line tool for geology researchers from FORTRAN to Python. Or, if you split that money between a user experience researcher and a technical writer, again at $150 per hour, then they could work together for three and a half months, which is probably enough time to interview a bunch of your users, make a really detailed report on user needs to help your developers prioritize your roadmap, overhaul all of your documentation, and overhaul a lot of your error messages.
- an overview of the kinds of information most funders want in grant proposals:
- basic contact details, including the person or organization that will receive the money
- a few paragraphs about the task you want to perform
- the amount you're asking for, and a short description of what you'll spend it on
- who uses your software? have some statistics here - download numbers, users on the mailing list, etc. -- but also this is where you talk about specific important or prestigious users and downstreams.
- what goals will this accomplish? how it will make the world a better place? and why do people need this? why is it important?
- what is your plan for how you'll do it -- how will you use this money? what's your proposed schedule? try to break things down so no chunk of work takes longer than a month; if your project stretches out over 6 months or more, try to break that up into 3 or more milestones, each of which is a few months' worth of work, to help the reviewer think about what you might get done if the project goes over schedule and you run out of budget
- does this project currently get any other regular income?
(Since funders are mostly asking the same questions, you can take a rejected proposal and lightly rewrite it to submit to another funder. Kind of like how I gave a version of this talk in 2020, then added some more material to share at MozFest in 2021.)
The discussion was lively and varied. We talked about several topics and shared resources, and wished there were a thorough aggregator of funding opportunities for open source work, bigger than the one that the PSF's Project Funding Working Group has put together.
Some funding opportunities people brought up:
And we discussed the question "how do you get a community going and solicit money when you don't have anything to show yet?" and the fear that people will steal one's ideas, and the problem of answering funders who ask you "how will you sustain this project after the funding ends?"
Some other resources people mentioned:
Thanks to everyone who watched or participated!
# 18 Mar 2021, 09:49AM: Podguess -- A Little Guessing Game:
I came up with this game and Leonard and I have been enjoying it the last few days, so here it is for you. I just came up with the name "podguess" which does not seem to be taken.
One person, using a podcast directory on the web or in a podcatcher app, searches for a really common word, like "five", "light", "box", or "board". That person reads podcast names to the other players, who try to guess what the podcast is actually about. What's "Be There in Five" about? or "Potholes and Penguins"? Sometimes you'll need to go to individual episode descriptions to find out! And sometimes you can't figure it out at all without listening!
While playing this we usually skip really obvious titles like "[name of church] Sermon Podcast" or "[money-related cliche] With [entrepreneur/self-help expert]". Also, I've only played this in person with one other person, but I think it would also work in groups and in a videocall.
This -- like Podcast Roulette -- is a fun way to discover the great breadth of podcasts out there, and to be mystified by odd things. And -- like my Powerpoint Karaoke best practices or this Wikipedia category-guessing game, which a friend built into a web app -- it's a way to harvest the natural weirdness of humans making and sharing stuff on the Internet and turn it into a little game for you and your friends.
# 22 Mar 2021, 12:09PM: Missing DIY-ish-ness:
Alexandra Rowland wrote that "The opposite of grimdark is hopepunk. Pass it on." (further thoughts). And when I think about punk, I think about DIY and imagining and making the structures that need to exist outside of government and outside of well-funded institutions, and I think about people directly helping each other overcome the problems of our lives.
I think of the New Orleans DSA's brake light clinic, and Kaitlin Marone's essay about how it works and why. I think of Freedom Schools and the Black Panther Party's free breakfast for kids and community medical clinics, and mutual aid.
Beautiful Trouble talks about the temporary version of this as "shame the authorities by doing their job" and notes:
Be clear about whether you want to make a temporary fix, or fix the problem for real. Sometimes what you actually want is to have the community solve its own problems in a way the state never could.
Right now I do not spend most of my work-and-volunteering time doing this kind of thing, either the more temporary or the more long-term version. I have a backlog of stuff I want to clear first, but if I can rearrange the pie chart of my attention so more of it is DIY/punk/grassroots stuff, I believe I will be happier. So this is a note to myself about that.
# 22 Mar 2021, 07:56PM: Bad Startup Idea:
You provide a set of songs that people want to sing together but don't have the skill and range to sing. We use machine learning to rearrange them into more singable versions.
Pricing: this is a monthly subscription, enterprise-licensed, with a minimum of 100 seats per customer.
Target market: companies that want to be just a bit like classic IBM, and religious congregations and schools without music directors.
Exit: sell to Spotify.
# (1) 22 Mar 2021, 09:09PM: A Spec For A Sandboxed Open Source Project Environment:
I'm writing a book on maintaining legacy open source projects to help teach people vital skills. Right now, as far as I know, there's no textbook or course you can work through to learn skills like assessing an open source project systematically, triaging bugs, noticing quiet-but-promising contributors to promote, improving code review processes, writing a grant proposal, and finding your successors. Or, more accurately, there are courses and guides that cover different software leadership areas, but there's nothing that covers the whole toolbox.
When I'm teaching skills, I want to give learners exercises they can use to develop and practice those skills. And if I turn the book into a course, I'll want to be able to assign those exercises and review their homework. So I started thinking: how nice it would be if I could snapshot or composite together a sample legacy FLOSS project, complete with messy old issues, docs, and chat and list archives, and replicate it in self-serve sandbox instances for exercises!
I've been thinking about this for a while. Today I wrote up a spec. I don't know what to call it - "Maintainer Sandbox", "Snowglobe Factory", and "Diorama" all sound good. The spec below assumes that I'd be leading a cohort of learners through a semisynchronous online course; it would work fine for an in-person class as well, but I'd have to adapt the access levels part for a completely self-paced and self-driven course.
As instructor, I would create a snapshot of a sample open source project (comprising materials listed below). The hosting platform would replicate it in self-serve instances, usable over the web, for user exercises. Upon signing up for a course, a user would get access to a freshly provisioned instance, complete with project history.
Materials: Each instance would include the following artifacts, all browseable and searchable via the web browser:
- Bugtracker-type artifacts and history that would generally be available as part of a GitLab or GitHub project: a git repository for code history, past and present issues and patches/pull requests/merge requests (complete with tags/labels, milestones, assignees, and similar metadata), past release announcements, and a wiki
- Project documentation and overview information for users and for developers, as would generally be available on a project's website (even if documentation source is available in the git repository, the snapshot we provide should include the docs as rendered into HTML)
- Archives of the project's mailing lists, as would generally be available as a Mailman, Majordomo, or similar instance, browseable and searchable via a web interface like this web view of python-dev (a Mailman 3 list)
Archives of the project's chat conversations, using a public Zulip chat history like this public archive of Rust's Zulip chat or a browseable history of Internet Relay Chat conversations via a web interface like this web view of Freenode's #pypa logs
(Olivier Lafleur conversed with me on Twitter about how to do some portion of this using GitLab. Also, the Perceval project may be a good tool to consider for mailing list and chat archives.)
Access privileges: The learner would not only interact with the example project materials as a reader but also as a participant, moving through the three access levels described below. The instructor would be able to view a learner's instance, with administrator (Level 3) access, to assess the learner's actions.
Level 1: The learner starts with the same user privileges that a new user would ordinarily have -- they can read all the public mailing lists, chat histories, wiki, and bugtracker items, and file bugs.
Level 2: The instructor can promote the learner to the second access level, at which point they can (for instance) triage, label, and close bugs and pull requests/patches, edit the wiki, and post to public mailing lists.
- Level 3: The instructor can promote the learner to the third (administrative) access level, at which point they can (for instance) browse and post to private mailing lists and chat channels, and use maintainer powers on the git repository (such as merging pull requests/patches).
Authentication: I imagine that dealing with authentication within the application could get sticky. My preferred approach:
- As a signed-in platform user, the learner is automatically logged in to all the web applications within the instance, and cannot log out.
- It is not possible to view an instance unless you are either the learner or instructor associated with that instance.
Multi-user access: Ideally, it would also be possible for an instructor to expand access so that a project can have multiple users (in other words, give Learner A access to Learner B's project instance), so that learners can engage in peer learning and group exercises. However, I expect that would lead to a much larger range of headaches, including Code of Conduct problems in interactions between learners, so -- in earlier versions of this tool -- I am fine with not having this functionality, and instead advising pairs and small groups to use screen sharing for group exercises.
End of life: At the end of the course, each instance would turn read-only for two weeks (to allow the learner to make notes, and to make local copies of any work they had done), and then the platform would delete the instance.
Thoughts? In particular, if you know of software that already does more than half of what I want, I'd like to know about it.
# 24 Mar 2021, 04:57PM: A Miscellaneous Reading List:
A few days ago I submitted my nomination ballot for the Hugo Awards. In many years it's a bit hard for me to think of five excellent things to nominate in each work category. But last year I spent a lot of time highlighting interesting short speculative fiction that you can read for free online, so it was super tough to choose in the Best Short Story category! I wish I could have nominated 15 things.
My nominations for Best Novelette:
and Best Short Story:
Also, in Best Dramatic Presentation: Short Form, I nominated "Explaining the Pandemic to my Past Self Part 2" by Julie Nolke.
I didn't have as many books to nominate -- I often read stuff years after it's published, and I've been far more lax about logging my reading than I was years ago.
A few days ago I finished The Traitor Baru Cormorant by Seth Dickinson; I liked it, and since it came out in 2015 Dickinson has published two more books in the series, so I'll probably pick those up. It's wrenching and full of political intrigue, and perhaps it's a measure of my mental wellness that I was up for that. I don't think I would have made it more than two chapters if I'd tried that in December.
Today I finished reading Conflict Is Not Abuse: Overstating Harm, Community Responsibility, and the Duty of Repair by Sarah Schulman. I'd meant to read it since I'd read this fascinating and wide-ranging Autostraddle interview. For a few years now I've been interested in feminists talking about how we distinguish character assassination from accountability. I appreciated adrienne maree brown's thoughts from last year that included:
i, we, have to be able to discern what is me/us, and what is fear.
which leads to my next unthinkable thought: do i really know the difference between my discernment and my fear?
Schulman goes broad and deep in discussing this topic. What do we lose when we use email and text messages to try to discuss conflict, instead of phone and in-person meetings? How do displaced anxieties and unprocessed trauma cause us to overreact to expectable, no-one-is-at-fault problems with our friends and peers? What ripple effects emerge when we are afraid to negotiate and when our groups don't support processes of reconciliation? A very worthwhile read and I recommend it for anyone who wants to think more deeply about a wide variety of phenomena that often get labelled "cancel culture."
Less recently, I read the thought-provoking collection "The Beatrix Gates (Plus....)" by Rachel Pollack, in PM Press's great "Outspoken Authors" series. I appreciated a perspective on the transgender experience that I'd never read before, and images from the stories will stay with me.
And, many many months ago, I finally finished Bleeding Edge by Thomas Pynchon. I was a little disappointed! Lots of fun observations, but I found the finale of the virtual reality plot kind of empty.
I have a bunch of notes about shorter reads to share with you:
"Firing the Canons" by Alexandra Erin: "The older I get, though, the more nuanced my view on the value of canon and continuity becomes."
- Bryan Box's piece "Ghosts of War in a Wisconsin Forest: An Afghanistan veteran's struggle with ecology and memory".
- "Rule No. 1" by Fred Clark, on what a particular profanity conveys that other words don't, and implications for our conversations about personal ethics.
Lilly Ryan on how services handle (or do not) handle death.
- Jackie Kazil on running the organizing of her wedding with a spreadsheet.
- Megan Rapinoe on being American, from 2019. That's an image, so here's a transcript:
I think that I'm particularly and uniquely and very deeply American. If we want to talk about the ideals that we stand for, all the songs and the anthem and sort of what we were founded on, I think I'm extremely American. I think for the detractors, I would have them look hard into what I'm actually saying, the actions that I'm doing, maybe you don't agree with every single way that I do it and that can be discussed. I know that I'm not perfect. But I think that I think I stand for honesty, for truth and for wanting to have the conversation. And for looking at the country honestly and saying, yes, we are a great country and there are many things that are so amazing, and I feel very fortunate to be in this country. I'd never be able to do this in a lot of other places. But also, that doesn't mean that we can't get better. That doesn't mean that we shouldn't always strive to be better. I think that this country was founded on a lot of great ideals, but it was also founded on slavery. And I think we just need to be really honest about that and be really open in talking about that, so we can reconcile that and hopefully move forward and make this country better for everyone.
- SJ Klein shares some examples of "river-shock: the sense of seeing something simple you did once that has a quiet, pervasive mark that cannot be undone."
- The nine rules Fred Rogers used to rephrase scripts to make them preschooler-appropriate, such as "Add a simple motivational idea that gives preschoolers a reason to follow your advice." Copied from this book excerpt.
# 26 Mar 2021, 04:44PM: Not The First Time We Tried (FSF, GNU, RMS, etc.):
Here's the open letter in which thousands of people and several organizations ask for major changes at the Free Software Foundation and GNU in light of the FSF's recent and extremely frustrating choices. I haven't signed the letter; I am in a position much like Andy Wingo's (I have some obligations to GNU Autoconf that are not yet discharged). But I agree, for instance, that FSF needs a new board, and I want to put something down here to mark my solidarity with so many who have spoken up in the last week.
Some of my peers think this is the first major effort to file a bug about Richard M. Stallman and about FSF and GNU governance, that critics went directly to asking for his removal. It's not the first bug report or request for negotiation; far from it (as former FSF board members Bradley Kuhn and Matthew Garrett discussed in 2019). Today's FSF board announcement would be more promising if it didn't follow years of one-step-forward, two-steps-back conversations about FSF and GNU governance. I have participated in past attempts to talk about these problems with FSF and GNU, with lower stakes, and I figured I'd lay that out here.
In particular, you ought to know that the FSF and GNU have repeatedly failed at fair and consistent treatment. I care about everyone having to obey the same rules and having the same freedoms and the same opportunities; the FSF and GNU have demonstrated that they do not. Boring stuff ahead: Caution that this is a somewhat long and boring post about governance, policies, and similar dry stuff. Skip to the "Fairness" section for the wrapup.
My first time shaking my head and sighing at something Stallman had done at a FLOSS conference was in 2009, if not earlier. And over the years I heard more and more. In particular, I became aware of multiple instances of inappropriate behavior over the years at the FSF's conference, LibrePlanet, such as taking over sessions through loud disruptions. And, in 2017, RMS explicitly said that, as president of the FSF, he was not subject to the rules in the Q&A of Marianne Corvellec's 2017 talk (here is a recording).
During the session submission period (in late 2018) for LibrePlanet 2019, a significant number of former speakers, including myself, jointly contacted the Free Software Foundation Board of Directors. In our message, we expressed concern to the Board over inconsistencies in how the LibrePlanet Safe Space Policy is applied to members of the Board itself.
During discussion with the Board over a few weeks, the group expressed the critical need for LibrePlanet's Safe Space Policy to apply to all participants, including all the members of the Board, which included Stallman, FSF Board President. During the discussion, the Board did not address the following specific actions we requested:
- That the Board explicitly clarify that if RMS violates the Safe Space Policy again organizers will step up and impartially apply the rules to him.
- That the Board appoint a disinterested ombudsman or committee with the power to oversee and handle safe space policy complaints, and enforcement, including for Safe Space Policy complaints against members of the Board.
On November 8, 2018, the Board told us they were working on a response but that it would take time. In early February 2019, many of us got individual email replies from one of the FSF Board of Directors, representing the Board. The response from the Board said FSF was working with a third-party consultant to improve safety procedures. I hoped to see a public announcement of the name of the consultant, or a Code of Conduct transparency report after the con (example). We have seen neither.
The board also said that safe space policy complaints against FSF staff, board members, and officers would be handled by other members of the board, rather than appointing a disinterested ombudsman or committee. But in the last few years, outgoing and former FSF board members including Bradley Kuhn, Benjamin Mako Hill, and Kat Walsh (further re: Walsh) have all tried to use their Board and Voting Member seats to appropriately limit Stallman's behavior and authority, and were evidently unable to form a majority to do so.
In May 2018, during the discussion of a controversial joke in glibc's documentation, I emailed a few FSF staff and board members as well as the GNU Advisory Committee. I shared my assessment of the relevant policy documents:
The governance question currently affecting glibc (context: https://lwn.net/SubscriberLink/753646/c869537af7d612a6/) hinges on whether Richard has the authority he claims to have and whether he is a responsible user of that authority. I've reviewed the conversation and relevant policy documents.*
In my assessment, while Richard has a tenuous claim on his privilege as Chief GNUisance to prohibit the removal of a joke he wrote from the glibc documentation, his choice raises questions about his fitness for the role of Chief GNUisance, especially as the joke contravenes GNU documentation standards ("Make sure your manual is clear to a reader who knows nothing about the topic and reads it straight through.") and "Information for Maintainers of GNU Software" ("Don’t feel obligated to include every change that someone asks you to include. You must judge which changes are improvements—partly based on what you think the users will like, and partly based on your own judgment of what is better. If you think a change is not good, you should reject it."). In my experience as a free software community leader, Richard's choice is also apt to cause attrition among existing GNU maintainers and contributors, which will slow work towards GNU's goals.
* for reference:
What would the criteria be for re-evaluating Richard M. Stallman's position as Chief GNUisance?
If the answer is that there are and can be no such criteria, and there is no change in circumstance or aspect of Richard's behavior that would cause GNU to demote Richard and promote someone else to Chief GNUisance, then I would like that explicitly and publicly stated.
And if the answer is that there exist such criteria, or that you would like to develop them but have not yet done so, then I would like that explicitly and publicly stated.
The GNU Advisory Committee as a whole did not make a formal reply; a few individual members replied with criticism of my "bullshit". I did not pursue the question further.
A year and a half later, in late 2019, Stallman was not on the Board of Directors of the FSF, but still claimed leadership of the GNU Project. A collective of GNU maintainers signed a statement saying, "We think it is now time for GNU maintainers to collectively decide about the organization of the project." I know of no public response to this statement by Stallman or the GNU Advisory Committee. "The FSF never officially helped or even replied to our requests to formulate an open and welcoming working relationship with us as GNU volunteers."
In February 2020, the FSF published a post saying that "The Free Software Foundation and the GNU Project leadership are defining how these two separate groups cooperate." They asked for input from the public. I wrote to them on February 12th to ask:
There are many standards by which to judge whether an institution's work is moving the mission forward, and by which to judge whether a person in a position of leadership is acting as a good steward of that institution. For FSF and GNU, those standards might include fundraising and money management, effective public speaking and writing, keeping principles like the Franklin Street Statement in the public consciousness, providing compelling new visions and articulations for the movement when necessary, growing the number and types of volunteers who contribute to crucial free software projects, making strategic choices to improve free software infrastructure, recruiting and mentoring successor leaders, offering useful architectural guidance or code review, and project management. Which standards are appropriate to judge FSF, and which for GNU, and which for both? And how can we ensure that each organization regularly checks that the other is staying on course?
Similarly: let us look forward to what the FSF and GNU can do in the next several years. Can we make strides on things free software developers care about -- including platform support to help developers do their work better, financial infrastructure, protecting freedom in concrete ways, and recruiting new people into the free software movement and retaining them? Which organizations' leaders are genuinely interested in and excited about those goals?
How shall the board members, and the voting members, for the FSF be chosen? How can you ensure that those lists are transparent (I believe right now the list of voting members is not public) and that FSF members like me have a voice in those appointments and elections?
Similarly, for GNU: how is the leadership chosen, what voice do GNU volunteer contributors have in choosing leadership and policies, and is that process in accordance with free software values?
As of 2019, FSF was working with a third-party consultant to improve safety procedures at events such as LibrePlanet. What were the outcomes of that consulting, and did it result in FSF adopting or strengthening any principles or procedures that should be included in a partnership framework with GNU?
I received an acknowledgment that my message had been received, but nothing further, and neither GNU nor the FSF ever made an announcement regarding the cooperation framework. The only subsequent announcement was an email announcement by Stallman, later that month, documenting the existing GNU governance structure.
Fairness is at the heart of free software values. We set policies -- the GPL, for instance -- that apply to everyone equally.
To remix another phrasing, no one is indispensable and no one is disposable.
I contributed, in good faith, to efforts to address the unfair, inconsistent treatment of Richard Stallman regarding LibrePlanet safety standards and in the GNU maintainer procedures and documentation policies. Others did similarly in several other areas. I joined my fellow free software advocates in doing this not just because of the individual incidents that free software advocates have been reporting for many years. I did this because of the meta-behavior of Stallman's claim that he is not subject to the same rules as everyone else. To borrow a phrase, I was tired of treating Stallman like a missing stair. So we filed bugs about the situations caused by his behavior, and by FSF's and GNU's unwillingness to consistently apply their policies.
The grief of having all those efforts marked as WONTFIX causes some ache -- as does the dismissive attitude I see from some peers in the tech industry, as though our care and work were foolish and useless. As though this setback means we should scrap the whole endeavor.
To me the history of free software is partly the history of us making it better, on a social and infrastructural level, the same way that the history of the United States (I'm an American) is partly the history of us making it live up to our ideals. With words and actions (codes of conduct, The Carpentries, Software Freedom Conservancy, Python's Steering Council model, so much more) we've been steadily working to improve, and -- with or without the FSF and GNU -- we will keep working.
I've been using GNU/Linux for more than twenty years, free software is my profession, freeing people using free software is core to my values, and I ain't stopping.
# 29 Mar 2021, 10:46AM: Autocorrect Hilarity:
A friend found out recently that his spellchecker did not know the word "disempowering" and instead suggested "disemboweling". Spellchecker, I beseech you, in the bowels of Merriam-Webster, think it possible you may be mistaken.
You can hire me through Changeset Consulting.
This work by Sumana Harihareswara is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Permissions beyond the scope of this license may be available by emailing the author at email@example.com.