Do I have to have a domain name before I get started?

Yes.  Your domain name is necessary to set up your hosting account.  If you don't have a domain name registered yet, register it here.