Book review: The Sympathizer

What does it mean to pretend to be something else? In one of my favorite books, Mother Night, the character Howard W. Campbell, Junior concludes that “we are what we pretend to be, so we must be careful what we pretend to be.” Viet Thanh Nguyen’s narrator in The Sympathizer reaches no conclusions, but he struggles with the thought throughout the story.

I saw — or imagined — a lot of parallels between Mother Night and The Sympathizer, which no doubt predisposed me to liking the latter. Both books take the form of the protagonist recounting his exploits for a captor, mixing self-reflection with facts. Both take place in a war setting, which characters having authentic connections to the people they’re trying to deceive.

But just because the themes rhyme, The Sympathizer is its own work. If nothing else, it’s a rare work that looks at the Vietnam War from the North Vietnamese perspective. It’s also a really enjoyable book in its own right. The fact that the narrator cannot answer the questions he asks himself gives the reader something to think about long after the book is done.

I loved this book to the point that I stayed up far too late to finish it. I’m looking forward to reading the sequel that I just found out existed.

Other writing: March 2024

What have I been writing when I haven’t been writing here?

Stuff I wrote

Duck Alignment Academy

In defense(ish) of subscriptions

It seems like everything is a subscription these days. We’ve replaced our towers of DVDs and CDs with subscriptions to Netflix and Spotify. The books that used to be piled on our shelves are now bits on a Kindle. In some respects, this is super convenient. Want to bring several books on vacation? It takes almost no space in your bag. Want to switch what music you’re listening to while you drive? Talk to your phone instead of flipping through a huge binder of CDs. Convenient and safe!

Of course, there’s a downside, too. When you have a subscription, you don’t truly own what you’re paying for. Amazon might decide to remove a book from your Kindle. Studios frequently pull their content off of Netflix to put them on their own services. If you stop paying Adobe, you can’t keep using Photoshop.

Some people are pushing back. Jose Gilgado’s “The beauty of finished software” is a great example of the thought. ONCE from 37Signals is a practical example. But people still want bug fixes, and those cost money to produce.

I’ve come to realize that the lack of subscription is sometimes a red flag. A product that charges once for a lifetime of service is a recipe for failure. For example, I bought some toothbrush sensors for my kids. I can look on the app and see how well they brushed. But you buy the hardware and get the app and ongoing service for free. That’s not sustainable. So at any moment, the company might go out of business and suddenly the devices are useless. Of course, one solution is to have a platform that doesn’t require a remote server.

In general, I’m now cautious of buying things that have perpetual service and one-time payment. Subscriptions can be abused, sure, but sometimes it’s the right model or a sustainable business. Of course, I’m also buying movies I love on DVD to put them on my local server.

Other writing: February 2024

What have I been writing when I haven’t been writing here?

Stuff I wrote

Duck Alignment Academy

  • Fork yes: embrace forks of your project — If you’ve done what you can to make your community a great place to contribute, then you can feel free to embrace any forks that happen.
  • Keep your bug tracker unified — When your bug tracking is scattered across different platforms, you make it harder for your users to file reports.
  • Semantic versioning in large projects — SemVer can work for large projects, but it’s not a fit for every case. Whatever you pick, document it clearly.
  • Grow by delegating — Don’t hoard responsibility. Give new contributors a sense of ownership so that they’ll stick around your community.

Back on the market

Nearly 10 months to the day since the last time this happened, I was informed yesterday that my position has been eliminated. As before, it’s unrelated to my performance, but the end result is the same: I am looking for a new job.

So what am I looking for? The ideal role would involve leadership in open source strategy or other high-level work. I’m excited by the opportunities to connect open source development to business goals in a way that makes it a mutually-beneficial relationship between company and community. In addition to my open source work, I have experience in program management, marketing, HPC, systems administration, and meteorology. You know, in case you’re thinking about clouds. My full resume (also in PDF) is available on my website.

