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. Prerequisite: 107.
Last offered: Winter 2022
| UG Reqs: GER:DB-EngrAppSci
CS 110L: Safety in Systems Programming
Supplemental lab to
CS 110. Explores how program analysis tools can find common bugs in programs and demonstrates how we can use the Rust programming language to build robust systems software. Course is project-based and will examine additional topics in concurrency and networking through the lens of Rust. Corequisite:
CS 110
Last offered: Winter 2022
CS 111: Operating Systems Principles
Explores operating system concepts including concurrency, synchronization, scheduling, processes, virtual memory, I/O, file systems, and protection. Available as a substitute for CS110 that fulfills any requirement satisfied by
CS110. Prerequisite:
CS107.
Terms: Aut, Win
| Units: 3-5
Instructors:
Troccoli, N. (PI)
;
Bishko, G. (TA)
;
Chauhan, J. (TA)
...
more instructors for CS 111 »
Instructors:
Troccoli, N. (PI)
;
Bishko, G. (TA)
;
Chauhan, J. (TA)
;
Chen, J. (TA)
;
Escandon, E. (TA)
;
Liang, A. (TA)
;
Mpala, P. (TA)
;
Podosin, K. (TA)
;
Recaldini, E. (TA)
;
Seir, G. (TA)
;
Tariq, U. (TA)
;
Tsai, J. (TA)
;
Verma, S. (TA)
;
Xiao, C. (TA)
CS 144: Introduction to Computer Networking
Principles and practice. Structure and components of computer networks, with focus on the Internet. Packet switching, layering, and routing. Transport and TCP: reliable delivery over an unreliable network, flow control, congestion control. Network names, addresses and ethernet switching. Includes significant programming component in C/C++; students build portions of the internet TCP/IP software. Prerequisite:
CS110.
Terms: Win
| Units: 3-4
| UG Reqs: GER:DB-EngrAppSci
Instructors:
Winstein, K. (PI)
CS 153: Infrastructure at Scale
This course is designed to help students understand the unique challenges of solving infrastructure problems at scale, and is co-taught by industry practitioners Michael Abbott (ex-GM, Apple, Twitter, Microsoft) and Anjney Midha (a16z, ex-Discord), who have led teams tackling hardware and software infrastructure for hundreds of millions of people. The format of the class will include guest lectures from experts in each theme, covering a blend of both theory and real-world scenarios. Past speakers include the CEOs, CTOs and CISOs of OpenAI, FireEye, Roblox, Cloudflare, Reddit and Google. Prerequisite:
CS110/
CS111. Recommended but not required:
CS155.
Terms: Win
| Units: 3
Instructors:
Abbott, M. (PI)
CS 193U: Video Game Development in C++ and Unreal Engine
Hands-on game development in C++ using Unreal Engine 4, the game engine that triple-A games like Fortnite, PUBG, and Gears of War are all built on. Students will be introduced to the Unreal editor, game frameworks, physics, AI, multiplayer and networking, UI, and profiling and optimization. Project-based course where you build your own games and gain a solid foundation in Unreal's architecture that will apply to any future game projects. Pre-requisites: CS106B or CS106X required. CS107 and CS110 recommended.
Last offered: Autumn 2020
CS 251: Cryptocurrencies and blockchain technologies
For advanced undergraduates and for graduate students. The potential applications for Bitcoin-like technologies is enormous. The course will cover the technical aspects of cryptocurrencies, blockchain technologies, and distributed consensus. Students will learn how these systems work, and how to engineer secure software that interacts with Blockchains like Bitcoin, Ethereum, and others. Prerequisite:
CS110. Recommended:
CS255.
Last offered: Autumn 2023
CS 342: Building for Digital Health (MED 253)
This project-based course will provide a comprehensive overview of key requirements in the design and full-stack implementation of a digital health research application. Several pre-vetted and approved projects from the Stanford School of Medicine will be available for students to select from and build. Student teams learn about all necessary approval processes to deploy a digital health solution (data privacy clearance/I RB approval, etc.) and be guided in the development of front-end and back-end infrastructure using best practices. The final project will be the presentation and deployment of a fully approved digital health research application.
CS106A,
CS106B, Recommended:
CS193P/A,
CS142,
CS47,
CS110. Limited enrollment for this course. Apply for enrollment permission here:
https://stanforduniversity.qualtrics.com/jfe/form/SV_9ThVhqf4zyhzheS
Terms: Win
| Units: 3-4
Instructors:
Aalami, O. (PI)
;
Guestrin, C. (SI)
CS 349G: Selected Reading of Ph.D. Dissertations
Detailed reading of 5 selected Ph.D. dissertations within a field of computer science. For undergraduates, the course is an introduction to advanced foundational concepts within a field as well as an in-depth look at detailed research. For graduate students, the course focuses on historical reading as well as an opportunity to read dissertations and discuss their strengths and weaknesses. Both groups of students discuss historical context, how ideas succeeded or did not and why, and how they manifest in modern technology. The discussion of each dissertation completes with a guest lecture by its author. The selected dissertations change with each offering but are always from a coherent time period and topic area. Prerequisites: CS110 for undergraduates, EE282 for graduate students.
Last offered: Winter 2021
| Repeatable
10 times
(up to 30 units total)
Filter Results: