Information Course Schedule fall 2017

Upper Division Courses

This course introduces students to natural language processing and exposes them to the variety of methods available for reasoning about text in computational systems. NLP is deeply interdisciplinary, drawing on both linguistics and computer science, and helps drive much contemporary work in text analysis (as used in computational social science, the digital humanities, and computational journalism). We will focus on major algorithms used in NLP for various applications (part-of-speech tagging, parsing, coreference resolution, machine translation) and on the linguistic phenomena those algorithms attempt to model. Students will implement algorithms and create linguistically annotated data on which those algorithms depend.

TuTh 3:30 - 5:00PM | LeConte 4
Instructor(s): David Bamman

The goal for this class will be for students to gain a technical foundation for creating interactive data visualizations on the web. The primary focus of the class will be ​becoming more ​familiar with Javascript​,​ and mastering the fundamentals of the D3.js library to consume, parse, and visualize data within a web browser environment. Secondary topics that will be covered may include CSS3, HTML5, ES6, Node.js, RESTful APIs, and common data structures for the web. Familiarity with HTML, CSS, and JavaScript as well as previous computer programming experience is required​.​

This is a companion course to Info 190. Introduction to Data Visualization. It is aimed at students from computer science who would prefer a programming component and who would like to receive technical course requirement credits for this course.

Note: There may be a place-in exam for this course. Check back for more information.

Section: 2
M 6:00PM - 8:00PM | 210 Jacobs Hall
Instructor(s): Chris Henrick

This course introduces students to data visualization: the use of the visual channel for gaining insight with data, exploring data, and as a way to communicate insights, observations, and results with other people.

The field of information visualization is flourishing today, with beautiful designs and applications ranging from journalism to marketing to data science. This course will introduce foundational principles and relevant perceptual properties to help students become discerning judges of data displayed visually. The course will also introduce key practical techniques and include extensive hands-on exercises to enable students to become skilled at telling stories with data using modern information visualization tools.

Students will be asked to complete assignments before class, work together in small groups in class, and provide peer assessments. Grades will be based on assignments, quizzes, in class participation, peer assessment quality, 2 midterms, and a final project. The assignments for the course will together work towards building a coherent visualization that tells a story and is visible on the web.


This course is designed for upper division undergraduates who have an interest in design and in data. It is intended to accommodate students who have only a limited programming background, as well as those who are skilled with programming. For this reason, the only prerequisite is CS/Stat/Info 8 or equivalent. This course assumes students already have familiarity with basic data analysis and manipulation, and basic statistics.

Students are encouraged but not required to have taken other courses from the introductory design sequence (one of DES INV 10- Discovering Design DES INV 15- Design Methodology, DES INV 21- Visual Communications & Sketching, CS 160 User Interface Design and Development), as well as other introductory data science and statistics courses.

Graduate students will be accommodated only as space permits.

For Computer Science Students

Those students from Computer Science who would prefer a programming component, and who would like to receive technical course requirement credits for this course should enroll in a 1 unit optional companion course that is being offered alongside this course. This companion course will teach JavaScript and d3.js for information visualization applications.


The course instructor is Professor Marti Hearst, one of the founders of the IEEE Infovis Conference. She is also a leader in the latest wave of innovations in teaching data visualization, and co-organized high-profile events on this topic at IEEE Infoviz 2015, 2016, and 2017. Prof. Hearst is internationally known for her research in user interfaces for search and text visualization, having recently been inducted into the ACM CHI Academy.

Section: 1
MW 10:30AM - 12:00PM | 210 South Hall
Instructor(s): Marti Hearst

Core Courses

8 weeks; 3 hours of lecture per week. This course introduces the intellectual foundations of information organization and retrieval: conceptual modeling, semantic representation, vocabulary and metadata design, classification, and standardization, as well as information retrieval practices, technology, and applications, including computational processes for analyzing information in both textual and non-textual formats.

This is a required introductory course for MIMS students, integrating perspectives and best practices from a wide range of disciplines.

NOTE: Before Fall 2017, Info 202 was offered as a full-semester course for 4 units.

TuTh 11:00AM - 12:30PM | 210 South Hall
Instructor(s): David Bamman

