Esc101:Fundamentals of Computing
Sementer 1, July-Dec, 2002

COURSE ORGANIZATION


Instructor : Amitabha Mukerjee
Office : CSE 201

Text Books:

The course will not strictly follow any text, but will loosely follow the book "Computing Concepts with Java 2: Essentials", by Cay Horstmann (Wiley).A second book, "Java Elements: Principles of programming in JAVA", by Bailey and Bailey, from Tata McGraw Hill, will also be used for parts. The costs of these books are approx. Rs. 400 and Rs. 250 (after 10% discount). Students are strongly encouraged to obtain a copy. Additional books and resources, including some online books, are linked to the course web page http://www.iitk.ac.in/esc101/

Course Contents
Total Lectures : 40 ( Number of lectures are indicated within brackets against each topic )

  1. Introduction to the course. (1L)
  2. Practical aspects (basic information on 'how' questions): introduction to Linux, the programming environment, write and execute the first program. (2L)
  3. Introduction to the object oriented approach - classes, objects, state through member variables, interface through member functions/methods. Give many examples of OO approaches to problem solving in science and engineering. (4L)
  4. Procedural programming (13L)
  5. Object-orientation aspects (10L)
  6. Java i/o system (2L)
  7. More container classes - list, hashtable, set, sortedset, algorithms which use these classes (4L)
  8. Interfaces (2L)
  9. Advanced topics: overview of one or more topics from applets, threads, java beans, javadoc, java virtual machine, etc. (the remainder of the course)
Books and References
  1. Java Elements: Principles of Programming in Java, Duane A Bailey, Duane W Bailey, Tata McGraw Hill, 2001.
  2. Thinking in Java, Bruce Eckel, Prentice-Hall, 2000. (Also available online at www.bruceeckel.com).
  3. The Java Programming Language, 3rd Ed., Ken Arnold, James Gosling, David Holmes, Addison-Wesley, 2000.
  4. Object Oriented Software Construction, 2nd Ed., Bertrand Meyer, Prentice-Hall, 1997.
  5. java.sun.com .


Course Objective:

Unlike most other courses, this is NOT a lecture and exam-oriented course. This is a practical course, where you will be required to demonstrate actual acquisition of a skill, by writing programs on computers during the lab. The lectures will cover the very fundamental material, but there will be much that you can only learn by doing it yourself. Students, in groups of two or three, are also required to do a project, which will be evaluated at several points during the course.

Computer Facilities:

You are expected to use the computers provided in the Esc101 lab. During lab hours these will be reserved for your use. During other hours, you will have to share it with other CC users. However, availability of computers in your hostel room or wing is a great benefit for this course. If at all you are contemplating purchasing a computer for your room during your stay in IIT, I will encourage you to do so at the earliest so that you can use it for this course.

Grades:

There will be three paper exams and two lab exams.
Heads Number Percent Weight
Mid-sem exams 2 15% Each
Lab exams 2 10% Each
End-Sem 1 20%
Labs - 5%
Lab Quizzes 2 or 3 10%
Project 1 15%

Project:

Each project group will need to decide on a project topic, which they will execute over the course of the semester. Their performance in this project will be assessed at an interim evaluation and a final presentation. Project topics need to be decided by mutual discussion with your Tutors and lab guides. A list of possible topics will be made available by mid-August. Groups will need to select projects by the class of August 19.

COURSE TIMINGS:
Lacture Timings
Venue : Lecture Hall 1 (L1) in Lecture Hall Complex (LHC)
Time : Mondays, Tuesdays, Thursdays, 1100-1155

Tutorial Timings :
Every Wednesday 1100-1155 Venue : Tutorial Complex
Tutor List:
Sections
Room No
Tutor
Email
B5 TB105 Dr. Ajay kumar jain ajain@cse.iitk.ac.in
B6 TB106 Mr. Anoop jain anoop@cse.iitk.ac.in
B7 TB107 Dr. Sanjeev kumar aggarwal ska@cse.iitk.ac.in
B8 TB108 Ms. Alpana dubey alpanad@cse.iitk.ac.in
B1 TB101 Dr. T.V. Prabhakar tvp@cse.iitk.ac.in
B2 TB102 Mr. Shiladitya biswas sbiswas@cse.iitk.ac.in
B3 TB103 Mr. Amber pabreja apabreja@cse.iitk.ac.in
B4 TB104 Dr. Harish karnick hk@cse.iitk.ac.in

Lab Timings
Venue : Computer Center
Time : 2-5 PM


Course TA's
Web Page/Projects/Grades Mr. Prashant Kumar pras@cse.iitk.ac.in
Labs/Tutorials/Solutions Mr. Imtiaz ur rahaman M imtiaz@cse.iitk.ac.in
Course Software Mr. Neeraj Kayal kayaln@cse.iitk.ac.in


Exams Dates
Mid-Sem 1 Sept 2-4
Mid-Sem 2 Oct 9-11
End-Sems Nov 27-30,Dec 2-3
Lab Exam 1 Week of Sept 15-18
Lab Exam 2 Oct 28-31
Project Final date Nov 11-15


Evaluation

Heads
Number
Percent Weight
Mid Sems 2 15% (each)
Lab Exams 2 10% (each)
Project 1 15%
Lab Quizzes 2 or 3 10%
Labs - 5%
End Sem 1 20%

There will be two lab quizzes which will be submitted and evaluated online during part of the lab segment. All labs will need to be completed within the stipulated period, and evaluation must be on the same day or in the first hour of the following lab. After this, you will receive no credit towards your lab completion.