Summer Term Schedule
Summer 2023
Number  Title  Instructor  Time 

CSC 161S1
Arthur Roolfs
TWRF 5:00PM  6:35PM


Handson introduction to programming using the Python programming language. Covers basic programming constructs including statements, expressions, variables, conditionals, iteration, and functions, as well as objectoriented programming and graphics. This course is for nonmajors, and/or students with less math and science background. Lab and Workshop component included in course section.


CSC 1621
Andrea Cogliati
MWF 9:00AM  11:50AM


Computers are universal tools to store and process information. The storage part is organized as data structures; the processing part is captured as algorithms. Together, these form the heart of every computer application (in science, government, business, and the arts), on every kind of information (pictures, numbers, sound, and text). We will study the most fundamental data structures and algorithms as a means of using computers more effectively, and as preparation for more advanced study in CS and related fields. Prerequisites: CSC 161 & MATH 150 (or equivalent.) COURSE WILL BE OFFERED ONLINE ONLY.


CSC 1711
Thaddeus Pawlicki
–


Handson introduction to programming using the Java programming language. Teaches fundamentals of programming and more advanced topics. Emphasizes algorithmic thinking and computational problem solving and provides an introduction to the concepts and methods used in Computer Science. Required for all CSC majors. NOTE: Students must register for the lecture, lab, and workshop sections. This course is oﬀered as a fully online, asynchronous course.


CSC 1712
Thaddeus Pawlicki
–


Handson introduction to programming using the Java programming language. Teaches fundamentals of programming and more advanced topics. Emphasizes algorithmic thinking and computational problem solving and provides an introduction to the concepts and methods used in Computer Science. Required for all CSC majors. NOTE: Students must register for the lecture, lab, and workshop sections. This course is oﬀered as a fully online, asynchronous course.


CSC 1713
Thaddeus Pawlicki
–


Handson introduction to programming using the Java programming language. Teaches fundamentals of programming and more advanced topics. Emphasizes algorithmic thinking and computational problem solving and provides an introduction to the concepts and methods used in Computer Science. Required for all CSC majors. NOTE: Students must register for the lecture, lab, and workshop sections. This course is oﬀered as a fully online, asynchronous course.


CSC 1721
Thaddeus Pawlicki
–


This course is oﬀered as a fully online, asynchronous course. Abstract data types (e.g., sets, mappings, and graphs) and their implementation as concrete data structures in Java. Analysis of the running times of programs operating on such data structures, and basic techniques for program design, analysis, and proof of correctness (e.g., induction and recursion). PREREQUISITES: CSC 171 (Or, any introductory programming course) and MATH 150 (any introductory Discrete Mathematics course) NOTE: Students must register for the lecture, lab, and workshop sections.


CSC 1722
Thaddeus Pawlicki
–


This course is oﬀered as a fully online, asynchronous course. Abstract data types (e.g., sets, mappings, and graphs) and their implementation as concrete data structures in Java. Analysis of the running times of programs operating on such data structures, and basic techniques for program design, analysis, and proof of correctness (e.g., induction and recursion). PREREQUISITES: CSC 171 (Or, any introductory programming course) and MTH 150 (any introductory Discrete Mathematics course) NOTE: Students must register for the lecture, lab, and workshop sections.


CSC 1723
Thaddeus Pawlicki
–


This course is oﬀered as a fully online, asynchronous course. Abstract data types (e.g., sets, mappings, and graphs) and their implementation as concrete data structures in Java. Analysis of the running times of programs operating on such data structures, and basic techniques for program design, analysis, and proof of correctness (e.g., induction and recursion). PREREQUISITES: CSC 171 (Or, any introductory programming course) and MTH 150 (any introductory Discrete Mathematics course) NOTE: Students must register for the lecture, lab, and workshop sections.


CSC 2141
Arthur Roolfs
TWRF 5:00PM  6:35PM


Coursework covers user application and interface design with SwiftUI and the Swift computer language, functional algorithms for mobile devices (iOS), objectoriented design, MVVM, data persistence and concurrency. Other topics include: objectoriented database API, animation, webservices and performance considerations PREREQUISITES: CSC 172, Competent objectoriented programming skills


CSC 2611
Eustrat Zhupa
–


