Lower-Division

CSE 3 Personal Computer Concepts: Software and Hardware

Provides an introduction to computers. Personal computing is emphasized, and students are introduced to word processing, spreadsheets, database management, graphics, and programming. Covers fundamentals of computing and current and future uses of computer technology, PC hardware, Windows operating system, applications software, networking and the Internet, and developments in the computer industry. Designed for students with little or no experience using computers. Students cannot receive credit for this course and Computer Science 2. (Formerly Computer Engineering 3.)

Credits

5

Instructor

Gerald Moulds

Quarter offered

Fall, Winter, Spring

CSE 5J Introduction to Programming in Java

Introduces programming in Java for students who have no prior programming experience. Students learn programming and documentation skills, as well as algorithmic problem-solving, and programming methodologies. Introduces computers, compilers, and editors. Students write small to medium-sized programs. This course and CSE 5C and CSE 5P cover similar concepts, but use different programming languages. Because CSE 5J followed by CSE 11 is a two-quarter alternative to the accelerated course CSE 12A and CSE 12L, engineering majors and students planning on continuing the programming sequence are encouraged to take CSE 5J rather than CSE 5C or CSE 5P. Students may not receive credit for CSE 5J taken concurrently or subsequently to CSE 12A, CSE 12B, or Computer Engineering 13. (Formerly CMPS 5J.)

Credits

5

General Education Code

MF

CSE 10 Introduction to Computer Science

An overview of the theory, foundations, and practice of computer science with emphasis on what computers can and cannot do, now and in the future. Topics include algorithms and data, correctness and efficiency of algorithms, hardware, programming languages, limitations of computation, applications, and social issues. No programming skills are required as a prerequisite. Major concepts and open problems in computer science are presented without reliance on sophisticated mathematical tools. Students cannot receive credit for this course after completing CSE 15. (Formerly CMPS 10.)

Credits

5

Instructor

The Staff, Patrick Tantalo, Marilyn Walker

General Education Code

MF

CSE 12 Computer Systems and Assembly Language and Lab

Introduction to computer systems and assembly language and how computers compute in hardware and software. Topics include digital logic, number systems, data structures, compiling/assembly process, basics of the system software, and computer architecture. Course is 7 credits with integrated laboratories illustrating concepts covered in lecture. Note that CSE 12 assumes some programming experience. Students can show programming experience by taking one of the courses listed in the prerequisite list below or by taking the CSE python Test-out Exam: https://undergrad.soe.ucsc.edu/cse-20-testout-exam (Formerly CSE 12 and CSE 12L)

Credits

7

Instructor

The Staff, Tracy Larrabee, Darrell Long, Jose Renau Ardevol, Matthew Guthaus, Max Dunne, Sagnik Nath

Requirements

Prerequisite(s): CSE 5J, or CSE 20, or CSE 30, or BME 160, or equivalent.

Quarter offered

Fall, Winter, Spring, Summer

CSE 13S Computer Systems and C Programming

Focuses on C programming, command line, shell programming, editors, debuggers, source code control, and other tools. Examines basic computer systems, algorithm design, and development, data types, and program structures. Develops understanding of process model, compile-link-execute build cycle, language-machine interface, memory, and data representation. Students cannot receive credit for both CSE 13S and CSE 13E. Course is 7 credits with integrated laboratory.

Credits

7

Instructor

Darrell Long, Peter Alvaro, Faisal Nawab, Davis Harrison, Scott Brandt

Requirements

Prerequisite(s): CSE 12 or BME 160.

Quarter offered

Fall, Winter, Spring

CSE 16 Applied Discrete Mathematics

Introduction to applications of discrete mathematical systems. Topics include sets, functions, relations, graphs, predicate calculus, mathematical proof methods (induction, contraposition, contradiction), counting methods (permutations, combinations), and recurrences. Examples are drawn from computer science and computer engineering. Knowledge of computer programming is useful before taking this course. Students who do not have prior programming experience are strongly recommended to take CSE 20 or CSE 30 before taking this course.

Credits

5

Instructor

Tracy Larrabee, Martine Schlag, Owen Arden, Chen Qian, Alvaro Cardenas, Allen Van Gelder, John Musacchio, The Staff

Requirements

Prerequisite(s): MATH 19A or MATH 19B or MATH 11B or AM 11B or AM 15B or ECON 11B.

General Education Code

MF

Quarter offered

Fall, Winter, Spring

CSE 20 Beginning Programming in Python

Provides students with Python programming skills and the ability to design programs and read Python code. Topics include data types, control flow, methods and advanced functions, built-in data structures, and introduction to OOP. No prior programming experience is required. Students may not receive credit for CSE 20 after receiving credit for CSE 30. Students with prior programming experience (especially in Python) are encouraged to take CSE Testout Exam to be evaluated for their readiness to take CSE 30 directly: https://undergrad.soe.ucsc.edu/cse-20-testout-exam.

