Print Settings
 

CS 1C: Introduction to Computing at Stanford

For those with limited experience with computers or who want to learn more about Stanford's computing environment. Topics include: computer maintenance and security, computing resources, Internet privacy, and copyright law. One-hour lecture/demonstration in dormitory clusters prepared and administered weekly by the Resident Computer Consultant (RCC). Final project. Not a programming course.
Terms: Aut | Units: 1
Instructors: ; Smith, S. (PI)

CS 1U: Practical Unix

A practical introduction to using the Unix operating system with a focus on Linux command line skills. Class will consist of video tutorials and weekly hands-on lab sections. The time listed on AXESS is for the first week's logistical meeting only. Topics include: grep and regular expressions, ZSH, Vim and Emacs, basic and advanced GDB features, permissions, working with the file system, revision control, Unix utilities, environment customization, and using Python for shell scripts. Topics may be added, given sufficient interest. Course website: http://cs1u.stanford.edu
Terms: Aut, Win, Spr | Units: 1

CS 2C: Multimedia Production

Sound, image and video editing techniques and applications, including understanding file formats and publishing multimedia online. Topics: GarageBand, Photoshop, iMovie, Final Cut Pro, and iDVD. Weekly lecture followed by lab section. Second unit for additional creative production assignments completed outside of class time and Final Project with group. Not a programming course, but will use computer multimedia applications heavily for editing.
Terms: Aut, Win | Units: 1-2
Instructors: ; Scott, E. (PI)

CS 21N: Can Machines Know? Can Machines Feel?

Preference to freshmen. Can mental attitudes attributed to people and sometimes to animals, including knowledge, belief, desire, and intention, also be ascribed to machines? Can light sensors have a belief? Can a pool cleaning robot or tax-preparation software have an intention? If not, why not? If yes, what are the rules of such ascription, and do they vary between human beings and machines? Sources include philosophy, neuroscience, computer science, and artificial intelligence. Topics: logic, probability theory, and elements of computation. Students present a paper.
Terms: Aut | Units: 3 | UG Reqs: GER:DB-EngrAppSci
Instructors: ; Shoham, Y. (PI)

CS 22: History and Philosophy of Artificial Intelligence (SYMSYS 22)

More than most emerging fields, the history of Artificial Intelligence has been characterized by passionate debates. Is it merely clever programming, or an expedition into the fundamental nature of intelligence? Will machines ever be conscious? Will robots assist or enslave us? Can self-driving cars be legally responsible for their actions? This course recounts the history of AI and explores the major controversies through a series of classroom discussions, each in preparation for a lively debate by prominent historical figures and cutting-edge researchers in the field. Open to all undergraduate and graduate students.
Terms: Aut | Units: 2
Instructors: ; Kaplan, J. (PI)

CS 45N: Computers and Photography: From Capture to Sharing

Preference to freshmen with experience in photography and use of computers. Elements of photography, such as lighting, focus, depth of field, aperture, and composition. How a photographer makes photos available for computer viewing, reliably stores them, organizes them, tags them, searches them, and distributes them online. No programming experience required. Digital SLRs and editing software will be provided to those students who do not wish to use their own.
Terms: Aut | Units: 3-4 | UG Reqs: WAY-CE
Instructors: ; Garcia-Molina, H. (PI)

CS 54N: Great Ideas in Computer Science

Stanford Introductory Seminar. Preference to freshmen. Covers the intellectual tradition of computer science emphasizing ideas that reflect the most important milestones in the history of the discipline. No prior experience with programming is assumed. Topics include programming and problem solving; implementing computation in hardware; algorithmic efficiency; the theoretical limits of computation; cryptography and security; and the philosophy behind artificial intelligence.
Terms: Aut | Units: 3 | UG Reqs: GER:DB-EngrAppSci
Instructors: ; Roberts, E. (PI)

CS 74N: Digital Dilemmas

Preference to freshmen. Issues where policy decision making requires understanding computer and communications technology. Technology basics taught in non-technology terms. Topics include consumer privacy, government surveillance, file sharing and intellectual property, and electronic voting.
Terms: Aut | Units: 3 | UG Reqs: GER:DB-EngrAppSci
Instructors: ; Dill, D. (PI)

CS 90SI: Code the Change: Learn Web Development Through Nonprofit Projects

Learn web technologies by working on real-world projects with non-profit partners. The class will cover basic topics and provide resources for more advanced learning. Students will work in small teams to implement high-impact projects for non-profit organizations. Recommended prerequisite: CS 106B.
Terms: Aut, Spr | Units: 2

CS 99SI: Callback Me Maybe: Contemporary JavaScript