This course presents the fundamental concepts of database design and use. It provides a study of data models, data description languages, and query facilities including relational algebra and SQL, data normalization, transactions and their properties, physical data organization and indexing, security issues and object databases. It also looks at the new trends in databases. The knowledge of the above topics will be applied in the design and implementation of a database application using a target database management system as part of a semesterlong group project. PREREQUISITES: CSC 172 required, CSC 173 and CSC 252 recommended. Students must have knowledge of at least one programming language. Familiarity with definition and implementation of data structures, main sorting algorithms, complexity of programs is also required.


CSC 2621
Joseph Ciminelli
–


This course will cover foundational concepts in descriptive analyses, probability, and statistical inference. Topics to be covered include data exploration through descriptive statistics (with a heavy emphasis on using R for such analyses), elementary probability, diagnostic testing, combinatorics, random variables, elementary distribution theory, statistical inference, and statistical modeling. The inference portion of the course will focus on building and applying hypothesis tests and confidence intervals for population means, proportions, variances, and correlations. Nonparametric alternatives will also be introduced. The modeling portion of the course will include ANOVA, and simple and multiple regression and their respective computational methods. Students will be introduced to the R statistical computing environment. This course is FULLY ONLINE and ASYNCHRONOUS.


CSC 273W2
Joseph Loporcaro
–


This course is oﬀered as a fully online, asynchronous course. In this course, students prepare, critique, and discuss written materials relevant to Computer Science. Will count as one of the two upper level writing requirements for Computer Science majors. If the course is closed, DO NOT email the professor.


CSC 2801
Michael Chavrimootoo
MTWF 2:00PM  3:35PM


Students will gain an understanding of fundamental computer models and their computational limitations. Topics comprise: finitestate machines, the contextfree languages, pumping lemmas, Turing machines, decidable and Turingrecognizable languages, undecidability, NPcompleteness. Online version is available for remote learners. PREREQUISITES: CSC 173 OR Basic familiarity with finite automata (including the equivalence between DFAs, NFAs, and regular expressions), contextfree languages (and contextfree grammars), and Turing machines. and MATH 150 OR Discrete Mathematics course Students MUST register for the recitation when registering for this course.


CSC 2802
Michael Chavrimootoo
T 4:30PM  6:00PM


Students will gain an understanding of fundamental computer models and their computational limitations. Topics comprise: finitestate machines, the contextfree languages, pumping lemmas, Turing machines, decidable and Turingrecognizable languages, undecidability, NPcompleteness. PREREQUISITES: (CSC 173 and MATH 150) OR Mathematical Maturity (discrete math). Students MUST register for both the lecture section and the recitation section when registering for this course.


CSC 2821
Michael Chavrimootoo
MTWF 2:00PM  3:35PM


How does one design programs and ascertain their efficiency? Greedy algorithms, dynamic programming, divideandconquer techniques, string processing, graph algorithms, mathematical algorithms. Introduction to NPcompleteness and linear programming. Online version available for remote learners. PREREQUISITES: (CSC 172 and MATH 150) OR MATH 172 OR Mathematical Maturity (experience with discrete math, proofs). Students MUST register for the recitation when registering for this course.


CSC 2822
Michael Chavrimootoo
T 4:30PM  6:00PM


How does one design programs and ascertain their efficiency? Greedy algorithms, dynamic programming, divideandconquer techniques, string processing, graph algorithms, mathematical algorithms. Introduction to NPcompleteness and linear programming. PREREQUISITES: (CSC 172 and MATH 150) OR MATH 172 OR Mathematical Maturity (experience with discrete math, proofs). Students MUST register for both the lecture and the recitation sections when registering for this course.


CSC 2991
Joseph Loporcaro
–


Computers and the Internet, perhaps more than any other technology, have transformed society over the past 50 years. In developed nations, at least, they have enabled dramatic increases in human productivity; an explosion of options for news, entertainment, and communication; and fundamental breakthroughs in almost every branch of science and engineering. At the same time, they have contributed to unprecedented threats to privacy; whole new categories of crime and antisocial behavior; major disruptions in the job market; and the largescale concentration of risk into systems capable of catastrophic failure. In this discussion and writingoriented class, we will consider all of this and more, with the goal of better understanding how to shape technological change in ways that maximize the benefits and minimize the costs. CSC 299 can be taken as a ULW or not. This course is oﬀered as a fully online, asynchronous course.


CSC 299W1
Joseph Loporcaro
–


