Errata for macOS by Tutorials, 1st Edition

Creating this topic to catch any typos and bugs in the 1st Edition of macOS by Tutorials.

Hey, first playground - M1 Mac Mini Xcode 13.3 - OnThis Day - get “Error getting URL of sample data file.”

Opening the URL directly brings back a page of JSON. So that part is fine.

Doesn’t run on Xcode 13.2.1, older Intel MacBook Pro. (Can’t update to Monterey) - unsupported function “data(for:delegate)”.



The book requires macOS 12 (Monterey).

In this case, the playground is using URLSessions async/await methods which are only available in Monterey. If you are familiar with URLSession, you can use the older callback API instead.

Hi Sarah,

On first page, under “What You Need,” you’ve spelled Monterey with two r’s.


Thanks for reporting this Steve.

It’s fixed now.

Hi Sarah,

Minor typo. In Chapter 2, the copy/paste for the SidebarView view, the comments are slightly misnumbered. You have // 2 twice; second one should be // 3;// 3 should be // 4; // 4 should be // 5.

I have downloaded the .pdf file and will refer to it often, I am sure. As the HTML sources get your corrections, at some point I assume you will produce an updated .pdf. I think it’s too early to do that yet, but let us know if that happens, please.

Very much enjoying this course, so far. Thanks!

Thanks for the report and it’s great to hear you’re enjoying it. I certainly enjoyed writing it.

I’ve fixed this on the HTML version, but I’m not sure how long it takes to get through to the PDF & ePub.

Page 40 - Shouldn’t Replace struct Event… be add let id = UUID() to struct Event

Thanks for the suggestion, but the replacement code is also adding the Identifiable protocol to the struct.

Adding an id property on its own doesn’t mark the structure as Identifiable.

Hi Sarah,

Chapter 9 - Editing the Tasks
Page 230 - 231 in physical book

The top of p230 has code comments 1 - 8 but the explanation has 1 - 7.
What is this SwiftUI code doing #3 on page 230 should reference the HStack above but omits it, throwing the other numbers off, including the top of page 231.

Loving the book. Thanks :slight_smile:


1 Like

Hi Valdyn,

Thanks for the report. I’ve just fixed it in the online version by deleting #3 from the code and re-numbering the others.

Glad you are enjoying the book. Please keep reporting any errors you find.



Hi Sarah,

Chapter 10 - p268 - Limiting the Frames

The code in the bottom part of the page has // 2 just under the HSplitView (is above // 1 also)…I think that might be unintended (delete it), as it doesn’t match the description of #2 on page 269.


1 Like

Thanks again Valdyn,

I’ve just fixed this in the online reader.



Hi Sarah

I enjoy the book a lot!

In Chapter 9, you ask to add a notification to the saveTasks() method, but refer to the wrong file to edit this in:
“Open EditTasksView.swift and add this to the end of saveTasks():”
Should be:
“Open EditButtonsView.swift and add this to the end of saveTasks():”

Thanks again!

Hi Frank,

This is perhaps a bit unclear and I’ll see if I can make it better for the next edition.

The file to open is EditTasksView.swift but the structure you add the code to is EditButtonsView which does not have its own file.

Glad you’re enjoying the book,

Hi Sarah, thanks for the reply!

Ok yeah this makes sense… What happened when I did this was that the “Embed in an HStack” option was not showing in the command-click menu (would you happen to know why?), so I refactored it myself. Instinctively, I created a new file for it.

Thanks for the precision!

For some reason, those Embed commands only appear if you have the SwiftUI preview open. It doesn’t have to be active, but the panel must be visible.

1 Like

Hi, Sarah, really enjoying the book so far.

Minor correction for the Xcode tip on page 26 in Books, page 42 in PDF: you have to triple-click to select the entire block

Thanks Richard,

I’ve fixed this in the online version.

Glad you’re enjoying the book, and please report any more errors you find.


1 Like