The 20 Best Things I Read Last Year*

Here are 20 works I read in 2020 and 2021 that I am still thinking about. I’ve divided the list into fiction and nonfiction, but that’s the only organizing principle at work here. Please note that while I read these works in the last two years, not all were published during that time. I’m including 2020 in this year’s round up because time is made up and I’m not entirely sure 2020 ever ended.

Fiction

  1. Harrow the Ninth by Tamsyn Muir (novel, purchase) — I included Gideon the Ninth, the first book in the Locked Tomb Series, in my 2019 recommended reading. Harrow the Ninth is Muir’s follow up and I loved it just as much as Gideon. The series is about lesbian space necromancers with feelings, which feels like it should be an easy sell. I have heard, however, that some folks didn’t enjoy Harrow quite as much as Gideon, possibly due to some really interesting structural decisions. Personally, I nerded out about Muir’s unusual approach to structure, but your mileage may vary. I’d also like to add a special shoutout for “The Mysterious Study of Doctor Sex,” a short story that takes place between Gideon and Harrow. If nothing else, it’s hilarious to read because one character is named Doctor Sex due to numerically-based naming systems rather than due to any reference to sexy times. Content notes: death, body horror, mental illness, and gaslighting.
  2. Earthquake relief. Mexico. 2051.” by Malka Older (short story, free) — I’ve loved Older’s novels, especially Infomocracy, for years. She combines a lot of really interesting political ideas with characters who I’d like to hang out with. Older wrote this short story for The New Humanitarian, which covers emergency response, and it was the first piece of fiction the site ever published. It’s a really thoughtful take on what emergency response could like in the future and an argument for completely reassessing how we deal with problems on municipal and global levels. Content notes: natural disasters.
  3. Hibiscus Tacos” by Ire’ne Lara Silva (short story, free) — I think about this short story regularly. Silva pulls together threads of food, love, death, and immortality in a way that feels more like poetry than most short stories. That’s no accident, given Silva is a poet with four collections under her belt. Content notes: Food and eating, death, suicide, medical procedures, and hospice care.
  4. Bitter Root by David F. Walker, Chuck Brown, and Sanford Greene (comic, purchase) – I picked up this collection of the first five issues of Bitter Root based on the recommendation of the staff at my local comic shop (who consistently hand me comics that I absolutely have to read). The comic follows the Sangerye family through Harlem in the 1920s, as they fight monsters using traditional rootcraft and conjurings. Volume 2 and Volume 3 are now available, though I haven’t picked up a copy of the third volume yet. Content notes: Racism, family separation, and body horror.
  5. (emet)” by Lauren Ring (novelette, temporarily free) — Ring’s story of a programmer struggling with how her work endangers people rings so true for me. There’s an air of magical realism, drawing on Jewish folktales of golems, which adds a layer of meaning that I’ve had to sit with. Ring never mentions the ways that technology companies enabled efforts to wipe out Jews but her storytelling drips with that deeper meaning. Content notes: Surveillance and parental death.
  6. Elatsoe by Darcie Little Badger (novel, purchase) — Little Badger is a Lipan Apache, as is the protagonist of Elatsoe. Drawing on her own culture, Little Badger created a version of the U.S. full of Indigenous monsters and magic (as well as some supernatural colonizers). The titular main character, nicknamed Ellie, is a teenager with the power to raise ghosts who seeks justice for a family member. Elatsoe is Little Badger’s first novel and I can’t wait to read more long-form work from her. Content notes: Racism, death (including murder), colonization, and horror elements.
  7. Lena” by qntm (short story, free) — This short story is a little difficult to describe, but “Lena” is a fast read. I’ll try to do it justice, but take a chance on reading it even if it doesn’t sound like quite your thing. The story is structured like a Wikipedia article and discusses the technical process of creating digital versions of an individual’s personality. Hints of the ethical and psychological concerns appear throughout discussions of workloads and intellectual property. Content notes: Death, dementia, and exploitation.
  8. Lore Olympus by Rachel Smythe (comic, free) — This webcomic is a reimagining of Greek mythology with both modern and historical elements, told through exquisitely illustrated panels. I could write thousands of words just on Smythe’s color palettes. Lore Olympus follows Persephone and Hades from the very beginnings of their romance, while exploring themes of consent and sexual assault. Interestingly, Smythe chose to eliminate concerns around consent present in myths about Persephone and Hades, instead looking at other gods and how their social positions could impact relationships and be used harmfully. Smythe is very good about providing warnings about potentially triggering comics. The story is on-going and is closing in on 200 ‘episodes’ (which I would compare to individual comic issues in length). If you prefer to read your comics in dead tree format, the first 25 episodes are available in print and future volumes are planned. Content notes: Sexual assault, consent, child abuse, murder, and legal repression.
  9. Salvage by Muffinlance (novel, free) — Yes, this a 127,175 word fanfic based on Avatar: The Last Airbender. Yes, I am recommending that you should read the whole thing (assuming you’re already familiar with ATLA). Yes, I possess no shame about my reading habits. I watched ATLA for the first time in 2020 and really enjoyed the storytelling. I read a lot of ATLA fan fiction after finishing the television series, and Muffinlance quickly became one of my favorite authors. I’m not the only one — Salvage is the top-ranked work for ATLA on Archive Of Our Own. Content notes: discussions of child abuse and death on the same level as the original television series.
  10. Lies I Never Told You” by Jaxton Kimble (short story, free) — Stories of everyday magical powers have a special place in my heart. Kimble’s short story hit that spot, with a character who writes out true statements, including predictions and personal insights. The result is a quick exploration of a teen’s coming of age and exploration of her own identity that somehow has the weight of a much longer piece. Content notes: Parental death, homophobia, and transphobia.
  11. Submergence by Arula Ratnakar (novella, free) — Ratnakar’s novella follows a scientist searching for a cure to an incurable plague, fighting to maintain their personal ethics — but only after that scientist has already died. Their memories are implanted into the mind of an investigator. While Submergence is a fascinating story of questioning just how far science should go, Ratnakar’s world building is even more enthralling. She sets the stage of a near-future still facing climate change and explores tactics youth-led movements might use to combat that change in a way that reminds me of the efforts of the Sunrise Movement. Content notes: Climate change, pandemics, death, exploitation, privacy, and medical procedures.

