Skip to main content
UVA
Computer Science
3 credits

UVA CS 1110: Introduction to Programming

CS 1110 is UVA's Python-based introduction to programming, assuming no prior experience — the entry point for prospective CS majors, minors, and a wide range of other students. It covers variables, control flow, functions, lists and dictionaries, file handling, and basic objects, with weekly labs and programming assignments.

Fennie is independent and not affiliated with University of Virginia. This is an unofficial study guide.

Build my CS 1110 study plan

What makes it hard

The opening weeks feel easy, which is the trap: difficulty jumps at functions and again at nested data, and students who coasted have no debugging habits when programs stop working on the first try. Exams require reading and writing code without an interpreter, which exposes anyone who finished assignments by tweaking until the autograder passed.

What you'll cover

  • Python fundamentals and program design
  • Conditionals and loops
  • Functions and decomposition
  • Lists, dictionaries, and strings
  • File input and output
  • Intro to objects

The CS 1110 study guide

How to study for UVA CS 1110, step by step.

  1. 1

    Build a daily coding habit before you need it

    CS 1110's gentle start convinces students they can study weekly; the functions unit corrects them. Twenty minutes of writing real code daily from week one is what keeps the difficulty curve flat.

  2. 2

    Type every example yourself

    Reading working code feels like understanding; producing it is the skill exams test. Re-create lecture examples from a blank file and fix your own errors without peeking.

  3. 3

    Learn to debug deliberately

    Print what variables hold, predict before you run, and read error messages bottom to top. Students who debug by random edits plateau exactly when programs get long enough to need a method.

  4. 4

    Practice tracing code on paper weekly

    Exams ask what code prints and why, with no interpreter to lean on. Hand-trace loops over lists and dictionaries until predicting output is mechanical.

  5. 5

    Treat labs as the weekly difficulty gauge

    If a lab took the whole session plus help, that topic is your week's priority — assignments and exams will assume it. Close the gap the same week, because every unit stacks.

  6. 6

    Put the reps on a Fennie Daily Plan

    Upload your CS 1110 syllabus and Fennie schedules short daily coding practice around assignment and exam dates, with quizzes generated from the actual course material to test code-reading without an interpreter. Free to start.

    Start my CS 1110 plan free

How Fennie helps with CS 1110

Fennie's Daily Plans build the daily practice rhythm CS 1110 quietly requires, paced to assignment deadlines and exams rather than panic. Chat explains why your code behaves the way it does — trace by trace, error by error — so debugging becomes a method instead of guesswork, and generated practice questions rehearse the on-paper code reading exams demand.

FAQ

Is CS 1110 at UVA hard?

Not at first — and that's the problem. Difficulty jumps at functions and nested data structures, and students who coasted on the easy weeks have no habits when it does. True beginners who code a little daily do fine; weekly crammers get exposed at the first exam.

Should I take CS 1110 or CS 1111?

CS 1110 assumes zero experience; CS 1111 covers the same ground faster for students with some prior programming. If you've written real code before — a high school course, self-taught projects — 1111 saves you boredom. If you're unsure, 1110 is the safe default and counts identically.

What language does CS 1110 use?

Python. The course covers fundamentals through lists, dictionaries, files, and intro objects, and leads into CS 2100 (Data Structures and Algorithms 1), which transitions to Java — so genuine fluency here matters more than the grade.

Pass CS 1110 with a plan, not a cram

Upload your CS 1110 materials and Fennie generates a Daily Plan paced to your deadline — plus chat, flashcards, and quizzes built from the actual course content.

Get started free

More UVA courses