Computers and the Internet, perhaps more than any other technology, have transformed society over the past 50 years. In developed nations, at least, they have enabled dramatic increases in human productivity; an explosion of options for news, entertainment, and communication; and fundamental breakthroughs in almost every branch of science and engineering. At the same time, they have contributed to unprecedented threats to privacy; whole new categories of crime and antisocial behavior; major disruptions in the job market; and the largescale concentration of risk into systems capable of catastrophic failure. In this discussion and writingoriented class, we will consider all of this and more, with the goal of better understanding how to shape technological change in ways that maximize the benefits and minimize the costs. CSC 299 can be taken as a ULW or not. This course is oﬀered as a fully online, asynchronous course.

Summer 2023
Number  Title  Instructor  Time 

Monday, Tuesday, Wednesday, and Friday  
CSC 2801
Michael Chavrimootoo
MTWF 2:00PM  3:35PM


Students will gain an understanding of fundamental computer models and their computational limitations. Topics comprise: finitestate machines, the contextfree languages, pumping lemmas, Turing machines, decidable and Turingrecognizable languages, undecidability, NPcompleteness. Online version is available for remote learners. PREREQUISITES: CSC 173 OR Basic familiarity with finite automata (including the equivalence between DFAs, NFAs, and regular expressions), contextfree languages (and contextfree grammars), and Turing machines. and MATH 150 OR Discrete Mathematics course Students MUST register for the recitation when registering for this course.


CSC 2821
Michael Chavrimootoo
MTWF 2:00PM  3:35PM


How does one design programs and ascertain their efficiency? Greedy algorithms, dynamic programming, divideandconquer techniques, string processing, graph algorithms, mathematical algorithms. Introduction to NPcompleteness and linear programming. Online version available for remote learners. PREREQUISITES: (CSC 172 and MATH 150) OR MATH 172 OR Mathematical Maturity (experience with discrete math, proofs). Students MUST register for the recitation when registering for this course.


Monday, Wednesday, and Friday  
CSC 1621
Andrea Cogliati
MWF 9:00AM  11:50AM


Computers are universal tools to store and process information. The storage part is organized as data structures; the processing part is captured as algorithms. Together, these form the heart of every computer application (in science, government, business, and the arts), on every kind of information (pictures, numbers, sound, and text). We will study the most fundamental data structures and algorithms as a means of using computers more effectively, and as preparation for more advanced study in CS and related fields. Prerequisites: CSC 161 & MATH 150 (or equivalent.) COURSE WILL BE OFFERED ONLINE ONLY.


Tuesday  
CSC 2802
Michael Chavrimootoo
T 4:30PM  6:00PM


Students will gain an understanding of fundamental computer models and their computational limitations. Topics comprise: finitestate machines, the contextfree languages, pumping lemmas, Turing machines, decidable and Turingrecognizable languages, undecidability, NPcompleteness. PREREQUISITES: (CSC 173 and MATH 150) OR Mathematical Maturity (discrete math). Students MUST register for both the lecture section and the recitation section when registering for this course.


CSC 2822
Michael Chavrimootoo
T 4:30PM  6:00PM


How does one design programs and ascertain their efficiency? Greedy algorithms, dynamic programming, divideandconquer techniques, string processing, graph algorithms, mathematical algorithms. Introduction to NPcompleteness and linear programming. PREREQUISITES: (CSC 172 and MATH 150) OR MATH 172 OR Mathematical Maturity (experience with discrete math, proofs). Students MUST register for both the lecture and the recitation sections when registering for this course.


Tuesday, Wednesday, Thursday, and Friday  
CSC 161S1
Arthur Roolfs
TWRF 5:00PM  6:35PM


Handson introduction to programming using the Python programming language. Covers basic programming constructs including statements, expressions, variables, conditionals, iteration, and functions, as well as objectoriented programming and graphics. This course is for nonmajors, and/or students with less math and science background. Lab and Workshop component included in course section.


CSC 2141
Arthur Roolfs
TWRF 5:00PM  6:35PM


Coursework covers user application and interface design with SwiftUI and the Swift computer language, functional algorithms for mobile devices (iOS), objectoriented design, MVVM, data persistence and concurrency. Other topics include: objectoriented database API, animation, webservices and performance considerations PREREQUISITES: CSC 172, Competent objectoriented programming skills