Non-Fiction

  1. Handcuffed and Unhoused” by Meli Lewis (radio episode with transcript, free) — While technically a podcast episode, “Handcuffed and Unhoused” is incredibly important reporting on the criminalization of homelessness in Portland, Oregon. Lewis spent over two years collecting data, conducting interviews, and examining the failures of local efforts to address homelessness. Her reporting even uncovered concerning comments by Portland officials regarding their desires to further criminalize people without access to stable housing. Content notes: Homelessness, legal repression, police violence (including a recording of a police killing), and classism.
  2. The Next Supper by Corey Mintz (book, purchase) — Mintz’s exploration of the future of the restaurant industry is fascinating, especially in light of COVID-19’s impact on restaurants’ ability to safely function. The book covers topics like sustainability, employee rights, and immigration. I wrote a longer review, contextualized for Portland, Oregon. Content notes: Food, racism, pandemics, abusive behavior (including sexual abuse).
  3. Ministry of Violence” by Tal Lavin (article series, free) — This three-part series is a hard read, but worth it. Lavin created this three-part series to examine corporal punishment in evangelical Christian households. I’m not Christian, but as I live in a Christianized society, I’ve seen some impacts of the sort of corporal punishment Lavin describes. But it’s very hard to understand how culturally ingrained these sorts of punishments are and to stop ignoring the reality that these punishments are essentially child abuse. Lavin created a definitive piece that provides insight for those outside evangelical Christian culture (and maybe those inside it, as well). Content notes: Child abuse, abusive relationships (including romantic relationships), and PTSD.
  4. Weird Jewish Digest by Meli (weekly newsletter, free) — Meli’s weekly newsletter is ‘just’ a round up of links and events connected to Judaism. But it’s one of the most inclusive round-ups I’ve found and I look forward to every email (including the cute photos of Jewish pets at the end of each week’s newsletter). Meli includes tough topics and avoids unthinking approval of certain nations that typifies many Jewish publications. I strongly recommend a sign-up if Judaism is part of your identity in any way. Content notes: Sometimes includes links discussing anti-Jewishness and other difficult topics. Meli includes specific content warnings on each email.
  5. The Myth of a Wilderness Without Humans” by Mark Dowie (article, free) — Part of a longer book which I have not yet read (Conservation Refugees: The Hundred-Year Conflict Between Global Conservation and Native Peoples), Dowie’s article looks at what many people think they know about the history of national parks and other nature preserves. U.S. history is often taught in a way that erases Indigenous presences and the history of natural spaces is no different. Places like Yosemite National Park are marketed as untouched nature, despite millennia of presence by residents like the Miwok tribe. Dowie further discusses how the Miwok and other tribes actually created and tended the spaces that later became national parks, during which process the U.S. military forcibly removed Indigenous people from these lands. Content notes: Racism and colonization.
  6. Image Conscious” by Jasmine Sanders (article, free) — Sanders provided a bittersweet look at Black Romantic art, based on her familial experiences with selling art through home parties and other direct sales methods. Combining art by Black artists with discussion of the businesses that connected those artists with buyers, this article introduced me to several artists I quickly came to love. Sanders also examines the ways structural oppression has played out in art markets. Content notes: Racism and structural oppression.
  7. Why Frida Kahlo Still Isn’t a Great Woman Artist According to the Market” by Hall Rockefeller — I am a Frida Kahlo fan and, as such, I’m easily persuaded to read just about anything about Kahlo or her work. Rockefeller’s article is a standout piece, however, because of its examination of how Kahlo is perceived by curators, collectors, and other ‘experts.’ I recommend paring this article with Sanders’ “Image Conscious” (above) and then angrily making art of your own. Content notes: Misogyny.
  8. Jean and Jorts: the extended metaphor for workplace accommodations nobody asked for” by Fiona Robertson — Jean and Jorts took the internet by storm while I was in the process of writing this post. The story of these two cats originally appeared as an “Am I the Asshole?” post on reddit, which I recommend reading, along with this update posted later. The original poster asked for advice about whether they were perpetuating stereotypes about orange cats’ relative intelligence. The internet has gone wiled for Jorts, the orange cat in question, as well as Jean, Jorts’ kind companion. One response in particular caught my attention: Robertson’s discussion of Jorts and Jean as a metaphor for workplace accommodations. This write-up rings so true to my own experiences and provides a more accessible explanation of accommodations than the others I’ve read. My only complaint is that we have to talk about animals to get humans to take each other’s needs seriously. Content notes: Ableism.
  9. The State of Portland News” by Thursday Bram (article series, free) — I wrote this article, but this is my list and I make the rules, so I’m including it. I’ve referred back to this piece several times since posting it and I’m still pleased by how it turned out. Published in two parts, this piece covers who pays for and consumes news in the Portland area (Part One) and who owns publications and decides what to cover (Part Two). Content notes: Structural oppression, legal repression, and online harassment.

Just a head’s up: I’ve included links to Bookshop that will provide me with a small affiliate commission if you click through and make a purchase. However, I’d recommend any of these reads even without affiliate commissions — if you borrow books from the library or acquire them through other non-purchasing methods, I think that’s awesome.

How to localize classic holiday stories for fun and fundraising

A book cover with the text "A Portland Christmas Carol in prose being A Ghost Story of Christmas" and a drawing of a ghost similar to the ghost emoji with black line art on a white background.
The cover of A Portland Christmas Special

I ran a fundraiser with the Portland General Defense Committee to support protestors arrested in 2020 and 2021. The fundraiser ended December 31st and raised over $300 after payment processing fees. Providing legal, financial, and other support to protestors facing legal repression is important to me; I’ve volunteered with the GDC for years because I believe that protesting is key to holding police and other state actors accountable and that carceral systems only do further harm.

But I also have a sense of humor, even if it’s a bit dark at times. So, a few months ago, I started writing a parody of Charles Dickens’ A Christmas Carol, because I thought the idea of a wealthy leader needing spiritual guidance to change his ways was both hilarious and apt in Portland in 2021. When I finished my novella-length project, I wanted to share it. Using the parody to fundraise for folks facing harm at the hands of wealthy leaders just felt right.

Below you’ll find some notes on the process of writing and sharing A Portland Christmas Carol. I figured some folks may be interested in a look behind the scenes, but also that this is an approach that could be used to raise funds in other cities.

Picking a classic tale

There are several important factors to choosing a book or other media to parody. While the inspiration to update A Christmas Carol reached out and grabbed me, I’ve worked on other projects that required a little more consideration.

  • Choosing a well-known story: Parodies work best when based on stories familiar to the audience. Given that I’m in Portland, Oregon in the 2020s, I can depend on my audience to be aware of a lot of European canon, including a little Dickens. Different audiences have different needs. Stories that have been translated into multiple languages, made into multiple movies and other media formats, and that are often taught in school are good bets. As an added benefit, you can often find a digital copy of well-known works that you can use as a starting point.
  • Avoiding trouble: I try to pick my fights carefully. When writing a parody that references current events, there’s always a chance that people involved in those current events will have a problem with even the most obvious parodies of their actions. As a result, I like to use works that have passed out of copyright as my starting point — if the original author is long dead, I don’t have to figure out if I need to fight a fair use case to prove my parody doesn’t violate the author’s copyright. That makes works already in the public domain easier to work with.
  • Understanding the underlying story: Effective parodies build on the themes of the works they reference. We know that wealth corresponds to control of local governments, so the works of an author who critiques wealth are a logical choice when critique local governments. I also like to write parodies of works I already know fairly well. I don’t have to invest as much time in learning the work itself, so I can work faster.
  • Looking at length: Very few people make a full-time living writing parodies. So choosing a shorter work or a section of a longer work as your starting point is a practical decision. If, for instance, you want to write a parody of the entire story of Crime and Punishment, you’re going to have to deal with over 700 pages of material.

A Christmas Carol hits these marks fairly well: The story is arguably Dicken’s best known work. It has been adapted many times and hasn’t ever gone out of print in its 175+ year history. Personally, I’d say that The Muppet Christmas Carol is the best version. And if the Muppets adapt a story, that story is definitely well known — their other adaptations include Muppet Treasure Island, The Muppets’ Wizard of Oz, and The Muppets: Bohemian Rhapsody. And despite Dickens’ status as a hardcore copyright enthusiast, A Christmas Carol entered the United Kingdom public domain in 1877 (later than it entered the public domain in many other countries).

I read a lot of Dickens in school and even wrote a play parodying A Christmas Carol in high school. It was terrible and there are no existing copies as far as I know, but I can tell you details about the storyline from memory.