If you have something that you think might be a good mutual fit, let me know. In the meantime, you can buy Program Management for Open Source Projects for all of your friends and enemies. I’m also available to give talks to communities (for free) and companies (ask about my reasonable prices!) on any subject where I have expertise. My website has a list of talks I’ve given, with video when available.

Other writing: January 2024

What have I been writing when I haven’t been writing here?

Stuff I wrote

Duck Alignment Academy

Docker

Other writing: December 2023

What have I been writing when I haven’t been writing here?

Stuff I wrote

Duck Alignment Academy

Replacing the flash spring on a Canon EOS T1i

On Christmas morning, I put my Canon EOS T1i DSLR camera on the tripod to take a family picture. But it didn’t work: “Err05”. The built-in flash didn’t open, so the camera refused to…camera. It had done that at Thanksgiving, too, so I’d used manual settings and some additional lighting to make it work. This time, changing the ISO from automatic was enough to convince the camera to take a picture, but I didn’t want to keep fighting it. Search results suggested that it could be dirt in the flash housing. Makes sense: I took the camera to the beach this summer and we all know that sand is coarse and rough and irritating, and it gets everywhere.

I found a great YouTube video that went through the process of removing the housing and cleaning the flash. Just from loosening the screw a bit, the flash popped up when it was supposed to. But I figured “since I’m here, I might as well keep going and make sure I have everything cleaned out.” That was my mistake.

When it came time to reassemble everything, I couldn’t figure out how the spring fit. The guy in the video just said to put it back and his fingers blocked my view. I couldn’t find anything else, except for a few forum posts that were impossible for me to decipher. I spent what felt like an hour trying different things and growing increasingly frustrated. But at one point I turned the camera just right and I figured it out.

Replacing the spring

Close up of the flash housing on a camera with a circle drawn around the slit at the base of it.
The circle shows the slit where the short end of the spring goes.

It turns out there’s a slit on the interior part of the housing where you can slide the short end of the spring. It will hold there firmly after you bend the long part back to install the screw.

Close up of a hand pulling on the long end of the camera flash spring.
Pulling back the long end of the spring to get the screw in place.
Close up of the reassembled spring with the flash closed
The screw and spring replaced

One the screw is back in (note that the head is smaller than the coil of the spring), you can hook the long end under the tab on the forward part of the housing.

I hope this helps anyone who stumbles across this post in a fit of desperation. The YouTube video is very helpful otherwise, so I won’t repeat the rest. I’ve only tried these instructions on one model of camera, because that’s the only one I have, but it should be the same for similar models.

Indiana COVID-19 final update

Oh hey, it’s been almost two years since my last update. Chalk it up to a busy life and a national lack of interest that resulted in less to talk about. The data I used to create my Indiana COVID-19 dashboard is no longer updated, so the dashboard is also no longer updated. I’ll leave it up for historical reference.

By the end of the third year of the pandemic, we’ve still not managed to keep people from dying of COVID-19 in Indiana. July 2023 was consistently at or near zero, but the daily deaths have been rising since. We’ve had, on average, about four per day in the last 2–3 months. But the state no longer feels the need to track that data.

Graph of daily COVID-19 deaths in Indiana on a logarithmic scale
Daily COVID-19 deaths in Indiana on a logarithmic scale

Still, our death toll has been far lower than in years past.

Line graph of daily COVID-19 deaths in Indiana compared year-to-year.
Daily COVID-19 deaths in Indiana compared year-to-year.

The same can’t be said for hospitalizations. When the state stopped taking a daily census on May 24 of this year, we had consistently been higher in 2023 than at the same time in 2022.

Line graph of daily COVID-19 hospital census in Indiana compared year-to-year.
Daily COVID-19 hospital census in Indiana compared year-to-year.

But I guess COVID is over now. Or at least we’re pretending like it is. Just this morning, my wife and one of our kids tested positive. It’s the 1,375th day of March 2020.

Other writing: November 2023

What have I been writing when I haven’t been writing here?

Stuff I wrote

Duck Alignment Academy

Technically We Write