290F - Applied Machine Learning: Systems, Networks and Security

In this course, we will study specific machine learning as practical data mining and classification tools to be applied in the general areas of distributed systems, networking, and security. We will start by introducing broadly machine learning classifiers, and then study (by reading technical papers) how a variety of ML tools have been applied in these areas. The course is meant to be an interactive, discussion based class, where students will read and present papers.

290I - Mixed and Augmented Reality (same course as Winter 2015)

Mixed and Augmented Reality, an active research field since the 1990s, has recently gained significant popularity because of the possibility of being implemented on smart phones. Many people see it as one of the most important computer interfaces in the future of computing. Augmented Reality is the concept of overlaying computer-generated information on top of the physical world. Mixed Reality is a bit broader and subsumes the fields of Augmented Reality, Augmented Virtuality, and Virtual Reality. This class provides a hands-on introduction to these novel interface technologies.

290A - Big Data and Networks

CS 290A is the first in a new group of courses we are introducing in the broad area of network science research.  This course will focus on fundamental theory and algorithms for working with Big Data and networks. Topics covered will include graph embedding, spanning trees, network flow, random graph models, network formation and evolution, structure and attribute-based search, clustering, partitioning, and distributed dynamical systems. 

 

290B - Scalable Internet Services (same course as Fall 2014)

This course explores advanced topics in highly scalable Internet services and their underlying systems architecture. Software today is increasingly being delivered as a service: accessible globally via web browsers and mobile applications and backed by millions of servers. Modern frameworks and platforms are making it easier to build and deploy these systems, such as Ruby on Rails and Amazon's EC2.

290G - Elliptic Curve Cryptography

This course is designed for computer science, computer engineering, electrical engineering, and mathematics students interested in understanding, designing, developing, analyzing, and validating elliptic cryptographic algorithms and protocols. The course is targeted to a diverse audience, and generally assumes no more than an undergraduate degree in computer science, electrical or computer engineering, or mathematics.