I experienced Joe Rogan

Sometimes it’s healthy to subject yourself to painful or traumatic things in a controlled way to reduce your sensitivity to it. I did not like Joe Rogan going into this project. Hearing him out for hours didn’t improve my impression. But I did hear him out.

Joe Rogan is at his best when he shuts up. He has no standards for his guests. One day he’ll have on Penn Jillette, a man who changed his podcast intro to be nonbinary-inclusive, and the next Joe will have on someone who’ll tell you that nonbinary stuff is “gender ideology” and whine about children on Twitter telling him to shut up. No standards.

But sometimes he has good guests on, and he doesn’t do any editing. I want to focus on one interview in particular: episode #1258 with Jack Dorsey, Vijaya Gadde, and Tim Pool. Jack Dorsey is Checkmark Zero, and largely irrelevant to this story. Vijaya Gadde is Twitter’s head legal team person and responsible for what they call trust and safety.

I don’t think I would have understood all the viewpoints involved here without the format. The episodes are long. This episode is three and a half hours. So long that everyone got out the usual BS, realized they kept repeating themselves, and chilled out enough to hash out their differences and similarities for a couple of hours before calmly conceding they wouldn’t fully agree with each other, but at least understood each other’s positions.

Tim Pool is one of those people I would normally dismiss as an asshole. Asshole, probably, but I heard him. He’s your typical free speech absolutist. He has his lines, and those lines are informed by his ideology. He thinks, and Joe generally agrees, that removing people and content from platforms prevents people from making informed decisions. He cites an example where a friend of his was going down the alt-right rabbithole by way of a right-wing personality. He wanted to reference a video on YouTube from that personality to show how bad they really are and where his ideas went, but the video was gone. He admitted he didn’t know why it was gone, but the point held: the video wasn’t available as evidence to steer that friend away. That was actually kind of persuasive. A point of agreement! We might disagree on the solution. More on that later.

I don’t think they would have gotten to the point of actually laying out their worldviews in a more filtered format. Unfortunately, that format also means people with some absolutely atrocious ideas get to speak without challenge, without the slightest “now wait a minute” from Rogan. That’s fine for a Vijaya Gadde or Penn Jillette, but not an Alex Jones. I got to better understand Tim Pool’s bad ideas, why Twitter moderates the way it does and the struggles they face, and I got to hear every single story Penn Jillette repeats on every podcast he goes on.

As for how to moderate tricky content, I think it’s better to demote the content and people and provide some informed commentary, then provide a path to the full force of their ideas with the benefit of that context. In the same way, I wouldn’t send someone to Joe Rogan’s podcast without pointing out some of the troubling people he has on. This is generally the path big platforms have taken. Twitter and Facebook added several classes of warning after the January 6th insurrection, and YouTube puts warnings on all kinds of things. However, they stop short of demoting things.

Learn to code. Or don't.

Reasons to learn to code:

  • You have an offer for a job that involves coding, or could benefit from it

  • Existing tools don’t serve your needs well, or at all

  • You enjoy it

“Learn to code” is the common refrain for what to do when you’re poor. It’s misguided at best, malicious indifference at worst.

I had a problem trying to learn to code: I mastered all the syntax of a language, got comfortable understanding the standard library documentation, followed guides on applying common frameworks and libraries.

And then…

Well, what next? I can do it well enough, but all my hobbies have great tools already. None of the open source stuff I might contribute to comes close.

And no one will give you a programming job in the current environment if you don’t have a GitHub bursting with personal projects. So doing it as a job is out as an option if you don’t lean that way. Some people enjoy it and have no problem filling out a GitHub, or they have enough problems with the tools available to them that hacking on them is the best path forward.

This is not me. Of course, I reserve the right to change my mind without explaining myself. I probably will if it happens, but only because it’ll make a good article.

Most people will not make a better living programming than they could pursuing things they actually care about. The people at the top levels of the field are hard at work coding themselves out of a job by lowering barriers. This is a good thing for society, but it’s bad for salaries. Accessible means more competition: it opens the field to people who maybe aren’t brilliant with syntax, but can piece together elegant or at least functional solutions from off-the-shelf components. The gold rush is on the way out, and “programmer” is turning into an actual job and losing its value as a status symbol.

There is a future, probably not far off, where the shine wears off and it’s enough to be able to pick up syntax quick. Where companies hire for ability to learn and do the job, not ability to pass gatekeeping exercises.

But let’s say you’ve decided to forge ahead and learn to code. Here’s some tips.

Behind “where do I start with programming?” is “what if I pick the wrong language or framework?” For every possible path, there are fifty popular tracks. I think this overwhelm is a problem of approach.

No one tells you that it’s impossible to know which path to take before trying a few. You have to learn how to make a loop and instance a few objects or toss a few functions around in different languages until you have an idea of what appeals to you, and what well-worn paths or broad fields you can explore with those appealing aspects.

