In general, what's the best way to work out the temperature at which to serve a particular beer? Room temperature? Cold? Supercold? Warm?
It depends on the beer really. A good rule of thumb is darker beer should be served at a warmer temperature than lighter beer.
For instance if you refrigerate all of your beers and then pull them out of the fridge and drink them instantly you will miss A LOT of the flavor complexity of pretty much every stout and porter you put to your lips.
But, if you let the dark stuff warm up for just 15 minutes before you drink it (let it sit at room temp) a bunch of new flavors will appear that you never would have noticed otherwise.
This doesn't work so well, in my experience, for lighter beers like pilsner, lager, or hefe-weisen. They really are meant to be drank cold and letting them get warm changes their flavor profile for the worse.
Obviously there will always be personal preferences but, at a minimum I encourage you to try letting your darker beers warm up just a bit and see what a positive difference it makes.
Here is a temperature guide from this article: Serving Temperature Guide. It categorizes different beers based on temps to serve at. These are basic rules of thumb and again you'll want to experiment and discover what temps you like your beers at the best.
As stated earlier, temperature is a matter of taste regarding beer. Necessity may also play a part (Given a choice between a warm beer vs no beer it depends how thirsty you are!).
German-style lagers are almost exclusively recommended to be served no lower than 6°C (43°F)no higher than 9°C (49°F), but I often find that the last (and warmest) mouthfuls from a glass actually have the most flavour - but I would always start with the lager cold when possible.
Real ales are a different story. On the continent of Europe there still seems to be a myth that British drink their beer 'luke-warm', but if served at that temperature most Brits would complain (and maybe continue to drink it while complaining). I believe the phrase 'serve cool' rather than 'cold' applies. Some live, bottled beers actually suffer from being too cold. On of my favourites, Black Sheep Ale develops a 'chill haze' - going a little cloudy if left in the fridge too long. 13°C (55°F)is about right for such beers. Reference the book Beer For Dummies!
Personally as a rule of thumb I would allow my choice to be dictated by the level of carbonation in the beer. Temperature affects how rapidly carbon dioxide dissipates from the beer, so the more carbon dioxide it starts with, the colder I would serve it, in order to preserve it in its intended state for as long as possible.
My personal taste would also entail a slightly cooler temperature for pale ale styles (lighter in colour and body and hoppier) and slightly warmer for brown ales, bitters, stouts and so on.
I would also like to register my objection to the term 'warm' used for beer. I don't know of any drinking culture that really does encourage the warm serving of beer in any normal understanding of the word. 'Warm' really refers to cellar temperature rather than refrigerator or just-above-zero temperature. A similar temperature to that you'd expect in red wine would be appropriate for the 'warm' beers.
A site that has a lot of useful information is craftbeer.com. By going to the beer styles section, you will see the beer style information, including serving temperature.
If you want to go more in depth, you can get training from Cicerone. They are a company that train bar staff on the the correct way to serve beer (temp, glasses,food pairing, etc) as well as information about the beer styles, brewing process and more.