2014-2015 2015-2016 2016-2017 2017-2018 2018-2019
Browse
by subject...
    Schedule
view...
 
  Are you a Computer Science Student? Want to make Stanford's systems even better?
Do you want to help improve the Stanford systems that you and your friends use all the time? We are looking for students interested in hacking on ExploreCourses and other upcoming university systems. Click here to learn more!

51 - 60 of 164 results for: all courses

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: Win | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci | Grading: Letter or Credit/No Credit

CS 145: Data Management and Data Systems

Introduction to the use, design, and implementation of database and data-intensive systems, including data models; schema design; data storage; query processing, query optimization, and cost estimation; concurrency control, transactions, and failure recovery; distributed and parallel execution; semi-structured databases; and data system support for advanced analytics and machine learning. Prerequisites: 103 and 107 (or equivalent).
Terms: Aut | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci | Grading: Letter or Credit/No Credit

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 more »
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 | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci, WAY-CE | Grading: Letter or Credit/No Credit
Instructors: Fedkiw, R. (PI)

CS 149: Parallel Computing

This course is an introduction to parallelism and parallel programming. Most new computer architectures are parallel; programming these machines requires knowledge of the basic issues of and techniques for writing parallel software. Topics: varieties of parallelism in current hardware (e.g., fast networks, multicore, accelerators such as GPUs, vector instruction sets), importance of locality, implicit vs. explicit parallelism, shared vs. non-shared memory, synchronization mechanisms (locking, atomicity, transactions, barriers), and parallel programming models (threads, data parallel/streaming, MapReduce, Apache Spark, SPMD, message passing, SIMT, transactions, and nested parallelism). Significant parallel programming assignments will be given as homework. The course is open to students who have completed the introductory CS course sequence through 110.
Terms: Win | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci | Grading: Letter or Credit/No Credit

CS 154: Introduction to Automata and Complexity Theory

This course provides a mathematical introduction to the following questions: What is computation? Given a computational model, what problems can we hope to solve in principle with this model? Besides those solvable in principle, what problems can we hope to efficiently solve? In many cases we can give completely rigorous answers; in other cases, these questions have become major open problems in computer science and mathematics. By the end of this course, students will be able to classify computational problems in terms of their computational complexity (Is the problem regular? Not regular? Decidable? Recognizable? Neither? Solvable in P? NP-complete? PSPACE-complete?, etc.). Students will gain a deeper appreciation for some of the fundamental issues in computing that are independent of trends of technology, such as the Church-Turing Thesis and the P versus NP problem. Prerequisites: CS 103 or 103B.
Terms: Aut | Units: 3-4 | UG Reqs: GER:DB-EngrAppSci | Grading: Letter or Credit/No Credit
Instructors: Reingold, O. (PI)

CS 155: Computer and Network Security

For seniors and first-year graduate students. Principles of computer systems security. Attack techniques and how to defend against them. Topics include: network attacks and defenses, operating system security, application security (web, apps, databases), malware, privacy, and security for mobile devices. Course projects focus on building reliable code. Prerequisite: 110. Recommended: basic Unix.
Terms: Spr | Units: 3 | UG Reqs: GER:DB-EngrAppSci | Grading: Letter or Credit/No Credit

CS 157: Computational Logic

Rigorous introduction to Symbolic Logic from a computational perspective. Encoding information in the form of logical sentences. Reasoning with information in this form. Overview of logic technology and its applications - in mathematics, science, engineering, business, law, and so forth. Topics include the syntax and semantics of Propositional Logic, Relational Logic, and Herbrand Logic, validity, contingency, unsatisfiability, logical equivalence, entailment, consistency, natural deduction (Fitch), mathematical induction, resolution, compactness, soundness, completeness.
Terms: Aut | Units: 3 | UG Reqs: GER:DB-EngrAppSci | Grading: Letter or Credit/No Credit

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, Win, Sum | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci, WAY-FR | Grading: Letter or Credit/No Credit

EARTHSYS 101: Energy and the Environment (ENERGY 101)

Energy use in modern society and the consequences of current and future energy use patterns. Case studies illustrate resource estimation, engineering analysis of energy systems, and options for managing carbon emissions. Focus is on energy definitions, use patterns, resource estimation, pollution. Recommended: MATH 21 or 42.
Terms: Win | Units: 3 | UG Reqs: GER:DB-EngrAppSci, WAY-AQR, WAY-SMA | Grading: Letter or Credit/No Credit

EARTHSYS 102: Fundamentals of Renewable Power (ENERGY 102)

Do you want a much better understanding of renewable power technologies? Did you know that wind and solar are the fastest growing forms of electricity generation? Are you interested in hearing about the most recent, and future, designs for green power? Do you want to understand what limits power extraction from renewable resources and how current designs could be improved? This course dives deep into these and related issues for wind, solar, biomass, geothermal, tidal and wave power technologies. We welcome all student, from non-majors to MBAs and grad students. If you are potentially interested in an energy or environmental related major, this course is particularly useful. Recommended: Math 21 or 42.
Terms: Spr | Units: 3 | UG Reqs: GER:DB-EngrAppSci, WAY-SMA | Grading: Letter or Credit/No Credit
Filter Results:
term offered
updating results...
number of units
updating results...
time offered
updating results...
days
updating results...
UG Requirements (GERs)
updating results...
component
updating results...
career
updating results...
© Stanford University | Terms of Use | Copyright Complaints