Skip to content
  • Get started

    Welcome to CS 101! This course is a rigorous overview of computer science, designed for majors and non-majors alike. We invite you to learn how computers work under the hood, explore the inner workings of the Internet, develop creative thinking and problem solving skills, and analyze the impacts of computing technology on society. Although the subject matter is primarily theoretical, we will study it in ways that will help you to develop practical skills. We promise to create a collaborative, team-based learning environment that encourages questions, provides opportunities for significant learning, and actively involves you in each class meeting. Weekly activities will include group work, mini-lectures, hands-on labs, and more. We hope you will learn how to think like a computer scientist, find out what the science in CS is all about, and take your computer literacy to a whole new level.

    Diagram showing areas of Computer Science including: Artificial Intelligence, Computer Networking, Distributed Systems, Operating Systems, Computer Architecture, Theory, Computation, Programming Languages, Human-Computer Interaction, Information Retrieval, Computer Science, Software Engineering, Security and Cryptography

    We have designed CS 101 to be a "breadth-first" introduction to the field (i.e., a survey course). It is not a course about how to use computers, nor is it intended as a pre-programming or "CS0" course. The department's main goals for offering CS 101 are:

    • Provide our majors with a common language and broad understanding of CS that will help them put the rest of their coursework into a larger context.
    • Give non-majors a unique opportunity to learn how to think like a computer scientist, without having to take a programming-intensive course like CS 149.
    • Align with the AP CS Principles course that seeks to broaden participation in computing in K-12 education.
    • Don't let the 101 number fool you---this is a challenging and rewarding course! You will learn why CS is more than just programming and sample what awaits you in this field. Your ability to think abstractly and work creatively will increase, as will your confidence in mastering new technology. The hands-on labs will be a lot of fun, and you will develop fundamental computing skills that will serve you for years to come