A course on programming methodology. The programming language used for the course is C. The course, focusses on learning basic programming constructs using an imperative programming language like C (and therefore closer to a typical computer hardware). It also goes into details of memory allocation, etc.

The main objective of this course is to let the students work with limited guidance on a project designed to consolidate theory and practice, and inculcate an attitude of self-learning and teamwork. In addition you will be trained on soft skills warranted by the industry. 

Use a problem-based approach to introduce the tools and techniques afforded by high-level languages, standard libraries and operating systems so that students will be able to use these primitives while constructing relatively large software.