I’ve been working my way through version 8.1 of the ebook. Some thoughts and errata:
Section 1, Bullseye with SwiftUI, was very good and at the right level for a beginner.
However, the jump to section 2 was big. Really big. It was like going from having someone hold your hand an walking up a gentle hill with you, to being thrown out of an airplane with a roll of cloth and the instructions for making your own parachute.
Anyway, I worked my way through it, although I would’t pass a quiz at the end of the section…Having every single class, file and object start with “CheckList” sometimes made it hard to remember exactly which part of Checklists I was working on.
Then came Bullseye again, now with UIKit.
Sadly both Section 2 and Section 3 were full of errors, missing text and text that looks like it should have been removed. I made some notes along the way, posted below (page numbers refer to version 8.1).
In particular, I found the parts about delegates in Section 3 incredibly dense. And there was a part there about Objective-C legacy code which was not very easy to follow. After having encountered a repeating crash after having typed in everything along the way, I’m not going to bother with Section 3 anymore. If I ever have to make a Bullseye app, I’ll just do it with SwiftUI, not UIKit!
I also found it strange that on page 702, after having spent the previous 701 pages working with functions, variables, constants and so on with a steep learning curve, the book suddenly takes a few pages to go through some relatively basic introduction to these and other concepts. I sure would have appreciated seeing this some 700 pages earlier.
Anyway, I downloaded version 8.2 and will start working on it now, hoping there are fewer typos and that MyLocations isn’t too challenging!
Page 253: Missing text in a grey box.
Pages 285-287: Photo captions do not match photos.
Page 321, typo:
Now, make use of oveListItem in .onMove.
Page 381: Nowhere does it say to replace
The app will not build and run until this is done.
Page 413: There seems to be a “note to self” here which should perhaps have been removed before publishing:
[I changed this sentence from passive to active voice. Is Xcode the correct actor.]
whose code is trying to pass put a checklist item
IIn the previous chapter
Change this methods
The user can always press Cancel, but Done only works when there is text.to listen to changes to the text field
Protocols [TODO: delete me?]
Page 672: A grey box with simply the number «5» inside of it.
[TODO: FPE: Is this spacing OK? I can’t see how it renders, so I can’t verify.]