Credits

5

Instructor

Cormac Flanagan, Narges Norouzi, Tracy Larrabee, Larissa Munishkina, Patrick Tantalo, Benedict Paten, Marilyn Walker, The Staff

General Education Code

MF

Quarter offered

Fall, Winter, Spring

CSE 30 Programming Abstractions: Python

Introduction to software development in Python focusing on structuring software in terms of objects endowed with primitive operations. Introduces concepts and techniques via a sequence of concrete case studies. Coursework consists of programming assignments and a final examination. Note that CSE 30 assumes some Python experience, students trained in a different language should self-study Python to prepare for CSE 30. See CSE Testout Exam for resources and further information.

Credits

7

Instructor

Luca De Alfaro, Peter Alvaro, Delbert Bailey, Lindsey Kuper, Alex Pang, Larissa Munishikina, The Staff

Requirements

Prerequisite(s): CSE 20 or BME 160; and MATH 3 or MATH 11A or MATH 19A or AM 3 or AM 11A or ECON 11A, or a score of 400 or higher on the mathematics placement examination (MPE).

Quarter offered

Fall, Winter, Spring

CSE 40 Machine Learning Basics: Data Analysis and Empirical Methods

Introduction to the basic mathematical concepts and programming abstractions required for modern machine learning, data science, and empirical science. The mathematical foundations include basic probability, linear algebra, and optimization. The programming abstractions include data manipulation and visualization. The principles of empirical analysis, evaluation, critique and reproducibility are emphasized. Mathematical and programming abstractions are grounded in empirical studies including data-driven evidential reasoning, predictive modeling, and causal analysis.

Credits

5

Instructor

Lise Getoor, The Staff

Requirements

Prerequisite(s): MATH 19B or MATH 20B, and CSE 30.

General Education Code

SR

Quarter offered

Winter

CSE 80A Universal Access: Disability, Technology, and Society

Overview of human-centered technology and of its potential for increasing the quality of life and independence of disabled individuals. A substantial portion of the course is devoted to studying physical, psychological, and psychosocial aspects of disability. Topics include: diversity and integration, legislation, accessibility, and universal design. (Formerly Computer Engineering 80A.)

Credits

5

Instructor

Roberto Manduchi, Sri Kurniawan

General Education Code

PE-T

Quarter offered

Fall

CSE 80L Social Data Analytics and Visualization

Course examines: social data analytics--veracity, consistency, uncertainty, volume; statistical computation--misuse, bias, dispersion, correlation, regressions, differential scales, normal distributions, factor and cluster analysis, extrapolation, inference, simple programming; visual representations--communication, critique and design of infographics; applications--environment, energy, economics, education, empowerment. (Formerly Computer Science 80L.)

Credits

5

Instructor

Suresh Lodha

General Education Code

SR

CSE 80N Introduction to Networking and the Internet

Introduction to the evolution, technological basis, and services of the Internet, with descriptions of its underlying communications structure, routing algorithms, peer-to-peer hierarchy, reliability, and packet switching. Network security, mail, multimedia and data compression issues, HTML, and digital images. Students who have completed CSE 150 cannot receive credit for this course. (Formerly Computer Engineering 80N.)

Credits

5

Instructor

Chris Parsa, Tracy Larrabee, Patrick Mantey, Chen Qian

General Education Code

PE-T

Quarter offered

Fall, Winter, Spring

CSE 80S Social Networks

Introduction to social networks and game theory. Topics include the structure of social networks; the world wide web; the flow of information and behavior through networks; and the principles behind modern web search and search-ad placement. (Formerly Computer Science 17.)

Credits

5

Instructor

Phokion Kolaitis, Lise Getoor

Requirements

Prerequisite(s): MATH 3 or MATH 11A; or AM 3 or AM 6 or AM 11A or AM 15A; or ECON 11A; or score on math placement exam of 300 or higher.

General Education Code

SR

CSE 94 Group Tutorial

Provides a means for a small group of students to study a particular topic in consultation with a faculty sponsor. Students submit petition to sponsoring agency.

Credits

5

Repeatable for credit

Yes

Quarter offered

Fall, Winter, Spring

CSE 94F Group Tutorial

Provides a means for a small group of students to study a particular topic in consultation with a faculty sponsor. Students submit petition to sponsoring agency.

Credits

2

Repeatable for credit

Yes

Quarter offered

Fall, Winter, Spring

CSE 99 Tutorial

Students submit petition to sponsoring agency.

Credits

5

Repeatable for credit

Yes

Quarter offered

Fall, Winter, Spring

CSE 99F Tutorial

Students submit petition to sponsoring agency.

Credits

2

Repeatable for credit

Yes

Quarter offered

Fall, Winter, Spring