Introduction to the JavaScript programming language with a focus on building contemporary applications. Course consists of in-class activities and programming assignments that challenge students to create functional web apps (e.g. Yelp, Piazza, Instagram). Topics include syntax/semantics, event-based programming, document object model (DOM), application programming interfaces (APIs), asynchronous JavaScript and XML (AJAX), jQuery, Node.js, and Redis. Prerequisite: CS 107.
Terms: Aut, Spr | Units: 2
Instructors: ; Schwarz, K. (PI)

CS 103: Mathematical Foundations of Computing

Mathematical foundations required for computer science, including propositional predicate logic, induction, sets, functions, and relations. Formal language theory, including regular expressions, grammars, finite automata, Turing machines, and NP-completeness. Mathematical rigor, proof techniques, and applications. May not be taken by students who have completed 103A,B or 103X. Prerequisite: 106A or equivalent.
Terms: Aut, Win, Spr | Units: 3-5 | UG Reqs: GER:DB-Math, WAY-FR

CS 105: Introduction to Computers

For non-technical majors. What computers are and how they work. Practical experience in programming. Construction of computer programs and basic design techniques. A survey of Internet technology and the basics of computer hardware. Students in technical fields and students looking to acquire programming skills should take 106A or 106X. Students with prior computer science experience at the level of 106 or above require consent of instructor. Prerequisite: minimal math skills.
Terms: Aut, Win | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci, WAY-FR

CS 106A: Programming Methodology (ENGR 70A)

Introduction to the engineering of computer applications emphasizing modern software engineering principles: object-oriented design, decomposition, encapsulation, abstraction, and testing. Uses the Java programming language. Emphasis is on good programming style and the built-in facilities of the Java language. No prior programming experience required. Summer quarter enrollment is limited and requires an application.
Terms: Aut, Win, Spr, Sum | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci, WAY-FR

CS 106B: Programming Abstractions (ENGR 70B)

Abstraction and its relation to programming. Software engineering principles of data abstraction and modularity. Object-oriented programming, fundamental data structures (such as stacks, queues, sets) and data-directed design. Recursion and recursive data structures (linked lists, trees, graphs). Introduction to time and space complexity analysis. Uses the programming language C++ covering its basic facilities. Prerequisite: 106A or equivalent. Summer quarter enrollment is limited; application required.
Terms: Aut, Win, Spr, Sum | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci, WAY-FR
Instructors: ; Lee, C. (PI); Stepp, M. (PI)

CS 106L: Standard C++ Programming Laboratory

Supplemental lab to 106B and 106X. Additional features of standard C++ programming practice. Possible topics include advanced C++ language features, standard libraries, STL containers and algorithms, object memory management, operator overloading, and inheritance. Prerequisite: consent of instructor. Corequisite: 106B or 106X.
Terms: Aut, Spr | Units: 1

CS 106X: Programming Abstractions (Accelerated) (ENGR 70X)

Intensive version of 106B for students with a strong programming background interested in a rigorous treatment of the topics at an accelerated pace. Additional advanced material and more challenging projects. Prerequisite: excellence in 106A or equivalent, or consent of instructor.
Terms: Aut, Win | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci, WAY-FR
Instructors: ; Lee, C. (PI)

CS 107: Computer Organization and Systems

Introduction to the fundamental concepts of computer systems. Explores how computer systems execute programs and manipulate data, working from the C programming language down to the microprocessor. Topics covered include: the C programming language, data representation, machine-level code, computer arithmetic, elements of code compilation, memory organization and management, and performance evaluation and optimization. Prerequisites: 106B or X, or consent of instructor.
Terms: Aut, Win, Spr, Sum | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci, WAY-FR

CS 108: Object-Oriented Systems Design

Software design and construction in the context of large OOP libraries. Taught in Java. Topics: OOP design, design patterns, testing, graphical user interface (GUI) OOP libraries, software engineering strategies, approaches to programming in teams. Prerequisite: 107.
Terms: Aut, Win | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci

CS 110: Principles of Computer Systems

Principles and practice of engineering of computer software and hardware systems. Topics include: techniques for controlling complexity; strong modularity using client-server design, virtual memory, and threads; networks; atomicity and coordination of parallel activities; security, and encryption; and performance optimizations. Prerequisite: 107.
Terms: Aut, Win, Spr | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci
Instructors: ; Cain, J. (PI)

CS 131: Computer Vision: Foundations and Applications

