Equivalent definitions of contravariant functor in category theory Suppose $\mathcal{C}$ and $\mathcal{D}$ are categories. A contravariant functor from $\mathcal{C}$ to $\mathcal{D}$ can be defined as a covariant functor $F:\mathcal{C}^{op} \rightarrow \mathcal{D}$, or equivalently $F:\mathcal{C} \rightarrow \mathcal{D}^{op}$. I can see how are they related, and the equivalence is nicely explained in this page "Alternative Definition of Contravariant Functor", but something is still bothering me.
Using the formal definition we end up in the category $\mathcal{D}$, but with the latter we are in the category $\mathcal{D}^{op}$. So for example, if $\mathcal{D}$ is the category of sets, then using the formal definition we are now in the world of sets and functions which is nice, while using the latter definition we are now in the world of complete atomic boolean algebras and complete morphisms which is not so nice. This makes me feel uneasy because using different definition seems to land us in different 'world' (though the 'worlds' are dual). Can someone please help me understand this better?
 A: This is quite a late answer, and maybe redundant in some sense, but I hope it will add something to the discussion (at least for people coming here in the future, looking for an explanation).
In the following $C$ and $D$ will be categories, and $F$ will be a functor (sometimes covariant, sometimes contravariant) between $C$ and $D$. 
I'll write $C[a, b] := Hom_C(a, b)$ for hom-sets and $Cat[C, D] := Func(C, D)$ for functor categories (the direction of natural transformations will become clear later on).
Remark: I'll use the fact that $(C^{op})^{op} \cong C$ to justify "hiding" $^{op}$s: while your question is about functors $F : C^{op} \to D$ and functors $F : C \to D^{op}$, I'll sometimes talk about functors $F : C^\prime \to D$ and functors $F : (C^\prime)^{op} \to D^{op}$: if you set $C^\prime := C^{op}$ everything works out smoothly, and I'll write $C$ for $C^\prime$.
Taken as functors, they are the same in some sense
This is (a reformulation of) what is told in the question you linked:
Given categories $C, D$ a [contravariant] functor $F : C^{op} \to D$ carries the same information as a functor $F : C \to D^{op}$: a law for assigning an object $F(c) : D$ to any object $c : C$, and a low for assigning a morphism $F(f) : D[F(c), F(b)]$ to any morphism $f : C[b, c]$.
This is equivalent (by the remark above) to saying that a [covariant] functor $F : C \to D$ carries the same information as a functor $F : C^{op} \to D^{op}$, but maybe this last fact is easier to see.
However, the respective functor categories are not the same, but the opposite of each other
You already pointed this out yourself in the comments, but let's expand a bit:
It is quite easy to convince yourself that this is true. Consider the covariant case: we have two categories for covariant functors $Cat[C, D]$ and $Cat[C^{op}, D^{op}]$; let's ask ourselves what should the corresponding natural transformations be, in each one.


*

*In $Cat[C, D]$ natural transformations will be (natural families of) morphisms in $D$.

*In $Cat[C^{op}, D^{op}]$ natural transformations will be (natural families of) morphisms in $D^{op}$, that is (natural families of) morphisms in $D$ with their source and target flipped.


(To make this precise, you need to show that naturality in $D$ is the same thing as naturality in $D^{op}$)
As before, this also (kind of) proves that $Cat[C^{op}, D]$ is the opposite of $Cat[C, D^{op}]$.
Now for the existence of conventions
The standard convention for covariant functors seems natural enough that nobody's questioning why we use $Cat[C, D]$ instead of $Cat[C^{op}, D^{op}]$: the former is "obviously the right one" (usually by hand-waving: the latter has two $^{op}$s, while the former has none); the reason we use $Cat[C^{op}, D]$ instead of $Cat[C, D^{op}]$ is slightly less obvious (and arguably harder to justify by hand-waving: both have one $^{op}$). One could argue the following:
When we talk, we don't use notation; we say things like

Let $F$ be a [covariant] functor between $C$ and $D$

This in itself (in my opinion) suggests that the right notion of functor category between $C$ and $D$ should be the one using morphisms of $D$ to "build" natural transformations, while the other gets to be called "the opposite functor category" or something like that. 
One last time, the same argument applies to contravariant functors, yielding $Cat[C^{op}, D]$ as the right [contravariant] functor category.
