Courses

Spring 13/14 Fall 14/15 Spring 14/15
Banner Listing Banner Listing Banner Listing
Course Name Course Name Course Name
Instructor Instructor Instructor
Chart (pdf) Chart (pdf) Chart (pdf)

The following is a comprehensive list of Computer Science course offerings. For simpler, per-semester lists, choose one of the links in the box to the right. "Banner" is the Brown Online Course Announcement.

The undergraduate TA program is a great way for students to get to know their professors, sharpen their knowledge of a subject, and get paid!

Computer Science Courses

Courses offered this year are in bold.

What CS Course Should I Take?

CSCI0020(CS002)The Digital World
CSCI0040(CS004)Introduction to Scientific Computing and Problem Solving
CSCI0080A First Byte of Computer Science
CSCI0090-A(CS009-3)Building a Web Application
CSCI0090-B(CS009-1)Computers and Human Values
CSCI0090-C(CS009-2)Talking with Computers
CSCI0150(CS015)Introduction to Object-Oriented Programming and Computer Science
CSCI0160(CS016)Introduction to Algorithms and Data Structures
CSCI0170(CS017)CS: An Integrated Introduction
CSCI0180(CS018)CS: An Integrated Introduction
CSCI0190(CS019)Accelerated Introduction to Computer Science
CSCI0220(CS022)Introduction to Discrete Structures and Probability
CSCI0310(CS031)Introduction to Computer Systems
CSCI0320(CS032)Introduction to Software Engineering
CSCI0330Introduction to Computer Systems
CSCI0360(CS036)Introduction to Systems Programming
CSCI0450Introduction to Probability and Computing
CSCI0510(CS051)Models of Computation
CSCI0530Directions: The Matrix in Computer Science
CSCI0920(CS092)Educational Software Seminar
CSCI0931Introduction to Computation for the Humanities and Social Sciences
CSCI1230(CS123)Introduction to Computer Graphics
CSCI1234Computer Graphics Lab
CSCI1250(CS125)Introduction to Computer Animation
CSCI1260(CS126)Introductory Compiler Construction
CSCI1270(CS127)Database Management Systems
CSCI1280(CS128)Intermediate 3D Computer Animation
CSCI1290(CSCI1950-G)Computational Photography
CSCI1300Designing, Developing and Evaluating User Interfaces
CSCI1310(CSCI1950-S)Fundamentals of Computer Systems
CSCI1320Creating Modern Web Applications
CSCI1340(CS196-2)Innovating Game Development
CSCI1370(CS137)Virtual Reality Design for Science
CSCI1380(CS138)Distributed Computer Systems
CSCI1410(CS141)Introduction to Artificial Intelligence
CSCI1420(CSCI1950-F)Introduction to Machine Learning
CSCI1430(CS143)Introduction to Computer Vision
CSCI1450(CSCI0450)Introduction to Probability and Computing
CSCI1460(CS146)Introduction to Computational Linguistics
CSCI1480(CS148)Building Intelligent Robots
CSCI1490(CS149)Introduction to Combinatorial Optimization
CSCI1510(CS151)Introduction to Cryptography and Computer Security
CSCI1550(CS155)Probabilistic Methods in Computer Science
CSCI1570(CS157)Design and Analysis of Algorithms
CSCI1580Information Retrieval and Web Search
CSCI1590(CS159)Introduction to Computational Complexity
CSCI1600(CS160)Introduction to Embedded Real-time Software
CSCI1610(CS161)Building High-Performance Servers
CSCI1660(CS166)Introduction to Computer Systems Security
CSCI1670(CS167)Operating Systems
CSCI1680(CS168)Computer Networks
CSCI1690(CS169)Operating Systems Laboratory
CSCI1729Programming Languages Lab
CSCI1730(CS173)Introduction to Programming Languages
CSCI1760(CS176)Introduction to Multiprocessor Synchronization
CSCI1780(CS178)Parallel and Distributed Programming
CSCI1800(CSCI1950-P)Cybersecurity and International Relations
CSCI1810(CS181)Computational Molecular Biology
CSCI1820(CSCI1950-L)Algorithmic Foundations of Computational Biology
CSCI1850(CS185)Information Theory
CSCI1900(CS190)Software System Design
CSCI1950-CAdvanced Programming for Digital Art and Literature
CSCI1950-EHuman-Robot Interaction Seminar
CSCI1950-F(CS195-5)Intro. to Machine Learning
CSCI1950-G(CS195-G)Computational Photography
CSCI1950-HComputational Topology
CSCI1950-IDesigning, Developing and Evaluating User Interfaces
CSCI1950-JIntroduction to Computational Geometry
CSCI1950-L(CS196-1)Algorithmic Foundations of Computational Biology
CSCI1950-N2D Game Engines
CSCI1950-PCybersecurity and International Relations
CSCI1950-QProgramming for the Humanities and Social Sciences
CSCI1950-R(CS195R)Compiler Practice
CSCI1950-SFundamentals of Computer Systems
CSCI1950-TAdvanced Animation Production
CSCI1950-UTopics in 3D Game Engine Development
CSCI1950-VAdvanced GPU Programming
CSCI1950-WTopics in Data Science
CSCI1950-XSoftware Foundations
CSCI1950-YLogic for Hackers
CSCI1950-ZComputational Methods for Biology
CSCI1951-AIntroduction to Data Science
CSCI1951-BVirtual Citizens or Subjects? The Global Battle Over Governing Your Internet
CSCI1970(CS193/4)Individual Independent Study
CSCI1970-17(CS194-17)Software Transactional Memory
CSCI2240(CS224)Interactive Computer Graphics
CSCI2270(CS227)Topics in Database Management
CSCI2310(CS231)Human Factors and User Interface Design
CSCI2330(CS233)Programming Environments
CSCI2340(CS234)Software Engineering
CSCI2370(CS237)Interdisciplinary Scientific Visualization
CSCI2410(CS241)Statistical Models in Natural-Language Understanding
CSCI2420Probabilistic Graphical Models
CSCI2440(CS244)Topics in Game-Theoretic Artificial Intelligence
CSCI2500-A(CS250)Advanced Algorithms
CSCI2500-B(CS250)Optimization Algorithms for Planar Graphs
CSCI2510(CS251)Approximation Algorithms
CSCI2520(CS252)Computational Geometry
CSCI2531Internet and Web Algorithms
CSCI2540(CS254)Advanced Probabilistic Methods in Computer Science
CSCI2550(CS255)Parallel Computation: Models, Algorithms, Limits
CSCI2560(CS256)Advanced Complexity
CSCI2570(CS257)Introduction to Nanocomputing
CSCI2580(CS258)Solving Hard Problems in Combinatorial Optimization: Theory and Systems
CSCI2590(New)Advanced Topics in Cryptography
CSCI2730(CS273)Programming Language Theory
CSCI2750(CS275)Topics in Parallel & Distributed Computing
CSCI2820(CSCI2950-L)Medical Bioinformatics
CSCI2950-C(CS296-5)Topics in Computational Biology
CSCI2950-E(CS296-9)Stochastic Optimization
CSCI2950-G(CS296-2)Large-Scale Networked Systems
CSCI2950-JCognition, Human-Computer Interaction and Visual Analysis
CSCI2950-KSpecial Topics in Computational Linguistics
CSCI2950-L(CS295-2)Medical Bioinformatics: Disease Associations, Protein Folding and Immunogenomics
CSCI2950-O(CS295-7)Topics in Brain-Computer Interfaces
CSCI2950-PSpecial Topics in Machine Learning
CSCI2950-Q(CS296-4)Topics in Computer Vision
CSCI2950-RSpecial Topics in Advanced Algorithms
CSCI2950-T(CS295-11)Topics in Distributed Databases & Systems
CSCI2950-USpecial Topics on Networking and Distributed Systems
CSCI2950-WOnline Algorithms
CSCI2950-X(CS296-1)Topics in Programming Languages & Systems
CSCI2950-Z(CS296-3)Robot Learning and Autonomy
CSCI2951-ARobots for Education
CSCI2951-BData-Driven Vision and Graphics
CSCI2951-CAutonomous Agents and Computational Market Design
CSCI2951-DTopics in Information Retrieval and Web Search
CSCI2951-ETopics in Computer System Security
CSCI2951-FLearning and Sequential Decision Making
CSCI2951-GComputational Protein Folding
CSCI2951-HAlgorithms for Big Data
CSCI2951-JTopics in Advanced Algorithmics: Algorithmic Game Theory, 3D Computational Geometry, Quantum Computing
CSCI2951-KTopics in Grounded Language for Robotics
CSCI2951-LHuman-Computer Interaction Seminar
CSCI2951-MAdvanced Algorithms Seminar
CSCI2955The Design and Analysis of Trading Agents
CSCI2956-FMachine Learning Reading Group
CSCI2980(CS297/8)Reading and Research
ENGN25023D Photography
ENGN2520(CSCI1950-F)Pattern Recognition and Machine Learning
XList BIOL 1430Computational Theory of Molecular Evolution
XList ENGN2911-I3D Photography and Geometry Processing

Archived Course Web Sites

CS195-5: Introduction to Machine Learning (Fall 2006)