A meme with the text "If I had a nickel for every time I've parodied "A Christmas Carol" to comment on current events, I'd have two nickels which isn't a lot but it's weird that it's happened twice" over two screen caps of Dr. Doofenshmirtz from Phineas and Ferb talking to a a sock puppet with red and gray robots in the background. Dr. Doofenshmirtz is illustrated as a white man in a lab cot and the sock puppet has dog-like features.
… I’d have two nickels

As far as I’m concerned, there’s only two drawbacks to writing a parody of A Christmas Carol. First, Dickens’ works tend to be lengthy. He was paid by installment and needed the money, which frankly shows in how he managed to draw out individual scenes. I may have cursed this stylistic choice several times during my editing process, because A Christmas Carol is a novella, not a short story. Second, I’m Jewish. I don’t feel that I’m appropriating Christian culture, because cultural appropriation definitively requires a dominant group drawing on the culture of a marginalized group. Christianity is definitely the dominant religious culture in the US and is therefore fair game. But the holiday of Christmas is important to many Portlanders, including many of my friends (and even a few of my family members). I wanted to do the holiday justice, so I did have to do some extra research into Christmas customs that a Christian might need to do. Of course, I’m not the first Jew to make media about Christmas and I’m sure I won’t the be the last.

Setting yourself up for successful parodying

Every writer’s process is different. There are several steps that can make writing a parody easier, however:

  1. Find a digital copy of the work you’re adapting and dump it into your word processor of choice. Project Gutenberg is an excellent resource for finding free copies of well-known books in the public domain. The site even has multiple versions of some books.
  2. Read the work you’re adapting. Even if you’ve read it before — even if you’ve adapted it before — reread the work and make sure you’re familiar with all the plot twists and turns.
  3. Note anything that doesn’t work for your parody. Since you’ve got the original work in a word processor file, you can make your notes as comments tied to specific sections of the work. Don’t worry about making changes yet, unless doing so works better for your process. Things I noted include:
  1. Phrases your readers might struggle with: Dickens made some great jokes about Bob Cratchit earning 15 bob a week, but I can’t assume the average Portlander today knows what currency a ‘bob’ corresponds to and or how inflation has changed the value of a ‘bob’ since 1843. A best guess at the value of Cratchit’s income in 2021 numbers is around $375 per week for 60ish hours of work, on which he supported a family of eight.
  2. Racism, ableism, and other offensive content: While the original writers of much of literary canon included prejudices in their works, I see no reason to perpetuate harm against any group of people. Editing out problematic content can take some planning, especially if a stereotype is core to a character (the way that Tiny Tim’s disability defines his portrayal). Just note problems on your preliminary read through and then come back later to make repairs.
  3. Opportunities to localize the story: If you’re updating the date or location of the story you’re parodying, you can change little details to make the setting feel more true to the rest of your parody. Keep an eye out for the names of the neighborhoods characters visit, the institutions they rely on, and even the books they read. As I read, I kept a list of details I could update, including technology (i.e. candles became electric lights) and types of businesses (since there aren’t a lot of ironmongers in Portland today).
  1. Figure out which characters and organizations you’re changing. If, for instance, you’re going to change the names of specific characters, you’ll have to decide exactly which characters you’re changing. For A Portland Christmas Carol, I made a list of the named characters and who they might correspond to in terms of Portland’s current events. I had to talk through some Portland history with friends and even look up the names of some buildings that were torn down before I moved to town.
  2. Use your word processor’s ‘find and replace’ function to update names throughout the file you’re working in. Rather than looking for every mention of ‘London’ in A Christmas Carol and changing it to ‘Portland’ by hand, I updated my whole document in a matter of seconds.

At this point in the parody process, you’ll likely have a file with a lot of comments. You’ll probably also have some sections that don’t make sense because automated ‘find and replace’ tools only change sentences — they don’t rework those sentences to ensure they make sense.

Congratulations! You’re now ready to actually write your parody! Personally, I just go through my heavily annotated document section by section. I rework each chunk to make sense, using what’s already in the file as a base. Of course, if you know you write better following a different process, do what works for you. Unfortunately, there’s not really a step-by-step process for actually writing a story, parody or not. It’s kind of a ‘draw the rest of the fucking owl’ situation. Do what works for you and power through.

Do as much self-editing as you can, especially if you’re not in a position to pay anyone to help you. Don’t worry — I’ll cover getting help on these sorts of projects below, but you want to minimize the work you’re asking people to do for free. Trust me on this one: finding friends to give feedback on the full 70+ pages of a classic novella is hard at the best of times.

Making something people want enough to pay for

Once you have a solid draft that other people have read (and hopefully enjoyed), you need to think about how to present your parody to potential supporters or buyers. With A Portland Christmas Carol, I was torn between offering an ebook and printing physical copies. I’ve done both in the past and I came to the conclusion that I just didn’t have the energy for all the details of both printing a book and distributing copies this year with everything else I’m up to — especially since I would still want to offer a digital version alongside dead tree format.

Laying out an ebook is different from designing files for a print run. In some ways, ebooks are a little more forgiving, though they have their own quirks. I use Adobe InDesign for laying out my projects, mostly because I’ve been using InDesign for almost 20 years and I can write an Adobe subscription off on my taxes. I don’t recommend using InDesign unless you already have the software and you’re comfortable using it. Instead, use what you’re already comfortable with. I’ve seen plenty of readable ebooks laid out in Microsoft Word, Google Presentation, and all sorts of other tools. Your options include:

  • Word processing and slide design tools that allow you to add images and export to PDF (like Google Docs)
  • Design platforms that offer templates for ebooks (like Canva)
  • Open source publishing tools (like Scribus)
  • Bribing designer friends who already have the software and skills to layout ebooks

Getting a friend or two to help with design can lighten your workload tremendously. I consider myself more of a writer than anything else, so when I need to make some visually appealing, I try to at least get feedback from a design-minded friend.

For this project, I was lucky enough to have a friend volunteer to illustrate the story. The incomparable Mel Rainsberger listened to me yammering about this parody I was working on and next thing I knew, Mel sent me a folder full of illustrations to add to A Portland Christmas Carol. I did send Mel a copy of the story to review, along with some reference pictures, but I mostly just stayed out of her way. Because this project was intended as a fundraiser from the start, I hadn’t entirely expected to be able to find an illustrator — I don’t like asking people to work for free, so if I don’t have a budget, I’ll do without. But Mel’s illustrations definitely made this project much more appealing.

A drawing of a set of double doors in black on a white background. An arched sign over the doors reads “Wheeler & Adams.” The first name is clear, but the second is faded.
An illustration from A Portland Christmas Carol

I dropped the illustrations into my working file, added image descriptions, and then exported the whole thing as a PDF. I got a few more folks to look over things for typos and the like. After a couple of reviews, I declared the editing process complete. I’ve since noticed two small errors, but with a project like this, you do have to declare the design process done and move on. Christmas is a firm deadline, after all: convincing everyone to stay in the holiday spirit a little longer so you can finish tweaking files is not an option.

With a finished design file in hand, I exported ebook files as both PDF and EPUB. InDesign can do both formats, as can most software. Because a lot of folks like to read ebooks on tablets or ereaders, having the choice between PDF and EPUB ensures that most people will be able to read a book on their device of choice. I tested my files on different devices I had access to to make sure they worked and everything showed up correctly — I always recommend testing your ebooks on as many different devices as you can manage, because weird errors do pop up.

