Introduction to Programming for Computational Sciences