Welcome to CS4, Introduction to Scientific Computing and Problem Solving. CS4 provides an introduction to using computers to solve STEM (Science, Technology, Engineering, and Mathematics) data analysis, visualization, simulation, and numerical analysis problems. The course begins with an introduction to the basics of programming, accompanied by several applications of fundamental coding elements and concepts. As we do this we will explore some of the breadth of Computer Science as a discipline. The first part of the course (which runs until Spring Break) will be taught in Python. Following this, we will explore more specialized topics related to scientific computing and mathematics that will allow students to access and analyze a number of "real world" problems. The later portion of the course will be taught in MATLAB.

Requirements: No prior programming experience is required to take this course (Python and MATLAB are easy and fun to use!). A calculus course (perhaps in high school) is highly recommended.


If you have any feedback about assignments or the course in general, please fill out the Anonymous Feedback Form to let the course staff know.
If you have any academic/SEAS accommodations that we should be aware of, please fill out this form so that the course staff can best support you.

We understand that being a student can be stressful and that certain circumstances can affect your performance in the course. Please refer to the syllabus for more information about receiving academic support for CS0040 or email the HTAs or Prof. Gaudette for more information regarding accommodations. You can also find some resources the CS department has compiled for students here and a helpful message from your TAs here.

TopicsDateSection Notes
Course Introduction and Computational Problem-Solving1/23
Intro to Python (Data Types, Expressions, Strings, List, Functions)1/28
Conditional Logic and Variable Scope1/301/31
Test-Driven Design and Iterative Programming2/4
Iterative Programming and Nested Loops2/62/7
2D Lists and Mutability2/112/11
Files, Dictionaries, and Markov Text2/132/14
Long Weekend!2/18
Recursion I2/202/21
Recursion II2/25
Higher Order Functions and Anonymous Functions2/272/28
Modeling and OOP I3/4
Connect 43/13
MATLAB I: Programs and Functions3/18
MATLAB II: Conditional Statements and Arrays3/20
Spring Break!3/27
MATLAB III: More Arrays and Design Recipe4/1
Linear Algebra I4/3
Linear Algebra II4/8
Image Processing I4/10
Image Processing II4/15
Medical Imaging4/17
HTA Lecture4/22
HTA Lecture4/24
MATLAB Quiz4/29


Jason Gaudette (jegaudet)

Team: Puppies

Welcome to CS4! I am happy to be your instructor this semester. As a research engineer with loads of real-world experience in scientific computing, my goal is to teach you the art and joy of the field. Outside of my main job, I coach kids in FIRST LEGO robotics, volunteer for the IEEE, teach programming and electronics courses, sail a Hobie Cat, and run with my dog Luna."


E-mail us at cs0040headtas@lists.brown.edu if you have administrative or private questions.

Griffin Kao (gk16)

Team: Babies

Hi there, I’m a junior from Philadelphia studying computer science and engineering. A fun fact about me is that Kobe Bryant went to my high school!

Hersh Gupta (hgupta1)

Team: Puppies

Hey everybody! My name is Hersh and I’m a junior concentrating in chemistry and computational biology. I’m a big sports fan and love going on Netflix binges but never actually finishing the show.

Joy Bestourous (jbestour)

Team: Babies

Hi hello! I'm a junior studying computer science while filling pre-med requirements (and maybe pre-law! Who knows!). I like New York pizza, iced coffee, going to the gym, dancing, and singing Disney songs. Loudly.


E-mail us at cs0040tas@lists.brown.edu or post a question (privately!) on Piazza if you have any questions about the course.

Annie He (ahe6)

Team: Babies

Hey y’all! I’m a junior from Dallas, TX concentrating in computational biology. If you don’t see me in the scili, I’m either chilling in my pjs or exploring new restaurants! I also love to rock climb, ski, bungee jump, basically anything adventurous! :)

Alex Liu (aliu31)

Team: Babies

I am a junior concentrating in Applied Mathematics and Computer Science. I’m from Eugene, Oregon and outside of class I am involved with the Socially Responsible Investment Fund, I play golf whenever I get the chance, and I try my best to keep up on practicing the Piano. I also run Brown Data Science, a club that, much like this class, brings educational opportunities related to Data Science to undergraduates of all academic backgrounds.

Aryan Srivastava (asriva11)

Team: Puppies

I am a freshman concentrating in CS (probably). I love watching and playing basketball (1v1 me), reading and talking philosophy, and watching artisan videos on youtube! My favorite thing to eat at Brown is a warm Blue Room Chocolate Chip Muffin.

Ellen Ling (eling)

Team: Babies

Hi, I’m a junior from Shanghai studying physics and CS. I like good movies and dance and babies!

Irene Rhee (irhee)

Team: Puppies

Sup dudes, my name is Irene and I’m a junior from Corvallis, OR studying computer science! I like to drink my coffee black, am part of a dance group called Daebak (come to our spring show!!), and enjoy dim sum, boba, and tagging people in memes (go like my post on subtle asian traits). My favorite word is lit.

Joseph Chen (jchen88)

Team: Babies

Hey everyone! I’m a junior from California concentrating in Neuroscience and CS, and I’m a big fan of all things related to swimming, playing basketball, Game of Thrones, and stand-up comedy.

Jarrett Huddleston (jhuddle1)

Team: Puppies

Hey! I’m a sophomore from Eastern Massachusetts concentrating in computer science. Outside of classes I enjoy camping and music, and I’m always looking for a good book!

Milla Shin (mshin7)

Team: Puppies

I’m a junior from Tokyo studying computer science. I like going to the beach. I like food and cooking! I like snowboarding and scuba diving! I love sweet potatoes, avocado, and matcha! Yummy. I like puppies but I like babies too.

Pedro de Freitas (pfreitas)

Team: Babies

Senior from Portland, Maine studying cognitive neuroscience. I’m a lyra performer/instructor who also enjoys painting.

Solomon Rueschemeyer-Bailey (sruesche)

Team: Puppies

I am a junior trying not to let school get in the way of college. Come to my hours or my section if you want to learn about: The Bucket Theorem, whether or not true Love exists, and the future of teleportation.

Tiffany Ding (tding5)

Team: Puppies

Hi! I’m a sophomore from upstate NY studying applied math, economics, and computer science. When I’m not in the CIT, you can find me going for a run or taking photos for the Brown Daily Herald. I also love puns, penguins, and podcasts!