We obviously want "code golf" and one for "other competition", but how about "fastest code" and "fastest algorithm"?
Have a look here:
* [Winning criteria](https://codegolf.meta.stackexchange.com/q/8130/43319)
* [Tags' listing](https://codegolf.stackexchange.com/tags)
## Challenge type tags
By `other competition`, I guess you mean the tag called `code challenge`. I agree that we'll need it. But we have lots of more specific challenge types (excluding `tips` and some (almost) deprecated ones):
* `Fastest code`
* `Fastest algorithm`
* `King of the hill`
* `Cops and robbers`
* `Atomic code golf`
* `Proof golf`
* `Answer chaining`
* `Code bowling`
But adding some of these are questionable:
* `Proof golf` can be seen as a subset of `Atomic code golf` (using a set of axioms and logic principles).
* I didn't see any successful `Fastest algorithm` challenge recently (IMO the winning criterion is also pretty unclear when the complexity depends on multiple parameters).
* Some users have expressed doubts on what `Cops and robbers` is really about.
Also, these tags are used pretty rarely (just a few challenges a year), so I don't think we need them immediately. I believe we can add challenge types as we need them.
## Subject tags
For subject tags, I guess the best bet would be to let the challenge writers choose whatever they feel appropriate. The list of tags is HUGE (which includes all the obsolete tags we don't really need), and even that huge list doesn't cover all subjects we could possibly pose a challenge on.
Perhaps we should have [tag:source-layout] as a tag.
I know I sure do enjoy such challenges.