Robots that can navigate space and perform duties, search engines that can index billions of images and videos, algorithms that can diagnose medical images for diseases, or smart cars that can see and drive safely: Lying in the heart of these modern AI applications are computer vision technologies that can perceive, understand and reconstruct the complex visual world. This course is designed for students who are interested in learning about the fundamental principles and important applications of computer vision. Course will introduce a number of fundamental concepts in computer vision and expose students to a number of real-world applications, plus guide students through a series of well designed projects such that they will get to implement cutting-edge computer vision algorithms. Prerequisites: Students should be familiar with Matlab (i.e. have programmed in Matlab before) and Linux; plus Calculus & Linear Algebra.
Terms: Aut | Units: 3-4
Instructors: ; Li, F. (PI)

CS 144: Introduction to Computer Networking

Principles and practice. Structure and components of computer networks, packet switching, layered architectures. Applications: web/http, voice-over-IP, p2p file sharing and socket programming. Reliable transport: TCP/IP, reliable transfer, flow control, and congestion control. The network layer: names and addresses, routing. Local area networks: ethernet and switches. Wireless networks and network security. Prerequisite: CS 110.
Terms: Aut | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci

CS 145: Introduction to Databases

The course covers database design and the use of database management systems for applications. It includes extensive coverage of the relational model, relational algebra, and SQL. It also covers XML data including DTDs and XML Schema for validation, and the query and transformation languages XPath, XQuery, and XSLT. The course includes database design in UML, and relational design principles based on dependencies and normal forms. Many additional key database topics from the design and application-building perspective are also covered: indexes, views, transactions, authorization, integrity constraints, triggers, on-line analytical processing (OLAP), JSON, and emerging NoSQL systems. Class time will include guest speakers from industry and additional advanced topics as time and class interest permits. Prerequisites: 103 and 107 (or equivalent).
Terms: Aut, Sum | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci

CS 148: Introduction to Computer Graphics and Imaging

Introductory prerequisite course in the computer graphics sequence introducing students to the technical concepts behind creating synthetic computer generated images. Focuses on using OpenGL to create visual imagery, as well as an understanding of the underlying mathematical concepts including triangles, normals, interpolation, texture mapping, bump mapping, etc. Course will cover fundamental understanding of light and color, as well as how it impacts computer displays and printers. Class will discuss more thoroughly how light interacts with the environment, constructing engineering models such as the BRDF, plus various simplifications into more basic lighting and shading models. Also covers ray tracing technology for creating virtual images, while drawing parallels between ray tracers and real world cameras to illustrate various concepts. Anti-aliasing and acceleration structures are also discussed. The final class mini-project consists of building out a ray tracer to create visually compelling images. Starter codes and code bits will be provided to aid in development, but this class focuses on what you can do with the code as opposed to what the code itself looks like. Therefore grading is weighted toward in person "demos" of the code in action - creativity and the production of impressive visual imagery are highly encouraged. Prerequisites: CS 107, MATH 51.
Terms: Aut, Sum | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci, WAY-CE

CS 157: Logic and Automated Reasoning

An elementary exposition from a computational point of view of propositional and predicate logic, axiomatic theories, and theories with equality and induction. Interpretations, models, validity, proof, strategies, and applications. Automated deduction: polarity, skolemization, unification, resolution, equality. Prerequisite: 103 or 103B.
Terms: Aut | Units: 3 | UG Reqs: GER:DB-EngrAppSci

CS 161: Design and Analysis of Algorithms

Worst and average case analysis. Recurrences and asymptotics. Efficient algorithms for sorting, searching, and selection. Data structures: binary search trees, heaps, hash tables. Algorithm design techniques: divide-and-conquer, dynamic programming, greedy algorithms, amortized analysis, randomization. Algorithms for fundamental graph problems: minimum-cost spanning tree, connected components, topological sort, and shortest paths. Possible additional topics: network flow, string searching. Prerequisite: 103 or 103B; 109 or STATS 116.
Terms: Aut, Spr, Sum | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci, WAY-FR

CS 181: Computers, Ethics, and Public Policy

(Formerly 201.) Primarily for majors entering computer-related fields. Ethical and social issues related to the development and use of computer technology. Ethical theory, and social, political, and legal considerations. Scenarios in problem areas: privacy, reliability and risks of complex systems, and responsibility of professionals for applications and consequences of their work. Prerequisite: 106B or X.
Terms: Aut, Win, Spr | Units: 4 | UG Reqs: GER:EC-EthicReas, WAY-ER

CS 181W: Computers, Ethics, and Public Policy (WIM)

Writing-intensive version of CS181. Satisfies the WIM requirement for Computer Science and Computer Systems Engineering undergraduates.
Terms: Aut, Win, Spr | Units: 4 | UG Reqs: GER:EC-EthicReas, WAY-ER

CS 191: Senior Project