7 weeks - 4 hours of laboratory per week. This course introduces software skills used in building prototype scripts for applications in data science and information management. The course gives an overview of procedural programming, object-oriented programming, and functional programming techniques in the Python scripting language, together with an overview of fundamental data structures, associated algorithms, and asymptotic performance analysis. Students will watch a set of instructional videos covering material and will have four hours of laboratory-style course contact each week.

NOTE: Before Fall 2017, Info 206 was titled “Distributed Computing Applications and Infrastructure” and was offered as a full-semester course for 4 units.

TuTh 11:00AM - 12:30PM | 210 South Hall

General Courses

Three hours of lecture per week. User interface design and human-computer interaction. Examination of alternative design. Tools and methods for design and development. Human- computer interaction. Methods for measuring and evaluating interface quality.

This course covers the design, prototyping, and evaluation of user interfaces to computers which is often called Human-Computer Interaction (HCI). It is loosely based on course CS1 described in the ACM SIGCHI Curricula for Human-Computer Interaction (Association for Computing Machinery, 1992).

HCI covers many topics including:

  1. Human capabilities (e.g., visual and auditory perception, memory, mental models, and interface metaphors);
  2. Interface technology (e.g., input and output devices, interaction styles, and common interface paradigms); and,
  3. Interface design methods (e.g., user-centered design, prototyping, and design principles and rules), and interface evaluation (e.g., software logging, user observation, benchmarks and experiments).

This material is covered through lectures, reading, discussions, homework assignments, and a course project. This course differs from CS 160 primarily in two ways:

  1. There is an emphasis on interfaces for information technology applications; and,
  2. There is less emphasis on programming and system development, although some simple prototyping (for example, in visual basic or using JAVA GUI development tools) may be required. (CS 160 has a big programming project.)
F 12:00 - 3:00PM | 210 South Hall
Instructor(s): Robert Youmans

This course will survey results in computer security, cryptography, and privacy, with an emphasis on work done in the last 3 years. Student projects (creative work, demonstrations, or literature reviews) will form a substantial portion of the course work.

MW 2:00 - 3:30PM | 210 South Hall
Instructor(s): Doug Tygar

This course focuses on managing people in information-intensive firms and industries, such as information technology industries. Students who seek careers in these industries will soon be asked to manage people, teams, departments, and units. They need to learn how to manage. However, managing is sometimes very different in these settings: Employees are highly educated; work is more fluid; teamwork and collaboration are essential; and external situations and strategies change rapidly. For these reasons several management principles born in a traditional manufacturing era no longer apply. In particular, the old style of “command and control” needs to give way to more distributed ways of work, with significant consequences for how managers need to manage. Of course, some universal management principles apply no matter what circumstance.

While we will cover these universal management principles in this course, we will pay particular attention to management issues that are highly relevant in information-intensive settings. Topics to be covered will likely include: managing knowledge workers; managing teams (incl. virtual ones); collaborating across disparate units, giving and receiving feedback; managing the innovation process (incl. in eco-systems); managing through networks; and managing when using communication tools (e.g., tele-presence). The course will rely heavily on cases as a pedagogical form.

This course satisfies the Management of Information Projects & Organizations requirement.

Th 6:00 - 9:30PM | Cheit C125
Instructor(s): Morten Hansen

"Behavioral Economics" is one important perspective on how information impacts human behavior. The goal of this class is to deploy a few important theories about the relationship between information and behavior, into practical settings — emphasizing the design of experiments that can now be incorporated into many 'applications' in day-to-day life. Truly 'smart systems' will have built into them precise, testable propositions about how human behavior can be modified by what the systems tell us and do for us. So let's design these experiments into our systems from the ground up! This class develops a theoretically informed, practical point of view on how to do that more effectively and with greater impact.

Previously offered as Info 290. Applied Behavioral Economics for Information Systems.

TuTh 2:00 - 3:30PM | 210 South Hall
Instructor(s): Steven Weber

