As part of my struggles to fix my constantly-crashing suggestd process (and the Spotlight failures that it seems to cause), I reinstalled macOS Mojave a couple of times using the Internet Recovery partition. These were in-place reinstalls, so I didn't start completely clean, but the OS is reinstalled from scratch—so much so that I even had to run the 10.14.6 updater and a couple of security updates again.
In the end, not only did this not fix the suggestd problem, but it also broke my all-important VMware Fusion virtual machines. When I tried to launch any of them, I was greeted with an error message:
Error: Could not open /dev/vmmon: Broken pipe
This is apparently so common that VMware has a knowledge base article on the issue. The error is due to VMware Fusion not loading its required kernel extensions, but nobody seems to be sure of the cause of the problem. However, that article is supposed to fix it…unfortunately for me, it did not. I never saw an entry in the Security & Privacy System Preferences panel to allow VMWare's extensions. As a result, they didn't load.
Here's the tl;dr for the fix that did work: Rebooting in Recovery mode (hold down Command-R at startup) and deleting the KernelExtensionManagement folder located in /private/var/db. There was a lot more to it than that, though, which I cover for my own possible future needs in the rest of this post, in case the linked sources ever vanish.
Yesterday on Twitter, I bemoaned my new iPhone 13 Pro's surprisingly short battery life:
I've been seeing very short battery life on my iPhone 13 Pro—it barely makes it from 5am to 8pm despite it just sitting here on the desk most of the day.
Battery usage shows a sustained constant drain—and neither Music nor App Store were even running today.
Each day, the battery would drain smoothly and continuously—you can see the pattern repeating on the prior day, as the battery dropped to under 20% by 9:00pm. This was happening despite the fact that I work at home and rarely use the phone while here—I might look at Twitter occasionally or launch an app or two, but it mostly just sits on my desk.
As Apple touts up to 22 hours of video playback for the iPhone 13 Pro, I didn't think it should be draining to under 20% in about 12 to 15 hours of non-usage. So the debugging started.
If you want the tl;dr, here it is: I turned off wifi sync, and the problem seems to have vanished. Read on for the details and a before-and-after comparison image.
A while back, my friend James and I were discussing the amount of tracking cruft in many URLs. In my case, I subscribe to a ton of email newsletters, and I noticed that those URLs are just laden with tracking information—and most go through a URL processor, so you don't really see those tracking details until you've clicked the link, at which point it's too late to avoid any tracking.
I wanted a way to clean up these URLs such that the least-possible tracking information was sent to a server—and in particular, to prevent any browser cookie creation. In addition, if I want to share a link with friends, I don't want to send them a crufty tracker-laden link—I wanted a nice clean shareable URL.
Note: I wrote all of this before I knew about Jeff Johnson's Link Unshortener, which does all of this (and more) in a "real" app. If you'd like the easy solution, Jeff's app is the way to go. Mine is definitely a do-it-yourself concoction that's not for the faint of heart.
A while back, I lamented on Twitter about the non-functional Apple Configurator 2, which had been my preferred way of organizing apps and folders on my iOS devices:
Dear Apple:
Please release an app for managing home screen layouts on the iPad. Trying to rearrange on the iPad itself is horrid.
Oh, you have an app? Yes, you do: Apple Configurator 2. But using latest release on Big Sur, the changes made are not applied.#Frustrating
As an example of why it's so incredibly frustrating to try to do this on an iOS device1I've confirmed the issue on both iOS and iPadOS., I offer you The Impossible Move™, otherwise known as TIM (sorry to all the Tims out there). The steps to demonstrate TIM are trivial:
Create a screen full of apps and folders, such that there's no remaining space.
Position a folder in the rightmost lower corner of the screen.
Attempt to drag an app from another screen into that folder.
Off to the right, you can see just how impossible TIM is: Completely impossible.
When you first drag the icon over to the target screen, you can watch the target folder literally disappear. Where'd it go? Perhaps it went back to the screen you came from…but if it did, as soon as you drag back to that screen, the folder returns to its original location.
Argh!
I know of only two solutions to this problem. One, of course, is to not completely fill the screen, which is my general approach. (I created this screen layout just for the purpose of the demo video.)
But that's not always possible, at least on my phone: On the first screen (the "home home screen?"), I have a large full-width widget. The presence of that widget seems to require the screen to be 100% full of icons in its remaining space—if I drag one off, then some other one is randomly placed in its spot, insuring the screen stays full. (Even worse, the widget gets relocated to the middle of the screen, with icons above and below.)
The only solution I've found that works for all cases is this one:
Move the target folder to another location on the screen.
Move the target app into the target folder.
Move the target folder back to its original location.
To reiterate my earlier tweet…please, Apple, provide an official solution for home screen management using a Mac. The larger screen and ability to select multiple items using the mouse makes short work of organizing an ever-growing collection of apps and folders. On-device organizing is nothing but an exercise in frustration.
As much as I rely on our own Many Tricks' apps every day, there's one I rely on more: Keyboard Maestro (KM), the macro app for macOS that can do pretty much anything. How much do I rely on it? The shrunken image at right lists all of my macro groups—not macros, just the groups holding the macros. In terms of actual macros, there are over 425 at present. (These are not all user-facing; many are macros that support other macros.)
I use KM for everything from gathering monthly utility bills to inserting HTML code in blog posts to generating replacement license files for users to controlling iTunes to decrufting URLs when copying (future post coming on that one) to automatically naming and filing documents I scan to storing snippets for insertion into our apps' help files to opening oft-used URLs to adding key functionality to many apps such as Excel, Mail, Messages, Photos, Preview, Safari, etc. In short, it's the single most-used app on any of my Macs.
For as much as I love KM, it has one major shortcoming: All of those macros live in one large XML file. Yes, I back it up to many local and cloud locations, so I'm not worried about losing it. It does mean, though, that if I mangle a single macro while trying to fix something, there's no easy way to get back to the working version (assuming I've gone past the point of multiple undo steps).
But now I can recover from such stupidity, thanks to the amazing Macro Repository Suite from Dan Thomas. This suite consists of two macros: One that updates (and initially creates) the repository, and one that restores a given macro from the repository.
Major update: The QNAP box failed tonight (Aug 3) after running flawlessly for three days straight. I went out to grab some dinner (I shouldn't leave, ever, apparently), and came back to the RAID offline with just a power light, no USB or drive lights.
I moved the drive from a USB hub on a long cable to directly into my Mac on a short cable. Same problem. I then pulled the drives from the array and dropped each into my drive dock, and they were both fine. (All my data was gone, though—thankfully I had literally cloned the drive just before I went out.)
Needless to say, the QNAP box is going back. I've ordered a different unit, with a different chipset in it, but it won't be here for about a week. In the interim, I've put my new drives in external enclosures, and I'll just use Carbon Copy Cloner to mirror them every 30 minutes or so. I've edited the post to reflect my experience.
I'll edit and repost this once the new box is here and (hopefully) working, though I might wait more than three days after it arrives, just to be sure!
On my iMac, I have a fair amount of data—somewhere around eight terabytes or so spread across 15TB of drive space. Until last week, I had it split between the internal SSD (work and personal files I access a lot), an external 6TB USB drive (archive stuff I want to keep but not regularly access), and an external 8TB RAID box (a whole bunch of music, movies, home videos, work videos, etc.)
I like Excel. I cover it often here, and I use it in projects where it probably would make more sense not do to so. Like my current task, which is developing a stats tracking package for a billiards training game (yea, obscure, I know).
While working on this workbook, I ran into a problem where I couldn't effectively select text in the formula bar: Whenever I tried, the selection would continually grow back to the left, regardless of what I did with the mouse. I also couldn't click on a location in the formula to place the cursor there; it would instantly start selecting text. It looks like this:
But this didn't always happen—in fact, it didn't happen very often at all. And I didn't seem to see the problem in new workbooks, only this one, and then sometimes seemingly randomly, in others. After way too much troubleshooting, I figured out the cause and the solution:
If you resize the pop-up menu at the left of the screen, that triggers the selection bug. Resizing after that, even back to where it was, won't help. You can either close and reopen the workbook, or drag the slider to remove the box. This video shows the entire process, from working to broken and back again:
I don't know how old this glitch is—it exists at least as far back as Excel 16.33 (16.46 is current). I'm trying to get someone at Microsoft's attention, but if you can help, please do—it's a very annoying bug.
As part of my job, I occasionally have to make screencasts, usually demonstrating features in our various apps. Sometimes I need to record the entire screen, as I'll be demonstrating things that require activating and selecting menu items. I have a demo account I use for these recordings that lacks all of my usual menu bar add-ons, so the look is quite clean.
And in versions of macOS prior to Big Sur, I also hid the menu bar clock (via System Preferences → Date & Time → Clock, uncheck "Show date and time in menu bar.") But in Big Sur, the menu bar clock is also the button you click to open Notification Center…so there's no way to remove the clock from the menu bar.
Most of the time, this isn't a problem. But when recording screencasts, it's a big issue. I often record segments across days, and at multiple times a day. I then splice those bits together, often times not in a linear fashion. With the default Big Sur settings (displaying the full date and time), this leads to a real annoying time travel experience as the clock jumps around like crazy.
The following two tips help greatly with this problem, though being able to hide the clock entirely would be a much better solution…
I recently received my Apple M1-powered 13" MacBook Pro, which is primarily going to be used for testing our apps on Apple silicon, and supporting customers using these machines. But that doesn't mean this is a work machine; it's a personal purchase as I'll use it for my own needs as well. (Thankfully, it only had a net cost of $33 after I sold my 16" MacBook Pro.)
By now, you've probably read a slew of stuff about both the MacBook Pro and its slightly-lighter MacBook Air cousin. Between unboxing videos, extensive benchmark suites, and multi-thousand-word reviews, there is no lack of coverage of these machines. (However, I will add that I did make a video of my MacBook Pro—with its 16GB of RAM—opening 75 apps in just over a minute. Not bad for an entry-level machine!)
I'm not going to try to replicate those reviews, because they do an excellent job of covering the new M1-powered Macs in a level of detail that I just don't have time to get into. Instead, here's what I'll be discussing…
I ordered my 13" M1 MacBook Pro with 16GB of RAM, as I felt buying the most offered was the best bet for future proofing this "entry level" M1 chipped Mac. Later today I'll be posting a detailed writeup of my time so far with the new machine, but for now, here's a little over-the-top demo.
I selected everything in the Applications folder—excluding Time Machine, Siri, Launchpad and a few other similar non-apps—and opened them all at once. I did this with a timer running, while recording the screen, and here's the result…
As you can see at the end of the video, it took one minute and seventeen seconds to open all 75 apps—do the math, and you'll see that's about 1.5 seconds per app (it was notably quicker than that at first, and slower than that at the end). For 75 apps. On a machine with nowhere near enough RAM to fit them all in active memory. I was amazed at how rapidly it was able to complete this task.
These weren't even all native apps, it was a mix of Intel, Apple, and Electron (both native and non-native) apps.
I tried a similar test on my MacBook Air, but as it's an 8GB RAM machine, I limited it to opening 37 apps, which took it well over three minutes (about 5.5 seconds per app). I didn't bother to try on my iMac—it has 40GB of RAM, but it's also got a slower SSD, so I don't know that it would've matched the MacBook Pro's performance.