Restricted to Computer Science and Computer Systems Engineering students. Group or individual projects under faculty direction. Register using instructor's section number. A project can be either a significant software application or publishable research. Software application projects include substantial programming and modern user-interface technologies and are comparable in scale to shareware programs or commercial applications. Research projects may result in a paper publishable in an academic journal or presentable at a conference. Required public presentation of final application or research results.
Terms: Aut, Win, Spr, Sum | Units: 1-6 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Boyd, S. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Goodman, N. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Kundaje, A. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Montanari, A. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Paepcke, A. (PI); Parlante, N. (PI); Pea, R. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Re, C. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Savarese, S. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Valiant, G. (PI); Van Roy, B. (PI); Wang, G. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Siroker, M. (GP); Swenson, M. (GP)

CS 191W: Writing Intensive Senior Project (WIM)

Restricted to Computer Science and Computer Systems Engineering students. Writing-intensive version of CS191. Register using the section number of an Academic Council member.
Terms: Aut, Win, Spr | Units: 3-6 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Blikstein, P. (PI); Boneh, D. (PI); Boyd, S. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Goodman, N. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Kundaje, A. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Paepcke, A. (PI); Parlante, N. (PI); Pea, R. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Re, C. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Savarese, S. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Valiant, G. (PI); Van Roy, B. (PI); Wang, G. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 192: Programming Service Project

Restricted to Computer Science students. Appropriate academic credit (without financial support) is given for volunteer computer programming work of public benefit and educational value.
Terms: Aut, Win, Spr, Sum | Units: 1-4 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Parlante, N. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 193P: iPhone and iPad Application Programming

Tools and APIs required to build applications for the iPhone and iPad platform using the iOS SDK. User interface designs for mobile devices and unique user interactions using multi-touch technologies. Object-oriented design using model-view-controller paradigm, memory management, Objective-C programming language. Other topics include: object-oriented database API, animation, mobile device power management, multi-threading and performance considerations. Prerequisites: C language and object-oriented programming experience at 106B or X level. Previous completion of any one of the following is required: CS 107, 108 (preferred) or 110. Recommended: CS107, UNIX, graphics, databases.
Terms: Aut, Spr | Units: 3
Instructors: ; Hegarty, P. (PI)

CS 198: Teaching Computer Science

Students lead a discussion section of 106A while learning how to teach a programming language at the introductory level. Focus is on teaching skills, techniques, and course specifics. Application and interview required; see http://cs198.stanford.edu.
Terms: Aut, Win, Spr | Units: 3-4

CS 199: Independent Work

Special study under faculty direction, usually leading to a written report. Letter grade; if not appropriate, enroll in 199P.
Terms: Aut, Win, Spr, Sum | Units: 1-6 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Goodman, N. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Lee, C. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Mitra, S. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Paepcke, A. (PI); Pande, V. (PI); Parlante, N. (PI); Pea, R. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Re, C. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Savarese, S. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Stepp, M. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Valiant, G. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 199P: Independent Work

(Staff)
Terms: Aut, Win, Spr, Sum | Units: 1-6 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Altman, R. (PI); Baker, M. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Cheriton, D. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Goodman, N. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Lee, C. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Mitra, S. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Parlante, N. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Re, C. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Savarese, S. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Stepp, M. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Valiant, G. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 204: Legal Informatics

Legal informatics based on representation of regulations in computable form. Encoding regulations facilitate creation of legal information systems with significant practical value. Convergence of technological trends, growth of the Internet, advent of semantic web technology, and progress in computational logic make computational law prospects better. Topics: current state of computational law, prospects and problems, philosophical and legal implications. This course is *Cross* listed with LAW 729. Prerequisite: basic concepts of programming.
Terms: Aut, Spr | Units: 3

CS 205A: Mathematical Methods for Robotics, Vision, and Graphics

Continuous mathematics background necessary for research in robotics, vision, and graphics. Possible topics: linear algebra; the conjugate gradient method; ordinary and partial differential equations; vector and tensor calculus. Prerequisites: 106B or X; MATH 51; or equivalents.
Terms: Aut | Units: 3
Instructors: ; Solomon, J. (PI)

CS 207: The Economics of Software

How businesses move software products into the marketplace and how the associated intellectual capital is exploited. The value of creators and managers. Concepts that are outside of the common knowledge of computer scientists such as business terms and spreadsheet computations to quantitatively compare alternatives. Goal is to contribute to informed decision making in high-tech product design, acquisition, production, marketing, selection of business structures, outsourcing, and impact of taxation policies. No specific background required. External experts complement class presentations.
Terms: Aut | Units: 2
Instructors: ; Wiederhold, G. (PI)

CS 221: Artificial Intelligence: Principles and Techniques

