Find diagonalizable decomposition of $A$. 
Let $A=\begin{pmatrix}1&2\\-2&-3\end{pmatrix}.$ Find $P$ and $D$, such that: $$A=PDP^{-1}$$

First let's calculate the characteristic polynomial for $A$: $$P_a(x)=\det(A-xI_2)=(x+1)^2.$$
So the eigenvalues of $A$ are $\lambda=-1$ with $a(\lambda)=2$ where $a(\lambda)$ is the algebraic multiplicity of $\lambda$.
So now let's find $V_\lambda.$
For that we have:
$$(A-\lambda I_2)(x, y)=(0,0)\implies y=-x$$
So we have:
$$V_\lambda=\{\alpha(1,-1)\mid \alpha\in\mathbb{R}\}$$
$$\dim_{\mathbb{R}}V_\lambda=1=g(\lambda)$$
where $g(\lambda)$ is the geometrically multiplicity of $\lambda.$Now:
$$D=\begin{pmatrix}-1&0\\0&-1\end{pmatrix}$$
How do we find $P$?
 A: Congratulations! You showed that $A$ is in fact not diagnoalisable.
To see this, $-1$ is the only eigenvalue of $A$, so if $A$ were diagonalisable, $D=-I_2$, hence for any invertible $P$, $PDP^{-1}=D=-I_2$, but $A\neq I_2$.
A: In order to solve for the eigenvectors, you simply put them back in the equation. Suppose that $A$ is
$$ A = \begin{pmatrix} 1& 2 \\ -2 & -3  \end{pmatrix}  \tag{1}$$
then if solved for our eigenvalues by the equation
$$ \det(A- \lambda I) =0 \tag{2} $$
it gave us $\lambda_{1}, \lambda_{2}$ which you below $\lambda_{1},\lambda_{2} =-1$  in order to get $P$ we do the following. 
$$ A -(-1)I x=0 \tag{3}$$
this becomes the following equation
$$ A = \begin{pmatrix} 1& 2 \\ -2 & -3  \end{pmatrix} + \begin{pmatrix} 1& 0 \\ 0 & 1  \end{pmatrix} = \begin{pmatrix} 2& 2 \\ -2 & -2  \end{pmatrix}  \tag{4}$$
then apply $x$
$$ \begin{pmatrix} 2& 2 \\ -2 & -2  \end{pmatrix}\begin{pmatrix} x_{1} \\x_{2} \end{pmatrix}  = \begin{pmatrix} 0 \\0 \end{pmatrix} \tag{5}$$
$$ 2x_{1} + 2x_{2} = 0 \\ -2x_{1} - 2x_{2} = 0 \tag{6}$$
then you see they're equal and opposite
$$ v_{1} = \begin{pmatrix} 1 \\ -1\end{pmatrix} $$ 
which would mean $v_{2}$ nearly the same
we would need to normalize them of course..let's normalize them
$$ q_{1} =\frac{v_{1}}{\|v_{1}\|}  = \frac{v_{1}}{\sqrt{2}} \tag{7}$$
if you use python. You will see
import numpy as np


A = np.matrix([[1,2],[-2,-3]])
w,v = np.linalg.eig(A)

v
Out[2]: 
matrix([[ 0.70710678, -0.70710678],
        [-0.70710678,  0.70710678]])

just demonstrating this
test = 1/np.sqrt(2)

test
Out[4]: 0.7071067811865475

Note that diagonalizable means linearly independent. 
