Breadth-first introduction to computer science. Data representation, algorithmic problem solving, basic concepts in hardware, operating systems, networking, graphics, artificial intelligence, and an introduction to the limitations of computing. Exercises include simulation, introductory programming in the Internet environment, and the development and comparison of algorithms. Laboratories emphasize the use of computers for modeling complex phenomena or for analyzing data, and the use of programs for solving interdisciplinary problems. Provides computer science and computer information systems majors with a solid foundation for further study and offers non-majors a broad introduction to the scientific techniques of the discipline.

Introduction to problem-solving methods and algorithm development; design, coding and documentation of programs in an object-oriented high-level programming language.

Current topics in computing. Topics may be applicable to both majors and non-majors, and are chosen to reflect the important roles computing plays in support of various disciplines.

An introduction to the organization and structure of the major hardware components of computers; fundamentals of logic design; coding, number representation and arithmetic and simple computer architecture.

Intermediate and advanced spreadsheet modeling using current spreadsheet software. Students will develop spreadsheet models that aid research and provide decision support within an organization. Included are such topics as the design and management of worksheets and templates, statistical, financial, database, and spreadsheet manipulation functions, dynamic Web publishing, and basic spreadsheet programming.

Models for application development in the Internet environment. Examination of key Internet protocols and programming tools. Emphasis is on the techniques for development of web content and Internet-based applications, including e-commerce and integration with backend data sources. Session and exchange management. Program security.

This course provides a summary experience for the major on a topic in computing of special significance. The course will feature critical examination of the topic through such means as consideration of career implications, guest presentations, discussion of ethical ramifications, and a comprehensive project.