The main reason to use www is because you can't CNAME a apex domain, but you can on a subdomain. Sometimes this matters - and other times it doesn't. For my day job at an internet hosting company, we use www for our clients so we can CNAME their locations.
Obligatory:<p>[1] <a href="http://no-www.org/" rel="nofollow">http://no-www.org/</a> (scroll all the the way down)<p>[2] <a href="http://www.yes-www.org/" rel="nofollow">http://www.yes-www.org/</a>
If your TLD is recognisable (e.g. .com, .net, .org) then no need - people will recognise it as a domain.<p>However, if you've got a new-fangled TLD (.recipies, .shoes, etc) then use 'www' - without context, people aren't going to recognise [redacted] as a URL, but they will recognise [redacted] as one.
Yes,it's simple enough to add to the DNS and have both. Many of the everyday users I've worked with seem to want to add it to all the browser urls they type in. It doesn't matter if the original has it or not.
If you type any word in Chrome/FF and press Ctrl+Enter, they automatically prefix "www." and suffix ".com". It's a shortcut a lot of users have got used to by now. So, at the very least, make sure www doesn't give a 404. I set up DNS to redirect my main domains to their www.
Why not just use both and have them host the same things?<p>It's what I do.
example.com
www.example.com<p>They both host the same thing and have the same TLS cert.