# Fundies 1

Welcome to the Fall 2023 version of CS2500 Fundamentals of Computer Science 1, affectionately known as Fundies 1.

This course introduces the fundamental ideas of computing and the principles of programming. The course will teach you a systematic approach to problem solving. By the end of this course, given a computational problem, you will be able to:

- design appropriate data representation(s) for relevant information;
- indicate an appropriately general input(s)/output relationship given data representation(s);
- develop a sufficient set of automated tests to verify a coded solution; and
- produce a set of well-designed functions to solve the problem, making appropriate use of abstraction.

The course does not assume any prior programming experience. It is therefore suitable for all studentsâ€”majors and non-majors alikeâ€”who wish to explore the intellectual ideas of the discipline. It does assume familiarity with (high school) arithmetic and algebra, and it demands curiosity, practice, and willingness to work with others.