I also tested my ebook files on screen readers. Testing files with screen readers doesn’t have to be much more complicated than using different devices. There are several free options you can download to try out. On larger projects, I also try to get someone who relies on a screen reader to test the file because a more experienced user will notice different issues than someone using a screen reader just for testing.

Making your parody available for purchase

I know a lot of creatives who will offer a project for purchase and pledge all the proceeds to a particular cause. I’m not the biggest fan of using this approach: First, any money raised this way runs through my bank account, which means I have to hold back enough to pay taxes on those funds. Second, I don’t like even a hint of financial impropriety which means extra transparency work on my end. In a perfect world, I wouldn’t ever handle any funds beyond my own money. Third, people making donations should get any tax deductions available, not the person who is collecting the donations. That last point isn’t an issue for fundraising for a 501(c)4 like the Portland GDC, but it’s what first made me uncomfortable with collecting donations and then handing them off.

When I can partner directly with an organization, that means that I want to use their platforms for sales and fulfillment of anything I sell on their behalf. But I also want to keep the workload to a minimum for everyone involved. If an organization mostly takes contributions via online platforms like CashApp or PayPal, offering a perk like an ebook through those platforms could mean emailing each donor a reward by hand. Sounds exhausting to me. Setting up a new platform (with the group’s permission!) and handing over all passwords as soon as possible is the best option I’ve come up with so far.

For A Portland Christmas Carol, I used Gumroad. I already use Gumroad for my own product sales and know how to set up a new product quickly. Other reasons I currently recommend Gumroad include:

  1. Gumroad is one of the few reliable sales platforms not owned by big conglomerates like PayPal. In fact, the company is extremely small.
  2. The platform is fairly intuitive to new users. I’ve introduced a few folks to it and they’ve been able to do everything they needed to without a lot of hand-holding. It’s not as fully-featured as some sales platforms, but honestly, that’s kind of a perk.
  3. You can set a base price for a product, then invite buyers to pay more if they can. When raising funds, that ‘pay what you want’ option can dramatically increase the amount you bring in.
  4. Gumroad doesn’t charge users a monthly fee. I’m not the biggest fan of their tiered fee structure (which is relatively new) but significantly cheaper options tend to require hand-coding your own pages or going through long verification processes.
  5. You can get decent analytics from Gumroad if that’s useful to you. I’m torn on the value of analytics for campaigns like this — I’ll spend most of the time A Portland Christmas Carol is available refreshing that analytics page and debating if there’s anything else I can do to get numbers to increase.

Yes, Gumroad has its own problems, but there’s no ethical consumption under capitalism. I’ll almost certainly find another sales platform I like better and switch at some point, but for now, I feel that Gumroad does less harm than the other options I could use.

One last note on platforms: while I did the heavy lifting on this project, I made sure to get buy-in from the organization I fundraised for on everything, including setting up a new sales platform. It is always inappropriate to set up a platform that accepts money for a specific organization without that organization’s approval.

Telling everyone about your amazing parody

You might be hoping that all the work is done once your parody is available for purchase and download. Unfortunately, if you don’t tell anyone about your parody, all of that work will be for nothing. Marketing its launch is a necessary part of the project.

Exactly how to market a launch depends a lot on what you’re offering, what organization you’re partnered with, and when you’re launching. I’m not going to go through every marketing tactic I’ve used for A Portland Christmas Carol, but I will cover a couple of key points.

Schedule your offering well: Perhaps the biggest problem I faced with A Portland Christmas Carol was that the story is directly tied to December 25. Offering a parody like this any other time of the year just isn’t going to make sense. But potential donors are also offline more around major holidays. I would have preferred to launch earlier in December. But the process of actually preparing files, getting approval, and setting up everything took time. So I launched when everything was ready. Sometimes scheduling just works out that way. But if you can choose a work to parody that allows a little more calendrical freedom, consider doing so.

Make use of the organization’s platforms: When you’re fundraising in partnership with an organization, familiarize yourself with their websites, newsletters, social media accounts, and other methods of reaching out to supporters. In a perfect world, you’ll be offering something that will appeal to at least some of those supporters and inspire them to send donations beyond what they might normally give. Write up templates and messaging that the people handling each of those platforms can copy, paste, and post.

Reach out to your own network (and even beyond): I ask people to share my projects and try to make the process as easy as possible. I provide review copies, social media templates, and images — along with anything else I can think of that will make the sharing process easier — all in a Dropbox folder I can easily control. In a perfect world, all this happens at least a few days before the official launch, but we rarely work in a perfect world. Most of my requests to share A Portland Christmas Carol went out on Launch Day, but I’ll probably be sending out messages asking for help sharing right up through the last day of the sale.

In conclusion

This write up is longer than I initially planned. But I wanted to cover as much of the necessary work involved in offering a parody as a way to fundraise as I could. I hope these notes will come in handy when you’re thinking of creative ways to support causes.

Thank you for reading this far. And if you read this before January 1, 2022 and you haven’t already, please consider getting yourself a copy of A Portland Christmas Carol.

A review of The Next Supper with a side of Portland context

Content notes: Discussions of deaths due to COVID-19, abusive behavior (including sexual abuse), racism

I read The Next Supper by Corey Mintz recently and it’s been stuck in my brain. I tweeted about the book, hoping that someone would write a review of The Next Supper, contextualizing the information it contains for Portland, Oregon. And then I remembered that sometimes you just have to write the article you want to see out in the world. So this review is kind of that, with the caveat that I’m not a food journalist and haven’t really set foot in a restaurant in almost two years. Another caveat worth noting is that I received a free copy of the book through NetGalley. I don’t think that influenced this review — but if you are at all worried, please note that the link above goes to the WorldCat entry for The Next Supper. You should be able to find a library near you with a copy rather than spending money based on my potentially biased opinion.

Readability

I found The Next Supper very readable, especially for a book telling me that everything about how we eat is probably bad. Mintz shares anecdotes showing that he’s not judging other eaters. He has committed the same sins as the rest of us — including eating at Taco Bell.

It’s comforting to know that none of us are alone in struggling to eat in a way that goes beyond stuffing the nearest calories down our gullets. I know I have terrible eating habits, but I’m not the only one. I’m trying to cut back on takeout after basically living on it for the last few years. I’ve been wondering how other people eat without relying on picking up prepared food from restaurants. Turns out that I’m part of a trend! The Next Supper documents a massive trend in relying on restaurants (as well as other sources of prepared foods, like supermarkets) — in 2018, US consumers spent more money on dining out than on groceries.

In The Next Supper, Mintz planned to cover the future of restaurants — and he did so, but not in the way he planned. Mintz began writing the book before the COVID-19 pandemic, during which the restaurant industry crumbled. From Mintz’s research, it’s clear that key trends around staffing, sustainability, and finances were dramatically escalated by pandemic lockdowns.

Key Topics in Context

Mintz covers a lot of ground in The Next Supper and I certainly don’t want to just repeat what he’s written. But Mintz wrote about national numbers (and international in many cases, given that he covers the restaurant industry in both Canada and the US). Since I live in Portland, Oregon, a city known for its food culture and wealth of local restaurants, I’m interested in what The Next Supper implies for the restaurants around here. To that end, I’m going to cover a couple of key topics from the book.

