CS 200 Concepts for Advanced Computer Usage


Objectives

To develop an understanding of important intellectual concepts underlying major personal computer application categories, and the application of those concepts to problem solving. To develop an understanding of personal computer software and hardware appropriate for students who own and maintain their own machines. To develop methodologies for efficiently learning to use personal computer applications.

Intended Audience

CS 200 is intended for non-math majors with significant prior exposure to personal computers (equivalent to that obtained in CS 100) who wish to deepen their understanding of personal computers and how to use them effectively and efficiently.

Related Courses

Prerequisites: CS 100 or Grade 11 or 12 or OAC Computer Science or 4M Computer and Information Science.

Antirequisites: Not open to Computer Science students.

Successors: CS 330, or any of the applications-oriented courses taught by various university departments.

Hardware/Software

Labs are run primarily on Macintoshes but some work is done on Windows machines. Students who own a computer are encouraged to use it. (Most of the software used runs on both Macintosh and Windows computers.)

Assumed Background: Experience with standard applications software, as covered in CS 100.

References

The Non-Designers Design Book, 3rd ed., by R. Williams, Peachpit Press, 2004; The Mac is not a Typewriter, 2nd ed., by R. Williams, Peachpit Press, 2003; and Learning Web Design, 3rd ed., by J. Niederst, O'Reilly & Associates, 2003,S Pocket Reference 4th ed by Eric Meyer O"reilly Media Inc. Course notes.

Schedule

Two hours of lecture and four hours of supervised laboratory per week. Normally available in Fall, and Spring.

Notes

  1. Students will require an average of 3 hours per week of extra (i.e., unsupervised) lab time to complete assignments.
  2. The course ends with a substantial project that requires the integrated use of several applications.
  3. Part of the lab work involves maintaining the lab machines.

Outline

Methodology (2 hours)

Techniques for efficiently learning and using applications, and for diagnosing problems.

System Administration (2 hours)

Booting. System extensions. File systems and file system maintenance. File system organization. Security and access control. Backup disciplines.

Structured Word Processing (4 hours)

Character versus paragraph styles. Flat versus hierarchical styles. Conditional text. Good graphical design.

Vector and Pixel Graphics (4 hours)

Colour models. Half-toning and dithering. Image manipulation, layers and masks. Vector object properties and named graphical styles. Bezier curves.

Networking and The Internet (2 hours)

Web site structure, design, and security. HTML. CGIs. Cascading style sheets. Good graphical design.

Scripting (4 hours)

Intra-application scripting. System-level inter-application scripting. Programming in the small. Debugging.

Relational Databases (6 hours)

Table design. Form design. Data validation. Referential integrity. Indices. Client/server databases. Serving the web from a database. SQL.