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

111 - 120 of 224 results for: CS

CS 246H: Mining Massive Data Sets Hadoop Lab

Supplement to CS 246 providing additional material on Hadoop. Students will learn how to implement data mining algorithms using Hadoop, how to implement and debug complex MapReduce jobs in Hadoop, and how to use some of the tools in the Hadoop ecosystem for data mining and machine learning. Topics: Hadoop, MapReduce, HDFS, combiners, secondary sort, distributed cache, SQL on Hadoop, Hive, Cloudera ML/Oryx, Mahout, Hadoop streaming, implementing Hadoop jobs, debugging Hadoop jobs, TF-IDF, Pig, Sqoop, Oozie, HBase, Impala. Prerequisite: CS 107 or equivalent.
Terms: Win | Units: 1

CS 247: Human-Computer Interaction Design Studio

Project-based focus on interaction design process, especially early-stage design and rapid prototyping. Methods used in interaction design including needs analysis, user observation, sketching, concept generation, scenario building, and evaluation. Prerequisites: 147 or equivalent background in design thinking; 106B or equivalent background in programming. Recommended: CS 142 or equivalent background in web programming
Terms: Aut, Win | Units: 3-4

CS 247L: Human Computer Interaction Technology Laboratory

Hands-on introduction to contemporary HCI technologies. Interaction design with Adobe Flash, mobile development, physical computing, and web applications. Corequisite: 247.
Last offered: Spring 2014

CS 248: Interactive Computer Graphics

This is the second course in the computer graphics sequence, and as such it assumes a strong familiarity with rendering and image creation. The course has a strong focus on computational geometry, animation, and simulation. Topics include splines, implicit surfaces, geometric modeling, collision detection, animation curves, particle systems and crowds, character animation, articulation, skinning, motion capture and editing, rigid and deformable bodies, and fluid simulation. As a final project, students implement an interactive video game utilizing various concepts covered in the class. Games may be designed on mobile devices, in a client/server/browser environment, or on a standard personal computer. Prerequisite: CS148.
Terms: Win | Units: 3-4

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
Instructors: Cheriton, D. (PI)

CS 249B: Large-scale Software Development

Software engineering of high quality large-scale complex software with a focus on evolvability, performance and cost. Software development processes, people and practice; audit: integrating invariant checks with production software; concurrency with modular object-oriented programming; collection implementation; generic programming and templates; design of value types; named descriptions for large value types; memory management; controlling placement, locality and consumption; run-time vs. static type checking and identification.
Last offered: Winter 2011

CS 251: Bitcoin and Crypto Currencies

For advanced undergraduates and for graduate students. The potential applications for Bitcoin-like technologies is enormous. The course will cover the technical aspects of crypto-currencies, blockchain technologies, and distributed consensus. Students will learn how these systems work and how to engineer secure software that interacts with the Bitcoin network and other crypto currencies. Prerequisite: CS110. Recommended: CS255.
Terms: Aut | Units: 3

CS 251P: Bitcoin & Crypto Currencies Lab

Bitcoin has the potential to change how payments are done on the Internet and beyond. In this class, you will build Bitcoin-powered versions of many of the most popular internet services. For example, you will build a search engine that takes in a small amount of bitcoin for each query, a social network that allows individuals to buy internet celebrity endorsements for bitcoin, and a content site that charges a small amount of bitcoin for each page view. In each case, we will show how Bitcoin micropayments can supplant or complement the traditional ad-supported model. The course is based on a weekly hackathon; each Monday you will receive some stub code illustrating the basic mechanics of a Bitcoin-powered internet service, and you will improve this as best you can as an individual or in a small group by the end of Sunday on that week. Winners of each week's hackathon will be recognized. Prerequisites: No previous Bitcoin knowledge is required. Students who have taken CS251 or CS251P will have more context, but this course is all new material. Recommended: Intensive programming experience at the level of CS107 or above.
Terms: Aut, Win | Units: 1 | Repeatable 5 times (up to 5 units total)

CS 255: Introduction to Cryptography

For advanced undergraduates and graduate students. Theory and practice of cryptographic techniques used in computer security. Topics: encryption (symmetric and public key), digital signatures, data integrity, authentication, key management, PKI, zero-knowledge protocols, and real-world applications. Prerequisite: basic probability theory.
Terms: Win | Units: 3

CS 261: Optimization and Algorithmic Paradigms

Algorithms for network optimization: max-flow, min-cost flow, matching, assignment, and min-cut problems. Introduction to linear programming. Use of LP duality for design and analysis of algorithms. Approximation algorithms for NP-complete problems such as Steiner Trees, Traveling Salesman, and scheduling problems. Randomized algorithms. Introduction to online algorithms. Prerequisite: 161 or equivalent.
Terms: Win | Units: 3
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