write generators article