Here's the list of errors I found in the book Holub On Patterns.
- 
60-62: The text sometimes refers to the factory class as
Employee.Factory, when it is actuallyEmployee.EmployeeFactory(orEmployeeFactoryalone).Later on, the code in page 69 does define
Employee.Factory. May be that's the cause of the typo. - 
67: The code in the
g()method invokes functionf( stuff ), when I think it should readclient( stuff )(or, alternatively, rename theclient()function to `f()). - 
79: In the last code listing, buildPage() method uses variable "factory" instead of "default".
 - 
82: I think the 1st (leftmost) "life" diagram under the second bullet is not right: the gray dot in the center will also stay alive, since it has exactly three neighbors... So, Shouldn't it be black?.
 - 
98: Caption of Figure 3.6 should say "Removing" instead of "Adding".
 - 
161: Refers to "Listing 3-7 Line 30" when he meant listing 3-5.
 - 
204: The last sentence reads ends with: ..."a call to 'done()'", but it should be 'a call to endTable()'.
 - 
228: Line 1 of the code listing: "t new new" should be "t = new".
 - 
256: Last paragraph is referring to
ThreadSafeCollectioninstead ofSynchronizedCollection, andunmodifiableCollection()instead ofsynchronizedCollection(). - 
255: Figure 4-8, the Unmodifiable* classes contain long spaces in their names.
 - 
262: By the end of 5th paragraph: ..."I discussed Flyweight in Chapter 4"... should be Chapter 3 instead.
 - 
277: The caption of Figure 4-14 is that of Figure 4-13. It should read something like "Chain of Command in Java Servlets" instead.
 - 
311: In line 852, I think "must be Boolean" should be "must be Numeric".
 - 
314: In lines 971, 972, I think the comparisons against LT and GT are wrong. They should be swapped (LT is used for >, and GT for <, but it's the other way around).
 - 
319: End of 2nd paragraph: Wrong reference to Listing 4-32, line -1 (minus one?)
 - 
331: Middle of 1st paragraph, references Figure 4-11, when he meant 4-18.
 - 
394: Under the "Pros and Cons" section, there's a "Cons" item that reads: "Communication overhead is small". That doesn't sound right: it's either a "Pro", or the sentence actually meant that the overhead is NOT small.
 - 
399: In the top right listing, the last line of code says:
( new Printer() ), but it should be( new DirectoryPrinter() ).