Reading/Writing/Teaching

Students, as part of the work of the course, each week will tutor or lead discussions among a small group of students at Holyoke High School. The readings for the course will be essays, poems, autobiographies, and stories in which education and teaching figure centrally. Among these will be materials that focus directly on Holyoke and on one or another of the ethnic groups which have shaped its history. Students will write weekly and variously: critical essays, journal entries, ethnographies, etc.

Having Arguments

Using a variety of texts–novels, essays, short stories–this course will work to develop the reading and writing of difficult prose, paying particular attention to the kinds of evidence and authority, logic and structure that produce strong  arguments.  The authors we study may include Peter Singer, Aravind Adiga, Willa Cather, Toni Morrison, George Orwell, Charles Johnson, James Baldwin, Alice Munro, William Carlos Williams.  This is an intensive writing course.  Frequent short papers will be assigned.

Having Arguments

Using a variety of texts–novels, essays, short stories–this course will work to develop the reading and writing of difficult prose, paying particular attention to the kinds of evidence and authority, logic and structure that produce strong  arguments.  The authors we study may include Peter Singer, Aravind Adiga, Willa Cather, Toni Morrison, George Orwell, Charles Johnson, James Baldwin, Alice Munro, William Carlos Williams.  This is an intensive writing course.  Frequent short papers will be assigned.

Seminar in Computer Sci

The topic changes from year to year.  The topic for fall 2012 is "Combinatorial Optimization Algorithms."  We will examine algorithms for a range of optimization problems, including linear programming, matching, computation of network flows, and integer programming.  Many of the algorithms are both surprising and efficient. Topics will include the simplex algorithm, duality, primal-dual algorithms, and cutting-plane algorithms.

Requisite: COSC 121 and 201.  Fall semester.  Professor L. McGeoch.

Data Struct & Algorithms II

This course continues the exploration of data structures and algorithms that is begun in COSC 201. Topics include balanced search trees, amortized algorithms, graph data structures and algorithms, greedy algorithms, dynamic programming algorithms, NP completeness, and case studies in algorithm design.

Requisite: COSC 112 and 201. Fall semester.  Professor L. McGeoch.

Program Lang Paradigms

The main purpose of a programming language is to provide a natural way to express algorithms and computational structures. The meaning of “natural” here is controversial and has produced several distinct language paradigms; furthermore the languages themselves have shaped our understanding of the nature of computation and of human thought processes. We will explore some of these paradigms and discuss the major ideas underlying language design. Several languages will be introduced to illustrate ideas developed in the course.

Computer Systems I

This course will provide an introduction to computer systems, stressing how computers work. Beginning with Boolean logic and the design of combinational and sequential circuits, the course will discuss the design of computer hardware components, microprocessing and the interpretation of machine instructions, assembly languages, and basic machine architecture. The course will also introduce operating systems topics, basic memory management, and topics in network communication.

Intro Comp Science II

A continuation of COSC 111. This course will emphasize more complicated problems and their algorithmic solutions. The object-oriented programming paradigm will be discussed in detail, including data abstraction, inheritance and polymorphism. Other topics will include linked lists and trees and the use of finite-state machines in algorithm design. A laboratory section will meet once a week to give students practice with programming constructs. Two class hours and one one-hour laboratory per week.

Intro Computer Science I

This course introduces ideas and techniques that are fundamental to computer science. The course emphasizes procedural abstraction, algorithmic methods, and structured design techniques. Students will gain a working knowledge of a block-structured programming language and will use the language to solve a variety of problems illustrating ideas in computer science. A selection of other elementary topics will be presented, for example: the historical development of computers, comparison and evaluation of programming languages, and artificial intelligence.

Subscribe to