Artificial intelligence (AI) has had a huge impact in many areas, including medical diagnosis, speech recognition, robotics, web search, advertising, and scheduling. This course focuses on the foundational concepts that drive these applications. In short, AI is the mathematics of making good decisions given incomplete information (hence the need for probability) and limited computation (hence the need for algorithms). Specific topics include search, constraint satisfaction, game playing, Markov decision processes, graphical models, machine learning, and logic. Prerequisites: CS 103 or CS 103B/X, CS 106B or CS 106X, CS 107, and CS 109 (algorithms, probability, and programming experience).
Terms: Aut | Units: 3-4

CS 224N: Natural Language Processing (LINGUIST 284)

Methods for processing human language information and the underlying computational properties of natural languages. Syntactic and semantic processing from linguistic and algorithmic perspectives. Focus is on modern quantitative techniques in NLP: using large corpora, statistical models for acquisition, translation, and interpretation; and representative systems. Prerequisites: CS124 or CS121/221.
Terms: Aut | Units: 3-4
Instructors: ; Manning, C. (PI)

CS 224W: Social and Information Network Analysis

(Formerly 322) How do rumors and information spread? Who are the influencers? Can we predict friendships on Facebook? Networks are the core of the WWW, blogs, Twitter and Facebook. They can be characterized by the complex interplay between information content, millions of individuals and organizations that create it, and the technology that supports it. Course will focus on how to analyze the structure and dynamics of large networks, how to model links, and how design algorithms that work with such large networks. Topics: statistical properties of large networks, models of social network structure and evolution, link prediction, network community detection, diffusion of innovation, information propagation, six-degrees of separation, finding influential nodes in networks, disease outbreak detection, networks with positive and negative ties, and connections with work in the social sciences and economics.
Terms: Aut | Units: 3-4

CS 229: Machine Learning

Topics: statistical pattern recognition, linear and non-linear regression, non-parametric methods, exponential family, GLMs, support vector machines, kernel methods, model/feature selection, learning theory, VC dimension, clustering, density estimation, EM, dimensionality reduction, ICA, PCA, reinforcement learning and adaptive control, Markov decision processes, approximate dynamic programming, and policy search. Prerequisites: linear algebra, and basic probability and statistics.
Terms: Aut | Units: 3-4
Instructors: ; Ng, A. (PI); Tandon, S. (GP)

CS 232: Digital Image Processing (EE 368)

Image sampling and quantization color, point operations, segmentation, morphological image processing, linear image filtering and correlation, image transforms, eigenimages, multiresolution image processing, noise reduction and restoration, feature extraction and recognition tasks, image registration. Emphasis is on the general principles of image processing. Students learn to apply material by implementing and investigating image processing algorithms in Matlab and optionally on Android mobile devices. Term project. In the fall and spring quarter, a sequence of interactive web/video modules substitutes the classroom lectures. In the winter quarter, the course is taught conventionally; both versions of the course are equivalent. Recommended: EE261, EE278B.
Terms: Aut, Win, Spr | Units: 3

CS 242: Programming Languages

Central concepts in modern programming languages, impact on software development, language design trade-offs, and implementation considerations. Functional, imperative, and object-oriented paradigms. Formal semantic methods and program analysis. Modern type systems, higher order functions and closures, exceptions and continuations. Modularity, object-oriented languages, and concurrency. Runtime support for language features, interoperability, and security issues. Prerequisite: 107, or experience with Lisp, C, and an object-oriented language.
Terms: Aut | Units: 3

CS 249A: Object-Oriented Programming from a Modeling and Simulation Perspective

Topics: large-scale software development approaches for complex applications, class libraries and frameworks; encapsulation, use of inheritance and dynamic dispatch, design of interfaces and interface/implementation separation, exception handling, smart pointers and reference management, minimalizing dependencies and value-oriented programming. Inheritance: when and why multiple inheritance naming, directories, manager, and disciplined use of design patterns including functors, event notification and iterators. Prerequisites: C, C++, and programming methodology as developed in 106B or X, and 107 (107 may be taken concurrently). Recommended: 193D.
Terms: Aut | Units: 3

CS 265: Randomized Algorithms and Probabilistic Analysis (CME 309)

Randomness pervades the natural processes around us, from the formation of networks, to genetic recombination, to quantum physics. Randomness is also a powerful tool that can be leveraged to create algorithms and data structures which, in many cases, are more efficient and simpler than their deterministic counterparts. The key tools of probabilistic analysis, and application of these tools to understand the behaviors of random processes and algorithms. Emphasis is on theoretical foundations, though we will apply this theory broadly, discussing applications in machine learning and data analysis, networking, and systems. Topics include tail bounds, the probabilistic method, Markov chains, and martingales, with applications to analyzing random graphs, metric embeddings, random walks, and a host of powerful and elegant randomized algorithms. Prerequisites: CS 161 and STAT 116, or equivalents and instructor consent.
Terms: Aut | Units: 3
Instructors: ; Valiant, G. (PI)

