Jason Becker
March 5, 2022

Riccardo More wants you to believe that Catalyst has led to an empty landscape of new, great Mac apps, claiming

An operating system (and relative first- or third-party applications) that really embraces the potential and the characteristics of the specific hardware it runs on needs to be built on an equally specific set of frameworks, and does not need to be contaminated by frameworks and paradigms from an operating system that historically is a simplified derivation of Mac OS X itself.

But I think Christian Tietze has it right,

Riccardo is not happy about something, and I don’t understand what or why. Is it just existential fear for the Mac? Or is he genuinely unhappy with the tools in his toolkit? Which are these? … All in all, the Mac app landscape appears to be in good shape.

More’s own list of “old (some very old), tried-and-trusted applications” includes NetNewsWire, which is a completely modern Swift rewrite that only shares it’s name (and creator) with the original.

But there are many great new Mac apps, they just may solve problems that More has already solved his own way. He mentions nvAlt for notes, which is about to be re-released as a ground up, rewrite commercial product. Unless he only pays attention to the Obsidian and Notion crowds, there are many other great macOS note taking apps like Craft and Bear, both of which feel great. He’s happy with BBEdit– who can blame him!– but it’s not like Nova didn’t just get released. He doesn’t mention any email applications, so I’m assuming he’s just using Mail.app or webmail, but Mimestream is phenomenal if you’re using Gmail 1. I could say the same about calendars and Fantastical.

What’s going on here? Some of us have started to reach middle age. We have the tools and solutions that work for us and have become engrained in how we think about using computers. Just like seemingly every generation decides that music is worse than it’s ever been and nothing new is as good as what came before, we just don’t look for new solutions to our problems. We rebuild ourselves around the tools that we have that work great. New stuff loses any luster it had just for being new, and it turns out a lot of “problems” we have with our tech… aren’t.

Look at how someone ten years younger than you uses their phone or computer. I bet they have a whole different set of obviously essential tools solving the same problems we have but in a way that works for them.

The apps haven’t gotten worse. The platform simply hasn’t changed that much. What we use computers for has stopped changing so much. And the problems we have haven’t changed that much. It’s natural the tools and solutions haven’t changed that much either, provided they have a sustainable business model.


  1. Please, please, please start working on JMAP and Fastmail support! ↩︎

March 4, 2022

The internet is this big confusing place. I want a place that feels like home for me… It’s easier, in some ways, to do governance around these real communities because you can say, “We have some shared assumptions in common. We have some shared belief. We know that we need this space because there’s no other spaces out there for us.”

– Ethan Zuckerman in The Good Web: Competing Visions for the Future of Social Media

When I think about The Good Web, it was one full of real communities. We have real communities today, but they are far more porous and amorphous. Real communities on centralized platforms confront mega-scale problems within tiny spaces, and the poorly defined boundaries on most mass social platforms breaks down the ability to do community governance.

The Good Web was filled with bad behavior– the abusive forum or list moderator is an ancient web archetype. It wasn’t always welcoming, but it was governable.

February 14, 2022

After years of trying to get my emotions more under control, the most successful thing I’ve ever done professionally is verbally acknowledge and annotate.

“I feel like I sound angry right now, but I’m not.”

“If I seem frustrated, I think it’s because I didn’t sleep well.”

“I understand I’m being reactive right now and may feel differently later.”

If I could somehow recognize the emotion, reset, and talk and respond a different way in the first place, that would be amazing. But meditation, therapy, and all kinds of trying never got me there.

What I have learned is how to feel when it’s happening and correct afterwards.

February 13, 2022

I was thinking earlier about what it would be like to rearrange my life around monthly travel when it suddenly dawned on me that monthly travel would be a decline from my pre-pandemic lifestyle.

Of all the things I’m hoping for, a return to travel has got to be the top of my list. Even when it’s for work, even if I can just tack on a day or half day, the refresh I get from a change in environment is so important.

Routine siphons vitality.

