Async fn in trait MVP comes to nightly

Async fn in trait MVP comes to nightly:

The async working group is excited to announce that async fn can now be used in traits in the nightly compiler. You can now write code like this:

#![feature(async_fn_in_trait)]

trait Database {
    async fn fetch_data(&self) -> String;
}

impl Database for MyDb {
    async fn fetch_data(&self) -> String { ... }
}

A full working example is available in the playground. There are some limitations we’ll cover, as well as a few known bugs to be worked out, but we think it is ready for some users try. Read on for the specifics.

[—]

Source: Inside Rust Blog

Command Bars

Command Bars:

Maggie Appleton (via Dan Grover):

Command bars are command-line bars that pop up in the middle of the screen when you hit a certain keyboard shortcut.

[…]

Rather than remembering which sub-sub-sub menu a function lives in, users need only remember its name.

They don’t even have to remember its exact name. Fuzzy search can help them find it by simply typing in similar names or related keywords.

I’ve long used LaunchBar as a universal command bar, but now some of the productivity apps that I use daily have their own versions with app-specific commands. In BBEdit, it’s Go ‣ Command… (Command-Shift-U). In Tower, it’s File ‣ Quick Actions (Command-Shift-A). And macOS adds a built-in command searcher to each app’s Help menu (Command-?). Part of the appeal is discovering new commands or quickly locating infrequently used ones, but I also find it useful for commonly used commands in an app where the convenient keyboard shortcuts are already in use.

[Yeah. I dig them. I’ve been using Alfred for quite a while…]

Automate HomeKit with HomeControl Automation URLs – PVIEITO

Automate HomeKit with HomeControl Automation URLs – PVIEITO:

HomeControl also includes full automation support for all the actions available in the app (triggering scenes, switching a device or device group status, changing the primary home and also changing device properties) with “x-callback-url”-compatible Automation URLs which can be easily invoked from AppleScript, Terminal and other apps.

[It wasn’t obvious to me where this page was, and the way you find the Automation URLs wasn’t something I thought to try (and isn’t discoverable really) so I’m putting this here for my own reference. Works like a charm though…]

From Monospace to Duospace: In Search of the perfect writing font

From Monospace to Duospace: In Search of the perfect writing font:

Designers have pointed out that, with all the structural benefits that may or may not come from using a monospace font when writing, there are typographical compromises in typewriter fonts that are mere mechanical constraints that can and should be overcome. Due to the way mechanical typewriters worked, using the same horizontal space for each letter was inevitable at the time. As beneficial as this regular rhythm is for writing, do we really need to squeeze every letter into the same square? Can we not at least make some exceptions?

[Yes, please. I’ve been using this for quite some time, but never pointed to their article. Allez!]

Bike Outliner: Outline Writing tool, lists, notes app for Mac

Bike Outliner: Outline Writing tool, lists, notes app for Mac:

I think macOS needs more “bicycles for the mind”.

Bike is small enough to fully understand. Once understood it’s flexible enough use for many purposes.

Bike is small, but designed for real work. It’s fast. It can handle big outlines that break other outliners. Bike’s also fast at the basics–opening files, scrolling views, and resizing windows. Bike won’t slow your Mac down.

Bike makes your writing open and accessible. Outlines are stored in text files using standard file formats. Bike is also scriptable. Automate and extend Bike with scripts.

[Nice.]

It’s not an experience

It’s not an experience:

Alto.com is a wonderful pharmacy that offers same day delivery. I have nothing but great things to say about them.

But they’re following a pattern I’m seeing far too often these days. They’re trying to track everything, and asking people to attribute "experience" to things that are mere, routine happenings.

They ask me to rate my "experience". Thing is, I didn’t have an experience. The delivery person just left the package by the mailbox and I grabbed it when I got home. And what does it mean to even rate a delivery like this? It showed up, it was correct… Is that a 5-star experience? Would it only be worth 3 stars if the package was lying on the ground instead of propped up against the wall? There isn’t enough there there to even establish a value.

If you’re going to ask anything, a more apt question might be "Did the correct prescription show up on time?" Then I can answer yes or no. But rate the experience? And every time I get a prescription, it’s the same question about the experience.

I know what they’re getting at, and I’m probably belaboring the point, but I’m seeing this everywhere and I can’t help but think it’s generating data that’s incompatible with the actual situation. Being asked to rate minutia with a 10-point scale, and ascribe depth of an experience to something that’s effectively flat and one dimensional, is overshooting the goal.

[I don’t think Jason is belaboring the point. I started writing about this from a slightly different perspective — namely, that all these companies want to have a “relationship” with me — whatever that word means when you’re not talking about individuals. What I usually want is a transaction. You sell something or a service, I pay. I don’t mind a customer service check, but it needs to be thoughtfully considered and implemented.]

Source: Jason Fried

Did Apple really make the ANC in AirPods Max worse? Yes, but…

Did Apple really make the ANC in AirPods Max worse? Yes, but…:

The technical report demonstrates the latest 4E71 firmware for AirPods Max indeed reduces the ANC and it’s not just in peoples’ heads. At the time of this writing, Apple hasn’t yet addressed RTings’ findings. There’s no class action lawsuit, though some believe it could happen. There is, however, an ongoing lawsuit between Apple and Jawbone Innovations claiming that Apple infringed on its noise cancellation patents, as discovered by Reddit user u/facingcondor.

If Apple thinks it’s a real issue, it could do a recall, or more likely, fix the ANC reduction problem in a future firmware update.

[Yuck.]

Jony Ive on Life After Apple

Jony Ive on Life After Apple – WSJ:

One surprising thing about Ive’s approach is that conversation, rather than sketches, is how he often begins a project. Thinking—and then speaking about that thinking—is the raw material he works with. “Language is so powerful,” Ive says. “If [I say] I’m going to design a chair, think how dangerous that is. Because you’ve just said chair, you’ve just said no to a thousand ideas.

“This is where it gets exciting,” he says. “You have an idea—which is unproven and isn’t resolved, since a resolved idea is a product—and the only tangible thing about the idea are the problems. When someone says it’s not possible, and all you are being shown is why it’s not possible, you have to think and behave in a different way. [You have to say], from a place of courage, I believe it is possible. 

“I love making things that are profoundly useful,” he adds. “I’m a very practical craftsperson.”

[I apologize for the paywall… but this particular bit registers so tightly with me. Thinking and discussing are so important to my design of anything. And not just the “saying no” part by using certain words and making choices. But the malleable, mutable nature of ideas as words is profound.]