CS 273A: A Computational Tour of the Human Genome (BIOMEDIN 273A, DBIO 273A)

Introduction to computational biology through an informatic exploration of the human genome. Topics include: genome sequencing (technologies, assembly, personalized sequencing); functional landscape (genes, gene regulation, repeats, RNA genes, epigenetics); genome evolution (comparative genomics, ultraconservation, co-option). Additional topics may include population genetics, personalized genomics, and ancient DNA. Course includes primers on molecular biology, the UCSC Genome Browser, and text processing languages. Guest lectures from genomic researchers. No prerequisites. See http://cs273a.stanford.edu/.
Terms: Aut | Units: 3

CS 274: Representations and Algorithms for Computational Molecular Biology (BIOE 214, BIOMEDIN 214, GENE 214)

Topics: introduction to bioinformatics and computational biology, algorithms for alignment of biological sequences and structures, computing with strings, phylogenetic tree construction, hidden Markov models, Gibbs Sampling, basic structural computations on proteins, protein structure prediction, protein threading techniques, homology modeling, molecular dynamics and energy minimization, statistical analysis of 3D biological data, integration of data sources, knowledge representation and controlled terminologies for molecular biology, microarray analysis, machine learning (clustering and classification), and natural language text processing. Prerequisites: programming skills; consent of instructor for 3 units.
Terms: Aut | Units: 3-4

CS 300: Departmental Lecture Series

Priority given to first-year Computer Science Ph.D. students. CS Masters students admitted if space is available. Presentations by members of the department faculty, each describing informally his or her current research interests and views of computer science as a whole.
Terms: Aut | Units: 1
Instructors: ; Dill, D. (PI)

CS 309A: Cloud Computing

For science, engineering, business, medicine, and law students. Cloud computing is bringing information systems out of the back office and making it core to the entire economy. This class is intended for all students who want to begin to understand the implications of this shift in technology. Guest industry experts are public company CEOs who are delivering application, software development, operations management, compute, storage & data center, and network cloud services.
Terms: Aut | Units: 1 | Repeatable for credit
Instructors: ; Chou, T. (PI)

CS 316: Advanced Multi-Core Systems (EE 382E)

In-depth coverage of the architectural techniques used in modern, multi-core chips for mobile and server systems. Advanced processor design techniques (superscalar cores, VLIW cores, multi-threaded cores, energy-efficient cores), cache coherence, memory consistency, vector processors, graphics processors, heterogeneous processors, and hardware support for security and parallel programming. Students will become familiar with complex trade-offs between performance-power-complexity and hardware-software interactions. A central part of CS316 is a project on an open research question on multi-core technologies. Prerequisites: EE 108B. Recommended: CS 149, EE 282.
Terms: Aut | Units: 3

CS 331B: 3D Representation and Recognition

The course surveys recent developments in high level and 3D computer vision and will focus on reading recent research papers on topics related to 3D object recognition and representation, spatial inference, activity understanding, human vision and 3D perception. The course is inspired by a famous series of workshops (called 3d-RR) which have been offered during the International Conference in Computer Vision (ICCV) since 2007. Prerequisites - Some experience in research with one of the following fields: computer vision, image processing, computer graphics, machine learning.
Terms: Aut | Units: 3
Instructors: ; Savarese, S. (PI)

CS 357: Advanced Topics in Formal Methods

Topics vary annually. Possible topics include automata on infinite words, static analysis methods, runtime analysis methods, verification of real-time and hybrid systems, and formalization of middleware services. May be repeated for credit. Prerequisite: 256.
Terms: Aut | Units: 3 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Dill, D. (PI)

CS 364A: Algorithmic Game Theory

Topics at the interface of computer science and game theory such as: algorithmic mechanism design; combinatorial auctions; computation of Nash equilibria and relevant complexity theory; congestion and potential games; cost sharing; game theory and the Internet; matching markets; network formation; online learning algorithms; price of anarchy; prior-free auctions; selfish routing; sponsored search. Prerequisites: 154N and 161, or equivalents.
Terms: Aut | Units: 3
Instructors: ; Roughgarden, T. (PI)

CS 390A: Curricular Practical Training

Educational opportunities in high technology research and development labs in the computing industry. Qualified computer science students engage in internship work and integrate that work into their academic program. Students register during the quarter they are employed and complete a research report outlining their work activity, problems investigated, results, and follow-on projects they expect to perform. 390 A, B, and C may each be taken once.
Terms: Aut, Win, Spr, Sum | Units: 1
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fischer, M. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Goodman, N. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Lee, C. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Mitra, S. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Paepcke, A. (PI); Parlante, N. (PI); Pea, R. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Re, C. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Stepp, M. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Valiant, G. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 390B: Curricular Practical Training

