Some of the more graphics-related issues (eg GraphicsArray
) seem to be fixed automatically by Mathematica version 9:

Others are more problematic, unfortunately - but perhaps you could post a question. There are people here who have been using Mathematica for longer than some other people have lived...:)
The interactive features of the notebooks don't appear to work every time, but you might consider copying some of the code into a new notebook, to get the default stylesheet (and useful syntax colouring). Each section is self-contained, which is useful.
I think enough of the code works for the books to be very useful resources:
Module[{newVs, startVs, used, s = Sqrt[3], c = 0, iter = 7},
(* attach new Vs to given one *)
newVs[v : Polygon[{p1_, p2_, p3_, p4_, p5_, p6_}]] :=
Block[{\[ScriptD]2 = (p2 - p1)/4, \[ScriptD]4 = (p4 - p1)/2, p7,
p8, p9, p10, p11, p12, p13, p14, p15, p16, p17, p18, p19},
p7 = p2 + \[ScriptD]4; p8 = p3 + 2 \[ScriptD]4;
p9 = p4 + \[ScriptD]4; p10 = p5 + 2 \[ScriptD]4;
p11 = p6 + \[ScriptD]4; p12 = p3 + \[ScriptD]2;
p13 = p12 + \[ScriptD]4; p14 = p8 - \[ScriptD]2;
p15 = p9 + \[ScriptD]2; p16 = p5 + \[ScriptD]2;
p17 = p16 + \[ScriptD]4; p18 = p10 - \[ScriptD]2;
p19 = p18 - \[ScriptD]4;
If[(* only two Vs can have a common edge *)
used[#1/2] >= 2,
Sequence @@ {}, (used[#] = used[#] + 1) & /@
(* mark midpoints of new edges *)
(Plus @@@
Partition[Append[#2, #2[[1]]], 2, 1]/2);
Polygon[#2]] & @@@
(* the four new Vs *)
Transpose[{{p2 + p3, p3 + p4, p4 + p5, p5 + p6},
{{p3, p2, p7, p12, p13, p8}, {p3, p8, p14, p15, p9, p4},
{p5, p4, p9, p16, p17, p10}, {p5, p10, p18, p19,
p11, p6}}}]];
(* three initial Vs *)
startVs = Polygon /@ (* use rational vertices *) Rationalize[N[
{{{0, 0}, {2 s, 2}, {2 s, 0}, {s, -1}, {s, -3}, {0, -4}},
{{0, 0}, {0, -4}, {-s, -3}, {-s, -1}, {-2 s, 0}, {-2 s, 2}},
{{0, 0}, {-2 s, 2}, {-s, 3}, {0, 2}, {s, 3}, {2 s, 2}}}/4,
30], 0];
(* no edge is used yet *) used[_] := 0;
Show[Graphics[(*
pseudorandom coloring *) {Hue[Cos[Sec[c++]]], #} & /@
(* iterate attaching new Vs *)
Flatten[NestList[Flatten[newVs /@ #] &, startVs, iter]]] /.
Polygon[l_] :> {Polygon[l], {GrayLevel[0],
Line[Append[l, l[[1]]]]}},
AspectRatio -> Automatic]]
