small medium large xlarge

The latest version of the book is B2.0, released 2 months ago. If you've bought a PDF of the book and would like to update it to this version (for free), visit your home page.

By default this page displays the errata for the latest version of the book. If you have a previous version, select it here:

If you've found a new error, please submit it.

  • Typo
  • Tech. error
  • Suggestion
  • Maybe next edition
  • Not a problem
  • Reported in: B2.0 (13-Aug-19)
  • Fixed: 25-Aug-19, awaiting book release
#85680
PDF page: All
Just downloaded b2_0 and found that (at least in Mac Preview) none of the TOC and bottom-of-page links are live. All of the footnotes I tried are live...more...
Carmine Zaccagnino says: Try using some other software to read the book, all links seem to be working on my machine. Feel free to file another erratum or contact me directly at carmine@carminezacc.com if it doesn't work even with other software or if other books work with the software you tried
  • Reported in: B2.0 (15-Aug-19)
  • Fixed: 18-Aug-19, awaiting book release
#85685
PDF page: 3
The title of the second code snippet is 'firstapp/lib/starting.dart'. The text above says to 'create a file called main.dart', and also 'Inside main....more...
Carmine Zaccagnino says: Not the only instance. I didn't think it would matter, but if you're picking up on it I need to fix it and move the starting apps to a separate folder. Will be done for the next beta, thank you for the feedback again!
  • Reported in: B2.0 (17-Aug-19)
  • Fixed: 18-Aug-19, awaiting book release
#85693
PDF page: 9
First line of third paragraph: Because of this, they are more complex that stateless widgets should be Because of this, they are more complex than ...more...
  • Reported in: B1.0 (31-Jul-19)
  • Fixed: 13-Aug-19, awaiting book release
#85644
PDF page: 21
Below section is on Flutter Plugin installation for VSCode but mentions Android Studio -- VSCode To install the Flutter plugin for Android Studi...more...
Carmine Zaccagnino says: Actually fixed in Beta 2
  • Reported in: B2.0 (07-Oct-19)
  • Fixed: 11-Oct-19, awaiting book release
#85845
PDF page: 24

The full main.dart code starting at the bottom of the page is missing

import 'OurButton.dart';--Roger Erens

Carmine Zaccagnino says: That's very strange. I wonder why it isn't there given that I upload to the repository the files that generate the app in the screenshots and the only things I add is what is needed to integrate them with the book. I fixed it, anyways.
  • Reported in: B2.0 (08-Oct-19)
  • Fixed: 11-Oct-19, awaiting book release
#85849
PDF page: 30
In the section 'The Container and the BoxDecoration' the first bullet: 'we can choose to costrain' should be 'we can choose to constrain' --Roger ...more...
  • Reported in: B2.0 (18-Aug-19)
  • Fixed: 25-Aug-19, awaiting book release
#85697
PDF page: 30
Can you explain the need for the Padding widget, in light of the Container widget also having a 'padding' and 'child' option. Flutter documentation st...more...
Carmine Zaccagnino says: I always find it more intuitive to just use Padding whenever I only need padding (one unnecessary layer of abstraction removed), and that's also reflected by the examples in the book (I'm quite certain I used the Padding widget several times). It's also used often enough I don't feel like it should be left out and it's very easy to remember, unlike some other widgets I left out. It's like using a dedicated credit card instead of using the credit card function in a multifunctional bank card: it's just as easy, a bit more intuitive (for me at least) and it has a place in the world just like I believe the Padding widget has a place in this book because it's used often. Also, I'm not hiding the fact that the Container can be used to add padding: it's mentioned when I talk about the Container so, in the end, it's up to the reader to choose which one to use. Thank you very much for your comprehensive and useful feedback again!
  • Reported in: B2.0 (08-Oct-19)
  • Fixed: 11-Oct-19, awaiting book release
#85850
PDF page: 31

Third bullet
'which are used specify'
should be
'which are used to specify'

--Roger Erens

  • Reported in: B2.0 (17-Aug-19)
  • Fixed: 18-Aug-19, awaiting book release
#85695
PDF page: 31
Second line of the code snippet at the top width: 50.0, should be width: 200.0, since the text on the previous page mentions 'limited to a 20...more...
  • Reported in: B2.0 (09-Oct-19)
  • Fixed: 11-Oct-19, awaiting book release
#85855
PDF page: 34-35
I would find it more logical if you explained how to create an AssetBundle right after you list the various methods to load data from an AssetBundle. ...more...
Carmine Zaccagnino says: You're right. I haven't really explained what an AssetBundle (other than the rootBundle) is used for. I will fix it ASAP.
  • Reported in: B2.0 (17-Aug-19)
  • Fixed: 18-Aug-19, awaiting book release
#85694
PDF page: 34

Second line of second paragraph:
and, after that, indented inside, it
should IMO be
and, after that, indented inside it,
--Roger Erens

  • Reported in: B2.0 (08-Oct-19)
  • Fixed: 11-Oct-19, awaiting book release
#85851
PDF page: 35
In the second paragraph of the section 'Displaying Images': 'On is the Image' should be 'One is the Image' and in the last paragraph on the page...more...
  • Reported in: B2.0 (17-Aug-19)
  • Fixed: 18-Aug-19, awaiting book release
#85696
PDF page: 35
First link on the page Asynchronous code in Dart: the, on page 305 should be: Asynchronous code in Dart: the dart:async library, on page 305--Roger...more...
  • Reported in: B2.0 (18-Aug-19)
  • Fixed: 18-Aug-19, awaiting book release
#85699
PDF page: 35

On is the image,
should be
One is the image,--Roger Erens

  • Reported in: B2.0 (09-Oct-19)
  • Fixed: 11-Oct-19, awaiting book release
#85852
PDF page: 38
'Setting an height higher or lower than the height the image will end up being normally' should be: 'Setting an height higher or lower than the he...more...
Carmine Zaccagnino says: In the case of the first one, I wasn't wrong: I meant what I wrote and I now added a clarifying sentence so that it's not misunderstood by anyone else. I fixed the second one.
  • Reported in: B2.0 (18-Aug-19)
  • Fixed: 25-Aug-19, awaiting book release
#85698
PDF page: 42
Chapter 2 is very, very, long. In particular the 'Vertical Layout' section. How about splitting the chapter into two, e.g. 'Laying Out More Widgets' ...more...
Carmine Zaccagnino says: We decided against it, we believe the chapter is good as it is now and splitting it isn't necessary, thank you anyway for the suggestion.
  • Reported in: B2.0 (15-Aug-19)
  • Fixed: 18-Aug-19, awaiting book release
#85683
PDF page: 295
Second bullet point on the page: quotes inside the string '"He said: "Hi!"" are not escaped. Note that there seems to be a spurious single curly q...more...
Carmine Zaccagnino says: Thank you, I made a mess of the quotes to enclose that code section so the backslashes aren't shown in the book, that also explains that single curly quote you mentioned.