The main argument for shortening domains seems to be based on what people will type. But every web browser I've seen will try "www.xyz.com" any time you type just "xyz". So leave the interpretation of lazy typing to the browser bar where it can be converted into a canonical form on behalf of the user.
There are plenty of reasons not to make the raw domain a web site. Here are a few:
- Potentially destroys popularity rankings in search engines because there are multiple addresses for every page. One popular site instead looks like two less-popular sites.
- So-called CNAME in DNS cannot use bare domains. IP addresses must therefore be hard-coded in a way that is more difficult to change quickly as needed (e.g. load-balancing, discovery of a DDoS attack, whatever). So users of the raw domain "xyz.com" will see your site go down for longer than it should have, even if you've already managed to bring "www.xyz.com" back up by changing its IP address.
- Configurations where patterns may be useful don't work, e.g. neither "{glob}.xyz.com" nor "www.{glob}" will match a bare domain. Maybe you don't care if you have just one site to worry about, but this gets old if you have a lot of domains to worry about.
Also note that in our experience, Google Chrome does not redirect automatically to www. And Chrome is very, very popular now.
Certainly you should never make both www and non-www work without redirecting one to the other. Personally, I redirect www to non-www for every domain I control. However, redirecting non-www to www at least makes both names work.
If two paths actually work, then invariably some web sites will choose to link to your page with http://xyz.com/foo/bar/baz.html and other sites will choose to link with http://www.xyz.com/foo/bar/baz.html. Each version of the URL has its own "referrer count" in a search engine, making the page seem less popular overall.
While search engines could do extra work to identify URLs that are aliases of one another, they're not obligated to do that. And even if a search engine does what you want, other tools may still be confused by duplicate paths (e.g. an archiving system or other link crawler).
The most frustrating pattern is when www.example.com works and example.com goes to their Outlook Web Access. It used to happen so much that I wonder if it was some misguided default configuration used by some hosting company.
Also, I agree strongly with this, and I redirect www to non-www on every domain I control. http://no-www.org/