Hypercritical
Destiny Music Videos

I’m part of the MTV generation. If you can immediately picture the videos for Hey Mickey, The Safety Dance, You Might Think, Money For Nothing, and Take On Me, you might be too. I was transfixed from day one, not just by the bands and the music, but by the format. Some videos told a story (of varying levels of coherence). Others were more of a vibe, as the kids say these days. But always, the combination of sound and images, intertwined, synchronizing and diverging, pressed all my buttons.
My affection for an equal partnership between music and video is reflected in many of the movies I love. Goodfellas, one of my all-time favorites, is arguably structured as a series of music videos separated by exposition. The best Star Wars movies are famous for their pervasive and dominating scores.
Even today, the alchemy of carefully combined music and video has not lost its power. Witness the outsized cultural impact of a certain scene in Stranger Things season 4.
In all these cases, it’s not just the fact that there’s music in addition to dialog and sound effects. It’s that the music steps forward—both technically (in the audio mix) and emotionally. The music is a main character in much of the media that I love.
When game consoles added the ability to easily record gameplay, I immediately knew what I wanted to do with that capability. I wanted to make music videos.
Enter Destiny
I’ve been playing Destiny since shortly after it was released in 2014. For complicated and mostly business-related reasons, the game I’m playing today is called Destiny 2, but it’s been a largely unbroken experience across the two games for the past eight years.
There’s a huge amount of Destiny-related video content on YouTube, and I’ve watched a lot of it. Two things are very clear about these kinds of videos. First, much like golf or tennis on TV, you’ll find it a lot more interesting if you’ve ever played the game yourself. Second, also like televised sports, the people playing Destiny in these videos are usually very good at the game.
I am not very good at Destiny. Even after literally thousands of hours1 of playing, I am just about average. And although Destiny is a popular game with millions of players, the chances of someone seeing one of my videos and also being a Destiny player is quite small.
This is not a formula for success. My lack of game-playing skill means I can’t produce the raw material (i.e., gameplay recordings) needed to make really great videos, and my existing audience of Apple tech nerds has only a small overlap with the world of Destiny.
But did I let this stop me? I did not. Six years ago, I started with a few tentative uploads of some awful (even by my standards) gameplay with minimal editing, no commentary, and no music. (I also snuck in a gag video based on my realization that the movie Moana and the first season of Westworld both have the same emotional climax. It’s true!)
My first Destiny music video shows me learning how to not be irredeemably awful at using a sniper rifle in Destiny. It’s a record of the moment when, after four years of playing the game, I finally understood how sniping is supposed to work. It shows me graduating from “truly awful” to “merely bad.” (This was back when a single sniper headshot wouldn’t kill a roaming super, whippersnappers!)
Next came the “quest” videos, each of which cataloged my journey to acquire some in-game item (e.g., a pinnacle weapon). This is where I started to develop a recognizable style and format.
Rather than retreating from the skill and audience problems described earlier, I embraced them. Since few people would ever see my videos, I could remain blissfuly unconcerned about enticing titles and custom thumbnails. As for the assumed knowledge necessary to get the most from these videos, I piled it on instead of trying to minimize it.
Take my Revoker Quest video as an example. To understand its premise, you’d have to know that “Revoker” is a sniper rifle and that the quest to obtain it requires a large number of sniper kills while playing against other people in Destiny.
On top of that, it would also help to know some things about me. You might know (perhaps from watching earlier videos) that I’m not very good at sniping in Destiny, and you might also know that my preferred weapon in PvP is a shotgun (or at least you might know that shotguns are widely considered “easier to use” than sniper rifles). If you were playing Destiny when the Revoker quest was active, you might be familiar with how quest progress is presented in the user interface, and you might further know that the Revoker quest had multiple components, not all of which required sniper kills.
You need all of this context to understand the orchestrated climax of the video (starting at around 5:12), in which I realize that I have completed the sniper-kills portion of the quest and can finally switch back to a loadout where I feel much more competent: a shotgun and a hand cannon. Oh, and that hand cannon? It’s Luna’s Howl, the arduous acquisition of which was documented in an earlier quest video.
Similarly, only someone who is average (or worse) at Destiny and has suffered through the pain of having to get 200 double-kills with a grenade launcher in PvP and 100 Calculated Trajectory medals in order to complete the (pre-nerf, dagnabbit!) Mountaintop quest can truly appreciate the pain and suffering documented in my video about it. Fighting for heavy ammo to get “easy” kills with a heavy GL; getting one kill and then immediately dying; learning how to use Fighting Lion, a weapon I’d ignored until its ability to use primary ammo made it uniquely suited to this quest—it’s all in there.
If this is all starting to sound like gibberish to you, I understand. It’s asking a lot of the audience to have so much background information and experience. The fact that I’m unable to communicate the prerequisite knowledge in the videos themselves is a condemnation of both my skills as an editor and as a game player. (I can only work with gameplay recordings that I generate myself, after all.)
And yet…I love these videos. I love the idea that a handful of people might watch them with all the context required to fully appreciate them. I love watching them myself from time to time, if only to see my own progress as a player and an editor.
I also love the moment during my normal life when inspiration strikes and I know what song I’m going to use for my next music video. Sometimes it’s months between the moment of inspiration and when I finally get around to making the video. This was the case with my most recent release, but I’m glad I waited long enough for it to be my first video made with 60-fps gameplay from my PlayStation 5.
It’s not a “quest” video (Bungie removed pinnacle weapons a few years ago), so the scant narrative scaffolding that used to exist is gone now. Instead, I’ve gone back to my roots. I’m just trying to make a good music video. Here’s hoping someone else out there enjoys them as much as I do.
If you don’t want to wade through everything on my channel, here’s a list of my Destiny music videos in reverse-chronological order.
- Never Can Say Goodbye – October 13, 2022
- The Mountaintop – January 17, 2021
- Randy’s Quest – October 26, 2019
- Spinning Up – September 6, 2019
- Revoker Quest – July 7, 2019
- Redrix Quest – April 19, 2019
- Luna Quest – March 3, 2019
- Snipe’s Awakening – November 8, 2018
4,124 hours as of February 5, 2023. ↩
SwitchGlass 2.0

