I disagree with his advice on not using game engines. Just about any finished game will rely on someone else's libraries or code at some point. It would be insane to duplicate all this effort from scratch, except maybe as a learning exercise. Ogre3D is a good engine for C++ and Unity 3D can even use javascript. I learn a lot about actual game construction and design while using these engines, while efforts at reinventing the wheel usually end in frustration.