The introduction of technology increasingly delegates responsibility to technical actors, often reducing traditional forms of transparency and challenging traditional methods for accountability. This course explores the interaction between technical design and values including: privacy, accessibility, fairness, and freedom of expression. We will draw on literature from design, science and technology studies, computer science, law, and ethics, as well as primary sources in policy, standards and source code. We will investigate approaches to identifying the value implications of technical designs and use methods and tools for intentionally building in values at the outset.

TuTh 3:30 - 5:00PM | 202 South Hall
Instructor(s): Deirdre Mulligan

Provides a theoretical and practical introduction to modern techniques in applied machine learning. Covers key concepts in supervised and unsupervised machine learning, including the design of machine learning experiments, algorithms for prediction and inference, optimization, and evaluation. Students will learn functional, procedural, and statistical programming techniques for working with real-world data.

TuTh 9:30 - 11:00AM | 210 South Hall
Instructor(s): Joshua Blumenstock
Section: 101
W 12:00-1:00pm | 210 South Hall
Instructor(s): Joshua Blumenstock

This course is a survey of Web technologies, ranging from the basic technologies underlying the Web (URI, HTTP, HTML) to more advanced technologies being  used in the the context of Web engineering, for example structured data  formats and Web programming frameworks. The goal of this course is to provide an  overview of the technical issues surrounding the Web today, and to provide a  solid and comprehensive perspective of the Web's constantly evolving landscape.

Students will receive no credit for 253 after taking 290. Web Architecture.

F 2:00-5:00PM | 202 South Hall
Instructor(s): Kay Ashaolu

This course introduces students to natural language processing and exposes them to the variety of methods available for reasoning about text in computational systems. NLP is deeply interdisciplinary, drawing on both linguistics and computer science, and helps drive much contemporary work in text analysis (as used in computational social science, the digital humanities, and computational journalism). We will focus on major algorithms used in NLP for various applications (part-of-speech tagging, parsing, coreference resolution, machine translation) and on the linguistic phenomena those algorithms attempt to model. Students will implement algorithms and create linguistically annotated data on which those algorithms depend.

TuTh 3:30 - 5:00PM | LeConte 4
Instructor(s): David Bamman

What insights about student learning can be revealed from data, and how can those insights be used to improve the efficacy of educational technology? This course will cover computational approaches to the task of modeling learning and improving outcomes in Intelligent Tutoring Systems (ITS) and Massive Open Online Courses (MOOCs). We will cover theories and methodologies underpinning current approaches to knowledge discovery and data mining in education and survey the latest developments in the broad field of human learning research.

This course will be project based, where teams will be introduced to online learning platforms and their datasets with the objective of pairing data analysis with theory or implementation. Literature review will serve to add context and grounding to projects.

Suggested background includes one programming course and familiarity with one statistical/computational software package.

The study of learning in online environments is an interdisciplinary pursuit, and therefore all majors are welcomed and encouraged to bring complimentary backgrounds.

Undergraduates with the appropriate background and motivation are encouraged to enroll but must contact Associate Director of Student Affairs Catherine Cronquist Browning for enrollment permissions.

NOTE: This course is cross-listed as Education C260F. Machine Learning in Education.

(Previously offered as Info 290 & Educ 290A.)

TuTh 12:30 - 2:00PM | 2515 Tolman Hall
Instructor(s): Zachary Pardos

This course will explore the theory and practice of Tangible User Interfaces, a new approach to HCI which focuses on the physical interaction with computational media. The topics covered in the course include:

  • Theoretical framework of Tangible User Interfaces
  • Design examples of Tangible User Interfaces
  • Enabling technologies for Tangible User Interfaces

Students will design and develop experimental Tangible User Interfaces, applications, underlying technologies, and theories using concept sketches, posters, physical mockups, working prototypes, and a final project report. The course will have 3 hours of lecture and 1 hour of laboratory per week.

Note:  Previously listed as Info 290: Theory and Practice of Tangible User Interfaces. Students who completed INFO 290 section 4 in Fall 2008 will receive no credit for Info 262.

This course is cross-listed as New Media C262.

MW 10:30am - 12:00pm | 202 South Hall
Instructor(s): Kimiko Ryokai

