English provides various ways of describing the causal relationships between things.
So and because
The words so and because are opposites. They both indicate that one phrase is a cause of the other, but they do so in opposite directions.
|A -> B||B -> A|
|A so B||B because of A|
Because "so" and "because" are opposites, phrases joined by them can be reversed without changing the meaning if they are exchanged.
|It started raining||so||I brought my umbrella.|
|I brought my umbrella||because||It started raining.|
In spite of
The phrase in spite of functions as a preposition and means the opposite of "because," in a sense. Both "because of A" and "in spite of A" mean that something happened, but "because of A" means that A was at least helpful, but "in spite of A" means that A was unhelpful.
|I found it because of the map||The map was clear and accurate.|
|I found it in spite of the map||The map was confusing and full of mistakes.|
Despite has the same meaning but is more formal.
"In spite of" may come before a noun. In that case, it basically equals although.
It may also come before a verb in -ing form.
- I crossed the bridge in spite of being afraid of heights.
- She caught a cold in spite of taking vitamins everyday.
- He failed the exam in spite of studying hard.