This great take on Twitter/Musk from Robin Sloan via the always excellent Michael Sacasas:

The amount that Twitter omits is breathtaking; more than any other social platform, it is indifferent to huge swaths of human experience and endeavor. I invite you to imagine this omitted content as a vast, bustling city. Scratching at your timeline, you are huddled in a single small tavern with the journalists, the nihilists, and the chaotic neutrals.

I keep thinking about all the hand-wringing about Twitter and can’t help but feel like, well, who cares? The twitterverse, I think, to some degree takes itself way too seriously. There is, as Sloan writes, so much more than Twitter. There is so much more to being online than twitter and so much more to the world than being online.

Several months ago the EVF/OVF on my X100F stopped working correctly. I sent it in for repair to Fuji.   I should note that printing out the form on FujiFilm Camera Repair page is laughably broken but, anyway.

After a few weeks I heard back that FujiFilm wanted $650 to repair the viewfinder. 

I asked them to send it back without repairing it, thinking I would just put that money towards a new X100v instead. Well, supply chain! You can’t get an X100v anywhere right now. SO I decided to make due with the broken X100f and just use the screen instead of the viewfinder. Not optimal but serviceable.

Until this week.

All of a sudden all sorts of other things started breaking on the F. Now the camera looses its settings when you swap out the battery. And it it is stuck on AF-C/continual autofocus. Which is so annoying. 

So, anyway, I’ve sent it back in for a repair estimate, hoping it won’t be much more than the original $650 repair estimate but we’ll see.

While it’s out for repair I’m using my 6-years-old X-E2s. I have it paired with the 27mm pancake which makes it feel like a really lightweight (and, sort of cheap) X100. This is an older Fuji camera and I’d completely forgotten what amazing photos it takes! This makes me realize that there’s really no reason to rush out and get the X100v when it becomes available again.

I really like this quote from Ken Rockwell’s review of the X-E2s, it’s still totally true today:

Real shooters shoot LEICAs because of their simplicity, small size and fantastic optics, and the X-E2s does all this even better. The X-E2s is ergonomically superior to LEICA, its optics are at least as good, all for a fraction of the price with none of the poseur attitude.

The Fujis just shoot so well for so long (when they’re not broken!). It’s a real incentive to just keep the older gear around, repair it when necessary and only buy the newer models when catastrophe befalls your existing Fuji gear.

My letsencrypt SSL cert wasn’t renewing. I’d forgotten that I moved my wife’s site to squarespace so that caused the renewal to not find the site on my IP, causing it to fail with something like:

Attempting to renew cert . . .  produced an unexpected error: Failed authorization procedure.

I was using the same cert for multiple sites. Note though, you don’t actually remove the superfluous/relocated sites from the cert and then renew, instead you recreate the cert with just the domains you want. Makes sense.

Anyway, here are some really good instructions and explanation.

And just in case that site isn’t around, basically you’re running:

sudo certbot --cert-name -d -d

And then you can run 

sudo certbot certificates

To make sure that the domains were removed from the cert. Handily, it also renews the cert when you run that command. 



Massive centralized platforms create problems for society. By posting to your own site, you control your content, distributing it more evenly across the web and minimizing the power of big tech companies.


Temporary, viral movements like #DeleteFacebook are not enough. We need something sustainable that permanently changes the narrative.

Both from Manton Reece’s excellent Indie Microblogging.

Our high-schools should have a whole class built around this book. It would teach kids how to take action, how to not be powerless. From understanding ownership of content to understanding the way the Internet runs on open standards. It’s all in here.

I’ve never pre-ordered a book so quickly.

This quote from Illich shows up in more than one of L.M. Sacasas’ excellent newsletter, The Convivial Society:

“A convivial society should be designed to allow all its members the most autonomous action by means of tools least controlled by others. People feel joy, as opposed to mere pleasure, to the extent that their activities are creative; while the growth of tools beyond a certain point increases regimentation, dependence,
exploitation, and impotence.” 

— Ivan Illich, Tools For Conviviality (1973)

Working in tech, I’m always trying to find balance between autonomy and support. Recently we spent a lot of time thinking through how to best allow staff to use their personal smartphones with our work systems. I am glad we did so and it looks like this was a step in the right direction for autonomy. This WSJ piece is about a recent, small study that shows this kind of empowerment is good for employee morale.