Other people’s opinions—theory, tutorials, forum posts, reviews, podcasts—are for when you have enough experiential knowledge to tell whose advice fits your needs and inclinations.

So that’s it. Pick a language. Mess around in it. Make some toys. Pick another language. Repeat. Like that framework? Goof around in it. Does that tutorial video look promising? Watch it, then see what others said about it.

Given enough time, you’ll get a sense of what you gravitate toward and discover the magic words to find other stuff that employs the bits you like. Then, and only then, are you prepared to get something out of some Elder Programming God’s treatise on Python bytecode. You aren’t ready for Python bytecode. Experts in Python sometimes don’t even know there is a bytecode.

Did you know Python list comprehensions and their expanded equivalents compile to bytecode with different performance profiles? Down this treacherous path lay premature optimization and wasted time until you know what to do with that knowledge, or if you need to do anything.

Go play. Have fun. You used to get this when you were a toddler. Did you worry about who had the best take on toddling form? Of course not. Be like a toddler and bump into things at random until something clicks. The sheer wall of frameworks and languages and platforms and tools doesn’t exist until you’ve picked enough at random and played with enough to filter the pile into something you can reason about. Then you realize the wall is a staircase that branches off in different directions.

Your assignment: pick a language. Find it on Learn X in Y minutes. Find some way to apply the different patterns to something you care about. A good clue is to see what libraries are available for that language, and how many target your interests. Try to implement one! Can’t find any? It’s a harder road, but someone had to make the first library. Maybe you’ll start a trend. Maybe you’ll figure out why no one wrote a library. You can write and publish a warning for others.

  • If you like listening to music, find a library that cracks open audio files and reads their metadata, then do something useful with it. Can you out-do Spotify’s recommendation algorithm? Look up how to make a K-nearest neighbors (KNN) algorithm.

  • If you make music, build a tool to open your project files and see which chords you use the most. This one’s trickier than it seems. Answering “what is a chord?” fills books.

  • If you’re a writer, do some statistical analysis on your writing and see what insights you can pull out. See where your findings meet, diverge from, or clash with the writing advice people give.

  • If you’re an artist, crunch the pixels and see which colors you use the most. Try to generate a set of pallets and compare what’s “right” in color theory to what you make and what looks good to you.

My advice to you, is to stop listening to advice until you know what to do with it. Do first. Find what you enjoy, then what you can do with it, then how you can do it better. Some people take on programming as a hobby and write code for the sake of writing code, but for most of us it’s a force multiplier. We need something to multiply.

After that

I am going to be honest with you: if you fully intend to make a go at this, you need to eventually have a passing familiarity with what nerds like to call idioms, patterns, and algorithms. Or something to that effect. Roughly translated: all the ways to do stuff that other people found after beating their head against countless dead ends.

For example: you’ll often encounter advice in the form of “don’t roll your own…” and it’s most often attached to crypto. But only because the hazards of getting encryption wrong are higher than with most things. Find the patterns. Find the idioms. Find the algorithms. Find the well-documented pitfalls. Then roll your own, if that sounds like fun, or if the existing stuff doesn’t fit your needs.

You’ll want to know this stuff eventually. Play, practice, have fun. But as you do, seek out a good book on common programming patterns. Things that transcend programming language tend to be called patterns or algorithms. Your bubble sorts and such. Languages often have their own word for the way things are done in their community. If you’re exposed to online games at all, you’d call this the meta. And like in games, it’s always evolving. In Python, for example, things in line with the meta are pythonic. For the rest without a word, idiomatic is the term. So if you want to find good ways to do something, search something like “idiomatic way to do [x] in [y language].” This is the stuff that most people get bogged down in trying to learn. Any good guide will cover this stuff, but do follow up with other perspectives. Truth comes out when ideas clash, but you don’t know what truth looks like yet.

Concerns about efficiency and security, which the meta generally focuses on, don’t really apply until you post your code up for others to use.

One caveat that you should care about from the start: there are different ways to mangle and manage data, and computer science has a good handle on what to use and when. I had a great list of these algorithms bookmarked somewhere on GitHub a while back that gave a rough overview of the common algorithms and examples in popular programming languages, but it went missing. You can guess and fumble your way around for writing personal code, but you should look up battle-tested ways of handling data for anything you let other people use.

Wikipedia has a huge list of algorithms you can do a page search on (Ctrl+F in most browsers) to find something suitable for what you’re working on. It’s more unwieldy than the list I had. Most languages implement these in their standard libraries, and they’re made by people who know computer science and practical programming, so you probably won’t improve on them by rolling your own implementation.

Don't join a poly-cule until you have a poly-clue