The goal of this course is to provide students with an introduction to many different types of quantitative research methods and statistical techniques. This course will be divided into two sections: 1) methods for quantitative research and, 2) quantitative statistical techniques for analyzing data. We begin with a focus on defining research problems, theory testing, causal inference, and designing research instruments. Then, we will explore a range of statistical techniques and methods that are available for empirical research. Topics in research methods include: Primary and Secondary Data Analysis, Sampling, Survey Design, and Experimental Designs. Topics in quantitative techniques include: Descriptive and Inferential statistics, General Linear Models, and Non-Linear Models. The course will conclude with an introduction to special topics in quantitative research methods.

TuTh 12:30 - 2:00PM | 210 South Hall
Instructor(s): Coye Cheshire

Special Topics Courses

This one-credit reading group, sponsored by the Center for Long-Term Cybersecurity, will discuss contemporary cybersecurity policy problems. The seminar will focus on future trends in technology, as well as the economy and politics, and how those are affecting cybersecurity policy. Topics may include encryption, autonomous vehicles, and the ethics of artificial intelligence. Students would be required to attend weekly 50-minute sessions, present short papers on the readings, and write response pieces.

Section: 4
W 2:00 - 3:00PM | 107 South Hall

The ICTD group seminar will discuss topics of current interest in the emerging multidisciplinary field of Information and Communications Technologies and Development, or ICTD. Each semester will be focused on a particular topic or set of topics, under the direction of appropriate faculty from the I School's ICTD group. The course content will consist of paper discussions, invited lectures from both within and outside the class and a some relatively short written assignments. Students will also be responsible for presenting during at least on class session, either on their own research, ideas or on a selected set of papers relevant to the semester's chosen topic.

Section: 3
Tu 2:00 - 3:00PM | 107 South Hall
Instructor(s): Joshua Blumenstock

Information privacy law profoundly shapes how internet-enabled services may work. Privacy Law for Technologists will translate the regulatory demands flowing from the growing field of privacy and security law to those who are creating interesting and transformative internet-enabled services. The course will meet twice a week, with the first session focusing on the formal requirements of the law, and the second on how technology might accommodate regulatory demands and goals. Topics include:  Computer Fraud and Abuse Act (reverse engineering, scraping, computer attacks), unfair/deceptive trade practices, ECPA, children’s privacy, big data and discrimination (FCRA, ECOA), DMCA, intermediary liability issues, ediscovery and data retention, the anti-marketing laws, and technical requirements flowing from the EU-US Privacy Shield.

Required textbook: FTC Privacy Law and Policy (CUP 2016)

Section: 2
MW 10:30AM - 12:00PM | 205 South Hall
Instructor(s): Chris Jay Hoofnagle

How do you create a concise and compelling User Experience portfolio? Applying the principles of effective storytelling to make a complex project quickly comprehensible is key. Your portfolio case studies should articulate the initial problem, synopsize the design process, explain the key decisions that moved the project forward, and highlight why the solution was appropriate. This course will include talks by several UX hiring managers who will discuss what they look for in portfolios and common mistakes to avoid.

Students should come to the course with a completed project to use as the basis for their case study; they will finish with a completed case study and repeatable process. Although this class focuses on UX, students from related fields who are expected to share examples and outcomes of past projects during the interview process (data science, product management, etc.) are welcome to join.

Section: 5
M 5:00 - 7:30PM | 205 South Hall
Instructor(s): Sara Cambridge

Digital technologies have brought consumers many benefits, including new products and services, yet at the same time, these technologies offer affordances that alter the balance of power among companies and consumers. Technology makes it easier to deny consumers access to the courts; to restrict well-established customs and rights, such as fair use and the reselling of goods; to manipulate digital fora that provide reviews of products and services; to retaliate against and/or monitor or even extort consumers who criticize them; to engage in differential pricing; to “brick” or turn off devices remotely, to cause systemic insecurity by failing to patch products; and to impose transaction costs in order to shape consumer behavior.

Fundamentally, the move to digital turns many products into services. While the law has long comprehensively regulated products under the Uniform Commercial Code and products liability regimes, artifacts and services with embedded software present new challenges. European governments are moving aggressively to establish comprehensive regulations for digital goods. But no such agenda is on the horizon in the United States.

