Course List

# Number Title
1 1 Practical Unix
A practical introduction to using the Unix operating system with a focus on Linux command lin
practic introduct unix oper system focu linux command line skill class consist video tutori weekli h
2 2 Introduction to Media Production
Sound, image and video editing techniques and applications, including understanding file form
sound imag video edit techniqu applic includ understand file format publish multimedia onlin topic i
3 42 Callback Me Maybe: Contemporary Javascript
Introduction to the JavaScript programming language with a focus on building contemporary app
introduct javascript program languag focu build contemporari applic consist class activ program assi
4 81 Hackers and Heroes
This course is about dreamers, role models, and the spirit of adventure. Hackers are said to
dreamer role model spirit adventur hacker soul comput play programm progress made trial error guid h
5 91 Digital Canvas: Intro to Visual Design on the Web
Introduction to visual design concepts with a focus on modern interfaces like web, mobile and
introduct visual design concept focu modern interfac web mobil app topic includ visual design elemen
6 101 Introduction to Computing Principles
Introduces the essential ideas of computing: data representation, algorithms, programming "co
introduc essenti idea comput data represent algorithm program code comput hardwar network secur soci
7 103 Mathematical Foundations of Computing
Mathematical foundations required for computer science, including propositional predicate log
mathemat foundat requir comput scienc includ proposit predic logic induct set function relat formal
8 103 Mathematical Problem-solving Strategies
Problem solving strategies and techniques in discrete mathematics and computer science. Addit
problem solv strategi techniqu discret mathemat comput scienc addit problem solv practic class parti
9 106 Programming Methodology (ENGR 70A)
Introduction to the engineering of computer applications emphasizing modern software engineer
introduct engin comput applic emphas modern softwar engin principl object orient design decomposit e
10 106 Standard C++ Programming Laboratory
Supplemental lab to 106B and 106X. Additional features of standard C++ programming practice.
supplement lab addit featur standard program practic topic includ advanc languag featur standard lib
11 107 Computer Organization and Systems
Introduction to the fundamental concepts of computer systems. Explores how computer systems e
introduct fundament concept comput system explor comput system execut program manipul data work prog
12 109 Introduction to Probability for Computer Scientists
Topics include: counting and combinatorics, random variables, conditional probability, indepe
topic includ count combinator random variabl condit probabl independ distribut expect point estim li
13 109 Statistical Computing with R Laboratory
Supplemental lab to CS109. Introduces the R programming language for statistical computing.
supplement lab introduc program languag statist comput topic includ basic facil includ mathemat grap
14 110 Principles of Computer Systems
Principles and practice of engineering of computer software and hardware systems. Topics incl
principl practic engin comput softwar hardwar system topic includ techniqu control complex strong mo
15 143 Compilers
Principles and practices for design and implementation of compilers and interpreters. Topics:
principl practic design implement compil interpret topic lexic analysi pars theori symbol tabl type
16 155 Computer and Network Security (EE 287A)
For seniors and first-year graduate students. Principles of computer systems security. Attack
senior year graduat student principl comput system secur attack techniqu defend topic includ network
17 161 Design and Analysis of Algorithms
Worst and average case analysis. Recurrences and asymptotics. Efficient algorithms for sortin
worst averag case analysi recurr asymptot effici algorithm sort search select data structur binari s
18 168 The Modern Algorithmic Toolbox
This course will provide a rigorous and hands-on introduction to the central ideas and algori
provid rigor hand introduct central idea algorithm constitut core modern algorithmsntoolkit emphasi
19 181 Computers, Ethics, and Public Policy
(Formerly 201.) Primarily for majors entering computer-related fields. Ethical and social iss
primarili major enter comput relat field ethic social issu relat develop comput technolog ethic theo
20 181 Computers, Ethics, and Public Policy (WIM)
Writing-intensive version of CS181. Satisfies the WIM requirement for Computer Science and C
write intens version satisfi wim requir comput scienc comput system engin undergradu
21 190 Software Design Studio
This course will teach the art of software design: how to decompose large complex systems int
teach art softwar design decompos larg complex system class implement maintain easili topic includ i
22 191 Senior Project
Restricted to Computer Science and Computer Systems Engineering students. Group or individual
restrict comput scienc comput system engin student group individu project faculti direct regist inst
23 191 Writing Intensive Senior Project (WIM)
Restricted to Computer Science and Computer Systems Engineering students. Writing-intensive v
restrict comput scienc comput system engin student write intens version regist section number academ
24 192 Programming Service Project
Restricted to Computer Science students. Appropriate academic credit (without financial suppo
restrict comput scienc student academ credit financi support volunt comput program work public benef
25 193 Apple Watch Programming
The technologies behind building Apple Watch applications. Student teams will build an Apple
technolog build appl watch applic student team build appl watch applic iphon applic supervis instruc
26 194 Software Project
Design, specification, coding, and testing of a significant team programming project under fa
design specif code test signific team program project faculti supervis document includ detail propos
27 194 Software Project (WIM)
Restricted to Computer Science, Computer Systems Engineering, and Electrical Engineering unde
restrict comput scienc comput system engin electr engin undergradu write intens version
28 198 Teaching Computer Science
Students lead a discussion section of 106A while learning how to teach a programming language
student lead discuss section learn teach program languag introductori level focu teach skill techniq
29 199 Independent Work
Special study under faculty direction, usually leading to a written report. Letter grade; if
special studi faculti direct lead written report letter grade enrol
30 204 Legal Informatics
Legal informatics based on representation of regulations in computable form. Encoding regulat
legal informat base represent regul comput form encod regul facilit creation legal inform system sig
31 205 Mathematical Methods for Robotics, Vision, and Graphics
Continuous mathematics background necessary for research in robotics, vision, and graphics. P
continu mathemat background research robot vision graphic topic linear algebra conjug gradient metho
32 210 Software Project Experience with Corporate Partners
Continuation of CS210A. Focus is on real-world software development. Corporate partners seed
continu focu real world softwar develop corpor partner seed project loos defin challeng lab student
33 210 Introducing Software through Video Stories
In this one-unit lab where coding meets film, software development teams from CS210 are paire
unit lab code meet film softwar develop team pair film student result cross disciplinari group creat
34 211 Content Creation in Virtual Reality
Students are immersed in a cutting edge virtual reality development environment consisting of
student immers cut edg virtual realiti develop environ consist hardwar softwar element studentsnwil
35 224 Deep Learning for Natural Language Processing
Deep learning approaches have obtained very high performance across many different natural la
deep learn approach obtain high perform natur languag process task class student learn understand im
36 225 Experimental Robotics
Hands-on laboratory course experience in robotic manipulation. Topics include robot kinematic
hand laboratori experi robot manipul topic includ robot kinemat dynam control complianc sensor base
37 227 General Game Playing
A general game playing system accepts a formal description of a game to play it without human
gener game plai system accept formal descript game plai human intervent algorithm design specif game
38 231 The Cutting Edge of Computer Vision
(Formerly 223C) More than one-third of the brain is engaged in visual processing, the most so
brain engag visual process sophist human sensori system visual recognit technolog fundament influenc
39 231 Mobile Computer Vision
The course surveys recent developments in computer vision, graphics and image processing for
survei recent develop comput vision graphic imag process mobil applic topic interest includ featur e
40 232 Digital Image Processing (EE 368)
Image sampling and quantization color, point operations, segmentation, morphological image pr
imag sampl quantiz color point oper segment morpholog imag process linear imag filter correl imag tr
41 240 Advanced Topics in Operating Systems
Recent research. Classic and new papers. Topics: virtual memory management, synchronization a
recent research classic paper topic virtual memori manag synchron commun file system protect secur o
42 244 Advanced Topics in Networking (EE 284B)
Classic papers, new ideas, and research papers in networking. Architectural principles: namin
classic paper idea research paper network architectur principl name address rout congest control tra
43 244 Networked Wireless Systems (EE 384E)
Design and implementation of wireless networks and mobile systems. The course will commence w
design implement wireless network mobil system commenc short retrospect wireless commun initi touch
44 254 Computational Complexity
An introduction to computational complexity theory. Topics include the P versus NP problem; d
introduct comput complex theori topic includ versu problem diagon space complex pspace savitch theor
45 263 Algorithms for Modern Data Models (MS&E 317)
We traditionally think of algorithms as running on data available in a single location, typic
tradition algorithm run data singl locat typic main memori modern applic includ web analyt search da
46 272 Introduction to Biomedical Informatics Research Methodology (BIOE 212, BIOMEDIN 212, GENE 212)
Hands-on software building. Student teams conceive, design, specify, implement, evaluate, and
hand softwar build student team conceiv design implement evalu report softwar project domain biomedi
47 275 Music Query, Analysis, and Style Simulation (MUSIC 254)
Leveraging off three synchronized sets of symbolic data resources for notation and analysis,
leverag synchron set symbol data resourc notat analysi lab portion introduc student open sourc humdr
48 276 Information Retrieval and Web Search (LINGUIST 286)
Text information retrieval systems; efficient text indexing; Boolean, vector space, and proba
text inform retriev system effici text index boolean vector space probabilist retriev model rank ran
49 294 Research Project in Software Systems and Security
Topics vary. Focus is on emerging research themes such as programmable open mobile Internet t
topic vari focu emerg research theme programm open mobil internet span multipl system topic human co
50 294 Writing Intensive Research Project in Computer Science
Restricted to Computer Science and Computer Systems Engineering undergraduates. Students enro
restrict comput scienc comput system engin undergradu student enrol section attach project chosen
51 323 Automated Reasoning: Theory and Applications
Intelligent computer agents must reason about complex, uncertain, and dynamic environments. T
intellig comput agent reason complex uncertain dynam environ graduat level introduct autom reason te
52 327 Advanced Robotic Manipulation
Advanced control methodologies and novel design techniques for complex human-like robotic and
advanc control methodolog design techniqu complex human robot bio mechan system class cover fundamen
53 341 Project in Mining Massive Data Sets
Team project in data-mining of very large-scale data, including the problem statement and imp
team project data mine larg scale data includ problem statement implement evalu solut lectur relev m
54 347 Parallel and Distributed Data Management
The principles and system organization of distributed and parallel databases. Data fragmentat
principl system organ distribut parallel databas data fragment distribut distribut databas design qu
55 348 Computer Graphics: Image Synthesis Techniques
Intermediate level, emphasizing high-quality image synthesis algorithms and systems issues in
intermedi level emphas high qualiti imag synthesi algorithm system issu render topic includ rey adva
56 371 Computational Biology in Four Dimensions (CME 371)
Computational approaches to understanding the three-dimensional spatial organization of biolo
comput approach understand dimension spatial organ biolog system organ evolv time cover cut edg rese
57 373 Statistical and Machine Learning Methods for Genomics (BIO 268, BIOMEDIN 245, GENE 245, STATS 345)
Introduction to statistical and computational methods for genomics. Sample topics include: ex
introduct statist comput method genom sampl topic includ expect maxim hidden markov model markov cha
58 374 Algorithms in Biology (BIOMEDIN 374)
Algorithms and computational models applied to molecular biology and genetics. Topics vary an
algorithm comput model appli molecular biologi genet topic vari annual topic includ biolog sequenc c
59 376 Human-Computer Interaction Research
Prepares students to conduct original HCI research by reading and discussing seminal and cutt
prepar student conduct origin hci research read discuss semin cut edg research paper main topic ubiq
60 377 Topics in Learning and Technology: d.compress - Designing Calm (EDUC 328A)
Contents of the course change each year. The course can be repeated. Stress silently but stea
content chang year repeat stress silent steadili damag physic emot relationship product abil learn r
61 377 Designing Solutions to Global Grand Challenges
In this course we will creatively apply information technologies to collectively attack Globa
creativ appli inform technolog collect attack global grand challeng global warm rise healthcar cost
62 379 Computational Models of the Neocortex
Reprisal of course offered spring 2012 of the same name ; see
repris offer spring http www stanford class detail emphas scale technolog system neurosci advantag e
63 390 Curricular Practical Training
Educational opportunities in high technology research and development labs in the computing i
educ opportun high technolog research develop lab comput industri qualifi comput scienc student enga
64 390 Curricular Practical Training
Educational opportunities in high technology research and development labs in the computing i
educ opportun high technolog research develop lab comput industri qualifi comput scienc student enga
65 390 Part-time Curricular Practical Training
For qualified computer science PhD students only. Permission number required for enrollment;
qualifi comput scienc phd student permiss number requir enrol phd program administr gate room repeat
66 390 Part-Time Curricular Practical Training
For qualified computer science PhD students only. Permission number required for enrollment;
qualifi comput scienc phd student permiss number requir enrol phd program administr gate room repeat
67 393 Computer Laboratory
For CS graduate students. A substantial computer program is designed and implemented; written
graduat student substanti comput program design implement written report requir recommend prepar dis
68 395 Independent Database Project
For graduate students in Computer Science. Use of database management or file systems for a s
graduat student comput scienc databas manag file system substanti applic implement compon databas ma
69 499 Advanced Reading and Research
Letter grade only. Advanced reading and research for CS graduate students. Register using the
letter grade advanc read research graduat student regist section number instructor