Skip to Main Content
Navigated to Computer Science.

Department of Computer Science, Harold Frank Hall, Room 2104;
Telephone (805) 893-4321
Web site: 
www.cs.ucsb.edu
Chair: Tevfik Bultan
Vice Chair: Chandra Krintz
Vice Chair: Ben Hardekopf

Overview

Many of the greatest challenges facing our world today are increasingly reliant on computing their solutions — from conquering disease to eliminating hunger, from improving education to protecting the climate and environment.  Information is key to all of these efforts, and computer scientists make it possible to visualize, secure, explore, transmit, and transform this information in ways never before thought possible.  Solving problems through computation means teamwork, collaboration, and gaining the interdisciplinary skills that modern careers demand.  Our goal with the Computer Science curriculum at UCSB is to impart to students the knowledge and experience required for them to participate in this exciting and high-impact discipline.
 
Mission Statement
The Computer Science department seeks to prepare undergraduate and graduate students for productive careers in industry, academia, and government, by providing an outstanding environment for teaching and research in the core and emerging areas of the discipline.  The department places high priority on establishing and maintaining innovative research programs that enhance educational opportunity.
 
The Department of Computer Science offers programs leading to the degrees of Bachelor of Science in computer science, and the M.S. and Ph.D. in computer science.
 
One of the most important aspects of the Computer Science program at UCSB is the wealth of “hands-on” opportunities for students. UCSB has excellent computer facilities. Campus Instructional Computing makes accounts available to all students. Computer science majors use the workstations in several computing facilities on campus. Students doing special projects can gain remote access to machines at the NSF Supercomputing Centers. Additional computing facilities are available for graduate students in the Graduate Student Laboratory. Students working with faculty have access to the specialized research facilities within the Department of Computer Science.
 
The undergraduate major in computer science has a dual purpose: to prepare students for advanced studies and research and to provide training for a variety of careers in business, industry, and government. Under the direction of the Associate Dean for Undergraduate Studies, academic advising services are jointly provided by advisors in the College of Engineering, as well as advisors in the department. A faculty advisor is also available to help with academic program planning.
 
Computer Engineering Major
This major is offered jointly by the Department of Computer Science and the Department of Electrical and Computer Engineering. For information about this major, please refer to the section on Computer Engineering.
 
Program Goals for Undergraduate Programs
The goal of the computer science undergraduate program is to prepare future generations of computer professionals for long-term careers in research, technical development, and applications.  Graduates of the B.S. program that wish to seek immediate employment are prepared for a wide range of computer science positions in industry and government.   Outstanding graduates interested in highly technical careers, research, and/or academia, might consider furthering their education in graduate school.
The primary computer science departmental emphasis is on problem solving using computer program design, analysis and implementation, with both a theoretical foundation and a practical component.
 
Program Outcomes for Undergraduate Programs
The program enables students to achieve, by the time of graduation:

  1. An ability to apply knowledge of computing and mathematics appropriate to computer science.

  2. An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution.

  3. An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs.

  4. An ability to function effectively on teams to accomplish a common goal.

  5. An understanding of professional, ethical, and social responsibilities.

  6. An ability to communicate effectively.

  7. An ability to analyze the impact of computing on individuals, organizations, and society, including ethical, legal, security, and global policy issue.

  8. Recognition of the need for and an ability to engage in continuing professional development.

  9. An ability to use current techniques, skills, and tools necessary for computing practice.

  10. An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the trade-offs involved in design choices.

  11. An ability to apply design and development principles in the construction of software systems of varying complexity.

Admission to the Major
Students interested in computer science who apply to UCSB should declare the computer science major when they apply. Computer Science majors have priority when registering for all Computer Science courses. UCSB students in majors other than computer science may apply for change of major consideration into the Department of Computer Science once the minimum requirements are met (specified on the departmental web pages). The change of major application process is extremely competitive and a limited number of applications will be approved. No exceptions are made for the minimum requirements, and meeting the requirements does not guarantee admission to the major.

Students admitted to the computer science major are responsible for satisfying major requirements in effect when they declare their major. Upper and lower division courses required for the major that are offered by the Department of Computer Science or any other department must be taken for letter grades.

Faculty

Divyakant Agrawal, PhD, State University of New York, Stonybrook, Professor
Specialization: distributed systems and databases

Prabhanjan Ananth, PhD, UC Los Angeles, Associate Professor
Specialization: cryptography, complexity, security

Jonathan Balkind, PhD, Princeton, Assistant Professor

Elizabeth Belding, PhD, UC Santa Barbara, Professor
Specialization: mobile wireless networking, network performance monitoring and evaluation, Information and Communications Technology for Development (ICTD), computing for social good

Michael Beyeler, PhD, UC Irvine, Assistant Professor
Specialization: visual computing; computational neuroscience; applied AI; human-computer interaction; virtual/augmented reality
Joint Appointment: Psychological and Brain Sciences

Tevfik Bultan, PhD, University of Maryland, Professor
Specialization: software verification, program analysis, software engineering, and computer security

Shiyu Chang, PhD, University of Illinois at Urbana-Champaign, Associate Professor
Specialization: machine learning, natural language processing, computer vision

Phill Conrad, PhD, University of Delaware, Teaching Professor
Specialization: computer science education, software engineering education
Joint Appointment: Creative Studies

Amr El Abbadi, PhD, Cornell University, Professor
Specialization: Information and data management; distributed systems and cloud computing

Yu Feng, PhD, University of Texas at Austin, Assistant Professor
Specialization: programming languages, program verification, program analysis, program synthesis, data visualization, and software security

