It's dangerous to code alone! Take this.

Early Access

Published on 24 Oct 2021.

5th Edition Early Access #2 is out today. The main changes in this update are:

  1. Quite a bit of rework on how the book talks about namespaces in Level 3 and a whole lot of rework and rewriting in Level 33 (“Managing Larger Programs”).
  2. A very substantial rework of Level 29 (“Records”) to talk about records as a compact way to create both classes and structs rather than as an entirely different entity from the other two. This reflects how records are evolving in C# 10, and I think this version makes them very easy to explain and understand.
  3. Some small tweaks to the samples the “Indexers” section of Level 41 to address some minor concerns I had about how it deals with the properties and immutability.
  4. A small change to the “Reflection” section in Level 47 to call out the System.Reflection namespace. This felt important to do, since using directives are not needed nearly as often as they were in C# 9 and earlier.
  5. I added a mention to int.Parse (and friends like double.Parse) in Level 6 when it brings up the Convert class. The two are largely interchangeable, and some people like int.Parse over Convert.ToInt32. This had the added benefit of fixing a consistency problem in the Structs level where int.Parse is thrown out as an example without having ever been discussed before, and was not formally introduced until Level 34.
  6. I fixed an issue where the bonus levels were all getting the number “0” instead of “A”, “B”, and “C”.

There’s still a fair bit of work to do. Here are the main items:

  • Another revision pass through the whole book to do the following:
    • Update screenshots.
    • Fix consistency issues.
    • Copyediting.
    • Identify any other large issues that need attention.
  • Changes to make the cover of the 5th Edition stand out from 4th Edition a bit better.
  • Adding solutions for 5th Edition. While the challenges have all remained the same, some of the language changes mean each of the challenges deserve some minor tweaks to correctly reflect the “right” way to do things.

That first item is the big one. I’ll have a much better idea on how much effort really remains when that is well underway or finished. And that’s the focus of this coming week.