Filling in the gaps for developers without a computer science background by showing how computer science principles apply to real world coding