Cards are a great way to add randomness to a game, they're incredibly flexible in terms of what you can do with them. You can fix a deck, or part of a deck. You can add things to it without consulting what they are. You can view a few cards and get rid of a few of them selectively. You can put new (or previously used) cards into a deck and they can go on the top, bottom or be shuffled somewhere in between. Cards are magic.
However I think that sometimes players and designers intuit the impact of card based decisions rather the implementing them explicitly, which can be a mistake. I've had someone articulate that they like cards because they're "less random" and that they'd prefer to draw from a deck with cards marked 1-6 than roll a D6 - even if the cards are shuffled back into the deck after each draw.
Mathematically those are exactly the same thing.
There's actually no inherent difference between dice and cards. It's possibly to simulate a dice using cards and it's possible to simulate cards using dice. However some uses are more natural than others, deleting possibilities from a table each time a particular roll is made is jarring and time consuming - however removing a possibility from a deck of cards when it occurs feels entirely natural.
I think the preference emerges because there are plenty of card games that reduce the feeling of randomness. If I'm playing Dominion and my opening hand is four copper, I'm not going to cross my fingers and hope that I get another four copper on my second turn. A starting deck is seven copper and three estates, if I draw a load of money on turn one then I should expect turn two to be lean. There's no chance I'll get lucky and draw another four copper, conversely I also know I won't get unlucky and draw two.
However this situation does not entirely negate the impact of random chance on a game, it merely changes how it manifests. Both me and my opponent are guaranteed a total of seven copper, but where I get a turn with four and with three, she might get one with two and five. Depending on the purchasing options (which are randomised each game) one of these might provide a serious advantage.
From a players point of view it's important to understand how cards change, but do not negate, randomness. It helps you to become a better player, to understand why some games go the way they do and to know when you got unlucky and when you made a mistake. From a designer's point of view it's very important to understand how the decisions you make affect chance in your game so the probability of various outcomes are tuned to a level that you're happy with.
I think there are are a few questions that are important to ask when implementing card mechanics:
* For what reasons is a card drawn?
* To what extent is the impact of a card context dependent?
* To what extent has the deck been fixed?
For what reasons is a card drawn?
If a card has one reason for being drawn then the impact of including it in the deck is very predictable, which can be a desirable or undesirable trait depending on the design. If there are several reasons to draw a card then the card could have several effects and will feel much more swingy. This is often most apparent when all players are drawing from the same deck, I can think of several games that feel flawed because one card feels overpowered and whoever draws it gets a significant undeserved advantage. If on the other hand the card always advantaged a particular player (and similar cards existed for the other players) it would be the same when drawn in any context and avoid this issue.
However a multiple context card can make other aspects of a game more interesting. For instance in Wizard's Academy the location deck cards are drawn to work out where new enemies are placed and to decide how existing creatures move and to determine how fire spreads. While this reduces the consistency of the impact of a given card, it increases the usefulness of effects such as "Look at the top five cards of the deck and reorganise them" as the players can achieve several results in a single reorganisation using the context of a particular draw to nullify the negative effects of cards that could be devastating in other contexts.
To what extent is the impact of a card context dependent?
While I mentioned context in the previous point this one is slightly different. Above we're concerned about 'what is this card being drawn to do?' but here we ask 'given it's been drawn for a particular purpose, does its impact change based on the situation?' Going back to Dominion as an example, I might always be drawing a card to add it to my hand with the opportunity to play it, but in some situations I may value that opportunity more than in others. The most common example being drawing two individually good action cards together and only being permitted to play one of them.
Where an unlucky dice gamer might lament "Ach! I have not rolled a 6 all game" the unlucky card player more often cries "This 6 has come at the worst possible time!" A good card at a bad time can be as ruinous as a series of bad rolls. Sometimes this is a desirable dynamic for a game, other times it undermines an attempt to implement a deeper strategy - but in any event anyone designing a card should think about seriously the rest of the board state will change it's impact.
On a side note, this creates some design space around cards that generate their own context. Going back to Wizard's Academy the fire and flood cards are at their worst when the problem is already serious, large fires can spread to more areas and the more water that pours through a hole the larger it gets and the faster more rushes in. However the problem only becomes serious (or even exists at all) because those cards have happened in the past. This makes it possible to build a timer (This card has happened, deal with it before you shuffle the deck and it happens again - or else) which can help add tension and signpost subobjectives to a game, but it also risks creating unlucky situations (i.e. Being the last card the first time through the deck and the first card on the second pass) so a note of caution is required.
To what extent has the deck been fixed?
I already touched upon this on the first point, but if the players might have modified the random order of the decks it affects all other considerations. If a card is context dependant then the players modifying the deck can improve things if the context is predictable (e.g. Putting a 'left' card on top knowing that the imp to the left of you is drawing the next card for movement in WA) but worse if it's not (e.g. Putting a 'gold' on top of your deck in Dominion to discover that the next card from your deck is being drawn not because you're drawing cards but because your opponent has played Thief)
It's also possible for a design to make dead cards more interesting if players can modify their decks. Dominion offers plenty of options for moving victory cards around in your and your opponents' deck and hand, making them far more tactically interesting than a simple 'no effect' card might normally imply.
Finally letting players modify their deck can overcome issues introduced by having cards that are heavily context dependant. Moving from a state of "It's unlucky that I've drawn this now" to "I wish I'd stategised around having more options to have moved this card to a place that it'd be more useful" increases player agency and engagement.
I feel like I've barely scratched the surface of the things that players and designers can do with cards and how they're all interrelated. Hopefully you've found a few things to think about in here, but already I can think of dozens of situations I'd like to have talked about. What did I miss? What do you think are the most important considerations in card and card mechanic design?