Several months back I read Tim Egan’s Pilgrimage to EternityI am a sucker for books about long walks. Egan’s was really good. He references a great St. Francis of Assisi quote:

Start by doing what’s necessary, then what’s possible; and suddenly you are doing the impossible.

I’ve had that quote in my mind so many times over the past few weeks and several times have ignored its sage wisdom to my own detriment.

Every (workday) morning, I follow a checklist called Morning Routine in my Things application that walks me through triaging my inboxes, checking various project status sites (Jira, etc.), responding to open loops in a bunch of different messaging platforms (SMS, Zoom, etc.) I have come to rely on this checklist very heavily over the past few years as working from home has allowed me to refine, add, hone and massage this checklist into a list that sets me up for a good day of work. 

Lately though work has been entirely overwhelming for a variety of reasons (short-staffed, too many projects, interference with home priorities, etc.) and there have been several days over the past few weeks where I’ve sat at my desk in the morning and had a work inbox that was so backlogged with messages that I would just jump into my email. Once I do so, I almost never go back to my Morning Routine checklist. This is a bad thing. Stuff falls through the cracks. By responding to my inbox (the brightest/hotest burning fire) instead of doing what is necessary, I’m shooting myself in the foot.

This is just mostly a public reminder to myself to have faith in my checklists, do what is necessary first or I’ll never get to the possible let alone the impossible! 

Sort of relieved to see that I’m not the only one who had some significant fallout with the latest round of OneDrive and MacOS updates. It looks like it mostly had to do with a new File on Demand issue in MS’s OneDrive client update. 

The problem, for me at least, is that the update inconsistently upgraded/migrated my OneDrive and SharePoint links to the new ~/Library/CloudStorage directory. 

My situation probably isn’t unique, so sharing how I fixed it.

I had OneDrive files that I accessed through Finder on my Mac. I also had SharePoint Libraries that I accessed through the Finder on my Mac. Both of these files were synchronized and represented in the Finder through the OneDrive client. 

