Six Colors
Six Colors

Apple, technology, and other stuff

This Week's Sponsor

Monologue: smart dictation and voice notes for Mac, iPhone, iPad, and Apple Watch.

By Dan Moren for Macworld

To beat Google in the speaker war, Apple needs to deploy its secret mini weapon

Apple tends not to be a first mover when it comes to new technologies, which often leads to the popular phenomenon of pundits declaring that the company “needs” to make such-and-such a product. But the real issue when it comes to Apple’s devices is that it often seems like the company dips its toe in the waters of a product category…then quickly pulls back as it feels the icy waters.

Perhaps the best example in recent years is the HomePod. Smart speakers were a category that Apple entered well after other companies like Amazon and Google had rushed to market, but it proved to be a case where not only did Apple’s entry not dominate–the original HomePod was discontinued three years after it was first released, replaced by the cheaper HomePod mini. But the category itself has proved simultaneously popular and yet, in some high-profile cases, unprofitable.

Still, the HomePod mini’s second anniversary has come and gone with no updates to the device, making me worry about its future. So I’m here to plead on behalf of the smart speaker: not only do I hope Apple doesn’t send the HomePod mini to a farm upstate like its big sibling, but I’d like to see Apple invest more in the category. Specifically, I’d like to see Apple ship a HomePod with a screen.

Continue reading on Macworld ↦


Shortcuts and social media

Jason joins Dan in person at Dan’s desk to discuss projects in progress, automations, and Twitter and Mastodon.



Harkening back to the era of the BBS

Fun story from Macworld contributor Benj Edwards over at Ars Technica about running a BBS1 when he was 11, which he still runs over the Internet now:

Even before I was fully ready, I jumped the gun and began advertising my BBS phone number on other BBSes. I started getting calls on the BBS phone line at night, which disturbed my parents. For some reason, I still had a conventional telephone (with the ringer turned on) sitting in my bedroom.

One night, the second line rang and my mom answered it. The caller heard her talking over their modem speaker and picked up the phone as well. I remember my mom telling the caller that I was only 11 years old and I was going to bed. It was very embarrassing, and of course, that person would mention the episode later to rib me: “I talked to your mom, and she said you had to go to bed!”

Benj is about my age, and there are echoes of a lot of my early computing history in his story—including the parents frustrated with me using the phone line. I frequented many a BBS back in the ’90s2, and even briefly helped my friend run one. That’s even where I got my start as a fiction writer, distributing the e-zine that said same friend and I ran for a few years. Quite the nostalgia trip.

In some ways, it kind of feels like the current fragmentation of social media harkens back to the day of the BBS, when you had small communities organized around particular interests (and, in those days, geography). Is Discord just a modern day BBS? Discuss!


  1. That’s Bulletin Board System, a computer you could log into by dialing via your modem, for you young whippersnappers among us. 
  2. Most prominently 4th Dimension and BCS here in Boston. 

By Dan Moren

The Back Page: The machine that goes Ping

CUPERTINO, California—November 30, 2022—Apple today announced the launch of its brand new social networking service, Ping.apple. With deep Apple Music integration, unparalelled content moderation, and a total lack of egotistical billionaires, Ping.apple is poised to be the next generation of technology for people to share whatever thought pops into their head.

“We are so excited to bring this surprising and delightful feature to our customers,” said Tim Cook, Apple’s CEO. “Since the days of eWorld, Apple has been at the forefront of online discourse, and what better way to reignite users’ enthuasiasm for sharing than with a beloved brand like Ping.”

Leveraging Apple’s unique combination of hardware, software, and services, Ping.apple will allow users of Apple products to see posts by other users of Apple products about Apple products.

“Ping.apple is poised to be a revolution in social networking. I can’t wait to start pinging all my friends,” said Eddy Cue, Apple senior vice president of Services. “I pinged Tim last night three or four times, including a GIF of me dancing, but he didn’t respond. I guess he was probably on the Peloton.”

Apple Music integration with Ping.social lets you share your musical tastes with other users direct from the Music app, see what music is trending throughout the community, and follow your favorite artists plus U2.

“Music is part of Apple’s DNA, and Ping.apple is the best way to share your experience, just like the original Ping,” said John Friedman, Apple senior vice president of social networking. “Or was that Apple Music Connect? Honestly, it was before my time.”