That’s true for me even when the routine has not become a grind. But the pandemic has made all routine a grind, and getting out and about is fixing something inside me.

I sent my proof of vaccine to Puerto Rico before entering. Without my QR code, they would not have allowed me to leave the airport.

At nearly every restaurant or indoor store, I’m asked to present proof of vaccination. Hand sanitizer is still common and requested upon entry places.

Masking compliance is universal among those who live on the island, even outdoors (at least in tourist areas in San Juan).

I’ve spent this trip comfortably dining indoors and out, in and out of boutiques and galleries, and by the pool and the beach. 1

None of these measures feel meaningful restrictive. All of these things fade into the background. Were they all necessary for safety? Maybe— masking outdoors seems like the least meaningful of these measures.

Really this whole experience reminds me that all of the fabricated outrage over simple public health measures has created far more inconvenience and disruption than the measures themselves. Fear of the anti-vax, anti-mask crowd showing up and getting rude and violent with retail and food services workers has halted any attempt to protect public safety in favor of self-imposed restrictions that are far more severe.

I can’t help but believe that it is not the COVID cautious who have changed normalcy, but the COVID denialists who have led us to an extended pandemic, with no public health interventions being acceptable.

I haven’t been restricted from doing anything at all in months… maybe more than a year? But I have also been to places with very different COVID responses and know how much safer some places feel. And guess what? When I feel safer, I do more.


  1. While I wasn’t working, at least. Most of my time was at a conference, whose organizers nailed the hotel, location, and agenda. We’ve been outdoors a bunch, with some nice blocks of a few hours here and there to enjoy our surroundings. ↩︎

February 6, 2022

The mistake I made is a common one: I conflated a fandom with the art that the fandom loves.

– Jordan Calhoun in Stop Blaming Fandoms, FFS

I know that I personally have a difficult time separating art from its fandom. With critical conversation expanded to include, well, everyone these days, it’s hard to experience any art without being “exposed”. Discovering a community centered around something you love feels categorically different than being surrounded by a community that loves something you haven’t experienced.

Maybe I can mature past this, but for now, I need distance from community to form have own experience.

February 2, 2022

It feels like I cannot be reminded often enough how awful it is to be a woman on the internet. So it is with sadness, shame, and embarrassment that I am sharing Aubrey Hirsch’s recent piece in Men Yell at Me, That’s How It Works When You’re a Woman on the Internet.

Women do not need to read this. They do not need to be reminded of the trauma that they face being women on the internet. But every single man should read this piece and consider how they are going to atone.

That’s right– if you’re a man, you need to think about how you are going to personally atone for the harassment that women face by existing in public. It doesn’t matter if you don’t feel you are directly taking actions against women, you live in a society and a culture that makes men feel safe behaving this way. You live as a beneficiary of not facing harassment and fear for your very existence, and the men who are committing these acts against women sure as shit aren’t going to respond to their victims’ pleas or power.

Men are responsible for a world where men treat women like this. We must all consider how we are going to act to build a world less like this. These views and actions persist with our acquiescence when it lacks our permission.

January 30, 2022

I don’t remember learning about the Holocaust. When I read people discussing when is the appropriate time to introduce children to this history, I never know how to answer. I always knew about the Holocaust.

I always knew about the family coming from somewhere that was not here. I always knew that the family that made it here was a small fraction of the family that we had. I always knew that there were some people who hated me for one of the only things I knew (and liked!) about myself— I am Jewish.

I don’t remember not knowing about the Holocaust.

I do remember the first time I read Night. It was freshman year of high school. Not only did I know about the Holocaust, but I had read about it in history text books, learned about it during my Jewish education. I had visited the United States Holocaust Memorial Museum. My familiarity with the Holocaust was, I felt, pretty deep.

Reading Night was different. I remember at first being surprised at how much my non-Jewish classmates knew about the Holocaust as we made our way through the book. But that combination smug and dismay feeling was quickly erased, because Night filled me with a horror and a pain that has lived with me forever. Eli Wiesel’s account broke me and somehow made something which had felt real and haunting instead feel real and present.

