I made the switch as much to save a few bucks as to play around with Amazon's infrastructure. In terms of a cost saving, I've probably spent more in my own time - I work for free - spawning AMI's, configuring LAMP on both Linux and Ubuntu, and generally banging my head against the wall. But I've learnt so much and to be honest, I've always wanted to understand how websites work at the server level. Using something like MAMP, or MAMP PRO, does all the upfront leg work for you, configuring Apache, PHP, and MySQL so you can get on with your programming. Same goes with your standard hosted or dedicated machine: all configuration is done in a web based control panel such as Plesk. Not so with Amazon. Once you launch an instance, it's up to you to load it up with everything you need to run your site, keep it patched, and lock it down.
Not necessarily everyone's idea of fun but as I said there's a sense of knowing the machine that you don't get by plugging username and passwords into form fields: my very own "Zen and the Art of Motorcycle Maintenance" moment.