CS 2000 - Fall 2026.


[Home]

Welcome to CS 2000! 9/9/2026

The Story of Python and how it took over the world | Python: The Documentary. Key points: mostly a bunch of nerdy white guys (now there are PyLadies but no MeToo's unlike GNU and Linux), Guido is actually pretty chill which is reflected in Python itself, civil war over Python 2 vs 3, bitterness over the walrus operator.

Robert Kahn.

Python: Trailer from Socratica

Python: Hello World from Socratica

Python: Strings from Socratica [Note: bad link in Strings lecture notes.]

Python: lists from Socratica.

Python: Numbers from Socratica

Python: lambda expressions from Socratica

Python: list comprehensions from Socratica

Logical problem of the day

Murphy's Law states "the best way to get the right answer on the internet is not to ask a question; it's to post the wrong answer."

https://pollev.com/slade You may also download the app to your phone. Use the "slade" poll id.

Canvas Quiz of the Day (need daily password)

Most days, there will be a simple canvas quiz related to the lecture. You need a password to activate the quiz, which I will provide in class. These quizzes will count toward your class participation grade. The quiz is available only during class.

Click for today's quiz.

Note: the collaboration quiz is separate. It coincides with the first homework assignment.

Lecture 2: Python + UNIX.

Administrivia

  • I have office hours Wednesdays from 4 to 6 pm, on zoom, id 459 434 2854.

  • TA office hours are found at Ed Discussions on Canvas.

  • Epigrams in Programming, Alan Perlis.

  • Homework assignments: [Assignments]. hw1 is now available. See hw0a.pyc and hw1a.pyc. The name of your homework file submitted to gradescope must be exactly the same as the assignment file, e.g., hw0.py, hw1.py. Otherwise, zippo.

    Announcements

  • Poorvu STEM Navigators Program.

  • Yale Digital Ethics Center

  • Yale Information Society Project See this week's events.

  • Let us know if you have an upcoming event you would like to share with the class.

    Getting to know Python

  • Editors. To write Python programs, you need an editor or maybe an IDE - Integrated Development Environment. (I am old school. I use emacs. My fingers have muscle memory and the key bindings are used other places, e.g., UNIX command line.) Below are some popular options. There are YouTube video tutorials for most of these. You might want to ask your friends. That way, you can ask them for help.

    You can also check with the TA, Weijia, who uses VS Code.

  • RFCs. Request for Comments. How the Internet was developed. The Python PEPs (Python Enhancement Proposal) are analogous.

  • Jupyter notebooks are an example of Literate Programming.

  • Programming is an intellectual domain, but it is also a skill, like playing the piano, tennis, chess, or learning French or Japanese. As such, you must practice to get better. Most of what you will learn in this course will happen outside the classroom and at the keyboard. You should enter the commands and run the code. Try variations. You are not going to break the computer. Go at it.

    It is like going to the doctor. Clearly, what happens in the doctor's office matters, but it more important what you do outside the doctor's office: take your pills, exercise, eat properly, get enough sleep, drive carefully, lock up your firearms, avoid cable news. Your health depends more on what happens after you leave the doctor's office than what goes on there.

  • Strings.html (jupyter) Python

  • Lists.html (jupyter) Python

    Getting to know UNIX

    UNIX Introduction

    Sample UNIX exam question. Specify the XXXX commands.


    [Home]