a better string initialization