In addition to Apple Music support, Ping.apple is richly enmeshed within all of Apple’s products and services, allowing users to quickly share movies and TV shows they watch on Apple TV+, books from Apple Books, podcasts from Apple Podcasts, current activity status as they work out in Apple Fitness, and their current body temperature, blood oxygen levels, and heart rate from Apple Watch.

Composing social media posts with Ping.apple is easier than ever. Using the revolutionary interface pioneered by Apple’s Emergency SOS feature for iPhone 14, Ping.apple users will be provided with a short questionnaire of vital questions that they can fill out with a few simple taps, selecting their current mood, up to three hashtags, and one of Apple’s custom memes. This removes the burden posed by most social networking apps, which require users to come up with “content” to post, which leads to the potential for abuse, spam, and sheer inanity. Users can also opt to have Apple craft beautiful pings for them automatically, requiring no user intervention at all.

Ping.apple also includes best in class content moderation, analyzing each ping you compose to advise you whether or not it could be misconstrued, thanks to the same industry-leading machine learning misconstruing algorithm that powers Apple’s Siri virtual assistant.

And Apple’s trademark commitment to security and privacy means that all Ping.social posts and direct messages are completely end-to-end encrypted.1

Also today, Apple announced that its Ping.apple social networking service will be discontinuted immediately.


  1. Offer not valid in China. 