When OneDrive updated, it moved, I presume appropriately, my non-SharePoint OneDrive directories to ~/Library/CloudStorage and created a symlink in my Home Directory to that CloudStorage location. Seemed like everything was mostly working (though, I will note that when I renamed a file in Word using “File->Rename” menu option, it did not change the file name in OneDrive. 

Importantly, of the 10 or SharePoint libraries I was accessing via my Finder with the old OneDrive client, only one was moved to ~/Library/CloudStorage. I experienced all sorts of problems trying to save and/or access SharePoint library files on my Mac through the Finder or application File dialog boxes. 

So, I 

  • Quit OneDrive client in the menu bar
  • Put the OneDrive app from Applications folder in the Trash
  • Reboot
  • Reinstall OneDrive app

Note, that after the reinstall, I do not have the option to control Files on Demand:


Also, importantly, only one of the many SharePoint libraries to which I was accessing through my Finder were added to the Account tab. Totally bummer. I will have to go back through and resubscribe to all of those Libraries again. 

Hoping that this leads to a more stable OneDrive/Finder integration experience on my Mac.

Also, after this upgrade, I’m going to explore a bit more carefully the collaborative editing settings from Microsoft.


As promised, I’m trying to get better with tracking my listening and less-algorithmic with my music discovery process. Here’s what I listened to a lot of in January. Maybe next month I’ll figure out some fancy way to make this list streamable? We’ll see.

Here’s the playlist on Apple Music.

Wet Dream – Wet Leg – Wet Dream – Single
Slide Tackle – Japanese Breakfast – Jubilee
Be Sweet – Japanese Breakfast – Jubilee
Wild Blue – John Mayer – Sob Rock
Tell Me Something Good (feat. Chaka Khan) – Rufus – The Women of Soul
the angel of 8th ave. – Gang of Youths – the angel of 8th ave. – Single
Bonny – Prefab Sprout – Steve McQueen (Remastered)
When Love Breaks Down – Prefab Sprout – A Life of Surprises: The Best of Prefab Sprout (Remastered)
Anxious – The Housemartins – London 0 Hull 4
Happy Hour – The Housemartins – The Last King of Pop
Better Now – The Weather Station – Ignorance (Deluxe Version)
But Not for Me – Ahmad Jamal – Dinner Jazz Classics
Remember – Air – Moon Safari
Nicoteen – Bunny Lowe – Nicoteen – Single
My People – Cha Wa – My People
Bring On the Dancing Horses – Echo & The Bunnymen – Nothing Lasts Forever
in the wake of your leave – Gang of Youths – angel in realtime.
Don’t Change – INXS – GLUTTONY – EP

Appears that with Monterey 12.2 or some other recent upgrade, something changed with OneDrive’s local file storage. I had been excluding Users/$username/OneDrive from my backups but now need to include:

Users/$username/Library/CloudStorage/OneDrive-SharedLibraries-$name of share

OneDrive’s links seem to cause SuperDuper! to fail, so this path needs to be updated in any Exclude scripts on your backup. If your SuperDuper! backup is failing after upgrading, this could be the cause.

This is a pretty handy Swiss Army knife-type shortcut for creating Apple Music Playlists from data. I originally wrote it so that I could create Apple Music playlists based upon the listening history of my musical neighbors. But as I started poking around on the web, I noticed that users were looking for ways to play their own playlists on Apple Music, too.

There are a few key variables in the shortcut, most are defined through menus as you run the shortcut. The only two you need to explicitly add to the top of the shortcut are username and APIKEY. You can get a API key here.

Username: the name of the user to use for a data source. I run this with my own username but also run it every once in a while with my musical neighbors’ usernames to create discovery-type playlists

Period: overall | 7day | 1month | 3month | 6month | 12month – The time period over which to retrieve top tracks for. You’ll select this from a menu when you run the shortcut.

Threshold (e.g. only include songs that have been listened to more than x times): the rationale for this variable is sometimes when creating a playlist you only want to include tracks that you (or whatever username you’re querying) has listened to multiple times. You’ll select this threshold from a menu when you run the shortcut.

Limit: the number of tracks to pull (note that if you select 50 tracks here but set the # of times listened threshold to a high number the playlist will only include the tracks that meet that threshold so may include less than 50 tracks).

This has been working pretty reliably for me for the past week or so, so I’m sending v 1.0 out into the world, hope you enjoy and find it useful. You can download it here.

I’m always on the lookout for clues as to why I get sick more frequently than most folks and why, when I do get sick, my colds last so much longer. I came across this study which adds additional weight to my theory that one cause is that for reasons I cannot really do much about, my sleep sucks.

Poorer sleep efficiency and shorter sleep duration in the weeks preceding exposure to a rhinovirus were associated with lower resistance to illness…

There was a graded association with average sleep duration: participants with less than 7 hours of sleep were 2.94 times (95% confidence interval [CI], 1.18-7.30) more likely to develop a cold than those with 8 hours or more of sleep. The association with sleep efficiency was also graded: participants with less than 92% efficiency were 5.50 times (95% CI, 2.08-14.48) more likely to develop a cold than those with 98% or more efficiency


What’s especially interesting here is the sleep efficiency bit. I track my sleep using my Apple Watch and an application called AutoSleep. It is fairly reliable and I have at least a year’s worth of sleep data collected now. It’s interesting to see how lower sleep efficiency relates to lower heart rate variability when I dig into the Health app. This quote, especially, was striking:

even a minimal habitual sleep disturbance (sleep losses of 2%-8%, 10-38 minutes for an 8-hour sleeper) is associated with 3.9 times the risk of developing a cold.


AutoSleep data on the iPhone

What’s a bit confusing for me though is how many nights in a given period can sleep efficiency fall below 92% before that 3.9x risk occurs. Surely one night or two nights over a 2 week period (the length of the study) can’t cause this 3.9x risk. 

Still, taken as a whole/moving average over a 2 week period, it does seem like one of the AutoSleep numbers I should be looking at it sleep efficiency. 


I was struggling to keep my Marvis player settings in sync across multiple iOS devices and landed on this really low friction solution:

Go to Settings->Advanced->Export Settings and then use the share sheet the pops up to AirDrop the file to your secondary devices. The receiving device will automatically open the file in Marvis and import the new settings.

A few weeks ago I began using an iOS app called Marvis (which, I cannot recommend enough for helping to organize and find albums/playlists in your Apple Music). Using Marvis, I’ve created a few rule/filter sets that help me surface albums I haven’t listened to in a while.

Screenshot 2022 01 14 at 8 58 45 AM

However, what I am finding is a disappointingly large number of albums I have ripped or collected in MP3/FLAC over the years are incomplete. 

Take this Neil Young album, After the Gold Rush for example:


Why in the world am I missing track 3?

I know that I own this CD and ripped it myself. I’m totally confused as to why the track is missing. At first I thought Apple’s Cloud Sync was somehow to blame and that this track was just missing in my Apple Library but not on the actual filesystem. No such luck. It’s missing on my external SSD as well as on my backup drive. 


I am totally confused about what’s going on here! 

The Great Purge

Marvis has helped me realize that I have a bunch of albums in my Apple Music Library that I am never going to listen to. Stuff that I’ve acquired over the past 20 years or so. In the early years of digital audio, in a frenzy of “digital music acquisition syndrome” I just piled my external drives up with all sorts of garbage as friends and I would trade drives. For example, I like some Bjork now and then, but do I need her complete library? Prob not.

Anyway, I have set a goal to reduce my Apple Music Library to just the essentials. I’ll keep complete albums that matter to me and remove stuff that I’ll probably never spin. But while I remove the cruft from my Apple Library, I’ll keep the source files on my filesystem/external drive so that if I ever want to reimport them, I can. 

Which leads me back to my incomplete album problem. Some of the albums I want to keep in my Library have ended up being incomplete which is a bummer.

As usual, Doug AdamsDoug’s Applescripts site has a script I can run to help me at least determine which of my albums are incomplete. Albums Amiss has proven especially helpful:

This script uses track information to calculate whether a particular batch of tracks with the same Album title represent an incomplete or over-complete album, with either too few or too many requisite album tracks. Such batches will be copied to a discrete results playlist where they can be examined. The entire Music library or an individially selected Smart playlist can be scanned. (To be clear: the script does not check some kind of online database; it uses the extant local track entry information. Thus, tag accuracy is essential.)

Of the 2,400 or so albums currently in my library (I’ve already purged about 300, so, progress!) this AppleScript found 700 that are incomplete. Now, at least some of those are because my track entry tags are missing but a lot are just plain incomplete albums. So this helps jumpstart the purge in 2 ways:

  • Start by reviewing the albums that are missing tracks for stuff I’ll never listen to and remove it from my library
  • Determine which incomplete albums I want to rerip from CD (and do so in some kind of lossless format this time around)

Hopefully when this little project is done, I’ll have an Apple Music Library that consists of complete albums that I want to listen to and not a lot of cruft. From there, I ought to be able to build out some especially useful/inspiring lists in Marvis. 

This, combined with my current habit of buying vinyl from artists I’m currently digging, makes me feel like I’m moving just the tiniest bit away from streaming as my preferred way of listening to music. 

Anyway, if you are interested in learning more about Marvis, here is a terrific writeup of the application from Marc Barrowclift.

I have been thinking a lot about the relative merits of two different ways of storing files: a robust and well-executed hierarchical folder/file system vs tagging/metadata files. I’m thinking about this in the context of a work project but also in light of something L.M. Sacacas wrote a while back in, A World Ordered Only By Search, one of his excellent newsletters from Convivial Society.

“There comes a point when our capacity to store information outpaces our ability to actively organize it, no matter how prodigious our effort to do so.”

For many computer users of my generation, the filing cabinet has been a very useful metaphor for a computer’s directory system. Organizing computer files in nested folders is a reasonable extension of how the physical office space has always worked. That said, I’ve been considering a few of the limitations of the file/nested folder metaphor on computers that is probably hitting almost 30 years old at this point, if not more.

1.) As this metaphor has been the primary way of understanding file organization for almost 30 years, we now have a generation of computer users who have never seen an actual filing cabinet or manilla file folder. The metaphor and filing system are lost on them, especially as this generation has almost certainly grown up using gmail or similar for their email which relies on searching, not organizing emails into folders.

2.) In the file/folder model of file storage, a file can only exist in one place at one time. In this case we’ve taken a limitation of the physical world (“get me the invoice for last month from the Facilities folder”) and carried it over to the digital domain (“let me save this invoice in the Facilities folder”). In the world of tagging and metadata though, a file can exist in multiple places at the same time. (“Let me tag this document as an “invoice” and as related to “Facilities.”) The same instance of a file can live in multiple collections at once, transcending the limitations of the physical filing cabinet.