One fact stood out to me: Mintz says that there are far more restaurants in the US than can be supported by the number of diners. Partially due to big brands constantly pushing growth, the US had roughly one restaurant per 500 people before COVID. There’s just no way that consumers can support that many restaurants based on math Mintz presents. Portland’s restaurants tend to be independent, but the numbers are even more extreme here. I’m not sure how many restaurants are in Portland, but OpenTable currently lists over 5,000 restaurants in this city. That number is definitely low since there are plenty of restaurants that don’t use that site. Portland’s metro-area population in the last census was roughly 2.5 million. With just the 5,000 restaurants on Open Table, we already hit the level of one restaurant per 500 people. If we had a comprehensive list of restaurants in the Portland metro area, I bet we’d actually find that Portland’s ratio is closer to one restaurant per 300 people. That’s unsustainable unless we dramatically transform the relationship between consumers and restaurants.

Wages and Tipping

Staffing is a thread that runs throughout The Next Supper through sections on tipping, wages, abuse, and immigration. Portland-area restaurant staffing is a little different than what you may see in other cities. Oregon requires that restaurants pay full minimum wage of $12 per hour to servers, rather than allowing bullshit like paying a server $2.13 and counting on tips to bring that rate up to something someone might be able to live on. Furthermore, Portland itself has a higher minimum wage than surrounding areas, with a rate of $14 per hour.

Tipping is still common here (although I think it’s past time for us to find a way to eliminate tipping and actually pay everyone a fair wage). Mintz’s inclusion of Michael Lynn’s research on tipping caught my eye, especially given the racism built into Oregon’s governance from the first state constitution onward. Lynn’s research has demonstrated racial disparities in the tips diners give to servers. The disparity hits the point that forcing servers to rely on tips feels like an actionable civil rights violation. I’m not a lawyer, of course, but I doubt we’ll see substantial changes to tipping culture without that kind of in-depth examination and refutation.

Of course, tipping is only one way restaurant employees are compensated for their labor. As I browsed through job listings for restaurant staff here in Portland, I noticed that the listings didn’t quite match up with Mintz’s discussion. Many of these jobs list benefits like paid-time off and offer hourly rates above minimum wage. That’s a good sign for local food culture, although what job listings offer often doesn’t match the reality of working for a given restaurant. It’s easy to find lots of posts like this one about applying to multiple jobs offering one wage and then actually offering significantly less to new hires. Bait-and-switch techniques are common in hiring restaurant staff right now. There’s also a long history of wage theft in the form of unpaid training, paying day rates (rather than hourly wages), unpaid overtime, etc. in the restaurant industry, which Mintz goes into in more depth.

Mintz doesn’t touch on one factor in restaurant hiring that I think is crucial: line cooks had the highest COVID mortality level in 2020 of any profession. No fault to Mintz — I doubt that this information was available before The Next Supper’s content was finalized — but the reality is that an almost incomprehensible number of skilled servers and cooks died or became disabled since early 2020. When we see claims that restaurants are understaffed, we need to push back. We need to talk about the many reasons why restaurant staff aren’t prepared to work for businesses that exploit and endanger them.

Employee Abuse

When discussing staffing, Mintz also covers a wide variety of abuses that are commonplace in the restaurant industry. Portland’s restaurants are no exception. During the summer of 2020, many restaurant owners and chefs faced calls for accountability for sexual harassment, abusive work environments, and other types of harm. In Portland, many of those calls were channeled through an Instagram account operated by Maya Lovelace, who owns Yonder. They were later cataloged by Eater PDX, including concerns about Yonder. While some of the people responsible for these harms are no longer running restaurants, there are still plenty of similar problems in the kitchens around town.

These problems are compounded by a variety of larger social issues. There’s an underlying misogyny that enables business owners to sexually assault staff members, an underlying racism that allows business owners to take advantage of undocumented workers, and an underlying devotion to capitalism that makes wage theft a standard business practice.

Personally, I’m unconvinced that call-out posts will reform these problems at an industry-level. Collective action, such as unionization, is the only strategy that I’ve seen work. Unionizing both independent restaurants and local chains is likely the most useful strategy, and one that Portland may be able to rely on. With the recognition of the Burgerville Workers Union, we have the first unionized fast food chain in the country. We just need to build on that success.

Third-Party Delivery Apps

Third-party delivery apps — which around here includes Uber Eats, Postmates (owned by Uber), DoorDash, and Caviar (owned by DoorDash) — are notoriously bad for restaurants and delivery drivers alike. There are plenty of examples, from pocketing delivery drivers’ tips to charging fees to restaurants for orders that don’t go through the apps. Independent restaurants get the worst deals, as big brands like Applebees negotiate with delivery providers to keep costs down. The Next Supper points out venture capitalists with long-term plans fund these apps. They subsidize the cost of destroying other delivery options as well as keeping prices down long enough to get consumers reliant on these apps. Third-party apps can afford lobbying efforts or they can punish users with local fees when local governments are willing to push back against their practices.

Communities (including restaurants, delivery staff, and diners) need to plan for the long term. We need plans for both minimizing how capitalistic interests can mix extra costs into our food budgets and for building better systems for getting food in the hands of hungry people. I see organizations like CCC PDX as a start to that discussion. Local bicyclists formed a collective to deliver food and other products in partnerships with local restaurants and retailers. A logical next step might be building an app that handles handles local deliveries for local brands. It could offer equitable splits of both expenses and profits without sending money outside the Portland ecosystem. I don’t think that’s enough, long term, but the conversation has to start somewhere. Only once we’re actively talking about these issues will we be able to bring up options like collective purchasing, neighborhood-based food systems, and other options that move us towards radical change.                  

Sourcing

Portland does make an appearance in The Next Supper, or rather there’s a discussion of the Portlandia sketch during which two restaurant diners learn about their locally sourced chicken, Colin. There is, of course, plenty of truth in Portlandia’s comedy. Many Portland restaurants make a point of discussing where they get meat, produce, and other supplies from. But Mintz points out that we don’t have a system for confirming those claims, especially for independent restaurants.

McDonald’s — which I learned is the world’s largest buyer of beef, pork, potatoes, lettuce, and tomatoes during my reading — has a variety of mechanisms for auditing their supply chain for reducing harm. There are also a variety of NGOs that work to hold McDonald’s and other large chains accountable. But there’s virtually nothing in place for smaller businesses. Mintz catalogues different ways restaurants can lie or stretch the truth about the sources of their ingredients. As we look at our local dining options, we are responsible for deciding who we trust. But, frankly, none of us have the resources to check whether a given restaurant might be lying. There’s no easy solution to this problem and it will only grow as climate change advances and diminishes the quality of certain crops.

Ownership

Ultimately, many of the problems with the restaurant industry grow out of problems with ownership, especially of large chains that can make decisions that move the market for everyone else. It’s tempting to ignore problems with big chains if you live inside Portland’s city limits: Red Lobster and Outback Steakhouse are only in the suburbs (due in part to minimum wage laws), so there’s a sense that their problems are better dealt with by the residents and governments of Beaverton, Lake Oswego, or Vancouver. But these big companies make plenty of decisions that impact folks inside city limits and we need to pay attention.

The National Restaurant Association (or, as Mintz calls them, the “other NRA”) is a major lobby in Washington DC. The “other NRA” is one of the chief lobbyers preventing paid sick leave legislation from passing at a federal level. They don’t just harm restaurant employees with their political goals, but every employee in the country. Paid sick leave should be a right for every employee. The state of Oregon has legislation granting paid sick leave, but only for full-time employees of companies with more than 10 full-time employees.

Taking Action