[Dan Moren is the East Coast Bureau Chief of Six Colors, as well as an author, podcaster, and two-time Jeopardy! champion. You can find him on Mastodon at @dmoren@zeppelin.flights or reach him by email at dan@sixcolors.com. His next novel, the sci-fi adventure Eternity's Tomb, will be released in November 2026.]


Annual streaming music retrospectives, our favorite thing about niche software, whether child us would be blown away by today’s tech, and our pitches for social media networks.


By Jason Snell for Macworld

Apple TV isn’t ready for Apple’s sports strategy

Apple has made TV streaming deals with Major League Baseball and Major League Soccer and is rumored to be negotiating with multiple other leagues, including the NFL and the Dutch Eredivisie (first-division soccer). Clearly, Apple thinks that live sports are a way to get people who have avoided embracing streaming TV to finally make the jump. (Amazon feels the same, which is why it bought the NFL’s Thursday Night Football package.)

I think it’s a smart strategy. An old boss of mine often shared the adage that in order for your product to be bought, it must first be considered. (Yes, he used to sell advertising for a living.) Lots of tech-savvy people embraced streaming long ago, and Netflix has managed to put its apps on almost every electronic device manufactured in the last ten years, but there remains a very large audience–older and not as tech-savvy–who are comfortable watching cable TV but decidedly uncomfortable finding Apple TV or Prime Video.

Sports are a great motivator to get many of them to learn. The big issue is that I’m not sure Apple’s TV platform is ready for them to arrive.

Continue reading on Macworld ↦


By Jason Snell

Automate This: Audio archiving via Shortcuts

Note: This story has not been updated since 2022.

This one not-so-simple shortcut removed 62 percent of the data from this folder!

Earlier this week Dan wrote about building an automation to archive a bunch of podcast projects. I’ve been using a shell script written by a friend to do something similar, but Dan inspired me to up my automation game and build a Shortcuts-based podcast-archiving tool of my own.

Dan’s shortcut, while great, has a big limitation: it uses Zip archives, and compressing audio files—especially the huge uncompressed audio files used in podcast editing—is not its strength. The files take a long time to compress, and they don’t compress the files as much as lossless audio formats like FLAC and Apple Lossless do.

I built a new Shortcut that accepts folders as input (via the Quick Actions option in the Finder) and then walks through each folder one by one, looking for lossless audio files—WAVs and AIFFs—and encoding them in the lossless FLAC format.

I had assumed that Apple would provide a way for Shortcuts to encode media into Apple Lossless format, but it doesn’t. The Encode Media action can encode audio, but only to M4A or AIF formats1. Instead, I retreated to the command-line, since Apple provides a utility called afconvert that will let you convert audio files between an enormous number of formats, including not just Apple Lossless but the even more widely supported (and slightly more efficient) FLAC.

The trickiest parts of the entire shortcut involve properly composing the Run Shell Script command that will kick off the file conversion. To do so, I have to use the file’s File Path attribute twice—once as the source file, and a modified version (using the Replace Text action) as the destination location. I chose to rewrite file.wav as file-wav.flac so that I could return the file to its original format with a corresponding decompression shortcut.

building

Almost nothing else in my podcast project files actually needs to be compressed—it’s mostly tiny text files and compressed audio files (like MP3s and M4As) that can’t really be compressed any smaller. The only outlier is the Logic Pro project package itself, because that can be pretty large—so my shortcut looks for any Logic projects and zips them up.

The final step is just to provide a way to tell that a folder has been compressed: I append a parenthetical “(compressed)” to the end of the folder’s name and give it a colored label in the Finder.

The results are pretty impressive. My 5.85 GB project was reduced to 2.2 GB in about a minute, compared to about five minutes to make a 3.2 GB Zip archive.

As I mentioned above, I also wrote a corresponding shortcut that looks for any of my FLAC files, as well as the zipped-up Logic file, and undoes the compression. The resulting Logic projects open normally, and find all their accompanying audio files, making this a successful experiment—and freeing up a lot of space on my home server.

You can download the Compression and Decompression shortcuts if you like. Thanks for the inspiration, Dan!


  1. This action really needs an update! 

Bob Chapek is out and Bob Iger is back in! What does this mean for the future of Disney? We don’t have the answers, but we have lots of questions!



Redirecting Mastodon links via a shortcut

Like many people, I’ve been exploring Mastodon while being concerned about the future of Twitter. But federated social media is tricky, especially when it comes to simple things like replying to a post made by someone on a different server. It was not easy, as Federico Viticci explains:

This is where my friend Jason Snell comes in: a few days ago, he shared a post in which he noted that the default method for redirecting a post or profile from another Mastodon instance back to yours is, well, somewhat convoluted. If you come across a profile or post from a different Mastodon server, you have to copy its original URL, go to your instance, manually paste it into the search box, find the result you’re looking for, and only then you can interact with it. That works, but it’s not intuitive, and I figured I could improve this aspect of the Mastodon experience with a shortcut.

You can guess what happened next. Federico built a shortcut that makes the process of jumping to a local version of a remote profile or post easy. If you use Mastodon, it’s worth installing this shortcut and saving yourself the time.


John Gruber joins Jason on Upgrade for the first time. Topics include eWorld, Apple’s iPhone production problems in China, FIFA and Qatar and the World Cup, the reasons behind Apple’s sports ambitions, BBEdit, regular expressions, Perl and Python, MarsEdit, nanotexture displays, webcams, and the state of the art in ADB-to-USB adapters. Happy Cyber Monday to all those who celebrate!


By Dan Moren

Creating a smart On Air sign with an e-ink display

Note: This story has not been updated since 2022.

On Air sign final product

Ever since I moved into my new house a year ago, I’ve been looking for a fun way to designate when I’m recording a podcast. Yes, I could just close the door to my office—but sometimes when I do, I’m just working on something where I don’t mind being interrupted. I could also use a low-tech method like a door hanger, but then it’s one additional piece of cognitive overhead to remember to put it out when I’m recording.

No, if ever a problem cried out for a ridiculously over-engineered solution, this was clearly it.

At first I considered something simple, like a red smart bulb I could put up next to my office door. But it’s in a small hallway, and there are no electrical outlets nearby. Which meant that whatever solution I came up with had to be battery-powered and, ideally, last a long time. Likewise, there’s no place for a table to put anything bulky; it would have to be light enough to be mounted on the wall or door.

What I really wanted was an On Air sign, like at radio studios, and Jason’s dabbling in e-ink status displays made me think that I’d finally found the right technology for the job. When Six Colors member Mihir mentioned the Inkplate 6COLOR, I didn’t hesitate in ordering one.

The 6COLOR has a number of things going for it: for one, it’s a complete system, including an e-ink display, controller board, Wi-Fi, and so on. For another, you can pay a little more to have it shipped with a 3D-printed frame—not pretty, but it gets the job done. Finally, though it’s not battery-powered out of the box, an under-$20 Adafruit battery is simple to install.

But that was just the beginning; putting this project together ended up requiring a bit more hands-on time than I’d expected.

The hardware

The Inkplate 6COLOR is, as the name suggests, a color e-ink display. Don’t go in expecting a Super Retina XDR experience, because you’re not going to get it: we’re talking 600-by-448 pixels with seven colors (black, white, red, yellow, blue, green, and orange) at 128 dots per inch. Dithering does let you show most colors, but it’s still not going to provide you with an amazing image.

Fortunately, while color was a nice perk, it wasn’t a requirement for my sign. But the color technology does add one major drawback to the 6COLOR: its refresh time—the amount of time it takes to draw a new image on the e-ink display—is slow. And I mean slow. A sloth could drink molasses out of a sippy cup faster. It takes at least 10 full seconds to draw a new image; sometimes that seems closer to 20. It’s one place where a black-and-white screen actually might have served me better but you live and you learn.

Beyond that, the hardware is fairly basic. There’s a sleep/wake switch, a microSD slot for onboard storage if you need it, and a USB-C connector for power and data. Installing the battery required opening the back up with a small screwdriver1 and then connecting the battery to the correct terminals, using the board schematics. There’s no place to mount the battery really so I just left it loose inside the case and sealed the whole thing back up.2

Satisfied that it was now able to run on its own power—though for how long I wasn’t sure, since there’s no built-in way to check the battery level until it basically dies—I set about for what would end up being the far more challenging part of the project: the software.

The software

The Inkplate 6COLOR’s microprocessor is Arduino-based, though it also supports the MicroPython programming language. While I have more familiarity with Python, it was unclear to me just how many of the built-in features would be easily addressable in MicroPython, so I decided to stick with the default, and downloaded a copy of the Arduino IDE.

It was here that I was forced to dust off some meager 20-plus-year-old programming knowledge. While I’ve spent a lot of time as a PHP web programmer and dabbled in other languages, programming an Arduino relies on C/C++, languages that I only got passing familiarity with while taking a course on Java back in freshman year of college.3

Fortunately, the Inkplate docs include a helpful Get Started guide that includes a ton of built-in examples accessible via the Arduino IDE that you can peruse to figure out how things work.

In thinking about how to architect my program, I had concluded that I would try to just have the On Air sign grab an image from a web server and display it, so I picked the closest example in the library, the Web Pictures project.

I created a couple of basic On Air/Off Air images using Acorn: just solid-colored text on a solid colored background (white on black for Off Air, white on red for On Air4), at the exact resolution of the Inkplate’s display.

Once I’d gotten the hang of how the Arduino IDE worked, subbing in my images for those in the example was easy enough, and the proof of concept was up and running.

Arduino IDE
Ah, C.

At that point, the challenge became how to maximize energy efficiency. In an ideal world, I would have had a ping sent to the Inkplate display telling it when to change images, but that would require it be awake or be woken by the ping, which proved to be a more complex solution that was somewhat beyond my skills.

Instead, I ended up loading the images locally on the device, encoding them into a byte array using Inkplate’s online tool so that they could be bundled into the program itself—fortunately they were small enough to not use up too much of the limited onboard memory. That way I could simply have the Inkplate check a public URL to see if I was on air and load the appropriate image, rather than downloading it every time.

To make it even more efficient, I opted to use the display’s deep sleep feature, which shuts down most of the onboard systems to conserve memory. I had it store the current on air status in the tiny bit of RAM that gets preserved while in sleep, then wake every five minutes to see if the status had changed; if so, it switches the image and, if not, it just goes back to sleep.

The resulting program actually ended up being fairly simple: the meat of it is only about 60 lines of code or so. But in my testing it works pretty darn well.5 I’ve gone ahead and made it available as a GitHub project for any interested parties.

All I needed now was a way to toggle it on and off.

The shortcut

To register my on air status, I’d created a text file on my web server that contained either a 1 if I was on air or a 0 if not. What I needed was a way to toggle that back and forth and I settled on creating a shortcut.

This also ended up providing me my first best opportunity to use Apple’s Focus system, which I use as a local proxy for my on air status.

The shortcut checks to see if my current focus mode is already set to Podcasting and, if so, deactivates the focus mode and then sets my on air status to 0. Otherwise, it turns on the Podcasting focus mode and sets my on air status to 1. Then I use the Run script over SSH action to echo that status variable to the text file on my server.

On Air Shortcut

I can trigger the On Air shortcut via the menu bar or my Stream Deck, but I decided to take it a step further in automating it and use Audio Hijack’s own automation features to trigger the shortcut every time I start or end a recording session.

Apple’s Shortcuts implementation on the Mac unfortunately does not offer automation features, meaning I can’t automatically have a shortcut launched when the feature is activated or deactivated, as I can on the iPhone.6

If you’d like a copy of the shortcut, you can download it here.

The result

With the code working and my shortcut hooked up, I took the last step and attached the on air sign to my office door using some 3M Command Strips, allowing me to easily remove it when I need to charge it.

The battery life has been truly impressive: even checking as frequently as it does, the Inkplate goes several days without needing to recharge.

Yes, I do wish that there weren’t potentially a five-minute lag time between going on air and the sign updating; it would be nice to be able to ping the e-ink display directly to have it update, removing the remote server from the equation entirely.

But all that really means is that I’ve left myself some work for an eventual version 2.0.


  1. My trusty old iFixit driver kit to the rescue. 
  2. Was that a good idea? Who knows! If not, I guess we’ll find out eventually. 😅 
  3. Hey, Java was the hot new thing in 1998! 
  4. I started with red on black for the On Air image, but Mihir rightly pointed out that white on red is much easier to distinguish at a glance. 
  5. If there’s a problem with it, it’s that I occasionally see the board balk at re-connecting to Wi-Fi after waking from sleep, but it seems to happen inconsistently and may be more of an issue of the Wi-Fi network strength than anything. 
  6. I could, of course, set the automation to run on the iPhone instead, since my Focus modes are mirrored on my devices, and I may do so eventually, but I haven’t yet decided if that makes sense. 

[Dan Moren is the East Coast Bureau Chief of Six Colors, as well as an author, podcaster, and two-time Jeopardy! champion. You can find him on Mastodon at @dmoren@zeppelin.flights or reach him by email at dan@sixcolors.com. His next novel, the sci-fi adventure Eternity's Tomb, will be released in November 2026.]


By Dan Moren

Automate This: Archive a bunch of sub-folders

Note: This story has not been updated since 2022.

Sometimes you stare down the barrel of a stupid, repetitive task and think: hey, my time’s worth more than this!

Then you spend longer than the original task would have taken to create an automation for that task.

Having concluded our current season of A Complicated Profession, our Star Wars TV podcast over on The Incomparable, I decided I ought to archive all the project files to save some space on my MacBook Air’s drive. In the past, I’ve had an automated workflow to do this, using Hazel, but I hadn’t set it up again since switching to my laptop as my main work machine.1

However, rather than clicking on each individual project folder and choosing Compress…, it seemed likely that I could create a simple automation to do the work for me. And so I did!

Shortcuts is well suited to this task, allowing me to create a workflow I could launch from the Finder’s Quick Actions menu. I selected the top-level folder for the podcast and had the shortcut iterate through the contents of that folder. If it encountered a file with no file extension (which was the best idea I had for detecting if something was a folder), it would zip that up into an archive with the same name as the folder, then save it to the top-level folder2. Done.

It took a little bit of trial and error to get the save paths and naming correct3, but the end result was exactly what I’d hoped: a folder full of archives of each individual episode, which I could then drag over to my NAS before deleting them all from my drive.

Perhaps you’ll find this shortcut useful, in which case, have at.


  1. Once again, I’m reminded that macOS’s version of Shortcuts lacks the Automation features of the iOS version—which continues to be a glaring oversight. 
  2. That Save File action is a crucial step: otherwise it just makes a zip file and…throws it away? How strange. 
  3. I did accidentally make an earlier version recursive, where it dumped an infinite loop of folders inside the Shorcuts folder in iCloud drive. Whoops! 

[Dan Moren is the East Coast Bureau Chief of Six Colors, as well as an author, podcaster, and two-time Jeopardy! champion. You can find him on Mastodon at @dmoren@zeppelin.flights or reach him by email at dan@sixcolors.com. His next novel, the sci-fi adventure Eternity's Tomb, will be released in November 2026.]



Take Control of Photos, Third Edition

The third edition of my book Take Control of Photos has been released! If you bought a previous edition, you should’ve gotten an email with options to upgrade to the new edition. If not, there’s good news—Take Control is having a Black Friday sale. For the next week the book is half off.

The new version covers macOS Ventura and iOS and iPadOS 16. It adds coverage of shared photo libraries, more detail about live search in Photos, expanded coverage of iPhone & iPad Photo Features, the new version of Photos in tvOS 16, a new chapter about the Camera app in iOS, and details about duplicate detection.



Finding a Twitter replacement (or leaving it all behind), our Read-it-Later services of choice, the tech we’re most thankful for, and the apps we’re most thankful for.



Search Six Colors