Really useful article, though I don't agree with not using a CDN instead of S3. There are multiple articles which proves the performance of S3 being quite bad, and not useful for serving assets, comparing to CloudFront.
I'll update the article soon to add in the new information.
If you use a lot of cloudfront bandwidth without setting up a reservation, yeah... you're gonna pay through the nose.