Polyamory is when people decide to have some kind of relationship and are open to the idea of it not being exclusive. The shape of these relationships is highly situational and personal.

There’s basically two ways polyamory goes down:

  1. You learn a lot about yourself and unpack all the stuff you’ve buried over a lifetime, figure out what you want, and are forever changed for the better. Maybe this means you decide polyamory isn’t for you. This is how it went down for me.

  2. You double down on all your insecurities, ruin everything, and blame polyamory for it. Most of the negative stories you hear come from this. All polyamory does is amplify what’s already there. It’s like getting superpowers. An ass with laser vision was already an ass without it.

Here’s a short list of tips:

  1. Don’t go into it thinking it’ll solve your problems. A broken relationship will end up more broken if you try polyamory.

  2. Have clear expectations. Someone will get hurt by whatever you think is implicitly understood.

  3. Don’t mislead partners about possibilities, even by omission. If you’re adamant about giving your existing partner(s) veto power, make this clear up front with new partners.

  4. If you aren’t well-off, it’s probably not going to work. I learned this the hard way. I believe he wanted to make it work, but between a job, family, student loans, and previously undiscovered insecurities (for all involved), it was never going to work.

  5. When it doesn’t work, don’t be strung along. You probably won’t be friends after. It multiplies the trouble that comes with trying to be friends with someone you broke up with when it’s just the two of you. They’re going to want to talk about all the great experiences they’re having that you don’t get to be part of. And they’re going to feel bad or resentful when you finally set a boundary and say no, I don’t want to hear about it.

  6. When it doesn’t work, don’t string them along.

  7. Too many people in the polyamory community like to talk trash about people who don’t want to be friends with someone after a breakup. Accept no shame for your boundaries. Accept no shame for taking care of yourself.

  8. Accept no proxies. If a metamour (partner’s partner) has a problem with you, they need to speak directly to you. Or, at minimum, establish some boundaries on how you can lean on the person in the middle. They can act as a mediator; they do know both sides best, after all.

Speaking from experience, the last one paired with veto power is a relationship killer. I felt like an accessory to someone else’s relationship. It seemed like there was some new edict coming by way of the person I was trying to date every week from someone I’d exchanged maybe five awkward, anxious, uneasy words with. Someone who always acted hostile toward me.

Oh! That brings in a good final bulletpoint.

  • Don’t ignore the red flags. She looks you dead in the eye while smooching the person you’re both dating the first time you meet? Probably not going to work out.

Polyamory is an amplifying force. It takes anything that’s marginal and dials it up to 11, good and bad. But mostly the bad. All your insecurities. All your bad habits. Any mental health issues. All your money troubles. Everything you hoped wouldn’t come up again.

Anything you haven’t worked past will come up. Some stuff you thought you worked past will resurface. How you handle this will determine your experience with polyamory.

History is cancelled

Grade school curriculums erase the rough edges and rotten cores of history. By the time you reach a point where any of these missing details are taught, or even accessible, the rewritten history is not easily dislodged.

I try to take this awareness into interactions with people who say ignorant things. I try to show the same patience and understanding shown to me over my many and vast ignorances. If my angle on something is better than yours, it’s only because I listened to people whose angle was better than mine.

Information is sparse even in our high-speed interconnected world. Perhaps more so because of all the noise. It’s easy to point to people in past times who Got It. Abolitionists existed, after all. They Got It. Or at least by some quirk of ideology believed the treatment of some people was wrong even if they didn’t fully recognize the humanity of those people. But the majority of people of a time fall victim to its popular narratives.

Some commentators in our modern time of social media, falling victim to the era’s narratives, will tell you that one mistake is enough to end your social existence. They call it cancel culture. I don’t believe it’s as big a deal as it’s often made out to be.

As a budding, insecure queer who didn’t understand their feelings or know anyone who might have guided me through it, I called every bad thing “gay” back when that was fashionable before a teacher explained why it was bad. “What if you were gay?” Lady, you had no idea. This was at the tail end of the plague that wiped out queer elders, so us ‘90s kids were on our own in a society that had mellowed out from the gaybashing ‘80s to the casually homophobic ‘90s. Watch “Paris Is Burning,” check IMDB, and see how many hands you need to count people in it who survived past the 2000s and how young they were. They should be alive and well, but most aren’t. Nobody beat me up, but being alone in a society that understood me as well as I understood it---poorly---left injuries that are still healing.

Does it seem dangerous to admit these things in a “cancel culture” environment? I’m sure there’s someone out there who would hold an adult responsible for a mistake made and learned from as a child, but I don’t plan to edit to suit them.

