CS 201 - Spring 2025. 1/15/2025.


[Home]

Welcome to CS 201!

Note: you can find this page by going to the syllabus in canvas and then clicking "home" and "lectures" and "0115.html".

Video of the Day

Winter Vivaldi's Four Seasons.

Logical problem of the day: 12, 6, 3, 10, 5, ...

What is the next number in the above series?

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.

Top Ten Reasons to Learn Racket!

Number 10: It’s like Latin: it gives you insight into other languages derived from racket, like Latin helps you understand French, Italian, Spanish, Portuguese, Romanian, and English.

Lecture 2: Racket.

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

    If you're thinking of taking CPSC 201, please do the following.

    Announcements

  • STEM Navigators Spring Kickoff and STEM Extracurricular Bazaar, Friday January 17th, 3 PM.

    Come join STEM Navigators at our Spring Kickoff + STEM Extracurricular Bazaar on Friday, January 17th, from 3:00–4:00 PM at the Poorvu Center, Room 120A! Enjoy hot chocolate and cookies while meeting STEM Navigators mentors and members from 13 of Yale’s STEM organizations, representing fields ranging from healthcare to computer science and engineering. This is a fantastic opportunity to learn more about the STEM Navigators program, explore Yale’s STEM extracurriculars in a focused and intimate setting, and discover ways to engage with the STEM community. RSVP here, and check out the list of participating extracurriculars here. Everyone is welcome to attend, regardless of involvement in STEM Navigators!”

    The Big Picture

    There is a standard scheme for giving a talk.
    1. Tell the audience what you plan to tell them.
    2. Tell them.
    3. Tell them what you told them.
    Today we are at step 1.

    To some of you, the organization of topics in this course may seem hazy, like the shadows in Plato's cave. I want to assure you that, like in Blackadder, there is a cunning plan.

    For years, academic computer scientists have debated the role of programming in introductory computer science courses. Many have argued that an introductory science course should expose the student to the great ideas of the discipline. Thus, an introductory biology course should cover topics such as evolution and molecular genetics, but not how to build a microscope. Accordingly, a computer science course should emphasize the major intellectual issues of computing, not how to write programs.

    We do not agree with this position. First, programming is a major intellectual issue in computer science. Second, the comparison of programming to building a microscope misses the point. Writing programs in computer science is more like building a living organism in biology. If biology had advanced to a stage that permitted introductory students easily to construct amoebas and clams and roses and rabbits, there would be little debate over the intellectual content of such exercises. (Slade, The T Programming Language, 1987)

    Here is the our framework. For the next few months, we will execute step 2. On April 25th, I will execute step 3.

    Note: there are three other rules for public speaking...

    Racket.

    Collatz.html (jupyter) collatz.rkt

    Racket.html (jupyter)

    Getting to know UNIX

    UNIX Introduction
    [Home]