3.) Now, getting back to that Sacacas quote from above: folder hierarchies require some internalized understanding of how the filing system works. It is very rare to encounter a hierarchical file system that is self-documenting enough that a new employee could file a document without any sort of training.  Moreover, as anyone who has maintained even the most well-manicured and maintained hierarchical file system knows, sometimes you’ve got to fall back on searching because you just can’t recall where it made sense to put some document. Tagging removes the burden of having to recall the “why” of a folder system.

All of this said, searching is an imperfect solution. Just creating some kind of junk drawer for your data, the hot mess that Sacacas refers to in his piece, is not sustainable for an organization. Some kind of tagging needs to be implemented if searching is going to work. However, tagging does introduce some friction into the file management process, so we’re trading the present convenience of quickly being able to drop a file into a folder in some well-manicured hierarchy for the tedium of tagging a file when it needs to be saved with the future promise that this document will be easier to find. Either way, if not at the individual level than absolutely at the organizational level, our curation, collection and creation of digital data has totally outpaced our ability to manage it using the outdated metaphor of a filing cabinet.

“We build external rather than internal archives. And we certainly don’t believe that interiorizing knowledge is a way of fitting the soul to the order of things. In part, because the very idea of an order of things is implausible to those of us whose primary encounter with the world is mediated by massive externalized databases of variously coded information.” 

