CSE Summer 2024 Courses

NOTE: This listing represents our current plan for the semester in question. Course offerings and class times are occasionally subject to change for reasons beyond our control.


FULL SUMMER SESSION (5/20/2024 - 8/08/2024)

CSE 109 SYSTEMS SOFTWARE, TR 4:00-5:00 (Remote Synchronous), Professor Mark Erle

Advanced programming and data structures, including dynamic structures, memory allocation, data organization, symbol tables, hash tables, B-trees, data files. Object-oriented design and implementation of simple assemblers, loaders, interpreters, compilers, and translators. Practical methods for implementing medium-scale programs. Prerequisites: CSE 017


CSE 202 COMPUTER ORGANIZATION AND ARCHITECTURE, MW 4:00-6:50 (Remote Synchronous), Professor Jialiang Tan

Interaction between low-level computer architectural properties and high-level program behaviors: instruction set design; digital logics and assembly language; processor organization; the memory hierarchy; multicore and GPU architectures; and processor interrupt/exception models. Prerequisites: CSE 017


CSE 241 DATA BASE SYSTEMS AND APPLICATIONS (Remote Asynchronous), Professor Roberto Palmieri

Design of large databases: Integration of databases and applications using SQL and JDBC; transaction processing; performance tuning; data mining and data warehouses. Not available to students who have credit for CSE 341 or ISE 224. Prerequisites: CSE 017


CSE 298 COMPUTER SCIENCE PROJECTS, MTWR 8:00-9:45 (Remote Synchronous), Professor Stephen Urban

Project-based learning through independent or small-group projects related to computer systems and/or applications. Students will progress through the software development lifecycle, including high-level design, functional and non-functional requirements, implementation, testing, and maintenance. One large group meeting per week, where students serve as consultants to each other as they present their progress. Prerequisites: CSE 017 and CSE 216


SUMMER SESSION I (5/20/2024 - 6/29/2024)

CSE 003 INTRODUCTION TO PROGRAMMING, PART A, MTWR 10:00-11:35 (Remote Synchronous), Professor Kallie Ziltz

Covers the same material as the first half of CSE 007. No prior programming experience needed. Cannot be taken by students who have completed CSE 007.


CSE 017 PROGRAMMING AND DATA STRUCTURES, MTWR 10:00-11:35 (Remote Synchronous), Professor Stephen Urban

Design and implementation of algorithms and data structures using Java. Assumes that students have prior experience using conditional statements, loops, arrays, and object-oriented programming in Java. Algorithmic techniques such as recursion, algorithm analysis, and sorting. Design and implementation of data structures such as lists, queues, stacks, trees, and hash tables. Prerequisites:  CSE 004 or CSE 007 or (CSE 002 and (CSE 001 or CSE 012 or ENGR 010)).


CSE 140 FOUNDATIONS OF DISCRETE STRUCTURES AND ALGORITHMS, MTWR 8:00-9:35 (Remote Synchronous), Professor Stephen Thomas

Basic representations used in algorithms: propositional and predicate logic, set operations and functions, relations and their representations, matrices and their representations, graphs and their representations, trees and their representations. Basic formalizations for proving algorithm correctness: logical consequences, induction, structural induction. Basic formalizations for algorithm analysis: counting, pigeonhole principle, permutations. Prerequisites: (MATH 021 or MATH 031 or MATH 051 or MATH 076) and CSE 017. CSE 017 can be taken concurrently.


CSE 252 COMPUTERS, THE INTERNET, AND SOCIETY, STUDY ABROAD

An interactive exploration of the current and future role of computers, the Internet, and related technologies in changing the standard of living, work environments, society and its ethical values. Privacy, security, depersonalization, responsibility, and professional ethics; the role of computer and Internet technologies in changing education, business modalities, collaboration mechanisms, and everyday life. Study Abroad Only-Lehigh in Barcelona


CSE 271 PROGRAMMING IN LINUX AND WINDOWS OPERATING SYSTEMS (Remote Asynchronous), Professor Mark Erle

Students learn Linux and Windows operating system fundamentals, including features, history, organization, process management, and file systems. Tools commonly available with these operating systems, such as those for program development, text processing, scheduling jobs, and communications, are also explored. Emphasis is placed on learning the BASh and PowerShell scripting languages, and students should expect to work on a variety of small programming assignments. Prerequisites: CSE 017


SUMMER SESSION II (7/01/2024 - 8/8/2024)

CSE 004 INTRODUCTION TO PROGRAMMING, PART B, MTWR 10:00-11:35 (Remote Synchronous), Professor Kallie Ziltz

Covers the same material as the second half of CSE 007. Cannot be taken by students who have completed CSE 007.


CSE 198 PYTHON FOR COMPUTER SCIENTISTS (Remote Asynchronous), Professor Masoud Yari

This course focuses on advanced data science and computing problems, concepts, and methodologies using scripting programming languages, such as Python. It provides students with a deep understanding of the language's capabilities in the context of computer science research and development. Prerequisites: MATH 021 and CSE 007 and/or CSE 017


CSE 262 PROGRAMMING LANGUAGES (Remote Asynchronous), Professor Corey Montella

Use, structure and implementation of several programming languages. Prerequisites: CSE 017


CSE 398 COMPUTING FOR AI/ML AND SIMULATION, MTWR 8:00-9:35 (Remote Synchronous), Professor Stephen Thomas

Prerequisites: (MATH 205 or MATH 241 or MATH 242 or STAT 342) and CSE 140 and CSE 202