Don't look at this as simply what works. Look at it in terms of best practice. HTML entities are really necessary in a couple of instances (like query strings), but browsers will always try to render whatever you put on a page.
So you can often get away with very sloppy code until the situation arises when it actually starts to cause a problem. By always sticking to the standards, you insure that all users see your pages the way you intend, and automated systems (like in blog templates or when search engine robots crawl your site) won't have any trouble with them either. A little extra effort up front can save you a lot of trouble in the future.