CS 001: Computer Science Orientation


Lecture: Professor Bhagi Narahari   |   narahari [at] gwu.edu
Office Hours: Tues, Thurs 1-2pm

Lab: Darby Thompson   |   darbyt [at] gwu.edu
Office Hours: TBA

Course Outline and Objectives

This course is an orientation to Computer Science. The objective is to introduce and expose the student to the many facets, and fields, of Computer Science. Topics covered include: Problem solving using computers. History of computing. Basic and emerging concepts and applications of computer science. Hands on experiments and team projects. Introduction to  technical resources, professional ethics, writing and presentation. In the Fall 2009 semester, the hands-on lab component of the course will use robotics to introduce problem solving using a computer and computer programming.

Course material and course announcements will be placed at the following URL: www.seas.gwu.edu/~bhagiweb/cs1/

Prerequisites and Texts

Prerequisites: None.
Primary Text No required textbook. Readings will be assigned. 

The notes posted on the web will be sufficient.

Course Materials

There will be three components for the grade: In-class Assignments (40%), Project (50%), and Classroom Presentation (10%).  Assignments will require elementary programming -- for these you will work in a team of students, and you will work in this same team for your final project.  All students are required to read the Academic Integrity policy described at the URL below.

Term Project
There will be a term project. The project will involve working in a team and solving the problem of "robot navigation in a maze". Specifically, each team will be given a Lego Mindstorm robotics kit and will be responsible for implementing their solution. The specific problem to be solved is a maze navigation problem -- you will be given a maze and a starting point and a final destination point on the maze. Your job is to come up with an "algorithm", to control the robot, that will take the robot from the starting point to the destination. After reaching the destination, it will make its way back to the starting point without making any wrong turns.   For your final presentation, each team is required to (1) give a powerpoint presentation describing how you solved the problem, and (2) give a demo of your robot navigating from the start to the finish line.

Project Details will be posted here.

Project Presentation--Powerpoint template

Final Project Presentation Schedule

Academic Integrity Policy

Link to Lab Section Materials
You must be registered for one lab section of CS001. The instructor for the lab section is Darby Thompson. You are required to attend the labs -- in some cases assignments will be handed out in the lab section and failure to attend the lab session implies failing grade on the assignment.

Course Announcements and Info will be placed here: check once a week



SEAS 1: First 4 weeks of semester, Last 2 weeks of semester.
CS 1: 8 weeks

  • Introduction to Computer Science and CS@GWU: What is computer science ? Brief history of Computing. Applications. Working in teams and teamwork. Curriculum Options.
  • Problem solving using computers, design principles, Levels of Abstraction,  Components of a Computer.
    • Curriculum requirements and discussion; planning your program of study.
    • Lab:  Lego Mindstorm Robotics Tutorial -- components, functionality, programming interface.
      • Assignment : Obstacle Avoidance using tactile/touch sensors. -- in class exercise.
  • Theoretical foundations of computer science -- limits of computers. 
    • Study abroad.
    • Lab: Lego Mindstorms Tutorial:  Using optical sensors, team project discussion.
      • Assignment: Obstacle Avoidance using high level language programming -- in-class exercise.
      • Project handed out
  • Computers and applications and emerging challenges. 
    • Lab: Lego Mindstorm Tutorial: Using optical sensors.
      • Assignment: Obstacle avoidance using optical sensors -- in-class exercise.
      • Breaking down project -- analysis of requirements, developing the abstract solution.
  • Discussion of project -- algorithm design. Advising and Curriculum Discussions
    • Lab: Project Design -- testing navigation using multiple sensors 
  • Oct.30:  Student Groups and projects, Computer Security student project.
    • Lab: Preliminary design for Final Project.
  • Nov.6: Project review.
    • Lab: Ethics case study, Project help and discussion.
  • Nov.13: Final Project Presentation and Demos
    • Each team will be required to give a powerpoint presentation of their solution and then give a demonstration.
Nov. 20th: Back to SEAS 001.