# HG changeset patch # User Kadambari Devarajan # Date 1254944711 -19800 # Node ID 8a962d946df79c2641de59daf300aa13ca5d6a3c # Parent 7dbeae0fac70a9661fdc77f33008ade3c0884fc7 Add an Introduction to the course. diff -r 7dbeae0fac70 -r 8a962d946df7 Introduction/Introduction.rst --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Introduction/Introduction.rst Thu Oct 08 01:15:11 2009 +0530 @@ -0,0 +1,36 @@ +Introduction to the Course +========================== + +Engineering students use computers for a large number of curricular +tasks – mostly computation centred. However, they do not see this as coding or programming tasks and usually are not even aware of the tools and +techniques that will help them to handle these tasks better. This results +in less than optimal use of their time and resources. This also causes +difficulties when it comes tocollaboration and building on other people’s +work. This course is intended to train such students in good software +practices and tools for producing code and documentation. + +After successfully completing the program, the participants will be able to: + +- understand how software tools work together and how they can be used in tandem to carry out tasks, + +- use unix command line tools to carry out common (mostly text processing tasks, + +- to generate professional documents, + +- use version control effectively – for both code and documents, + +- automate tasks by writing shell scripts and python scripts, + +- realise the impact of coding style and readbility on quality, + +- write mid-sized programs that carry out typical engineering / numerical computations such as those that involve (basic) manipulation of large arrays in an efficient manner, + +- generate 2D and simple 3D plots, + +- debug programs using a standardised approach, + +- understand the importance of tests and the philosophy of Test Driven Development, + +- write unit tests and improve the quality of code. + +