There is no way to learn about the Holocaust from a place of safety.

January 26, 2022

The right in this country is banning books again. This time, we cannot learn about the Holocaust from a book with vulgarities, regardless of the vulgarity of the Holocaust. The Bluest Eye is banned, as it often has been, because of its depiction of sexual violence and racial violence, regardless of the truth of those events.

Many Americans, whipped up by demagogues and ideologues and charlatans are questioning how students are taught, wanting to make sure we return to the whitewashing of history that was prevalent during Boomer childhood. For example:

“With all the drawbacks of slavery, it should be noted that slavery was the earliest form of social security in the United States,” students read in Alabama history textbooks of the 1950s, ’60s and ’70s. And there was this: “A jail sentence or the execution of a slave was considered to be more of a punishment for the master than for the slave, because the slave was such valuable property.”

A Virginia textbook of the same era told students that Virginia “offered a better life for the Negroes than did Africa. In his new home, the Negro was far away from the spears and war clubs of enemy tribes. He had some of the comforts of civilized life.”

The punishment of enslaved people was described as rare and unfortunate, but necessary. “Most masters did not want to punish their slaves severely,” the Virginia textbook read. “In those days whipping was also the usual method of correcting children. The planter looked upon his slaves as children and punished them as such.”

– From Joe Helm in Teaching America’s truth, August 28, 2019

It seems that the alt-right insult of just a few years ago now applies more strongly to the right wing itself, which now offers up a call in hotline for parents who don’t like what their children are being taught in school.

As a kid, I remember watching Field of Dreams, and there being absolutely no question about who the heroes were– not the folks banning books, which was anachronistic in 1989.

What does this all add up to?

A fearful level of anti-intellectualism, a total denial of our own history which can only hault social progress, and endless division and strife as America slides further from its ideals and toward its past.

The arc of the moral universe is snapping back, and it’s hitting way harder than a slap.

January 16, 2022

I have replaced the Photos link in the navigation to the new Books. Photos can still be viewed from the Archive page, just by clicking on the photoblogging category link on the top of that page.

This is not a photo blog, though I often post pictures, and I’ve decided that having a whole separate navigation item just to link to an Archive page with only photo posts wasn’t that important.

Instead, reflecting my long hobby of reading (and tracking my reading on various websites that are not my own), I’ve added a Books section. A few bits of note:

  1. I generally only track fiction reading of books I read with my eyes. I’ve already started to change this slightly in 2021, having tracked some non-fiction, but I would not take this as an exhaustive list of all long form things I have read and/or listened to.
  2. I am using a combination of Micro.blog’s bookshelves features and images with Bookshop.org affiliate links. In some cases, this has caused me to use ISBN listings that do not have great images from Micro.blog to try and ensure that all the links take you to a valid place to buy some books.
  3. Because of some limitations in the Micro.blog bookshelves feature, for now, things are not sorted quite how I’d like (with the most recently read books on top). I expect that the sort order will eventually change.

Lastly, for other folks who are using Micro.blog and might want to do something similar, I am considering releasing a plug-in, but won’t do so without considerable interest. I write my blog modifications mostly for myself and am not super interested in making them highly configurable to other theme environments. In this case, I think it’s actually quite simple to extract the functionality as I currently have it. However, if you want a far more flexible book page experience, I recommend Moondeer’s bookshelves plug-in. It’s highly configurable and Moondeer seems motivated to maintain a solid, general purpose book architecture. That said, even if I don’t release this as a plug-in, I’d be happy to share any template code or CSS that might be helpful to others.

Of course, this whole project wouldn’t have happened if I wasn’t procrastinating from doing work or reading my current book, which I admit may have to go into the “did not finish” pile, at least for now.

January 15, 2022

Some evidence for partisan sorting of executives into “compatible” companies.