This course will employ a problem-based learning method (PBL). Students in the course will work in small groups to generate hypotheses, learning issues, and learning objectives in digital consumer protection. Through this process we will develop a high level conception of consumer protection and its goals. We will then explore its fit in the digital realm.

Students will develop short presentations on these learning objectives to create group learning and discussion. For the culmination of the course, students will work together to generate a research agenda for the future of digital consumer protection.

Section: 1
M 2:00 - 5:00PM | 202 South Hall
Instructor(s): Chris Jay Hoofnagle

Much as Adam Smith saw his own age as marked by its engagement with “commerce” and thereby distinguished from all ages that had come before, it has become conventional to see our own era as a break from all that has preceded it, and thus distinguished principally by its engagement with information and computing technologies. Scholars have labeled the contemporary era as the “post-industrial,” “postmodern,” or “network society,” but probably the most widely used and enduring characterization distinguishes the present day as the “information age” or “information society.” This course will explore the notion of an “information society,” trying to understand what scholars have held to be the essential and distinguishing features of such a society, how these views compare with classic theories of society or with alternative accounts of the present age, and to what extent different conceptions of the “information age” are compatible. In pursuing this investigation, we shall bear in mind the admonition of the legal scholar James Boyle that while the idea of an “information age” may be “useful ... we need a critical social theory to understand it.” In the process of developing a critical, social, and political-economic analysis of this idea, we hope to assemble a corpus of information society readings.

Requirements: We will proceed by reading theorists in contrasting pairs in each class seeking to understand and compare the ways in which society is characterized in each account. All students will be asked to post their thoughts on the readings before each class. Each student will be expected to take responsibility for guiding the discussion in one class. Every few weeks, we will pause to consider how to apply these theoretical perspectives in our own research and writing, at which time students will be required to submit a one- page essay reflecting on how the works read up to that point construct and use theory and how the student might rely on or challenge these theories in the student’s own work. Each student will be required to submit a final paper exploring a subject to be agreed on with the instructors that relates the works and discussions of the course to the student’s own work and interests. Papers should be twenty pages long and submitted by the last day of exam week (December 16).

Section: 6
W 9:00AM - 12:00PM | 107 South Hall
Instructor(s): Ashwin Mathew, Paul Duguid

This course is designed to give participants a practical overview of the modern lean/agile product management paradigm based on contemporary industry practice. We cover the complete lifecycle of product management, from discovering your customers and users through to sales, marketing and managing teams. We'll take an experimental approach throughout, showing how to minimize investment and output while maximizing the information we discover in order to support effective decision-making. During the course, we'll show how to apply the theory through hands-on collaborative problem-solving activities. There will also be guest lectures from industry experts.

This course satisfies the Management requirement for the MIMS degree.

In Fall 2015 & Fall 2016, this course was offered for 2 units.

Section: 2
F 9:00AM - 12:00PM | 210 South Hall
Instructor(s): Jez Humble

Delivering value to enterprises and ensuring long-term career success requires much more than pure technology skills. This course is an industry practitioner’s view of how, as information becomes increasingly strategic for all organizations, technology professionals can accelerate their career trajectories by identifying and beginning to develop a core set of strategic business skills.

This course will explore a series of critical business topics that apply both to start-up and Fortune 500 enterprises. This course is divided into three primary sections, delivered through a series of industry thought leadership and academic readings and industry guest speakers:

  • Examining business models and strategies: How do companies plan to succeed? What are their business strategies and how do those translate into technology strategies and investments in support of these plans? Secondly, how does one analyze whether an organization’s culture is enabling or inhibiting that success?

  • Interacting with SF bay area technology executives: Students will have access to C-level executives in an intimate classroom setting as they discuss their organizational strategies, cultures and technology styles. How do they trade off speed, quality and features? How do they manage innovation when they also must operate? Currently scheduled speakers for Fall 2017 include the CIO’s from Kaiser Permanente, CBS Interactive, Red Hat, as well as executives from consulting firm AT Kearney and Silicon Valley start-up Altia Systems.

  • Enhancing core business skills: Presentation skills, negotiations, leadership styles, organizational change, personal brand and future career vision are topics that will be explored in class and in written assignments. A brief presentation will be required from all students.

