I'm going to try to answer this in a concise way. Monetizing a site is not easy. Some variables include niche, position within the niche, number of visitors, audience demographic, ability to convert, and revenue mix.
Generally speaking, Google AdSense is a nice supplement for established sites. However, new sites should only hope to achieve pennies a day using this method.
Amazon's affiliate program, as with any affiliate program, cannot typically stand alone. For instance, I have GoDaddy as one of my affiliates in my sidebar. When I publish an article about GoDaddy, I earn more that week then I do the entire year for that affiliate.
Personally, I don't mind ads (as a site owner or as a site visitor). That said, I'm willing turn a way a few visitors who do mind if I can earn an income. Let's face it, those handful of people aren't paying for my costs to run a site.