What's the correct way to write a multiplication between scalar and vector? The rule of matrix multiplication states that, the number of columns of the left operand equals the number of rows of the right operand.
$M*N$ if M has $n$ columns and N should have $n$ rows.
Following this convention, the natrual way to write a multiplication between a vector and a scalar is to put the vector on the left side --- taking scalar as a 1 by 1 matrix.
however, I found that, quite often people do not follow above rule: using eigen decomposition as an example:
wiki of eigen decomposition
$A\upsilon=\lambda\upsilon$
Is there any rule-of-thumb to guide us when we should put scalar on the left side ?
 A: Scalar multiplication and matrix multiplication are 2 separate operations. Even though they have the same word "multiplication" in them - they are completely different.
Matrix multiplication isn't commutative - so you have to put the right matrix on the right side, it's not about conventions. Scalars are commutative and you can put them on either side.
I don't think there's a written convention per se - people simply got used  to putting coefficients before other terms. If you put a scalar on the right, depending on the field you're working in some people reading your expressions may stop and think "hugh, wait, are we working with non-commutative algebra?" for a moment. Also some people may think "hugh, is this a scalar or am I missing something?". It may take some extra brain-cycles for a reader, so I'd keep scalars on the left, but it probably won't be a tragedy if you put them on the other side.
While it's possible to imitate scalar multiplication using $1\times n$ or $n \times 1$ matrices - that's not what it is in its essence. Again - these are different operations and only one of them is commutative.
A: This is just a matter of notational conventions. Usually the axioms of a vector space are formulated by writing scalar multiplication in the form
$$\lambda \cdot v$$
where $v \in V$ and $\lambda$ belongs to the ground field $K$. The reason is that we usually understand that in the product $\mu \cdot \lambda$ of elements of $K$ we have a first factor $\mu$ and a second factor $\lambda$. In a field (whose multiplication is commutative) the order of factors seems to be irrelevant (because $\mu \cdot \lambda =  \lambda \cdot \mu$), but in a ring $R$ (whose multiplication is in general non-commutative) the order is essential. This applies for example to the ring of $n\times n$-matrices over a field. One of the axioms of a vector space is
$$(\mu \cdot \lambda) \cdot v = \mu \cdot (\lambda \cdot v)$$
which is mnemonically easier than the the same formula written via scalar multiplication from the right
$$v \cdot (\mu \cdot \lambda) = (v \cdot \lambda) \cdot \mu .$$
Okay, for a field this does not make much difference since it says the same as
$$v \cdot (\lambda \cdot \mu) = (v \cdot \lambda) \cdot \mu .$$
But note that the concept of a vector space can be generalized to that of a module over a ring $R$ and here the order makes a difference. In fact, one distinguishes between left and rght $R$-modules. For left $R$-muodules one usually writes scalar mutliplication as $\lambda \cdot v$, for right $R$-modules as $v \cdot \lambda$. See here.
Now let us come to the the core of your question. The matrix product $A \bullet B$ is usually defined for an $m\times n$ matrix $A$ and an $n\times p$ matrix $B$, i.e. we require that the number of columns of $A$ is equal to the number of rows of $B$. As you say, a scalar $\lambda$ can be regarded the $1 \times 1$ matrix $(\lambda)$ . Thus the following two expressions are defined:
$$(\lambda) \bullet A \text{ for } 1 \times n \text{ matrices } A \tag{1} $$
$$A \bullet (\lambda) \text{ for } n \times 1 \text{ matrices } A \tag{2} $$
In $(1)$ $A$ is called a row vector, in $(2)$ a column vector.
It therefore depends on your favorite notation: If you regard elements of $K^n$ as row vectors, you have to use $(1)$, if you regard them as column vectors, you have to write $(2)$.
Anyway, this is only relevant if you insist by all means to understand the scalar product of $\lambda$ and $A$ as a matrix product. Usually for $A = (a_{ij})$ one simply defines
$$ \lambda \cdot (a_{ij}) = (\lambda \cdot a_{ij}) .$$
Doing so it does not matter if you regard elements of $K^n$ as row vectors or as column vectors.
