The CNAME argument is obsolete since most DNS providers support ALIAS records now.
The static no-cookie argument doesn't really matter since you could always serve static content on a separate domain altogether (ex: fbcdn.net).
However, if you want to run hosted services on subdomains, you run into an important security issue. For example, say you have Zendesk hosted on support.mysite.com. You don't want to leak session cookies from mysite.com to support.mysite.com. In most browsers, you can just specify the cookie domain and it will only be sent to the root domain. However, NO versions of IE respect this (even IE 10+) [1]. So your IE users will always leak session cookies to hosted services on subdomains. In any reasonably secure site, this is unacceptable (especially when you start using other hosted services for status.mysite.com, careers.mysite.com, etc etc).
Unfortunately, this is pretty much impossible to work around, unless you want to ban IE users from using your site entirely.
Solution: Just use www (or any other subdomain, if you want to be different) from the start, and save yourself the headache of migrating later.
[1] http://blogs.msdn.com/b/ieinternals/archive/2009/08/20/winin...