SwitchGlass 2.0, the first major update to my customizable app switcher for macOS, is now available on the Mac App Store. It’s a free update for existing SwitchGlass users.
Since the initial release of SwitchGlass in 2020, the top feature request has been the ability to manually reorder apps in the app switcher. Version 2.0 adds that feature, and many more. To learn more about SwitchGlass, read the FAQ and the introductory post from 2020.
Though SwitchGlass 2.0 does not appear very different on the outside, more than 50% of the code has changed since the last 1.x release in April, 2022. The view that runs the app switcher saw the most significant revisions, thanks to my graduation from “absolute beginner” to “novice” when it comes to writing SwiftUI code. Baby steps.
I had to bump up the minimum supported OS to macOS 12.0 Monterey in order to implement drag-and-drop reordering in the app switcher. This is the price of using a framework like SwiftUI that’s still in its infancy on the Mac, I suppose. I would love to continue to update and support the 1.x version that runs on macOS 10.15 Catalina and later, but the Mac App Store does not allow it. Customers who purchased an earlier version of SwitchGlass can still use and re-download that version on pre-Monterey systems, but I can’t publish any new 1.x releases to the Mac App Store.
I started using TestFlight for macOS to distribute early versions of SwitchGlass 2.0 to a small group of beta testers. Thanks to everyone who provided bug reports and feature suggestions. If you’re interested in testing prerelease versions of SwitchGlass, let me know. There are always more bugs to be found…
Frame Game