The logic of cancel culture worriers goes that one mistake is enough. I’ve made tons of mistakes and learned from them. Admitting this should be insta-pariah by the worry-logic. I think about the luck I had in having elders to pull me aside and treat me with the care an ignorant child needs. I think about how most people don’t have that, and end up making the same mistakes into adulthood where those mistakes have real consequences for others, especially those they have power over. I think about how much would have been different if I’d had even one queer person in my life who’d had any real life experience. The closest I had was a friend who I just thought was quirky, but turned out to be a trans woman when we met up again. Now I understand why her dad kept making her cut her long hair to something more masculine. He wasn’t just worried about her resemblance to Kurt Cobain.

I’ve made yet more mistakes as an adult and learned from them, often right out in public on social media. I fearlessly swing my foot around knowing it might end up in my mouth. Just like everyone who has or will practice patience with my ignorance, I understand I might be the first nonbinary or generally queer person someone has ever met.

“Cancel culture” isn’t some new phenomenon. It’s the latest growth from apocalyptic soil watered with a bloody history our institutions would prefer we forget. A hate mob on Twitter can quickly propel you to just enough temporary celebrity to bring out every kind of human, good and bad, all in one indecipherable cacophony. The character of individual messages ceases to matter because they don’t resolve as individual. But it’s not new. The din of a real mob with torches blends in with one person off to the side telling them to chill out. What’s new is that the historical targets of these mobs can now turn mob fury on others. It still doesn’t make anything better. I won’t lose any sleep over J.K. Rowling being run out of decent company for her ignorant comments on trans people, but the subculture of misinformation people like her find when confirmation shopping under the guise of research is still there. The false histories they share, the lies they cling to for dear life as they try to explain away other people’s existence.

People on the boot end of society aren’t fragile. We don’t wilt at mere ignorance given voice. We won’t “cancel” you because you said something wrong. To quote Uncle Frank in response to a family member’s kindly ignorance: “I understand that’s the best you can do.” I understand people say these things. I understand they mostly mean well. You have to pair it with something sinister before I get out the Pitchfork of Gentle Correction. I say I, not we. There are people who get out the pitchforks early. It’s usually on social media or in blog posts where there’s little threat of violence in response.

They’re mostly people whose elders, the people who might guide them to a fierce but strategic advocacy, were murdered by police or mob violence, thrown in prison for bullshit reasons, or allowed to die in a plague. People like me were left in the camps by the “good guys,” and things have only improved in little pockets of the world. And we seem to be headed toward a stark regression. If you can bring empathy for the guy who got fired from Google for circulating a paper that made his colleagues uncomfortable, you can bring it for people who are dealing with a strange world with no one to talk to who gets what they’re going through.

“History is written by the victors” doesn’t just mean the losers get to be ignorant of history. Everyone is ignorant of the truth. We didn’t know the “good guys” of World War II left people like me in the camps, or chemically castrated the gay guy whose work in cryptography helped end the war. We didn’t know the pile in that famous book burning photo was substantially from the era’s equivalent to a queer center. We didn’t know the good guys loved eugenics, then a world craze for years, and mostly disagreed with the Nazis on how to go about it. Mass murder was mostly off the table, but sterilization, forced reeducation, and stealing children was quite popular among former British colonies. Still is. Nazis took notes and inspiration from the people who wanted to punch them.

We sure didn’t know Texas didn’t get the memo on Emancipation until soldiers marched over the apocalyptic ruins of the Indian Removal Act to let them know slavery as it was practiced was over. Not that it was actually over.

Perhaps you were fortunate to have an education and experience that included these things, just as some people in that time long ago had an education and experience that led them to support abolishing slavery. This is not the norm.

All our queer elders were wiped out by malicious indifference during the AIDS crisis. Vast swaths of black elders were and still are sent off to prison in service of the so-called war on drugs, or just murdered in the street by cops and vigilantes taught to see them as Other. Indigenous peoples, who faced the worst of the victor’s attempt to rewrite history, try to piece together some kind of heritage as they forge ahead creating new culture even as people parade around in fake war bonnets whooping like idiots while braying about how they’re celebrating “The Culture.” They don’t know. They don’t listen when told, but it’s how they’ve been taught to handle conflicting histories by their elders. The people who cancelled history.

"Cancel culture" is the villain in an episode of Scooby Doo. Pull the mask off and it's just colonialism trying to steal and rewrite the history of yet more territory.

Further reading/watching

Tim Ferris on what happens when you get famous. As someone who’s been on the receiving end of an angry Twitter mob, so much of this is familiar.

Zack Airas on his racist upbringing. I grew up in more or less the same area a decade or so later and the situation wasn’t much better. A friend’s moms had a pride flag a street over, but the KKK recruiter was closer and more available. Elders steered me away from that one, too.

Netflix documentary on the 13th amendment. Free to watch.

The Case for Reparations. This is essentially an abridged chronicle of racism in the US, past and ongoing, with a gentle suggestion at the end for congress to study lingering effects of slavery.