Text this: An Introduction to scientific computation and programming