While the problems Mintz discusses are national or even international, few of us have the resources to work on that level. But we can work on those issues on a local level, improving Portland’s share of the restaurant industry. One key step is encouraging local food journalism that goes beyond restaurant reviews. If we have local food media that covers supply chains, staffing, and other facets of the restaurant business, individuals don’t need to try to figure out those details on our own. Of course, local journalism has issues of its own. Eater PDX’s staff works hard, as do the writers in charge of covering food at publications like the Portland Mercury and Portland Monthly, but those publications all have clear goals that don’t prioritize critiquing the restaurant industry. We need something closer to the Racist Sandwich podcast, with a more explicit focus on Portland. (Fingers crossed for another season of Racist Sandwich soon.)

Getting good information is only part of the equation. We need to act on that information. We all want to make good choices about what we eat, including choosing restaurants that minimize harm. Mintz sees the need for more action, telling us “Don’t just vote with your fork, vote with your vote.” We need collective action, which can include voting for local candidates as well as unionization drives at restaurants, getting off of third-party delivery apps, and believing folks about sexual harassment and other abuses they’ve experienced. The problems within the restaurant industry are the same problems we see throughout society — perhaps written small enough that we can create real change on a practical timeline.

In closing, I found The Next Supper to provide a good lens on the restaurant industry, including some of the changes wrought by COVID. I’ve only covered a small chunk of the material in the book and how it relates to Portland’s restaurants — to cover it all would take, well, a full book.

​Formally ending The Portland Prospectus

Some of you may remember that in the before times, I ran an email list covering sponsorship opportunities around tech conferences and other events related to tech here in Portland. I haven’t updated it since 2019, given the large number of cancellations and postponements in the last two years.

Both running and sponsoring events look dramatically different today than they did in 2017, when I started the newsletter. Personally, I don’t feel comfortable attending big events in person and I don’t see that changing any time soon. My work has also moved away from the tech industry, so I’m not really tracking tech events very closely at this point.

As a result, I’ve decided to formally shut down the mailing list. After this post goes live, I’ll delete the mailing list, including subscriber emails. If someone wants to start something similar in the future, you have my blessing. And if you want my templates and notes, let me know — we can work out an equitable arrangement.

Since I’ll be deleting the content that went out to the Portland Prospectus mailing list, I’m also sharing the PDFs of the different iterations of the Portland Prospectus here as a sort of archive.

My election coverage, to date

I’m already working on some coverage of the 2022 primary and general elections. In the meanwhile, though, I wanted to collect the resources I’ve made over the past several years into one place.

Prior to moving to Portland, I also wrote about elections (including a stint blogging professionally about the 2008 election). I don’t really recommend my political writing prior to about ten years ago; I have learned a lot since then and developed personal politics that I feel a lot better about.

Evergreen Resources

Election-Specific Resources

PyCon 2022 talk proposals (and 75 talk ideas you can use)

PyCon 2022’s call for speakers has a little more than a month left on it, so it’s probably a good time to note that one of my past proposals is one of the examples for how to pitch a tutorial (particularly if it’s not a technical tutorial). You can see my proposal here — it’s the second on the page. If you want to see the tutorial that resulted from this proposal, I’ve posted the script and video of the tutorial on my site.

As someone who regularly submits talks to technical conferences that aren’t really focused on technology, I found the feedback from this proposal especially helpful for future talks. Here’s one highlight that has convinced me to double-down on writing lengthier proposals in order to get my idea across:

Audience:

We especially liked the ‘audience’ section. The description of whom the tutorial was aimed at was excellent.

Most of our favorite proposals include clear learning goals (showing us what the audience will learn, and giving them motivation to attend). This one provides additional details, unique to the format of the tutorial itself:

“Attendees will have at least one writing sample they can share and will be better equipped to write and test their own materials, as well as evaluate others’ writing. They’ll also know about opportunities to share their writing with other pythonistas.”

I hope these materials serve as an inspiration for Python speakers, especially anyone considering putting in a talk that focuses less on the programming language itself and more on the context in which we use it.

