middCourses
Theory of Computation
CSCI 0301

Theory of Computation This course explores the nature of computation and what it means to compute. We study important models of computation (finite automata, push-down automata, and Turing machines) and investigate their fundamental computational power. We examine various problems and try to determine the computational power needed to solve them. Topics include deterministic versus non-deterministic computation, and a theoretical basis for the study of NP-completeness.

1 reviewS25
OOP & GUI Application Dev
CSCI 0318

Object-Oriented Programming and GUI Application Development In this coding-intensive course students will deepen their understanding of data structures, algorithms, and object-oriented programming concepts through development of GUI (Graphical User Interface) applications. After a brief introduction to C++ and our development environment, Qt, we will immerse ourselves in them through work on an array of application development projects. Along the way, we will be introduced to a number of software development principles and build an understanding of fundamental object-oriented concepts in C++, including classes and inheritance, templates, pointers, constructors/destructors, and ownership. (CSCI 0202 or by waiver) 3 hrs lect./disc.

2 reviewsF24
Theory of Computation
CSCI 0301

Theory of Computation This course explores the nature of computation and what it means to compute. We study important models of computation (finite automata, push-down automata, and Turing machines) and investigate their fundamental computational power. We examine various problems and try to determine the computational power needed to solve them. Topics include deterministic versus non-deterministic computation, and a theoretical basis for the study of NP-completeness.

6 reviewsS23
Math Foundations of Computing
CSCI 0200

Mathematical Foundations of Computing In this course we will provide an introduction to the mathematical foundations of computer science, with an emphasis on formal reasoning. Topics will include propositional and predicate logic, sets, functions, and relations; basic number theory; mathematical induction and other proof methods; combinatorics, probability, and recurrence relations; graph theory; and models of computation. (CSCI 0145 or CSCI 0146 or CSCI 0150)

5 reviewsF22
Theory of Computation
CSCI 0301

Theory of Computation This course explores the nature of computation and what it means to compute. We study important models of computation (finite automata, push-down automata, and Turing machines) and investigate their fundamental computational power. We examine various problems and try to determine the computational power needed to solve them. Topics include deterministic versus non-deterministic computation, and a theoretical basis for the study of NP-completeness.

5 reviewsF22
Math Foundations of Computing
CSCI 0200

Mathematical Foundations of Computing In this course we will provide an introduction to the mathematical foundations of computer science, with an emphasis on formal reasoning. Topics will include propositional and predicate logic, sets, functions, and relations; basic number theory; mathematical induction and other proof methods; combinatorics, probability, and recurrence relations; graph theory; and models of computation. (CSCI 0145 or CSCI 0146 or CSCI 0150)

0 reviewsS22
OOP & GUI Application Dev
CSCI 0318

Object-Oriented Programming and GUI Application Development In this coding-intensive course students will deepen their understanding of data structures, algorithms, and object-oriented programming concepts through development of GUI (Graphical User Interface) applications. After a brief introduction to C++ and our development environment, Qt, we will immerse ourselves in them through work on an array of application development projects. Along the way, we will be introduced to a number of software development principles and build an understanding of fundamental object-oriented concepts in C++, including classes and inheritance, templates, pointers, constructors/destructors, and ownership. (CSCI 0202 or by waiver) 3 hrs lect./disc.

0 reviewsF21
Linear Algebra
MATH 0200

Linear Algebra Matrices and systems of linear equations, the Euclidean space of three dimensions and other real vector spaces, independence and dimensions, scalar products and orthogonality, linear transformations and matrix representations, eigenvalues and similarity, determinants, the inverse of a matrix and Cramer's rule.

4 reviewsF21
Math Foundations of Computing
CSCI 0200

Mathematical Foundations of Computing In this course we will provide an introduction to the mathematical foundations of computer science, with an emphasis on formal reasoning. Topics will include propositional and predicate logic, sets, functions, and relations; basic number theory; mathematical induction and other proof methods; combinatorics, probability, and recurrence relations; graph theory; and models of computation. (CSCI 0145 or CSCI 0146 or CSCI 0150)

1 reviewS21
OOP & GUI Application Dev
CSCI 0318

Object-Oriented Programming and GUI Application Development In this coding-intensive course students will deepen their understanding of data structures, algorithms, and object-oriented programming concepts through development of GUI (Graphical User Interface) applications. After a brief introduction to C++ and our development environment, Qt, we will immerse ourselves in them through work on an array of application development projects. Along the way, we will be introduced to a number of software development principles and build an understanding of fundamental object-oriented concepts in C++, including classes and inheritance, templates, pointers, constructors/destructors, and ownership. (CSCI 0202 or by waiver) 3 hrs lect./disc.

0 reviewsS21
CSCI0301last month

Abstract course, feels like an elaborate thought experiment, but if you invest enough attention it can become interesting on a conceptual level. None of the content is difficult, but you just have to be able to visualize it. Homework is optional but recommended to understand what is happening during the lectures.

Fast-PacedFair GradingDifficult Exams
4hrs / week Average difficulty Above average value Would take again
CSCI03186 months ago

I began to think of this class as an optional lecture series instead of a class. Frank was very accommodating and reached out to us at the beginning of each week to gauge what we wanted to cover more in class, then shaped his lectures around it. The class was pretty project based - he would introduce a few topics then we would have a relevant project. Often, we would do live coding in class to begin the project, and he would give us pointers of where to go from there. He often pushed deadlines later if we requested

I began to think of this class as an optional lecture series instead of a class. Frank was very accommodating and reached out to us at the beginning of each week to gauge what we wanted to cover more in class, then shaped his lectures around it. The class was pretty project based - he would introduce a few topics then we would have a …Read more

Chill and RelaxedProject-HeavyNo Exams
3hrs / week Low difficulty Extremely high value Would take again
CSCI03187 months ago

The emphasis of this class was largely on project based assignments with a final group project. I think the professor had a hard time estimating the difficulty/time taken to complete certain assignments

Project-HeavyProject Exams
6hrs / week Some difficulty Low value Would not take again
Login to access 21 more reviews of Frank Swenton