2020-2021 2021-2022 2022-2023 2023-2024 2024-2025
Browse
by subject...
    Schedule
view...
 

1 - 8 of 8 results for: CS106

CS 106A: Programming Methodology

Introduction to the engineering of computer applications emphasizing modern software engineering principles: program design, decomposition, encapsulation, abstraction, and testing. Emphasis is on good programming style and the built-in facilities of respective languages. Uses the Python programming language. No prior programming experience required.
Terms: Aut, Win, Spr, Sum | Units: 3-5 | UG Reqs: WAY-FR, GER:DB-EngrAppSci

CS 106AX: Programming Methodologies in JavaScript and Python (Accelerated)

Introduction to the engineering of computer applications emphasizing modern software engineering principles: object-oriented design, decomposition, encapsulation, abstraction, and testing. This course targets an audience with prior programming experience, and that prior experience is leveraged so material can be covered in greater depth.
Terms: Aut | Units: 3-5 | UG Reqs: WAY-FR

CS 106B: Programming Abstractions

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.
Terms: Aut, Win, Spr, Sum | Units: 3-5 | UG Reqs: GER:DB-EngrAppSci, WAY-FR

CS 106E: Exploring Computing

This course, designed for the non-computer scientist, will provide students with a solid foundation in the concepts and terminology behind computers, the Internet, and software development. It will give you better understanding and insight when working with technology. It will be particularly useful to future managers and PMs who will work with or who will lead programmers and other tech workers. But it will be useful to anyone who wants a better understanding of tech concepts and terms. We'll start by covering the foundations of Computer Hardware, the CPU, Operating Systems, Computer Networks, and the Web. We will then use our foundation to explore a variety of tech-related topics including Computer Security (how computers are attacked and defensive measures that can be taken); Cloud Computing, Artificial Intelligence, Software Development, Human-Computer Interaction, and Computer Theory.Prerequisites: Some programming experience at the High School level of above will help students get the most out of the class, but the course can be successfully completed with no prerequisites.
Terms: Spr | Units: 3

CS 106EA: Exploring Artificial Intelligence

CS106EA will provide students with an overview of Artificial Intelligence and understanding of key AI concepts. We will examine a typical Machine Learning pipeline. We'll study different problems that ML is used to solve and common issues that arise (such as overfitting, drift, and bias). Students will learn how neural networks work and then examine specialized versions of neural networks for processing images, sequence data, and text. We'll explore generative AI systems for text and images. We'll also study societal issues related to Artificial Intelligence including ethical considerations and the implications of automation. This course will focus on providing a conceptual understanding of AI. While students will get some hands-on time working with and modifying actual artificial intelligence systems, it is not a programming class. However, students should have CS106A or comparable experience as we'll be assuming some basic understanding of programming.
Terms: Win | Units: 3

CS 106L: Standard C++ Programming Laboratory

This class explores features of the C++ programming language beyond what's covered in CS106B. Topics include core C++ language features (e.g. const-correctness, operator overloading, templates, move semantics, and lambda expressions) and standard libraries (e.g. containers, algorithms, and smart pointers). Pre- or corequisite: CS106B or equivalent. Prerequisite: CS106B or equivalent. CS106L may be taken concurrently with CS106B.
Terms: Aut, Win, Spr | Units: 1

CS 106M: Enrichment Adventures in Programming Abstractions

This enrichment add-on is a companion course to CS106B to explore additional topics and go into further depth. Specific topics to be announced per-quarter; past topics have included search engines, pattern recognition, data compression/encryption, error correction, digital signatures, and numerical recipes. Students must be co-enrolled in CS106B. Refer to cs106m.stanford.edu for more information.
Terms: Aut | Units: 1
Instructors: Zelenski, J. (PI)

CS 106S: Coding for Social Good

Survey course on applications of fundamental computer science concepts from CS 106B to problems in the social good space (such as health, trust & safety, government, security, education, and environment). Each week consists of in-class activities designed and delivered by student instructors. Introduces students to JavaScript and the basics of web development. Some of the topics we will cover include mental health chatbots, tumor classification with basic machine learning, sentiment analysis of tweets on refugees, the basics of open source software, and principles of cybersecurity. For more information, visit cs106s.stanford.edu. Pre/Corequisite: CS106B. Cardinal Course certified by the Haas Center for Public Service
Terms: Aut, Win, Spr | Units: 1
Filter Results:
term offered
updating results...
teaching presence
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