This is a basic guide for people who have never did any pushups for years or are seriously unfit and those who want a more challenging pushup variation.
This guide will show how to progress in a safe way from only being able to do wall pushups to one arm pushups by step by step progressions.
If you have never did any pushups before or are seriously unfit its best to start with step 1 as you first need to condition and strengthen your arms, rotator cuff muscles and chest before you start any harder variation.
If you can accomplish the desired sets and reps move on to the next step.
STEP 1: WALL PUSHUPS 
Aim to be able to do at least 50 reps for one set with good form 2 seconds up and 2 seconds down. When you forehead touches the wall thats one rep.
STEP 2:TABLE PUSHUPS
Aim to be able to do at least 50 reps for one set with good form 2 seconds up and 2 seconds down.
STEP 3: STEP PUSHUPS

Aim to be able to do at least 50 reps for one set with good form 2 seconds up and 2 seconds down.
STEP 4: KNEE PUSHUPS
Aim to be able to do at least 50 reps for one set with good form 2 seconds up and 2 seconds down.
STEP 5: HALF PUSHUPS
Aim to be able to do at least 40 reps for one set with good form 2 seconds up and 2 seconds down. To limit your rep range you can place a basketball under your chest.
STEP 6: PUSHUPS
Aim to be able to do at least 40 reps for one set with good form 2 seconds up and 2 seconds down
STEP 7: PUSHUPS WITH FEET ON CHAIR

Aim to be able to do at least 40 reps for one set with good form 2 seconds up and 2 seconds down.
STEP 8: DIAMOND PUSHUPS
Aim to be able to do at least 30 reps for one set with good form 2 seconds up and 2 seconds down.
STEP 9: HALF REP ONE ARM PUSHUPS
To limit range of motion place a basketll or soccer ball under your chest. Aim to be able to do at least 20 reps for one set with good form 2 seconds up and 2 seconds down.
STEP 10: ONE ARM PUSHUP
Aim to be able to do at least 10 reps for one set with good form 2 seconds up and 2 seconds down.