And if you need ideas for topics that would make great talks in 2022, here are a list of ideas pulled from various Twitter threads I’ve posted over the years and updated as needed (2021, 2020, 2019, 2018). These talk ideas are, of course, not vetted by PyCon staff and are just talks I want to watch.

  1. Most of us have spent almost two years thinking about COVID vaccines almost constantly. Some places have done well at distribution, some are struggling. If you’re building or using Python tools to help with the vaccination effort, tell the rest of us. If there’s still work to be done, tell us about it so we can help.
  2. If you have any scripts or tools that make living a socially-distanced life easier, I think a lot of people are still looking for ways to make remote everything easier.
  3. A talk about writing Python with minimal internet access or writing programs for users with minimal internet access may seem like a counterintuitive idea. But many folks have precarious internet access, and the continuing pandemic leaves those folks with fewer opportunities to go elsewhere for better access.
  4. I’m not sure what the highest number of types of pythons you can reference in one talk, but I’ve seen some herpetology tools written in Python and there’s a giant prehistoric snake with the taxonomic name _Montypythonoides riversleighensis_. There’s a lot of material there.
  5. Was there some nuance about Python you struggled with this year? Write up an explanation — I promise that if you struggled with a Python concept, some other Pythonista has too!
  6. Are you working on one of the many elections happening in 2022? Empower your fellow Python programmers to take their skills and get involved in the political process.
  7. We need to talk about prisontech and how much technology works goes into maintaining white supremacy if we want to have even a chance of reducing structural racism.
  8. Las PyCon Charlas será un track de charlas en español abierto a toda la comunidad que tendrá lugar en la PyCon US. Si hablas español, ¿por qué no envías una propuesta de charla?
  9. With the current wave of unionization at a variety of tech companies, it’s time to talk about organizing in tech communities. Some folks may be starting out with collective action, so both introductory talks and more advanced materials are good.
  10. This is more a general topic for programmers, rather than just Pythonistas, but how about a talk on dealing with old computer hardware. Programs like Portland’s Free Geek do phenomenal work getting technology in the hands of those who need it, like students going to school remotely.
  11. As responsible consumers of data, why do we not talk more about how we dispose of data? Storage space may not be an issue, but privacy definitely is!
  12. Programmers need more education on how to mitigate climate change factors. Honestly, all I know off the top of my head is that Bitcoin produces more carbon emissions than the entire country of Argentina.
  13. What do you do if you discover that your employer provides, say, a connected thermostat to a client you don’t like, for instance, ICE? Holding employers to ethical standards is a skill set every programmer needs.
  14. There are Python newsletters, podcasts, blogs, books, and other media. Maybe it’s time to start talking about the Python media ecosystem. What would this talk look like? a guided tour through what’s out there? a discussion on how the different bits interact? There are so many options!
  15. Based on unfortunate mistakes that were made, possibly at my desk, I’d love to hear more from experienced folks on how to interact with other people’s projects in ways that won’t overwhelm a server or break other stuff. i.e. how to use an API run by a nonprofit with an all volunteer tech team.
  16. Fundraising for open source projects has changed dramatically in the last two years. PyCon, for instance, is usually the PSF’s main fundraiser. If you’ve successfully raised money for an open source project in the last year, we’d all appreciate you sharing with the rest of us.
  17. I have a dream of PyCon hosting its own fashion show some day. We deserve it. And Nina Zakharenko’s earrings deserve to be on the runway.
  18. What’s the absolute weirdest hardware you’ve gotten Python to run on? Currently, I think the Furby is a standout but I bet y’all can surprise me.
  19. If you struggled to learn any concept related to Python, consider giving a talk about that concept — I can guarantee that if you struggled with something, other folks in the Python community struggled too!
  20. I’ve seen dozens of tarot and astrology apps at this point. Getting a developer’s perspective of building systems that (I assume) need to work in an element of chance or intuition world make for an amazing talk.
  21. I’m getting kind of tired of talks on automation scripts for businesses. How about some household automation scripts? Did you write a script for generating a shopping list or managing chores?
  22. Have you tweaked Python IDEs & other programming tools to make programming in Python accessible? In the past, talks covered tools for programmers with low vision and teaching Python in ASL, but there must be other accessibility hacks worth sharing.
  23. I have seen some truly amazing Python-driven sensors for temperature, moisture, and other environmental factors. I have to believe someone has put them all together into an amazing gardening system. If you are that person, you should tell the rest of us how to do the same!
  24. I’ve heard more than once that Python is used on every continent, but what exactly are Antarctic Python users up to? That’s a talk I’d listen to, for sure!
  25. I think every conference organizer has seen several versions of “How to make your first contribution to open source”, so it’s time for talks about how to make your second, or third, or hundredth contribution to open source. Tell us what comes next.
  26. There are plenty of talks out there about programming with security in mind, but it’s a struggle to find anything about programming with privacy in mind. We have a responsibility to keep users’ information private, so we need tools and techniques to ensure that privacy.
  27. Finding data sets to train machine learning projects on can have unintended consequences. Any ML enthusiasts out there who can explain what to look for when choosing data sets?
  28. If we’re honest, we could all probably use a talk on how to create bug reports that will actually result in fixes.
  29. We clearly need a Python game arcade during the conference. I will happily bring a bunch of quarters if someone brings the games.
  30. Python has been deployed to help during several recent emergencies. What’s it like to use Python in those scenarios? Is there anything you’d do differently or wish you had in your toolbox?
  31. The National Oceanic and Atmospheric Administration has this lovely open data discovery portal. Let’s talk about the weather (especially the growing number of extreme weather events).
  32. There’s one poster that I would love to see: a guide to what Python programmers are expected to know at different experience levels, at least in terms of what hiring managers are looking for.
  33. Building a Python app can be a matter of hours — but scaling that same app could take the rest of your life. If you’ve gone through the process, please let the rest of us learn from your experience.
  34. IoT / connected devices have enabled a lot of people to customize their homes to better suit their needs, like by using lights to create visual warnings for folks who can’t afford fully accessible alarms. Talk us through what that sort of project entails.
  35. Given Python’s educational usage, we may need to spend more time on Python’s user experience. I’m not sure if this topic would be best as a talk or as an open space.
  36. Several open source communities have experienced controversies over limiting the use of their work based on ethical concerns. It seems worth discussing what ethical concerns Python contributors have, as well as what Pythonic ethics might look like.
  37. Using Python to change your online browsing experience (i.e., filtering out abusive content on reddit) could make for a great talk.
  38. I would love to know how to effectively assess libraries and frameworks when choosing how to build a project. How do you vet tools so you avoid components that won’t be supported a year from now?
  39. Can someone demo some hiring exercises that don’t require whiteboarding? Ideally those exercises can actually show an applicant’s Python skills without asking for an unreasonable amount of work, but I don’t want to be, you know, too optimistic.
  40. We have about a decade left to make meaningful progress on climate change. Are there any projects out there that require Pythonic assistance? Talk us through the onboarding process and then maybe set up a sprint on that project.
  41. I continue to maintain that not enough programmers are terrified by the words “intercalary periods.” Time zones aren’t anywhere near the only difficulties in implementing time into code worthy of a talk.
  42. How we got to Python 3: I don’t think I’m the only one who likes a good code archaeology talk, so an overview of how Python has evolved over the past 20 odd years could be awesome.
  43. Python for writers (fiction and otherwise) could be an awesome talk. I could see coming at this topic from a couple of different ways, like dissecting some of the scripts writers have shared on GitHub.
  44. How to improve search in your projects, especially when you’ve scrapped a giant pile of websites, PDFs, or other data and that pile is just sitting there, silently judging you for not already working with it.
  45. I’m sure someone out there is going to be running 2.7 for years to come, so talks about maintaining and using legacy code are great. If you’ve got any particularly well-aged code still in production, tell us about what it takes to keep that code working. (I have literally written a short story about the consequences of running 2.7 for far too long, so I’m obviously thinking about this topic a lot.)
  46. Could someone with experience in anonymizing data sit us all down and talk about how to anonymize data and what potential issues we need to look out for?
  47. Okay, I’m pretty sure that most conferences don’t want talks about gambling, but I did read an interesting paper about predictive modeling for horse racing and there’s definitely a talk in there. Maybe stay away from talking about betting and focus on the math and horses.
  48. How to triage and understand Python code bases someone else wrote. Honestly, I could probably use some advice about understanding the code Past Me wrote, too.
  49. How to do due diligence on an open source project before using it: There are definitely security factors we need to think about, but we also need to talk more about project sustainability and deciding if it’s worth supporting projects with questionable approaches to inclusion.
  50. While a lot of us use GitHub, there are other version control apps out there (including other git-based options). When does it make sense to use other options for Python projects and is it important to reduce reliance on a single app?
  51. Python in a hurry: what tools and techniques can help get something / anything into production? But you’ll also want to cover the tradeoffs and technical debt accrued along the way.
  52. There are some serious pros and cons to doing genetic testing through 23andme and similar tools, so maybe it’s time to talk about how to do our own analysis of our genetic history (including using some of the Python tools that already exist in this area).
  53. I know NASA uses Python and I just want to say that I am here for *any* talk about using Python to launch stuff into space. (Non-NASA space talks are also super cool.)
  54. What’s the life cycle of a Python library? What should we know before we decide to create new libraries? (Bonus points if your slide deck illustrates concepts using the life cycle of a python!)
  55. Benchmarking the different hosting options for Python-based projects would make a great poster session topic (and I would probably ask for a copy of that poster for my office).
  56. A lot of programmers learn multiple languages, so where should a Python programmer start with other languages? I know a lot of folks say JavaScript, but I bet there’s a lot more to the discussion.
  57. Software testing on a shoestring budget would be great. There have been a lot of “Python for activism!” talks lately, but one of the results have been some projects thrown over the wall without any testing, because testing seems hard and expensive.
  58. Another technology archeology idea: what old hardware can you get running with a more modernish interface? And let’s go old-school: if you have access to, say, a Jacquard loom, what can you do with it with a modern programming language?
  59. Building local mapping systems, especially in ways where data can be shared. As a for instance, being able to map warming shelters (especially the informal ones, like churches) as they open and close in real time would be so useful during freezing temperatures.
  60. Anyone with a generative art project should write it up, in my opinion. First, because all conferences need more art. Second, because there is some AMAZING art coming out of human / tech combos right now.
  61. Augmented reality is a thing right now. There are amazing museum installations (more art!), accessibility upgrades, etc. out there that we’re not seeing a lot of in talks yet. (I’ve seen several “I made an app for other techbros!” talks, so anything else really would be nice.)
  62. One take on the standard “make your API actually useable” talk I’d love to watch: how to prep your API to work with platforms like IFTTT or Zapier. What does it entail behind the scenes and how many different ways do users find to break things?
  63. Building Python tools for non-programmers would be a useful talk. I’ve seen a couple of great PyQt walkthroughs, for instance, that could really be followed up with another talk on how people actually use GUIs after they’re built, necessary upgrades, unexpected edge cases etc.
  64. Oooh, someone could totally do a talk on code review best practices, especially around what parts can be automated and what bits a human needs to do. If you’ve got some ideas for adding empathy to code reviews (especially for the bits that are automated), that would be great!
  65. There’s some really interesting technology built around religious needs (often with Python). For instance, some Orthodox Jewish business owners take down their websites for the length of the Sabbath. Kosher technology is fascinating and talk-worthy.
  66. I’m so here for data spelunking talks, especially from data journalists. Had to go to absurd lengths with a FOIA request, munge together data sets from old scans, or otherwise work with dubious data? What’s your workflow?
  67. Would someone please give a talk with “How to Teach Your Daughter to Code” as the first slide and “Exactly the way you’d teach your other children to code” as the second? You could follow it up with an actual talk or submit it as a lightning talk.
  68. I’m not sure what the oldest Python code still in use is, but if anyone’s running software using, say, Python 2.0, what does it take to keep that kind of well-aged software up? Even better if you didn’t write the code initially and had to read the previous programmer’s mind.
  69. There are tons of talks on building tools to track and improve health, but very few on tracking and improving mental health. I don’t believe for a minute that none of y’all are tracking mental health data on yourselves, so put in a talk if you’re comfortable talking about it.
  70. If anyone is hardening systems using Python to prepare for natural disasters (or man-made disasters, as the case may be), that’s definitely a thing you should put in a talk on.
  71. I’m always in favor of community-specific trainings about how to work with the community’s code of conduct. Ally and bystander training around PyCon’s Code of Conduct would be particularly nice.
  72. Python has impacted how a bunch of other programming languages have evolved. A talk on those impacts in other languages, along with an exploration of anything those languages have improved upon would be super interesting.
  73. There are entire series of books dedicated to using what you know about one programming language to learn another. What about a talk that uses the same approach to introduce a couple of Python frameworks? What do they have in common? How do they work differently?
  74. How about an intro to building linters? Maybe some best practices, tips on making linters more accessible, that sort of thing?
  75. An annotated discussion of all the Monty Python jokes in the Python language, especially for everyone who did not grow up with the antics of said comedians.

