Hot Air Popper
The cheapest and simplest is to use a (cheap) electric hot air popper. The old favorite is the West Bend Poppery, but you can use anything as long as the vent holes (where the hot air comes in) are on the sides rather than the bottom.
I've roasted a lot of coffee this way. It works, but there are a few downsides. The biggest problems:
- The circuation is designed for popcorn, which expands a lot more than roasted coffee beans. I've needed to stir the beans manually in order to get an even roast. They don't have to be stirred constantly, but you can't just drop the beans in and walk away.
- The capacity is pretty low, especially when you take the circulation into account. I can only roast a half a cup at a time, which is pretty slow.
- The temperature doesn't get quite high enough to really bring the flavors out. The roast is good, but it's really mellow.
[source: Chris g Collision, Flickr Creative Commons]
I've read about modifications you can make that will improve these: changing out resistors, modifying the airflow, and even hooking up an Arduino to control the heat a lot more closely, but it seems like more work than I've wanted to invest in the process.
Heat gun / metal dog bowl method
My brother's moved on to this approach, and I'm soon to follow. The benefit of a heat gun is that the temperature is high enough to get a good roast, and the airflow is high enough that you can roast a few cups of coffee at a time.
[source: Ocell, Flickr Creative Commons]
Sweet Maria's sells green coffee beans, and lists a huge amount of home roasting methods, including Weber Kettle conversions. The sky's the limit, but I'd start small with the air popper or the heat gun first.
I'd do this outside
Some methods have you roasting the coffee in your kitchen - in the oven, on the stove, etc. I wouldn't want to do this myself, for two reasons. The beans have thin husks on them, which come off as the beans are roasted. They're messy, and I wouldn't want them flying around my kitchen. Also, roasting coffee doesn't smell as good as you'd think it would.
Sources of more info: