Last week I started having issues on High Sierra that I couldn’t resolve. Hours spent in Activity Monitor, Console, and surfing StackExchange sites led me to no further clues. The primary issue was increasingly frequent hang times, which led to horrible Skype calls, long waits in photo editing apps, and a general inability to use my MacBook Pro.
For interested nerds, the problem included almost every app recording a spindump daily by the end. Spotlight results were missing more and more often, and the mds process was working overtime and not getting anywhere. Then a ton of mdworker(28822) deny(1) system-fsctl 4a0e type messages in Console.
I cleaned up the drive, repaired the disk, cleared the caches, killed background processes, and yes, I tried rebooting. The problem persisted even when logging into a guest account. I found the solution (though not a solid explanation) in an old forum thread about a similar issue back on 10.8: Reboot into Safe Mode and then reboot normally. It’s been fine for a week now.
To execute the “safe mode” fix:
Shut down the computer
Hold down the Shift key as you press the power button
Keep holding the shift key until after you hear the chime
Wait for macOS to boot
Shut down and start again without the Shift key
Step 4 (wait for macOS) can take a while. In my case it ran a bunch of disk and filesystem checks. If you want to see more of what it’s doing, make sure to boot in verbose mode. This is usually done by holding ⌘V while booting, but I’m not sure that works if you’re also holding Shift. I always boot in Verbose mode, which you can turn on from Terminal with:
sudo nvram boot-args="-v"
And turn off with:
sudo nvram boot-args=
(It can also be enabled with tools like TinkerTool.) You’ll see a boot sequence that will look familiar to any Linux users, and while a lot of the messages are hard to decipher, you’ll at least know what parts are taking time.
I’m told that this process invalidates caches that normally persist on reboot. This is actually really useful information as I’ve had issues with font caches and preference caches that I just couldn’t seem to clear out before. This may be my new “ctrl-alt-delete” tip for problems I don’t recognize…
Thanks to MightyDeals for sponsoring BrettTerpstra.com this week!
This Autumn Font Sale is overloaded with more than 120 gorgeous typefaces, culled from 31 different font families. You’ll find a wide variety of styles ranging from vintage to whimsical, not to mention a slew of alternate typefaces. You’re bound to find the perfect font for your next project in this collection.
120+ Unique typefaces in 1 deeply discounted deal
31 different font families
A full range of styles - vintage, fancy, cartoon, modern, and more
OpenType Features - stylistic alternates, ligatures, multi-lingual support
Wide variety great for any printed project - greeting cards, posters, T-shirts, mugs, prints, business cards, branding
Normally, this huge collection sells for $1550, but for a limited time you can get all 120+ typefaces for a $9 (99% off the regular price!). Orget the bundle including BOTH the Desktop and Web fonts for only 12!
Flexibits just released their new Mac contact management app, Cardhop. I’ve been beta testing this app for a bit and it immediately became as much a part of my workflow as Fantastical (not coincidentally also by Flexibits), which is an app I use all day, every day.
Cardhop is similar to what FullContact has tried to be, and has some features you’ll find in Interact Contacts for iOS, but as it stands on the Mac right now, this is the most elegant contact management solution I’ve seen.
Let’s Take a Look
Just like Fantastical on the Mac, Cardhop sits in your menu bar, and you can bring it up with a key combo or a click. The window pops up, showing today’s birthdays and your recent contacts (and optionally a sidebar with all of your contact groups). At the top sits a universal entry field, already focused and ready for you to type. Start typing part of a name and it will filter the list. Type until you find the contact you want and click to interact with it, or just use the entry bar: type “email ben k” (or even “ben k email”) and send an email to the primary email address for the first match of Ben K. Or type “email elle work” to start an email to Elle’s work email instead of her default address.
You can also create new contacts by typing a name that doesn’t exist along with things like phone numbers and email addresses, and they’ll all be intelligently parsed and included in the new contact. You can update contacts just as easily by typing enough of a name to match, and then continuing with new information. Type “Ben K 555-1212” and add that phone number to Ben’s contact card.
It can also parse entire blocks of text, such as email signatures, which you can get to Cardhop either by copying from an email, hitting the keyboard shortcut, and pasting, or just use the included Service to right click and send it directly.
Cardhop makes use of Contact groups, which is great for me. I’d previously used apps that let me add #tags in the notes field and do cool things with those. This was faster than building groups and dragging contacts around, so I’ve never used the official “groups” all that much. With Cardhop it’s easy to add a contact to a group by using a /group_name notation when adding or updating a contact, and easy to interact with the group (e.g. send a group email) by starting out with a command like “email /betatesters”.
When you type an action word, if the first match doesn’t have an appropriate matching key, it will try for the next one that does, further saving time. And when you type “call,” if there’s a phone number it can automatically make the call on your iPhone and you can just walk away from your computer.
There are many subtle delights you’ll find as you use Cardhop. Because it’s designed to work with natural language, you can often just type what you think should do the trick, and it will.
My friend John Voorhees wrote about Cardhop over at Macstories, and he included a note that none of the people he asked used any contact management apps, and thus Cardhop would have limited appeal to them. That’s the thing, though; most people who don’t use contacts apps don’t because they’re cumbersome (or overkill). Cardhop makes contact management so convenient that people who’ve always relied on autocomplete can now actually manage and interact with their contacts without having to launch an app and trudge through it. I’d say for those who don’t currently use any contact apps, it potentially has even more appeal. That’s not to say it’s ideal for everyone, but I wouldn’t exclude that entire segment.
Regarding the icon, I asked Michael Simmons “what’s the story there?”, and his response was “that Cardhop is not just another ‘boring database’.” A contact card that’s also a delicious sandwich? “Exactly.”
Another year, another new operating system, another update to the Mail Vacuuming script that I first posted in 2012. It’s an AppleScript that performs the simple task of optimizing the database that Mail.app uses for all of your messages, speeding up load and search times.
The latest version of Mail now uses a sandboxed container (in addition to a V5 bump). I personally haven’t used Mail in years, so the fixes came from @lbutlr. The gist is updated, and the code is below.
Web excursions brought to you in partnership with Creatable and The Creatable Bundle, a selection of 15 awesome apps, design resources and courses, including Get Backup Pro, Exhibeo 2, LensFlare Studio, over ten thousand icons, UI kits, and courses on Git and CSS.
In case you missed it back when the Touch Bar was first introduced, Daniel Jalkut has a great tool for emulating it on your Mac. It works well with High Sierra and I’ve been using it to test out Touch Bar features on my (aging) rMBP.
I don’t generally go for distraction-removing apps, site blockers, single-taskers, etc., but this is really handy. It can enable and disable Do Not Disturb on your Mac, and disables badges on dock icons.
Undisturbed can be toggled on and off from the menubar. I think everyone knows how distracting badge icons can be, but also how handy they are. A way to toggle them on and off quickly without entirely disabling them is a welcome tool.
A Keyboard Maestro macro for TaskPaper from Jim Krenz. It takes a task list using 2 key tags (@important and @due) and creates 4 separate views replicating the Eisenhower Decision Matrix espoused by Stephen Covey.
An intriguing new document scanner app for iOS. It features rules and workflows for automating the sorting, organization, and archiving (with folders, tags, and drag-and-drop) of the documents you scan.
This post is primarily to let you know about the 20% discount on Paw, but I also want to tell you why I love it.
Paw is a tool for testing APIs and other HTTP requests. That obviously has a finite audience, but I think there are plenty of API developers (and developers who use web APIs) among my readers, so it’s worth mentioning.
Here’s a quick shot of a test for my Titlecase API that I set up in about 60 seconds.
Paw even has a new cloud service with GitHub integration for API debugging with teams.
So if you do any work with APIs, whether building them or implementing them in your apps and websites, I do highly recommend picking Paw up. Especially while it’s 20% off…
PDFpen for macOS is the ultimate PDF editing tool, your Swiss Army knife for PDFs.
PDFpen Scan+ adds scanning and OCR to your mobile toolkit. Scan and OCR when away from your desk and scanner. Scan receipts with ease.
And the new PDFpen 3 for iPad & iPhone combines our PDF tools with the new iOS 11 Files infrastructure, making it incredibly easy to access files from a variety of sources, including Dropbox, Google Drive, and anything you can reach via Transmit.
First, a quick reminder that there’s still time to enter the 60 Mac Tips giveaway and win $80 worth of awesome mac tips in iBooks and Vimeo streaming/download formats!
And now, a quick note that I’ve improved the “Clean Up Smart Quotes” service in the Markdown Service Tools. I also renamed it to “Clean Up Smart Punctuation,” so if you have the Smart Quotes version installed, you’ll need to delete that to avoid duplication.
The service now also converts invisible whitespace characters. These happen a lot when clipping from websites where horrible WYSIWYG editors have inserted a bunch of non-breaking spaces ( ) and the clipper’s entity conversion turns those into control characters. Then markup like emphasis breaks. So now you can just run “Clean Up Smart Punctuation” and it will convert curly quotes, guillemots, ellipses, and remove invisible characters that make debugging without an advanced code editor quite difficult.
Thanks to Mailbutler for sponsoring BrettTerpstra.com this week!
Mailbutler — the productivity-enhancing email software that’s already conquered Apple Mail — has become available for Gmail, too. And that’s great news for multiple reasons.
Mailbutler is a supercharged personal email assistant. It keeps the native interface of the email client, be it Apple Mail or Gmail, and improves its functionality by adding to it an array of helpful tools. Using Mailbutler’s features, users are able to process emails faster and more effectively, saving hours every day for other tasks.
Mailbutler now allows Gmail users to send emails later by scheduling them for a certain date and time, turn tasks into items for their to-do lists, temporarily snooze emails, get a followup reminder when a response to an email hasn’t been received, be notified when a recipient opens an email, and much more. In addition, Mailbutler will remind users about possibly omitted email attachments, undo sending an email, and upload attachments to the cloud.