Frederic Gibou, PhD, UC Los Angeles, Professor
Specialization: High resolution multi-scale simulation, scientific computing, tools and software for computational science and engineering, engineering applications? to "High resolution multiscale simulation and data analysis of multiphase flows, high temperature materials, biosystems
Joint Appointment: Mechanical Engineering

Wenbo Guo, Assistant Professor

Arpit Gupta, PhD, Princeton University, Associate Professor
Specialization: last-mile networks, network measurements/analytics/ML systems, digital equity solutions

Trinabh Gupta, PhD, University of Texas, Austin, Associate Professor
Specialization: operating systems, security, and privacy

Ben Hardekopf, PhD, University of Texas, Austin, Professor
Specialization: programming languages: design, analysis, and implementation

Tobias Hollerer, PhD, Columbia University, Professor
Specialization: human computer interaction; augmented reality; virtual reality; visualization; computer graphics; 3D displays and interaction; wearable and ubiquitous computing

Kate Kharitonova, PhD, University of Arizona, Assistant Teaching Professor
Specialization: Computer Science education, Data Science, Computer Vision and Machine Learning

Chandra Krintz, PhD, UC San Diego, Professor
Specialization: programming systems, dynamic and adaptive program analysis and optimization, Internet of Things (IOT), web services, distributed systems, cloud computing

Sanjukta Krishnagopal, Assistant Professor

Christopher Kruegel, PhD, Vienna University of Technology, Professor
Specialization: computer security, program analysis, operating systems, network security, malicious code analysis and detection

Daniel Lokshtanov, PhD, University of Bergen, Professor
Specialization: Algorithms, Complexity, Graph Theory, Combinatorics

Maryam Majedi, Assistant Teaching Professor

Dahlia Malkhi, Professor

Ziad Matni, PhD, Rutgers University, Assistant Teaching Professor
Specialization: Computer Science education, Data Science, Computational Social Science

Diba Mirza, PhD, UC San Diego, Teaching Professor
Specialization: Computer Science Education, Embedded Systems, Computer Architecture

Nabeel Nasir, Assistant Teaching Professor

Murphy Niu, Assistant Professor

Linda Petzold, PhD, University of Illinois, Professor
Specialization: modeling, simulation and data analysis of multiscale systems in systems biology, engineering and medicine
Joint Appointment: Mechanical Engineering

James Preiss, Assistant Professor

Timothy Sherwood, PhD, UC San Diego, Professor
Specialization: computer architecture, secure hardware, superconducting accelerators, embedded systems, program analysis and characterization

Ambuj Singh, PhD, University of Texas, Professor
Specialization: machine learning and data mining, network science, social networks, databases, bioinformatics, chemoinformatics
Joint Appointment: Interdisciplinary Program in Quantitative Biosciences

Misha Sra, PhD, Massachusetts Institute of Technology, Associate Professor
Specialization: human computer interaction; augmented reality; virtual reality; spatial interaction design; haptics, applied AI

Jianwen Su, PhD, University of Southern California, Professor
Specialization: data management, business workflow management, and complex event processing

Subhash Suri, PhD, Johns Hopkins University, Professor
Specialization: algorithms, computational geometry, networked sensing, data streams, game theory

Giovanni Vigna, PhD, Politecnico di Milano, Professor
Specialization: computer and network security, vulnerability analysis and security testing, web security, smartphone security, cybercrime, malware detection

Eric Vigoda, PhD, UC Berkeley, Professor
Specialization: randomized algorithms, MCMC algorithms, statistical physics phase transitions

Richert Wang, Associate Teaching Professor
Specialization: computer science education, computer networks, distributed systems
Joint Appointment: Creative Studies

William Wang, PhD, Carnegie Mellon University, Professor
Specialization: machine learning, natural language processing, artificial intelligence, data science

Rich Wolski, PhD, UC Davis, Professor
Specialization: cloud computing, high-performance distributed computing, computational grids, and computational economies for resource allocation and scheduling

Xifeng Yan, PhD, University of Illinois, Urbana, Professor
Specialization: data mining, data management, machine learning, bioinformatics, information networks

Tao Yang, PhD, Rutgers University, Professor
Specialization: parallel and distributed systems, internet search and high performance computing

Emeriti Faculty

Kevin Almeroth, PhD, Georgia Institute of Technology

Peter Cappello, PhD, Princeton University

Omer Egecioglu, PhD, UC San Diego

John Gilbert, PhD, Stanford University

Teo Gonzalez, PhD, University of Minnesota

Oscar Ibarra, PhD, UC Berkeley

Dick Kemmerer, PhD, UC Los Angeles

Terence Smith, PhD, Johns Hopkins University
Specialization: spatial data processing, spatial analysis, spatial databases, knowledge-based approaches to geographic information systems
Joint Appointment: Geography

Matthew Turk, PhD, Massachusetts Institute of Technology
Joint Appointment: Media Arts & Technology

Willem Van Dam, PhD, University of Amsterdam
Joint Appointment: Physics

Yuan Wang, PhD, University of Texas, Austin

Affiliated Faculty

Francesco Bullo, PhD

Shivkumar Chandrasekaran, PhD

Miguel Eckstein, PhD

Jennifer Jacobs, PhD

Haewon Jeong, PhD

B. S. Manjunath, PhD

Nina Miolane, PhD

Yasamin Mostofi, PhD

Yao Qin, PhD

Pradeep Sen, PhD

Sharon Tettegah, PhD

Simon Todd, PhD

Zheng Zhang, PhD


UC Santa Barbara
Santa Barbara, California 93106
(805) 893-8000


Copyright © 2024 The Regents of the University of California. All Rights Reserved.
Terms of Use. Questions or Comments? Please email us.