Educational opportunities in high technology research and development labs in the computing industry. Qualified computer science students engage in internship work and integrate that work into their academic program. Students register during the quarter they are employed and complete a research report outlining their work activity, problems investigated, results, and follow-on projects they expect to perform. 390A,B,C may each be taken once.
Terms: Aut, Win, Spr, Sum | Units: 1
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Mitra, S. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Paepcke, A. (PI); Parlante, N. (PI); Pea, R. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 390C: Curricular Practical Training

Educational opportunities in high technology research and development labs in the computing industry. Qualified computer science students engage in internship work and integrate that work into their academic program. Students register during the quarter they are employed and complete a research report outlining their work activity, problems investigated, results, and follow-on projects they expect to perform. 390A,B,C may each be taken once.
Terms: Aut, Win, Spr, Sum | Units: 1
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Goodman, N. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Mitra, S. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Paepcke, A. (PI); Parlante, N. (PI); Pea, R. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 393: Computer Laboratory

For CS graduate students. A substantial computer program is designed and implemented; written report required. Recommended as a preparation for dissertation research. Register using the section number associated with the instructor. Prerequisite: consent of instructor.
Terms: Aut, Win, Spr, Sum | Units: 1-9 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Cheriton, D. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Parlante, N. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 395: Independent Database Project

For graduate students in Computer Science. Use of database management or file systems for a substantial application or implementation of components of database management system. Written analysis and evaluation required. Register using the section number associated with the instructor. Prerequisite: consent of instructor.
Terms: Aut, Win, Spr, Sum | Units: 1-6 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Cheriton, D. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Parlante, N. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 399: Independent Project

Letter grade only.
Terms: Aut, Win, Spr, Sum | Units: 1-9 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Boyd, S. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Goodman, N. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Lee, C. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); MacCartney, B. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Paepcke, A. (PI); Parlante, N. (PI); Pea, R. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Re, C. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Savarese, S. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Stepp, M. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Valiant, G. (PI); Van Roy, B. (PI); Wang, G. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 399P: Independent Project

Graded satisfactory/no credit.
Terms: Aut, Win, Spr, Sum | Units: 1-9 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Boyd, S. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Goodman, N. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Lee, C. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Paepcke, A. (PI); Parlante, N. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Re, C. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Savarese, S. (PI); Shoham, Y. (PI); Stepp, M. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Valiant, G. (PI); Van Roy, B. (PI); Wang, G. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 402L: Beyond Bits and Atoms - Lab (EDUC 211X)

This course is a hands-on lab in the prototyping and fabrication of tangible technologies, with a special focus in learning and education. We will learn how to use state-of-the-art fabrication machines (3D printers, 3D scanners, laser cutters, routers) to design educational toolkits, educational toys, science kits, and tangible user interfaces. A special focus of the course will be to design low-cost technologies, particularly for urban school in the US and abroad.
Terms: Aut | Units: 1-3

CS 448B: Data Visualization

Techniques and algorithms for creating effective visualizations based on principles from graphic design, visual art, perceptual psychology, and cognitive science. Topics: graphical perception, data and image models, visual encoding, graph and tree layout, color, animation, interaction techniques, automated design. Lectures, reading, and project. Prerequisite: one of 147, 148, or equivalent.
Terms: Aut | Units: 3 | Repeatable for credit

CS 476A: Music, Computing, and Design I: Software Paradigms for Computer Music (MUSIC 256A)

Software design and implementation for computer audio. Strategies, best practices, and tradeoffs in building audio software systems of various sizes (S, M, L, XL), with a focus on interactive (real-time) systems. Lectures examine high-level designs as well as dissect code in a hands-on manner. Course work includes small programming assignments and a final software project. This course is the prerequisite for MUSIC 256B. Prerequisite: experience in C/C++ and/or Java.
Terms: Aut | Units: 1-4
Instructors: ; Wang, G. (PI)

CS 499: Advanced Reading and Research

Letter grade only. Advanced reading and research for CS graduate students. Register using the section number associated with the instructor. Prerequisite: consent of instructor.
Terms: Aut, Win, Spr, Sum | Units: 1-15 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dror, R. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Goodman, N. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Kundaje, A. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Mitra, S. (PI); Montanari, A. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Paepcke, A. (PI); Parlante, N. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Re, C. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Savarese, S. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Valiant, G. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Williams, V. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 499P: Advanced Reading and Research