I guess my inclination might be to say that it’s tragic we can’t escape politics. At the same time, the example that Kevin Drum gives in his post is worth considering. Would I want to work at an oil and gas company? While it might be healthy to have boundaries between my occupation and my identity and beliefs, the moral dissonance of my material survival depending on acts I consider deeply wrong would probably cause me to crack.

Maybe the increase in partisanship that is creeping into all parts of American cultural life reflects clearer stakes and clearer boundaries. Maybe corporations, organizations, and governments past lived in less clear moral space that made it easy to be unsure.

Executives are an interesting class to look at when it comes to partisan sorting. These elite have choices on where they work, and their professional and personal reputations are especially tied up in where they work. You will forever be the “ex-CxO at Exxon” or the “former big agriculture executive”. Why wouldn’t they sort so that these identities they carry serve them professionally and personally into the future?

Today’s world may have more partisan sorting, because we have lost the ability to forget. Who you were is always with you, because anyone can find out in a blink of an eye. You will always be that person who cashed in working at a crypto company. You will always be someone who worked in oil and gas during the fracking boom. You will always have been at Facebook during the Trump presidency. Any of these things may be something you’re comfortable with, but it’s easy to see how you may have to face people in the future who will see them as concerning. It’s not much of a leap to see how sorting toward a partisan “agreement” in values proceeds from there.

It’s the path of least resistance dissonance.

January 12, 2022

Reading the same books as someone else is a way of being together. This is the premise of seminars, bookclubs, of so many friendships and conversations. What it is to discover that you’re currently reading the same book as someone else - especially someone you don’t know all that well. The startling, sometimes discomforting, effect of accelerated intimacy, as if that person had gone from standing across the room to all of a sudden holding your hand.

– Kate Briggs in This Little Art

I couldn’t agree more. This year, I want to read more books together. Let me know if you’d like to join me.

Not quite two weeks into the year, but I’m ready for a quick check in on “Fun”.

I built a huge Lego set for the first time since I was a pre-teen.

I signed up for an indoor volleyball league that starts in a few weeks, hopefully post Omicron peak. I haven’t played volleyball since high school.

We book a vacation to Mexico in March. This trip we’ll be going to Puebla, where Elsa’s family is from originally, and Mexico City, two places that have long been our list. Elsa’s mom has to go to Puebla anyway around that time, so we’ll tag along and then do some traveling on our own.

I’ve been working a little on this blog. I’m just about ready to add a Reading section to the top navigation with all the books I’ve read since I started tracking. I’ve also already read three books this year. I am starting book four today. I have been saving up a few graphic novels to read for years, so this weekend I’m going to try and read as much of The Wicked + The Divine as possible 1.

Oh, and I sat down and watched the first couple of episodes of The Book of Boba Fett last night when Elsa needed to work late.

I’ll give myself 4 out of 5. I’m a little heavy on planning and a little light on execution. But my plans are very likely to actually happen, and I have caught myself thinking, “Is there something fun I can do?” almost ever day.


  1. I’ve read half of it already on Comixology and then stopped. The story is complex enough that I knew I’d want to read it all together rather than as it came out. The artwork is also so beautiful, I knew I’d want it in print. I bought the hardcover editions almost a year ago, and I can’t wait to crack them open. ↩︎

January 10, 2022

Vicki Boykis is exactly right.

I’m going to steal her post idea and give you my reasons to learn each: git, SQL, and the CLI.

SQL

I’m starting with SQL, because if we’re talking data-centric code, we’re talking SQL. Databases talk SQL. Data stores that don’t talk SQL have SQL interfaces. You will interact with databases everywhere you go. And importantly, even if you’re not writing SQL directly, SQL’s impact means that most APIs for interacting with tabular data borrow from SQL.

You will see select, where, group by, and * join everywhere. Sometimes there’s a word substitution (like dplyr using filter for where), but understanding the basics of a SELECT query in SQL will teach you how to access data anywhere.

