One thing I didn’t mention a couple weeks ago when talking about what game designers can do better with difficulty is: let the player adjust his game difficulty after he plays. Why should we presume as game designers that our definition of “medium” or “normal” is the same one that the player is ready for. Even the short clips of descriptions (“you play lots of shooters”) don’t add up to the experience the player will have. Maybe your player wants to start off on easy, and then turn up the knob as he gets used to things. Or maybe he sets for “hard” and then realizes he wants to step down. Maybe the balance of one of your levels, or one of your boss fights, is a little dubious. Or maybe the player just wants to mess around for an hour.
The player has paid you money to play the game. Let him pick what difficulty he wants, when he wants. If this is so hard to alter dynamically, let him restart at the last checkpoint with the settings he or she wants.