So you have 75 ideas to get you started and roughly a month to write your proposal. What are you waiting for?

A Hanukkah zine update, in time for Hanukkah

A couple of years ago, I made a collection of zines for Hanukkah as a way to talk about what the holiday commemorates and how it fits into the American winter holiday season. Those zines are available on Gumroad (embedded below the post) as printable files for whatever price you’re able to pay.

Miranda Sullivan, New Voices’ columnist covering Jewish zines, wrote a kind review of my zines: Start Preparing Early for An Anti-Nationalist Hanukkah: A Zine Review. Here’s a snippet from Miranda’s review:

For the most part, Bram presents a collection that prompts the reader to create their own modern commentary rather than presenting a monolithic view of the holiday. After reading these zines, to me it’s clear that Hanukkah is being used by today’s American politicians to punch a hole in their “I’m not discriminatory I have (fill in the blank) friends!” card. It also made me think about the close relationship between Zionist settler-colonialism and the United States’ military industrial complex.

Miranda Sullivan

Having this review in New Voices means a lot to me, because one of the first pieces I ever wrote about my Jewish experiences was for New Voices. The publication is written by college students and way back in the day, when I was still in college, I wrote an article about Jewish life at the University of Tulsa.

That article doesn’t appear on the New Voices website these days (which is for the best; I have both progressed as a writer and in my ability to think critically about religion and education). If you really want to see how much my writing has improved, I suppose you can look at this copy on the Wayback Machine.

Honestly, though, you’d be better off checking out Miranda’s other columns on Jewish zines, especially the review of The Jewish American Princess Zine, which dives deep into the racial politics of the Jewish American Princess stereotype.

The Portland Charter Review Process: A Resource Roundup

I’ve been following the Portland Charter Review process closely since it started in 2020 and have done what I can to make the process a little more understandable. Those efforts have included Twitter threads, explainers, and even ideas for folks interested in submitting public comments. I’m collecting all the materials I’ve made here and will continue to add additional items as I make or find them.

Materials I’ve Created (Arranged By Topic)

Charter Overview

Public Testimony to the Charter Review Commission

Applying to Join the Charter Review Commission (Application Now Closed)

  • Application Explainer — During the process of selecting commissioners for the Charter Review commission, I created this explainer to help more people apply for the commission.
  • Twitter Threads on Applying — This thread covers material included in the explainer adapted to social media. The threads are on Twitter, but there’s also a PDF of the tweets included in the threads, because finding old tweets is difficult.

Additional Resources From Other Sources

Sharing Guidelines

If you are interested in sharing or repurposing any of the materials I’ve created around the Portland Charter Review, you’re welcome to do so. I’ve licensed the materials I’ve created under a Creative Commons Attribution 4.0 International License, meaning that I just ask you to keep my name on things I’ve written as you share them. I’m not necessarily worried about credit so much as making sure that folks understand that these are materials produced in my spare time and are not reviewed by anyone who is officially part of the charter review process.

Please let me know if you do repurpose or share any of these materials in a way that I can help promote. Examples include:

Writing *about* Python: a style guide

Given how much I write about Python, creating a style guide for writing about Python was probably inevitable. With the support of The Recompiler, I’m pleased to present a new supplement for The Responsible Communication Style Guide: The Python Style Supplement. We’re also working on a supplement covering Age.

The Python Style Supplement includes:

  • How to write about Python
  • Reasons and strategies for avoiding obsolete terms
  • Python terms and definitions
  • A timeline of Python’s development
  • An index of Python enhancement proposals with a special focus on PEP 8 and PEP 20
  • An index of Monty Python productions

The ebook is priced at $6 and contains over 100 pages of Python-related goodness.

Since discussions of obsolete terms are showing up again in programming circles, we’ve released Erin Grace’s article on “Reasons and strategies for avoiding obsolete terms” on the RCSG website. Previously included in The Python Style Supplement, we agreed that this article is too important to make available only behind a paywall.

Our Python, available for a donation to PyLadies

Text surrounded by green squares following one red square (like a low-res Snake game), reading: "Our Python" Support PyLadies and get an anthology of creative Python works from @glasnt, @oboechick_, and @thursdayb! Make a donation to the PSF earmarked for PyLadies then forward your receipt to pythonofourown@gmail.com

I’m so pleased to announce that the Python fan anthology Nic James and I have been working on is now available!

To get a copy, make a donation to the PSF earmarked for PyLadies here and then forward your donation receipt to pythonofourown [at] gmail.com. You’ll receive a copy of the anthology as a PDF.

Even a small donation counts!

If you’re having a hard time deciding on an amount, here’s a suggestion: If you usually buy tickets to the PyLadies Auction at PyCon, give $5 to 10. If you buy raffle tickets at the Auction, give $10 to 20. If you call your manager and negotiate to buy a painting of Guido van Rossum, you could give $1,000.

My contribution to the anthology is a short story about the long-term impact of sunsetting Python 2. The anthology also includes other contributions: Nic James turned PyLadies logos into cross stitch patterns so everyone can make their own PyLadies textiles and Katie McLaughlin gave us a tour of a ‘completely different’ Cheese Shop.