SQL also teaches you about data organization and design by its very nature. By understanding how joins, filters, and aggregations work, you start to understand principles behind good data ways to structure and store data for analytic tasks.

A day spent writing SQL is almost always a good day.

Git

Do you want to understand your code? Do you want others to understand it? The one computer science class I took taught that the way you accomplished this was writing comments. This was wrong. When you change your code, the comments don’t change. When you write your comments, they may not actually describe what’s happening. Comments have a place, but they are far from your first line of defense.

First, you should strive to write really obvious, clear code. Use descriptive nouns for all of your variables. Name your functions with descriptive verbs. Don’t be clever. It should be obvious what your code is doing simply by reading the code itself.

But your second line1 of defense is git, where true documentation lives. Why do we use git? The main reason folks turn to distributed version control is because it makes it easy to work on the same code in the same files as someone else at the same time and make sure you can recombine that work. But the process of writing commit messages means that git can also serve as the best way to document your code. Think of a commit message as a comment that is specific to a collection of code that can exist throughout multiple files, time stamped, and with author attribution. You can (and should) use a commit message to explain a logical collection of code changes meant to accomplish one goal. The result, combined with cleanly written code, is documentation about who did something, when, and why. Code comments too often simply try and describe an isolated how and end up being some kind of imperative pseudocode that adds very little the code itself doesn’t reveal. The limitation of comments living in-line in a single file strongly encourages the wrong behavior. A commit let’s the code author define a unit of change and what is accomplished by that unit.

Git let’s you travel through time and see past code and changes as they happen, revert back to known good working state, try out new ways of doing things and easily discard that work, and make huge sweeping changes without ever having fear of finding your “last good known state”. Have you every edited a long piece of prose, moving around paragraphs and sentences to get things right? Do you paste sentences after a whole bunch of white space at the end of a document or hit undo frantically to try and get back to before you made things work? Git make all that easy for code.

If you’ve ever found a reproducible regression and written a failing test, then gone ahead and used git-bisect to find out exactly which commit broke the behavior, then found a solid commit message explaining what was done and why, you’ve known true joy.

CLI

The CLI, or command-line interface, is a big area. When I say CLI (and I believe Vicki means the same), I’m talking about being proficient with Linux/Unix/POSIX etc style systems. There are two separate reasons I believe in the CLI. The first is Vicki’s reason:

As a data developer, you will spend most of your time SSHing into servers, looking at stuff, and running code. This is especially true for companies that have moved to the cloud, but the pattern of, “your code lives on some remote production server and you need to get to it” is universally true. Command line is your best friend here

As soon as you plan to let computers work with your code while you’re not around rather than requiring you to hit a button to run code on your local machine, you’re going to want to have the basics of the CLI. This is how we interact with machines not in front of us.

But my second reason is even more important and harder to capture: the CLI is magic. When you first learn to write programs, it feels magical to command your computer to solve hard problems. The CLI is filled with battle tested programs that solve a huge class of problems interacting with a computer. They are blazing fast and are easy to combine together. Learning the CLI is learning the programming language of computer operating systems 2.

Do you want to feel powerful? Learn how to setup an SSH tunnel on a local port on your machine, then use psql to connect to a remote database, edit your SQL in vim, and seamlessly read from and write to your local machine while running SQL on a server a thousand miles away without missing a beat. Schedule a cron job that runs a small bash script that coordinates fetching, moving, and renaming files, processing gigabytes of text with awk or sed seemingly instantly and then loading that data into a database of a live application.

Almost all the programs I’ve written that save me so much time it feels like magic are actually just a series of command line tools to process text3, work with the file system, and/or operating system.

