what is the difference between a Hermitian inner product and an inner product? Are there any difference? Or is the Hermitian inner product just a special case of an inner product on a complex space?
 A: There's no substantive difference. I believe the reason for the terminology is that inner products are often (e.g. on Mathworld and here and here) introduced for real vector spaces, and in this context the Hermiticity condition is stated as a symmetry condition. With this definition, a Hermitian inner product is strictly speaking not an inner product, since it is not symmetric but Hermitian. This is not, however, due to symmetric inner products being useful for complex vector spaces; it's just to have a simple definition at a more elementary level without worrying about complex numbers.
The situtation is basically the same with symmetric matrices and Hermitian matrices. You could ask: "What's the difference between symmetric matrices and Hermitian matrices?" We have separate names for them not because symmetric complex matrices tend to be useful but because we don't want to bother everyone who deals with symmetric real matrices with complex conjugation when they don't need it.
So, to summarize: The most satisfying and economical viewpoint is that there is a single concept here, and Hermiticity specializes to symmetry in the case of real vector spaces; but because we don't want to introduce complex numbers in a context where they're not needed, the concept of an "inner product" is often defined via symmetry without reference to Hermiticity, and in that case the Hermitian inner product needs to be defined separately, since it's generally not symmetric.
A: The way I like to think of it is that a Hermitian inner product is a convenient way of expressing an ordinary inner product that is also compatible with a complex structure.
The definition of a Hermitian product is just like the definition for a normal inner product except it's conjugate-symetric instead of symetric.
$\langle \vec{a}, \vec{b} \rangle = \overline{\langle \vec{b}, \vec{a} \rangle } $
$ \langle \vec{a} + \vec{b}, \vec{c} \rangle = \langle \vec{a}, \vec{c} \rangle + \langle \vec{b}, \vec{c} \rangle $
$ \langle z \vec{a}, \vec{b} \rangle = z \langle \vec{a}, \vec{b} \rangle$ for $z \in \mathbb{C}$
If you have a complex vector space $V$ with an Hermitian inner product $\langle -,- \rangle$, you can consider it as a real vector space and define an ordinary inner product by taking the real part:
$$ (\vec{a},\vec{b}) = \Re \langle \vec{a}, \vec{b} \rangle $$
This has some nice properties.   
It induces the same norm on vectors as the Hermitian product, because the Hermitian product of a vector with itself is already real:
$$ \lVert \vec{a} \rVert _{()} = \sqrt{(\vec{a},\vec{a})} = \sqrt{ \Re \langle \vec{a},\vec{a} \rangle }  =  \sqrt{\langle \vec{a},\vec{a} \rangle } = \lVert \vec{a} \rVert _{\langle\rangle} $$  
It's "compatible" with complex structure, for $ z \in \mathbb{C} $: 
$$ ( z \vec{a}, z \vec{b} )= z\overline{z} (\vec{a}, \vec{b} )= |z|^2 ( \vec{a}, \vec{b} ) $$
$$ \lVert z \vec{a} \rVert = |z| \lVert \vec{a} \rVert $$
On the other hand, if you start with a real inner product that's compatible with a complex vector space, you can define a Hermitian inner product:
$$ \langle \vec{a}, \vec{b} \rangle = (\vec{a},\vec{b}) - i(i\vec{a},\vec{b}) $$
Note: all you need to prove an ordinary inner product is compatible is $\lVert i \vec{a} \rVert = \lVert \vec{a} \rVert$
You might ask "Why not just work with the real inner product then?  What role is the imaginary part playing?"
One answer is, when working with complex numbers, it's nice when things are complex linear.   Given the two equivalent formulations, the Hermitian one is usually more convenient.
Another answer could be: the imaginary part of the Hermitian product encodes everything you need to know about what would happen to the real inner product if you multiplied one of the vectors by a complex scalar.   You can compute $(z\vec{a}, s\vec{b})$ for any $z,s \in \mathbb{C}$ given $\langle \vec{a}, \vec{b} \rangle$.