That quote is from the same Sacacas piece where, citing Illich, he goes on to discuss how when the “text” became detached from the “book” the individual became detached from the community. Much of this makes me think about how work will change:

When an office migrates to tagging and becomes detached from the geological layers of meaning embedded in its folder structures, what will happen to shared understanding of the business that was represented by those folders?

I’d love to hear any thoughts/feedback on this. Feel free to get in touch.

This is still in its infancy but it’s fantastic to see AirPlay 2 support making its way into Shairport/Linux. I haven’t tested this yet as I’ve been buying old AirPort Express (amazingly, they support AirPlay 2) devices to replace my Raspberry Pi’s but it’ll be fun to pull out a raspberry pi and try to get synchronized audio playing out on my patio speakers.

Over the past year I’ve been using a service called to surface highlights from books I read on my Kindle and from articles I read on my iPad using Instapaper.

Screen Shot 2021 06 30 at 3 46 07 PM

The service has its flaws but all in all has been useful to me in helping me to remember what I’ve read and found important.

That said, I’m finding myself less inclined to wanting to read long form journalism on my iPad, especially at night in bed when I’m trying to stay away from screens or at the beach where my Kindle feels easier to read than my iPad.

I have spent the past couple of weeks cobbling together a collection of tools that makes reading long articles on my Kindle easier as well as saves any article highlights I’ve made to Readwise.

I wish that I could use Instapaper for this workflow but, while you can read Instapaper articles on the Kindle pretty easily, tracking highlights doesn’t work so well. So I’ve landed on the following:

Push to Kindle from fivefilters allows me to easily push web articles to my kindle from my Mac (via Safari extension), iPhone or iPad (nice, easy to configure dedicated iOS app)

I then read/highlight on my Kindle paperwhite

When I plug my Kindle into my Mac’s USB connection, the highlights are automatically sent to my Readwise account

This last bit requires a good bit of AppleScript sorcery but it’s pretty easy to achieve using EventScripts.

Basically, EventScripts notices when my Kindle is plugged in. Once it sees the Kindle is plugged in, it executes this AppleScript which emails the My Clippings.txt file automatically to readwise who then imports it.

Really pretty elegant stuff here that, I hope, shows the value proposition of many small/lightweight tools loosely coupled as opposed to some monolithic solution.

As I finished up my run this AM, I checked my phone to look at the health data captured during the run. This is my habit and it got me thinking that based upon some recent conversations with friends of mine who got Apple Watches for Christmas, it feels like more than a few Apple Watch users are missing out by not regularly reviewing some of the key health metrics that the watch captures.

Of course, these metrics become more illustritive and valuable the longer you wear your watch. Meaning, you won’t learn a whole lot for a couple of weeks of data but, wear your watch for a few months or years and you’ve got some terrific baseline data to help you get a clearer picture of your overall health. Note, too, that the data your Watch sends to your phone can be viewed in both the Health app and the Fitness app. They offer different views into similar data but the Health app allows access to more data points and allows you to create favorite metrics, etc.

