As for the topic in the OP, I was once, as
@Elfcrusher notes, very much in the "anti-metagaming" camp. I used quotes because I no longer think that metagaming, as discussed in this thread, is a real thing rather than a crutch. Let me explain this -- metagaming is almost always only a problem when it occurs in a way that renders the GM's prepared plotline or the GM's intended gimmick moot. Look to trolls, for example. Pretending to not know that trolls are harmed by fire or acid is only done to preserve the gimmick of the troll's regeneration. It's a crutch to make encounters more difficult instead of doing the work (which is minimal) to present a challenging encounter that doesn't depend on the gimmick. Likewise, if you use a known character from a setting, expecting players to ignore any knowledge of this they may have just so the GM can push through their intended plot point is lazy. It's trivial to both design encounters that don't function on known gimmicks (use a new one, or don't use one at all) and it's trivial to avoid requiring known information be denied players so that the plot functions (if you're into that).
"Metagaming" is actually a metagame tool used to force play to align with the GM's expectations. I stopped caring about it altogether and changed how I approached scene framing and encounter design and it's absolutely zero problem whatsoever. I had (he's stopped playing with us for out of game reasons, life happens) a player who I used to watch like a hawk because I thought he "metagamed." And he did. But, then I realized that was my fault, I could design so that it didn't matter, and the issue disappeared altogether. I don't even really custom build monsters all to often, and then only because I need something I can't find to fill a niche, and my encounters are tougher and more interesting. I will never, ever again expect a player to ignore things they know. If they want to play that their character doesn't know, that's awesome. If they don't, that's also awesome, because nothing in my game will hinge on that knowledge.
Finally, to address the comment upthread (I'm being lazy and not looking for it, apologies) that asked what happens if a player starts using real world knowledge about sciencey and tech things in game, creating gunpowder being a given example -- that's, again, entirely a problem created by the GM. Your world doesn't have to have gunpowder, or have gunpowder that works at all like the real world. Or it's magic. Frankly, this is a trivial problem, and really an opportunity to work with that player to create an interesting sideline where they create gunpowder. If it's a continuous problem, or violently against the premise of the game, then it's not even an in-game problem -- you need to take this out-of-game and deal with it as real people. Again, if this is actually a problem, it's entirely the fault of the GM.