We present an overview of instanton based techniques to analyze and reduce error floors of LDPC codes under linear programming (LP) decoding when transmitted over the binary symmetric channel (BSC). Instantons are the most probable noise configurations that lead to decoder failures in the error floor region. We present an efficient algorithm to find smallest size instantons. We use the resulting instanton statistics to derive a semi-analytical method to estimate the frame error rate (FER) in the error floor region. Observing that the instantons for the same code under different decoding algorithms share a common topological structure, we propose code construction techniques that avoid such structures and thereby lead to codes with superior error floor performance.