In the Spring of 2019, I was looking for a way to promote one of our time-limited merchandise sales for Accidental Tech Podcast. As part of these sales, we receive promo codes from our vendor for hitting certain milestones. Each promo code is good for a free t-shirt (including free shipping). I decided to give away these promo codes to fans on Twitter.
I wanted to do it in a fun way, perhaps with an Apple-themed trivia contest. Sadly, most trivia succumbs immediately to the power of a web search engine. I needed something that wasn’t so easy to Google. My first attempt was to post some hand-drawn line art, then ask people to identify it. Since I’d just created the drawing, I knew it wouldn’t be in any search results. And the crude nature of the art meant that a Google image search wouldn’t turn up any matching photos.
It worked (I think), but I couldn’t come up with anything to draw after that. Instead, I posted a small portion of a larger image which I asked people to identify. Again, success. The image I’d chosen happened to be a frame from a TV show, and that gave me an idea.
From that point on, I’d post a small portion of a frame and then ask people to identify the movie or TV show from which it was extracted. I created a notes document to keep track of everything, and I titled it “Frame Game.”
Since then, I’ve posted almost sixty frames over three years, including a few excursions into audio. People seem to enjoy it. Movies and TV shows are great, and who doesn’t like free stuff?
What I enjoy the most about Frame Game is the process of carefully selecting the frame and the crop such that people who are very familiar with the piece of media will be able to guess the answer, while people who are not will be absolutely dumbfounded that anyone was able to figure it out at all, let alone so quickly. The best example of this was when I posted a tiny, 64-pixel square from a 1920 x 800 frame that was guessed in one minute and four seconds.
Have some people figured out how to use computers or web searches to brute-force this game? Almost certainly. But it makes me happier to believe that most people are playing it legitimately. I’d like to humbly suggest that playing for real will make the players happier too.
Frame Game has taken place entirely on Twitter, and it’s meant to be played in real time. Unfortunately, the way I’ve chosen to chain the tweets does not make it particularly easy to follow in the Twitter archives. In an effort to better preserve the historical record, I’ve created my own archive, linked below.
There is no score-keeping, but you can “play” the game by attempting to guess the answer before clicking to reveal the full frame. If you cheat now, you’re only cheating yourself! Some frames also have hints that show ever-larger portions of the frame. (Hold down the Option key when clicking the button to reveal the full frame immediately without seeing any hints.)
I’ve had to resort to posting hints a few times during Frame Game, but the history viewer contains all the hint frames that I had prepared, regardless of whether or not they were needed. I’ve also linked to the original tweet, the declaration of the winner, and the winning tweet itself, if available. (Some winning tweets have since been deleted.) The time elapsed since the question was posted is also shown.
If you like this kind of thing and want to play something similar every day, check out the recently released, Wordle-inspired framed.wtf.
There is no schedule for Frame Game, other than usually coinciding with one of ATP’s seasonal merchandise sales. I’m not even sure if it helps increase sales at all. It’s just something fun that I like to do for the handful of fans who like to participate. If you want to play, follow me on Twitter and watch for a tweet that begins with the magic phrase, “The first person to identify…”
Frame Game can start at any time, so be vigilant!
Independence Day
When I graduated college in 1997, I started a full-time job with the same dot-com startup that I had been working for part time during my senior year. In the twenty-five years that have followed, I’ve had a series of jobs in the same field ("full-stack web development," in today’s parlance).
I’ve worked for companies of all sizes, from tiny startups to enterprise businesses with billions of dollars and thousands of employees. I’ve worked in downtown Boston, in Cambridge, and in the western suburbs. I’ve commuted to work by train, by car, and not at all. (I worked remotely at my very first job, and I have done so on and off for many years since.) All these jobs have been in the typical nine-to-five mold, and I’ve usually gone from one to the next without even a single day off in between.
Ever since my first job, I’ve also always done…something else—something besides my “day job,” something that at least had the potential to bring in some extra money. I did a little contract programming at the start, but I didn’t find it appealing to just do more of what I was already doing.
I started writing for Ars Technica in 1999, and I continued doing that for fifteen years. I also wrote for Macworld (for print and the web), for my own website, and for a few other small publications. I enjoyed writing, and I could get paid for it.
Eleven years ago, as my writing tapered off, I started podcasting, which I also enjoyed and found I could get paid for. Two years ago, I wrote two small Mac apps to scratch a few of my own itches.
Meanwhile, outside of my work life, I got married, bought a house, and had two children. Over the years, I’ve had to learn how to balance these competing concerns. As the financial demands of my life have increased, I’ve had to find a way to increase my income. As my family responsibilities have grown, I’ve had to reduce my “extra” work to a manageable level.
As part of this process, I’ve had to find what I think of as my “maximum capacity.” How much can I ask of myself before I fall apart? I learned some important lessons at my very first job, even before I had a house or kids, by slamming hard into the limits of my own body thanks to chronic RSI. Later, my children helped me plumb the depths of sleep deprivation while also entirely recalibrating my value system.
At each decision point, I’ve adjusted my life to fit within my maximum capacity by curtailing “unnecessary” activities. My family and my day job were necessities. Everything else was optional. As I’ve gotten older, my maximum capacity has decreased, of course, and I have exceeded my limits on many occasions. But for the most part, I’ve been able to keep it together.
It hasn’t always felt great to be running “at maximum capacity” (or slightly beyond) for two and a half decades, but it has always felt like the right thing to do during this critical part of my life.
Spring Dawning
Over the past few years, something has started to change. When I’ve been presented with interesting opportunities that I’ve had to turn down (“Sorry, I’m at my maximum capacity right now…”) it has started to feel less like disciplined life-management and more like disappointment. It’s felt similarly lousy when I’ve had to reject my own ideas for new things I’d like to try. And when I’ve ignored those feelings and said yes when I knew I should say no (e.g., when I decided to make two Mac apps in two months), I’ve quickly bumped into my limits yet again—both physical and mental.
A few years ago, I started to question some of my assumptions. My decades of work on my “second career” had slowly built it up to the point where it was plausibly viable on its own. Was my day job really necessary? I started formulating a plan to quit.
Then came COVID-19…and it kept coming. There was just too much uncertainty. My plans were put on hold. It’s been a rough few years for everyone, including my family. The whole experience recalibrated my value system one more time. I started to think more about the limited number of years I have left—with my kids, in good health, on this earth. How do I want to spend that time?
By 2022, I had returned to thinking not only that it’s possible for me to quit my day job, but that it’s necessary for me to do so.
And so, on March 25, 2022, I left my “normal” job. I am now officially self-employed.
On My Own
“Going indie” is what we used to call it in the early 2000s. Back then, in my circles, it usually meant creating and selling your own Mac (and, eventually, iPhone) apps, but each person’s road to independence is different.
I’m lucky to know so many people who have walked this same path before me. They’ve all taught me so much about what it means—and what it takes—to be independent. John Gruber took some huge risks when he went independent back in 2006. At that time, like John, I had recently had my first child, and the idea of quitting my “real job” was unthinkable to me. All my current podcast co-hosts are independent: Merlin Mann since 2002, Marco Arment since 2010, Casey Liss since 2018, and Jason Snell since 2014. And there are many more—too many to list here. When I think about the friends I’ve made as part of my second career, it often seems like they’re all independent. Now, finally, I’m ready.
I am thankful to have had such a conventional, largely successful career at my various day jobs. Like many people who entered the tech world in the late 1990s, I worked for several companies that were later acquired or went out of business. And, like most people, I did not strike it rich at any point via an IPO or similar “exit” event. But the regular salary from my day job did help pay for my house, my car, some nice vacations—a whole life for myself and my family, which is all I ever wanted.
I’m also thankful for everyone who has made my second career possible: all the people who have read my writing or listened to me on a podcast. Special thanks to those of you who have supported me by buying something from a sponsor or paying me directly for my work. I would not be able to do this without you.
Finally, I want to thank my wife, Tina, who has always supported my “weird hobbies,” even back when they took an amount of my time that was far out of proportion with the money they brought in. Each time I have exceeded my maximum capacity over the years, she has been there to pick up the slack, all while pursuing her own career. I would not be where I am today without her love and support.
You can hear me talk more about this topic on episode 179 of Reconcilable Differences (starting at 50:47).
If you want to know how you can best support my work, the answer right now is through podcast memberships. It’s not a coincidence that so many independent podcasts started paid membership programs shortly after COVID hit. Memberships provide reliable income in an uncertain market. Each of my podcasts has a membership program, linked below.
Both monthly and annual memberships are available. The member benefits vary, but all include a version of the show without any ads, plus some amount of bonus content.
Podcasts are now literally how I make my living. (Boy, that’s weird to write. I’m not sure how I’m going to say it to people in person.) I hope you’ll all continue to listen. Wish me luck…
Streaming App Sentiments
My unsolicited streaming app spec has garnered a lot of feedback. I’m sure streaming app developers already gather feedback from their users, and I’m also sure that the tone of my post has skewed the nature of the feedback I received. Nevertheless, for posterity, here’s how people are feeling about the streaming video apps they use.
The number one complaint, by far, was that streaming apps make it too difficult to resume watching whatever you were already watching. As I noted earlier, conflicting incentives easily explain this, but people still hate it. A reader who wished to remain anonymous sent this story of how customer satisfaction gets sacrificed on the altar of “engagement.”
There was an experiment at Hulu last year to move “Continue Watching” below the fold (down 2 rows from where it was). This was done with a very small group of users. It was so successful that the increased engagement was projected to generate more than $20 million a year. The experiment was immediately ended and the new position was deployed to all users.
While I understand (and largely agree with) your frustration that your “in progress” show isn’t the top feature, you can argue that [making new content more prominent] provides the user more value as they discover content they wouldn’t have otherwise (hence the increased engagement).
This is definitely a case of “be careful what you measure.” I don’t doubt that whatever metric is being used to gauge “engagement” is indeed boosted by burying the “Continue Watching” section, but I must emphasize again, according to the feedback I received, people hate this practice with a fiery passion. It makes them dislike the app, and sometimes also the streaming service itself.
I don’t think any engagement-related metric is worth angering users in this way—even if it really does help users discover new content or stay subscribed longer. I’m reminded of the old saying, “People won’t remember what you said, but they will remember how you made them feel.” It applies to apps as well as people.
(Furthermore, given the fact that seemingly every popular streaming app does this to some degree, there’s an opportunity to seize a competitive advantage by becoming the first app to stop this user-hostile practice.)
The second biggest category of feedback was about detecting, preserving, and altering state. Apps that do a poor job of deciding when something has been “watched” drew much ire. (Hint: most people don’t sit through all the ending credits.) Compounding this is the inability to manually mark something as watched or unwatched. Failure to reliably sync state across devices is the cherry on top.
People don’t feel like they are in control of their “data,” such as it is. The apps make bad guesses or forget things they should remember, and the user has no way to correct them. Some people told me they have simply given up. They now treat their streaming app as a glorified search box, hunting anew each time for the content they want to watch, and keeping track of what they’ve already watched using other means, sometimes even using other apps. (I imagine this flailing on each app launch may read as “increased engagement.”)
Finally, there was a long tail of basic usability complaints: text that’s too small; text that’s truncated, with no way to see more; non-obvious navigation; inscrutable icons and controls; and a general lack of preferences or settings, leaving everyone at the mercy of the defaults. Oh yeah, and don’t forget bugs, of course. Multiple people cited my personal most-hated bug: pausing and then resuming playback only to have it start playing from a position several minutes in the past. Have fun trying to fast-forward to where you actually left off without accidentally spoiling anything for yourself by over-shooting!
While again acknowledging how the nature of my original post (and my audience in general) surely affects the feedback I receive, I think it’s worth noting that no one—not a single person—wrote to tell me how much they loved using their streaming app. I didn’t expect to get much pushback on a post criticizing something so widely maligned, but I did expect to get some. I’m sure many people do enjoy their streaming app of choice, especially if it’s one of the more obscure, tech-oriented ones like Plex or Channels, but the overall sentiment is clear. Do streaming services care? I think they should.