SummaryScreenshot 2021 01 05 at 1 06 03 PM

The first step is realizing how much valuable information the Apple Watch (or other fitness tracker) sends to the Health app. That’s the white icon with the heart on it on your phone. Your watch sends all sorts of data to that app and you’ll want to just view the highlights using the “Summary” view in the Health app.

The first two metrics that I always make sure are on my iOS Health Summary screen are Resting Heart Rate and Heart Rate Variability. (If you’re not sure how to edit your iOS Health App Summary view: Launch Health app, click Summary in bottom left and then “edit” in upper right.)

The more fit you are, the lower your resting heart rate. In theory. More importantly, if you see your resting heart rate trending up or having huge spikes it could be a sign that you’re getting sick or something else is going on to impact your overall health.

Likewise, with heart rate variability (HRV). The greater the variability of your beat-to-beat rate, the healthier your autonomic nervous system. So, higher numbers here are better. If you see your HRV trending downwards it could be a sign that you’re getting sick or something else is going on. I wrote a post a while back about how big changes in both my resting heart rate and my HRV were clearly visible on my phone when I had Lyme’s disease.

Then there’s V02 Max (aka Cardio Fitness). This is a great indicator of your overall fitness. Higher is better. With iOS 14, Apple changed this metric to be called “Cardio Fitness.” I’m glad to see Apple paying attention to this metric. For a while my Apple Watch was very inconsistent in updating my V02 max but since September my watch has updated my V02 max every time I’ve run or walked for longer than 20 minutes.

Combined, these three metrics can tell me a lot about how stressed out I am, if I am getting enough sleep and if I am exercising enough, too little or too much. Definitely worth adding to your Summary screen if you have an Apple Watch.

I love my iPad Pro for recording. My current workflow involves laying tracks into GarageBand and then either exporting the stems out to a Google Drive where one of my band mates adds them to our band’s Reaper projects or I dump the project to my Mac and play around with the mix in Logic.

But the best part about the iPad Pro as the nucleus of my recording setup is this:

I can use the portable setup in the early AM with headphones and not disturb anyone . . .
…and then later just bring the iPad into my office for this setup.

This kind of flexibility can’t be beat. I’ve made and recorded more music over the past two weeks with this setup than I’ve made in years. Some of the motivation to record surely comes from Mirror Sound and just thumbing through those pages gave me all sorts of setup ideas.

Being able to just use a USB dongle and a midi keyboard/headphone setup for moving from room to room is very lightweight/portable setup. I am also very happy with my Akai MPK mini even if I don’t totally know how to use it to its full potential.

Using the iPad Pro, I can also plug in an audio interface and do the full microphone recording setup in my office is great. I’ve got a good template setup in GarageBand for the two mic multitrack setup so as soon as I have something to record I can just pop down on my stool, start a new project based on the template and hit record. Takes about 1 minute to get setup and it sounds really damn good.

That said, I’m hoping that Santa brings the new audio interface that I’ve asked for so I can stop using my Zoom H4N as that minute of setup time is due almost solely to how long it takes the zoom to connect as an audio interface. That, and I still haven’t found a really stable USB hub that allows me to run the interface, power and my midi keyboard concurrently in my iPad. But them’s first-world problems.


I accidentally left Zwift running in the background on my Apple TV the other night and ended up with a few thousand exercise minutes showing up on my Apple Watch rings. In the interest of maintaining clean data I set about trying to remove the unearned minutes. Whoa. What a rabbit hole!

– you can remove the activity: iPhone Health App->Browse->Search for Workouts->select Workouts, scroll to bottom->Show All Data->Delete the workout.

But that doesn’t seem to get rid of the minutes. Crazy, right?

To do that: iPhone Health App->Brows->Search for Exercise Minutes->Scroll to bottom->

Pick the device that recorded the spurious data (in my case it was the iPhone as that’s where the Zwift companion app lives) and you can delete all of the exercise minutes registered by that device for a given day in one shot (as opposed to deleting each individual minute).

Tedious, but it seemed to work. The “rings” retained my legitimate Apple Watch recorded minutes and discarded the inaccurate/unearned iPhone recorded minutes.