Archive for January 31, 2020

Friday, January 31, 2020

Overcast 2020.1

Marco Arment (tweet):

Voice Boost 2 achieves the same goal as the original Voice Boost, but with dramatically more sophisticated methods, leading to more consistent results and much better sound quality.

[…]

I had to write every component from scratch, without using AudioUnits, because I wanted to understand and control everything, ensure the highest performance and sound quality, and avoid Apple’s platform-specific API limits.

[…]

Voice Boost 2 normalizes all podcasts to –14 LUFS — a level I chose because it closely matches the volume of Siri and most iOS turn-by-turn navigation voices, so when you’re listening to a podcast while driving, navigation interruptions are less jarring.

[…]

There’s a new per-podcast setting to skip a given number of seconds from the start and/or end of its episodes.

[…]

Going 13-only so soon was a mistake. Hear why on Under The Radar 181 and 183.

Previously:

2019 Six Colors Apple Report Card

Jason Snell (tweet):

Glenn Fleishman said, “Catalina was a disastrous release.” John Siracusa said, “Apple has not done a good job communicating the benefits of Catalina, an update that… comes with more pitfalls than the average macOS update.” Joe Kissell said, “Catalina was, and continues to be, a real downer in terms of missing features, bugs, and overall quality.” Andrew Laurence said, “For the first time in my career, this IT professional warns users away from the new macOS, and took action to prevent users from installing it.”

[…]

John Gruber said, “Catalina clearly bends too far in the direction of security. By design, it’s just too inconvenient […] I don’t know a single expert Mac user who is not seriously annoyed by the heavy-handed security design of Catalina… I genuinely fear for the future of the Mac as a platform for serious computer users…. Not one thing about Mac software got better in 2019 and everything that did change made it worse.”

[…]

Rich Mogull said, “The new [iPhone] models are home runs.” […] Finally, several panelists mentioned the idea that Apple needs to add a smaller phone to its portfolio.

[…]

Dr. Drang said, “Despite years of urging from iPad users, Apple still doesn’t seem to understand how much we want to do ‘real computer things’ on this device.”

[…]

In any event, the iOS 13 and macOS Catalina release cycles… were not appreciated by the panel. If this survey measures general sentiment, the general sentiment is that Apple needs to turn around its flailing software process in 2020.

[…]

Paul Kafasis said, “Notarization [of macOS apps] has thus far worked better than I might have expected…. So long as Apple uses a very, very light touch with this, it can be a win for users and developers. Nevertheless, I live in fear of a capricious use of this to kill something legitimate that Apple simply dislikes.”

Previously:

Update (2020-02-04): Zac Hall:

I thought I’d share my verbatim responses with 9to5Mac readers.

Federico Viticci:

I’ve included my full responses to Snell’s questionnaire below.

Dr. Drang:

There is a small but admirable thing Jason does with his graph of overall scores. I didn’t notice it until this year, but it’s been the case for as long as he’s been doing the report card.

Update (2020-02-06): See also: John Gruber.

How to Search Your Music Library in Catalina

Glenn Fleishman:

When I tested this, typing any search into the Search field in the upper-left corner of the Music app produced results that I could switch by clicking one of three buttons in a lozenge in the upper-right corner: Apple Music, Your Library, and iTunes Store.

[…]

However, after searching, clicking on an album, and clicking play, which brings up a new playback bar at the top of Music, the buttons were obscured. I had to click the < (back) button at the upper-left corner of the screen a few times, and then the lozenge reappeared.

Previously:

SwiftUI for Mac

Sarah Reichelt (via Ole Begemann):

So far, nearly all the articles I have seen about SwiftUI show it being used for iOS, more particularly for iPhone. But SwiftUI works on all Apple’s platforms, and as I am primarily a Mac developer, I decided to try out a Mac app and see what happened.

[…]

If I changed the structure of the view, the app closed and re-opened immediately with the new content. This is amazing and shows that the Xcode & SwiftUI teams really thought about how to use these new features in Mac apps as well as iOS.

Sarah Reichelt:

I had already discovered that the menu bar is configured in the Main.storyboard file.

[…]

In this case, it would make more sense to have the DetailView respond to the menu, since it contains the image. But trying to add an @IBAction to a SwiftUI View struct gives this error: Only instance methods can be declared @IBAction so I am using the App Delegate instead. I feel like this is a problem I need to solve, or the AppDelegate is going to end up filled with @IBActions, but for now, let’s keep going.

[…]

Not all the expected user interface elements are available in SwiftUI and some of the ones that are implemented are using different names. Again this is a point at which iOS development has got all the attention, so there are conversion tables out there listing UIKit elements and their SwiftUI equivalents, but I was not able to find a similar listing for AppKit. If you find one, please let me know.

[…]

And I was not able to set a button as the default button and I could not work out how to set a keyboard equivalent for a button.

Sarah Reichelt:

In this third and final part, I want to look at the various ways to present dialogs to the user.

[…]

To make an Alert, I need an @State Bool which sets whether the alert is visible or not. All the button has to do is toggle that Bool.

[…]

The trick to dismissing the sheet is to pass it a Binding to the Bool that triggered it to open in the first place. If a button in the sheet sets this Bool back to false, the parent view will hide the sheet. That sounds confusing, but it works.

Sarah Reichelt:

I would like to thank everyone who contacted me about this series. It was received very well and revealed that there is still a large amount of interest in programming for the Mac.

Some of the responses I got were pointing out different or better ways to do things, so I am going to list them here, adding to this post as I get new information.

See also: SwiftUI First Thoughts and SwiftUI Data Flow.