Computational Thinking for Life Scientists