heroku is awesome.
the first and only downside i've had: they use a read-only file system, which kind of sucks but is understandably not scalable. i do a lot of remote image fetching and caching using rio.
links i've found helpful to get going quickly with ruby on rails and amazon s3:
the s3 gem: http://amazon.rubyforge.org/
snippets from dzone to common tasks: http://snippets.dzone.com/posts/show/5441
full amazon s3 api documentation: http://amazon.rubyforge.org/doc/
if you're doing something similar in heroku, save to a location like RAILS_ENV/tmp (/tmp is writable) and then save that file to your amazon s3 bucket. more info on heroku's constraints.