CMSI 1010
Exam 1 Preparation

When

Monday, October 6, 2025, last 60 minutes of class.

Scope

Labs 1–7, and all the associated readings in the Further Study sections.

Ground Rules

In person, on BrightSpace.

Preparation Checklist

Do each of the following to maximize your preparation:

Were you able to check off every box?

An Outline of Course Content So Far

The fact that active recall is better for acquiring long-term knowledge does not mean that outlines and concept maps are not useful. Learners should use multiple techniques—think “both and” rather than “either or.”

Computing
    What is computing?
    What is computer science?
    How can programming be learned?
Programming Basics
    print
    String literals
    String multiplication (repetition)
    for loops
    list literals
    ranges
    functions for grouping statements
    function calls vs. function definitions
    parameters vs. arguments
    arguments with (kwargs) and without (positional) names
Command Line
    Terminal vs. Shell vs. Command Line vs. CLI
    pwd, cd, ls, mkdir, touch, rm, cp, mv, cat, echo, find
    curl and unzip (not going to be on the exam)
    VSCode (and the terminal in VSCode)
    Running python with and without a file name
    Python REPL
Git and GitHub
    One time configuration (git config)
    git init
    git add
    git commit
    git status
    git log
    git diff
    README.md files
    Connecting a local repository to a remote repository
    git push
    git pull
    .gitignore
Python interactive command line applications
    input()
    if statements
    indexing and slicing strings and lists
    while loops
    while vs. for
    Booleans
    string.strip(), string.lower()
    random.choice()
    VSCode extensions: Python, autopep8
Python data types
    int, float, str, bool
    list, tuple, set, dict
    type() and isinstance()
    multiline strings
    arithmetic operators: +, -, *, /, //, %, **
    comparison operators: ==, !=, <, <=, >, >=
    operators like "in", "not in", "is", "is not"
    comments
More Python features and programming techniques
    functions that return values, not just print
    match statements
    import, for multi-file programs
    modules and packages
    exceptions
    string formatting (f-strings)
    thinking about algorithm design
    figuring out when you need to introduce functions
    locales
    conditional expressions (y if x else z)
    understanding / vs // vs % vs **
    Virtual environments (venv)
    pip install

Format of the Exam

An ideal assessment of your understanding of programming language concepts would examine your fluency with the course material through an oral exam. However, given the the number of students, this assessment will be on your recognition and evaluation of concept expression in the form of multiple choice and similar questions.

However, practicality demands we use BrightSpace.

About the Problems

There will be 18 questions of the multiple choice, multiple select, fill-in-the-blank, and short answer variety.

During the class period one week prior to the exam, we will go over the context for each of the 18 problems. This will enable you to focus your studying on the right areas.