If you’re working with data, you’ll need to get it (SQL), you’ll want to process it, move it around, or use computer power somewhere you’re not and while you’re not pushing a button (CLI), and one day, you’ll want to know why you wrote the SQL or CLI script you did, how it works, get that code on another computer, and let someone else help out (git). This will be true literally everywhere you work.


  1. The third line of defense is writing tests. Whenever possible, you should be writing tests. But often tests don’t make sense in the context of a data analytics process. ↩︎

  2. It’s also learning ridiculously powerful text processing tools, which is great for programmers. ↩︎

  3. I spent a really long time writing awk -F ',' '{split($2, a, "."); new2 = ""; for(i=1; i<=9;i++) new2 = new2 "," a[i]; print $1 new2 $3 }' once, but it chewed through 350K lines in less than a second (along with several other sed and awk one liners) and spit out the clean file I needed. ↩︎

January 9, 2022

In a deliberate attempt to cure my brain from The Feed, I have resubscribed to some high quality news magazines this year. My hope is to spend more time reading material that I learn from and less time reading the Discourse around some set of reported facts.

I had my first magazine delivery this week. Once I flipped past the fancy (positively archaic) brand advertisements, I landed in the first section of most news magazines: Letters to the Editor. 1 The “Why” of blogs was laid out before me. The first batch of letters were in response to a piece that flew around my part of the internet when it was originally published online months ago. The Letters section was banal; blogged responses were insightful.

I think I’ll be exposed to more news journalism with my new habit, but there is a reason the internet quickly came to dominate.


  1. Thus, I immediately found my slow reading of news journalism lead right to the original short form Discourse. ↩︎

January 1, 2022
December 28, 2021

During the drive home yesterday we listened to the Slate Plus segment of the Political Gabfest. The hosts were answering questions about the best and worst year of their education. Everyone agreed middle school was the worst, with Plotz claiming you should “never trust anyone who loved middle school”.

By grade 6, I was really struggling in elementary school. Maybe it was early puberty, maybe it was my general precociousness, and maybe it was the small size of our school and classes (each of our three classes had 19 or 20 students, with 59 students in total for the sixth grade). But by the end of elementary school, I was bored. The work was easy, my friends and I were outgrowing each other and starting to have different interests. I had so much free time, most of which was spent playing basketball with friends or playing video games or Magic: The Gathering. We were cranky.

I remember that winter that I was put in a reading group of my own for our holiday assignment. I read Lord of the Flies from my teacher’s personal bookshelf, which I’m pretty sure was meant to be some kind of preparation for middle school. It was the first time I was taught about symbolism and the ideas behind literature and was instructed to see beyond the plot. Brilliantly, my teacher did this by having me read the short book, asking me to write up what it was about in our standard way, and then handed me the Cliffnotes. It had its intended effect, suddenly forcing me to confront the book within the book that I hadn’t realized I had read.

Middle school was a relief. From 59 students to 250 students, there were all these new people with different experiences. Some of these kids were friends I had for years through Little League, basketball, Hebrew school, summer camp, or even preschool. We took different classes with different teachers with different personalities. There was a whole array of afterschool sports and activities to take part in. There was more work, advanced classes combined 7th and 8th grade math and science into one year, but it was still easy to keep up with— the pace was at least no longer glacial.

For the first time, I felt like I developed meaningful relationships with adults. Teaches, coaches, and guidance counselors all related to me more as an adult than a child, at least more as an adult than I ever felt like I was treated before, and that was a breath of fresh air. I never settled fully into one group or clique, at least that I recognized, and instead spent a few years trying all of the interests and personalities and people that were available to me.

Maybe I was just ready? For me, middle school was like being brought to a city filled with restaurants of varying cuisines after a life time of only grilled chicken breast and steamed vegetables.

The way a lot of people describe going away to college is how I experienced seventh grade. Maybe that would help the folks who hated middle school understand what it was like for those of us who really fucking needed it.

December 24, 2021

Plotting the number of bagels my body wants over time, as I approach bagel eating, the curve rises to a local maxima of 1. Just after finishing the bagel, the plateau shoots up almost instantaneously to 3.5 bagels. This is known as the “peak of deception”, because if I’m smart enough to wait t=10 minutes post bagel, the curve dips to -1.