Graded satisfactory/no credit. Advanced reading and research for CS graduate students. Register using the section number associated with the instructor. Prerequisite: consent of instructor.
Terms: Aut, Win, Spr, Sum | Units: 1-15 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dror, R. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Goodman, N. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Kundaje, A. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Mitra, S. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Paepcke, A. (PI); Parlante, N. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Re, C. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Savarese, S. (PI); Schwarz, K. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Valiant, G. (PI); Van Roy, B. (PI); Wang, G. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Williams, V. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 546: Seminar on Liberation Technologies (POLISCI 337S)

This one-unit seminar will present speakers relevant in a variety ofnnways to how various forms of information technology are being used tonndefend human rights, improve governance, deepen democracy, empower thennpoor, promote economic development, protect the environment, enhancennpublic health, and pursue a variety of other social goods.
Terms: Aut, Win | Units: 1 | Repeatable for credit

CS 547: Human-Computer Interaction Seminar

Weekly speakers on human-computer interaction topics. May be repeated for credit.
Terms: Aut, Win, Spr | Units: 1 | Repeatable for credit

CS 801: TGR Project

Terms: Aut, Win, Spr, Sum | Units: 0 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Cheriton, D. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Parlante, N. (PI); Pea, R. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 802: TGR Dissertation

Terms: Aut, Win, Spr, Sum | Units: 0 | Repeatable for credit
Instructors: ; Aiken, A. (PI); Akeley, K. (PI); Altman, R. (PI); Baker, M. (PI); Barbagli, F. (PI); Batzoglou, S. (PI); Bejerano, G. (PI); Bernstein, M. (PI); Blikstein, P. (PI); Boneh, D. (PI); Bradski, G. (PI); Brafman, R. (PI); Cain, J. (PI); Cao, P. (PI); Casado, M. (PI); Cheriton, D. (PI); Cooper, S. (PI); Dally, B. (PI); De-Micheli, G. (PI); Dill, D. (PI); Dror, R. (PI); Dwork, C. (PI); Engler, D. (PI); Fedkiw, R. (PI); Feigenbaum, E. (PI); Fikes, R. (PI); Fisher, K. (PI); Fogg, B. (PI); Fox, A. (PI); Garcia-Molina, H. (PI); Genesereth, M. (PI); Gill, J. (PI); Girod, B. (PI); Goel, A. (PI); Golub, G. (PI); Guibas, L. (PI); Hanrahan, P. (PI); Heer, J. (PI); Hennessy, J. (PI); Horowitz, M. (PI); Johari, R. (PI); Johnson, M. (PI); Jurafsky, D. (PI); Katti, S. (PI); Kay, M. (PI); Khatib, O. (PI); Klemmer, S. (PI); Koller, D. (PI); Koltun, V. (PI); Konolige, K. (PI); Kozyrakis, C. (PI); Kundaje, A. (PI); Lam, M. (PI); Latombe, J. (PI); Leskovec, J. (PI); Levis, P. (PI); Levitt, M. (PI); Levoy, M. (PI); Li, F. (PI); Liang, P. (PI); Manna, Z. (PI); Manning, C. (PI); Mazieres, D. (PI); McCarthy, J. (PI); McCluskey, E. (PI); McKeown, N. (PI); Meng, T. (PI); Mitchell, J. (PI); Motwani, R. (PI); Musen, M. (PI); Nass, C. (PI); Nayak, P. (PI); Ng, A. (PI); Nilsson, N. (PI); Olukotun, O. (PI); Ousterhout, J. (PI); Parlante, N. (PI); Pea, R. (PI); Plotkin, S. (PI); Plummer, R. (PI); Prabhakar, B. (PI); Pratt, V. (PI); Raghavan, P. (PI); Rajaraman, A. (PI); Roberts, E. (PI); Rosenblum, M. (PI); Roughgarden, T. (PI); Sahami, M. (PI); Salisbury, J. (PI); Savarese, S. (PI); Shoham, Y. (PI); Thrun, S. (PI); Tobagi, F. (PI); Trevisan, L. (PI); Ullman, J. (PI); Van Roy, B. (PI); Widom, J. (PI); Wiederhold, G. (PI); Williams, R. (PI); Winograd, T. (PI); Young, P. (PI); Zelenski, J. (PI); George, S. (GP); Hadding, D. (GP); Swenson, M. (GP)

CS 402: Beyond Bits and Atoms: Designing Technological Tools (EDUC 236X)

Practicum in designing and building technology-enabled curricula and learning environments. Students use software toolkits and state-of-the-art fabrication machines to design educational software, educational toolkits, and tangible user interfaces. How to design low-cost technologies, particularly for urban school in the US and abroad. The constructionist learning design perspective, critical pedagogy, and the application of complexity sciences in education.
| Units: 3-5
© Stanford University | Terms of Use | Copyright Complaints