Ajay

Ajay Gupta
Professor

IEEE-CS TAC Vice-Chair (2022-24)
IEEE-CS TMRC Member (2013 - )
IEEE-CS TAC Vice-Chair (2015-16)
IEEE-CS TCPP Chair (2011-2015)

Director, WiSe Lab

Western Michigan University
Dept. of Computer Science
Mail Stop 5466
4601 Campus Drive
Kalamazoo, MI, 49008-5466


Phone: 269-276-3101 / 3104
Fax: 269-276-3122
E-Mail: ajay dot gupta at wmich dot edu

CS1110 - Computer Science I

Time & Place: CRN: 11362, M W 04:00pm-05:15am, C0224 CEAS,
4 credit hours

You need to be also registered for one of the labs from CRNs 11367, 11369, 11375 or 11377

Prerequisite (may be taken concurently): MATH 1180 or MATH 1220 or MATH 2000 or MATH 1700 or MATH 1230 or MATH 1710 or MATH 2720 or MATH 3740.

This course is aimed at college freshmen and other students seeking a basic knowledge of computer programming.  As a freshman level course it has two goals: 1) to develop basic knowledge, skills, and attitudes relating to student of computing and computer science, and 2) to develop basic knowledge, skills, and attitudes for general college level academic, college life and beyond.


The course is very structured, as is appropriate for freshmen.  Like most college courses, this course requires students to take responsibility for their own learning.  The course follows a strict schedule of reading, writing, and quizzes.  Each week reading will cover one or two chapters of the textbook.  The reading, writing, and examination schedule is firm.  Students are required to develop the discipline to follow the schedule.


As is typical of many college courses, this course will require two midterm examinations during the course and a comprehensive final examination.
Classroom activities, unlike the readings and quizzes, are somewhat less structured.  This allows for tangents in discussions, the use of occasional visiting guests, unforeseen instructor absences, holidays, etc.  The flexibility of the classroom does not tie students or instructor to the textbook readings, but does complement and enhance those readings.  Students are responsible for material in the textbook, whether or not the material is addressed in the classroom.  Students are also responsible for material and skills presented or discussed in class.

 

Required Texts

Starting Out with Java – From Control Structures through Objects **CS 1110 Textbook**, by Tony Gaddis, Pearson Custom – Computer Science, (2013) ISBN-10: 1269046780, ISBN-13: 9781269046787, Pearson Learning Solutions, Boston, MA.

Pearson MyProgrammingLab is bundled with the custom book at the WMU bookstore. If you have purchased the full book or a used custom book, you may have to purchase the access code for MyProgrammingLab separately.

Course Outcomes


 Students who complete this course with a grade of “C” or better should be able to satisfy the following:

  • consistently follow a problem solving process;
    • Understand, design, implement, and test
  • read, develop, and implement algorithms to solve simple problems;
    • Define, recognize, design, and implement algorithms (pseudocode)
  • understand and use basic concepts of high-level language procedural programming;
    • Main program, Declarations, Assignment-statements, I/O-statements, Selection-statements, Loop-statements, Method Call-statements, Statements vs. Expressions
  • understand and use basic concepts of OOP;
  • consistently document programs effectively and efficiently;
    • Program Identification, Sectional Comments, Side-by-Side Comments, Redundant vs. Non -redundant Comments, Use of white-space and indentation, Use of readable identifiers
  • understand and use basic components of an integrated development environment (IDE);
    • Context-sensitive Editor, Build/Compile, Execute, Symbolic Debugger
  • know the basic phases of the software life cycle and software development cycle;
    • Concept, Development, Maintenance, Retirement
    • Requirements, Design, Code & Debug, Test
  • know basic  searching  algorithms;
    • Linear and binary search;
    • Selection and insertion sort;
  • gain an initial and elementary understanding of algorithm complexity;
    • Big O Notation

 

 

Syllabus for Spring 2016

Topics Covered in Spring 2016

CS1110 Teaching Staff Office Hours during Spring 2016