I love coffee. I've been enjoying it for years, and slowly working my way towards the snobbiest of coffee connoisseurs. I've experimented, tried coffee at dozens of coffee-shops, refined my home techniques, and learned a lot over the years. Here I will share the benefit of that knowledge with you, gentle viewer.
First of all, the most important part of an excellent cup of coffee is, well, the coffee. The type of bean and where it came from plays a significant role, as beans have different varieties and methods of harvesting which affects flavor and roastability. How long the bean is roasted and how long ago are also major factors in flavor. Coffee should be consumed no longer than 5 days after roasting, otherwise it begins to lose flavor. Now think about that for a minute. Any coffee you've ever had from a coffee machine has probably been stale. Even if they ground their beans right before brewing (which is recommended), the coffee was already stale before that. Grocery store coffee, the source of most coffee average people drink, has been sitting on the shelf for at least a few days, in transit for several days before that, and in a warehouse for several weeks before that since it was roasted. There's just no way to get fresh coffee from a grocery store.
If you found an excellent coffee-shop that roasts its own beans (in my experience, maybe a quarter of them do), and they also happen to be good at roasting, which reduces that amount further, you could buy a bag of freshly roasted beans from them for about $12-15/lb. But unless you buy a bag that was roasted that same day and you can use up a pound of beans in less than 5 days, you're going to be drinking some stale beans at the end of the bag.
So you're going to have to roast your own beans. Don't worry, home roasting is surprisingly easy. I do it daily and it takes less than 5 minutes. Completely worth it! The entire process from roast to drinking my iced coffee takes me only 20 minutes including prep and cleanup, excluding time where I set a timer and walk away.
Sourcing green (unroasted) coffee
You'll need to buy some green coffee beans. This state of the coffee bean is after it is picked and hulled and dried, and in this condition last for up to 2 years. I buy mine from Sweet Maria's and I like them. They source fair trade high quality coffee, and the company offers a lot of advice to home roasters. They also have good prices, amounting to $7-8/lb including shipping. I recommend the Espresso Workshop blends, and will be creating a list of recommended coffees here as I try more varieties. I buy 5 different 1-lb varieties from all across the globe, which lasts me close to 3 months if I drink 2 cups every day.
You should roast the day before you brew your coffee, as the optimum time to consume coffee after roasting is 12-24 hours, but I've had success roasting right before brewing with only subtle differences in flavor.
You'll need to buy a hot-air popcorn popper. I use this Presto one which cost me $13. You can have it shipped to your local Walmart and pick it up for free. You'll also need a large stainless steel cocktail shaker which, apart from the obvious use of making cocktails, will also serve as a lid to keep the beans from flying out while they roast, as well as a thermally conductive recepticle with with to chill hot coffee quickly if iced coffee is your taste. I use this one which cost me $10.
Measure out 1/4 cup of your green coffee and put it in the popper. Make sure not to put more than that in, because if you put more than the popper allows the beans won't be able to stir around by the air blast. Place your popper pointed into the sink so that when the beans start to crack and the chafe flies out it will shoot directly into the sink. Take the lid off of the cocktail shaker and place it upside down in the hole of the popper to prevent bean-flyout. Put the plastic hood with the butter dish in place. Plug the popper in and set a timer for 4-and-a-half minutes. Listen and make sure the beans are jingling around the whole time. If they go quiet jiggle the popper to get them going again. Around 4 minutes or so you should start to hear the beans pop like popcorn. This is referred to as "first crack" or "city roast". When the time is up, act quickly and use a pair of tongs to remove the plastic hood and metal lid (they will be burning hot). Pour the beans into a bowl or cup and place in the freezer for 4 minutes to quickly cool them down, then store them at room temp in a sealed container until you're ready to brew.
You'll need a coffee grinder if you don't already have one to grind your beans. I like this one which cost me $20.
You'll also need a homemade reusable coffee filter. Go to Walmart or somewhere that sells fabric and ask for some chiffon. It is a very fine polyester mesh. Buy about a foot of it which will cost you about $2. Take it home and cut out the largest circle you can from one end. You can cut multiple circles out so you have spares for the future. Around the edges to prevent fraying, take a lighter and melt the edges of the fabric slightly.
My instructions are for 2 cups of coffee. My popcorn popper makes a maximum of 1/4 cup of beans per batch, which is exactly the amount needed for 2 cups of coffee, which is the perfect amount to make a 24 oz iced coffee. If you order a 24 oz (the Venti at StarBucks) iced Americano at a coffee shop they will put 4 shots of espresso in it, and each shot uses about 10 grams of coffee. I measured my 1/4 cup of beans and it happens to weigh 40 grams, or 4 shots of espresso. Not a coincidence — the strength of your coffee relies not so much on the brewing method but on the coffee to water ratio. If you want to make espresso without an espresso machine, use a ratio of 1:2 coffee to water, or 1/4 cup beans to 1/2 cup water.
Put 2 cups of water in a measuring cup and set it to boil, however long that takes. My microwave takes 4 minutes. While that's going pour your 1/4 cup of previously roasted beans into your grinder and grind them until you hear the sound change from crunchy to not crunchy anymore. This takes about 6-8 seconds. Tap the grinder on the counter to settle the grounds, and lift off the lid. Take a cheap $1 1" paintbrush dedicated to this purpose and brush out the lid into the sink. When the water's done boiling, acting quickly take it out and drape your coffee filter over the measuring cup and using a spoon push it down into the water. Dump your coffee into the water and use your brush to get the stuck-on parts. Use the spoon to ensure all the coffee is mixed in the water, and set a timer for 15 minutes. While the coffee brews you can brush out your grinder.
After the timer is up, take the filter and gather it at the top making a bag. Dunk the bag in the coffee for about 30 seconds, then take some tongs and twist/squeeze the bag out. Dump the coffee grouds into the trash and rinse the filter and wash with soap. If you like your coffee hot, slowly trickle-pour the coffee into your drinking cup, stopping before the sludge makes it in, then drink it!
For iced coffee, slowly trickle-pour the coffee into your metal cocktail shaker cup stopping before sludge then rinse out your measuring cup. Take your cup of coffee and place it in a bowl of ice water to rapidly chill it for 10 minutes. At the end of that time it will be ice cold, melting almost none of the ice when you pour it in your drinking glass, which means stronger, less watered down coffee.