Search by subject abbreviation, course number, title, description, or instructor name.
Class starts between these hours.
Class ends between these hours.
On campus or online.
Starts on or after.
Ends on or before.
Select all that apply. Select none to search any day.
Check this box to include classes with 0 available seats in your search.

How to register

You can register for courses online, by phone, or in person.

Admitted undergraduate students: You will register for courses during an Advising & Course Selection (ACS) appointment.

Admitted graduate students: Contact your advisor to determine which courses to take before registering for classes in MaineStreet.

Non-degree-seeking students: Call 207-780-5230 or submit a request to register.

You can register for courses online, by phone, or in person.

All students: Log in to MaineStreet to register for courses 24 hours a day during designated registration periods.

Degree-seeking students: We recommend reviewing your course selection choices with your Academic Advisor before registering.

Courses

[UMS06]

COS 160 Structured Problem Solving

An introduction to using digital computers for problem-solving and leveraging programming to explore key concepts. The content covers fundamental control structures, data representation methods, and the principles of object-oriented programming. Computational experiments will teach students how to construct reliable software, covering topics such as conditional program flow, iteration, functions and procedures, and symbolic debugging, with students applying these concepts through a series of hands-on programming projects. Prerequisites: Grade of C or better in MAT 108 or appropriate placement score. Offered Fall and Spring. Cr. 4.
Section(s):

Class Number: 22300
Credits: 4
Class Component: Lecture
Section: 0001
Dates: 5/18/2026 - 7/2/2026
Status: Open
Instructor(s): James Edward Quinlan
Enrollment: 0 of 30 seats
Location: Web/Online
Instruction Method: Online/Online
More Information
Prerequisites: Prerequisites: grade of C or better in MAT 108 or appropriate placement score
DAYS & TIMES ROOM DATES INSTRUCTOR(S)
n/a Online 5/18/2026 - 7/2/2026 James Edward Quinlan
[UMS06]

COS 161 Algorithms in Programming

The development of algorithms and their implementations in a higher-level programming language, with emphasis on proper design principles and advanced programming concepts. Introduction to the performance analysis of algorithms. Course requirements include a substantial number of programming projects. Prerequisites: grade of C or better in COS 160 or permission of instructor. Offered fall and spring Cr 4.
Section(s):

Class Number: 21125
Credits: 4
Class Component: Lecture
Section: 0001
Dates: 7/6/2026 - 8/21/2026
Status: Open
Instructor(s): Xin XZ Zhang
Enrollment: 0 of 30 seats
Location: Web/Online
Instruction Method: Online/Online
More Information
Prerequisites: Prerequisite: C or higher in COS 160
DAYS & TIMES ROOM DATES INSTRUCTOR(S)
n/a Online 7/6/2026 - 8/21/2026 Xin XZ Zhang
[UMS06]

COS 184 Python Programming

A first introduction to computer programming for solving practical problems, taught in Python, a modern object-oriented, dynamic computer language. The course teaches how to represent aggregates of data, process data selectively and repetitively, structure programs with functions and use predefined libraries with an eye towards acquiring, managing, visualizing and performing basic analysis of sets of data. Students will conduct hands-on programming, both at home and in the lab. Prerequisite: grade of C or better in MAT 108 or permission of instructor. Cr 4.
Section(s):

Class Number: 22301
Credits: 4
Class Component: Lecture
Section: 0001
Dates: 5/18/2026 - 7/2/2026
Status: Open
Instructor(s): Yuqi Song
Enrollment: 0 of 30 seats
Location: Web/Online
Instruction Method: Online/Online
More Information
Prerequisites: Prerequisite: grade of C or better in MAT 108
DAYS & TIMES ROOM DATES INSTRUCTOR(S)
n/a Online 5/18/2026 - 7/2/2026 Yuqi Song
[UMS06]

COS 470 Topics in Computer Science

Topics to be covered may include the philosophy of computers, history of computers, computers and society, simulation, graphics, and other advanced topics. Prerequisite: grade of C or better in COS 285 or permission of the instructor. Cr 3-4.
Section(s):

Mathematical Theory Behind Com

Class Number: 21209
Credits: 4
Class Component: Lecture
Section: 0001
Dates: 7/6/2026 - 8/21/2026
Status: Open
Instructor(s): Craig Tennenhouse
Enrollment: 0 of 30 seats
Location: Web/Online
Instruction Method: Online/Online
More Information
Topic: Mathematical Theory Behind Computation

This advanced course focuses on the mathematical theory behind computation. A series of artificial machines, such as finite state automata, push-down automata, and Turing machines, are studied as formal models of computers, as well as their corresponding formal languages, including regular, context -free, and unrestricted languages, Churche's Thesis, the Halting problem, and complexity classes are addressed. Prerequisites: Prerequisite: C or higher in COS 285
DAYS & TIMES ROOM DATES INSTRUCTOR(S)
n/a Online 7/6/2026 - 8/21/2026 Craig Tennenhouse
[UMS06]

COS 570 Seminar:Advanced Topics in Computer Science

Topics vary from year to year and will include current research, emerging technologies, and case studies. Prerequisites: Graduate Standing or appropriate Accelerated Graduate Pathway. Cr 3.
Section(s):

Mathematical Theory Behind Com

Class Number: 21210
Credits: 4
Class Component: Seminar
Section: 0001
Dates: 7/6/2026 - 8/21/2026
Status: Open
Instructor(s): Craig Tennenhouse
Enrollment: 0 of 30 seats
Location: Web/Online
Instruction Method: Online/Online
More Information
Topics: Mathematical Theory Behind Computation

This advanced course focuses on the mathematical theory behind computation. A series of artificial machines, such as finite state automata, push-down automata, and Turing machines, are studies as formal models of computers, as well as their corresponding formal languages, including regular, context-free, and unrestricted languages. Church's Thesis, the Halting problem, and complexity classes are addressed. Prerequisites: Prerequisites: Graduate Standing or appropriate Accelerated Graduate Pathway.
DAYS & TIMES ROOM DATES INSTRUCTOR(S)
n/a Online 7/6/2026 - 8/21/2026 Craig Tennenhouse
  • Page 1