Note: This course may be taken on an S/U (Satisfactory/Unsatisfactory) basis.

Section: 1
M 2:00 - 5:00PM | 205 South Hall
Instructor(s): Peter Weis

To what extent can a machine know the inner workings of a person's mind, even theoretically? This course explores this question through a mixture of hands-on machine learning and critical discussions on theory. In this course, students will practice ML techniques on a provided corpus of data to produce a working brain-computer interface. Simultaneously, students will engage critically with recent research in ubiquitous sensing technologies, and the discourse around them, tracing ideas to their origins in cognitive science.

This half-semester course runs for the first eight weeks of the semester (8/23/17 - 10/17/17).

Each week will cover one topic in mind-reading machines. Tuesday classes will be a lecture, a survey of the week's readings, centering around one or two particular papers. Thursday classes will be lab-time, centered around supporting assignments, projects and hands-on engagement with the course dataset.

This class is a pre-requisite for Info 290T. Projects on Mind-Reading Machines, an (optional) 1-unit course taking place in the second half of the semester, which would continue the themes of this course through a student-led research project.

Section: 1
TuTh 2:00 - 3:30PM | 205 South Hall
Instructor(s): John Chuang, Nick Merrill

To what extent can a machine know the inner workings of a person's mind, even theoretically? This course explores this question through a mixture of hands-on machine learning and critical discussions on theory. In this course, students will practice ML techniques on a provided corpus of data to produce a working brain-computer interface. Simultaneously, students will engage critically with recent research in ubiquitous sensing technologies, and the discourse around them, tracing ideas to their origins in cognitive science.

This 1-unit course takes place in the second half of the semester, continuing the themes of Info 290T. Mind-Reading and Telepathy for Beginners and Intermediates through a student-led research project.

Section: 2
Tu 2:00 - 3:30pm | 205 South Hall
Instructor(s): John Chuang, Nick Merrill

Seminars & Colloquia

An intensive weekly discussion of current and ongoing research by Ph.D. students with a research interest in issues of information (social, legal, technical, theoretical, etc.). Our goal is to focus on critiquing research problems, theories, and methodologies from multiple perspectives so that we can produce high-quality, publishable work in the interdisciplinary area of information research. Circulated material may include dissertation chapters, qualifying papers, article drafts, and/or new project ideas. We want to have critical and productive discussion, but above all else we want to make our work better: more interesting, more accessible, more rigorous, more theoretically grounded, and more like the stuff we enjoy reading.

Section: 1
W 2:00 - 4:00PM | 205 South Hall
Instructor(s): Coye Cheshire

One hour colloquium per week. Must be taken on a satisfactory/unsatisfactory basis. Colloquia, discussion, and readings are designed to introduce students to the range of interests of the school.

M 12:30 - 1:30PM | 205 South Hall
Instructor(s): John Chuang, Kimiko Ryokai

The seminar explores selected advanced topics relating to 'digital libraries' with special emphasis on:

  • Access to networked resources
  • Use of two or more resources in conjunction
  • Combined use of two or more retrieval systems (e.g. use of pre- or post-processing to enhance the capabilities)
  • The redesign of library services

It is expected that these issues will require attention to a number of questions about the nature of information retrieval processes, the feasibility of not-yet-conventional techniques, techniques of making different systems work together, social impact, and the reconsideration of past practices. More generally, the seminar is intended to provide a forum for advanced students in the School. Anyone interested in these topics is welcome to join in — and to talk about their own work. This is a continuation of the previous Lynch/Buckland seminars.

Section: 1
F 3:00 - 5:00PM | 107 South Hall

Individual & Group Study

This course is intended for graduate student instructors (GSIs) and is meant to be taken simultaneously with teaching as a GSI and to satisfy the Graduate Council's 300-level pedagogy course requirement. The practicum may include discussion, reading, preparation, and practical experience under faculty supervision in teaching, with a focus on topics within information management and systems.

Course may be repeated for credit as topic varies. Four hours of work per week per unit. Must be taken on a satisfactory/unsatisfactory basis. Does not count toward a degree.

Spring 2014: Info 375 will be offered for 2 units.

Instructor(s): Paul Duguid