Few weeks ago I bought a second NXT and some motors. My son immediately took possession over it and built the robot on the picture. The result amazed me.
As he could not program it, I made two simple programs in NXT-G. One that makes the bulldozer roam freely. The second one a line follower. He is now altering the blocks in both programs to modify the behavior of the robot. The first step towards writing his own programs.