91075 |
CMSC 116 Introduction to Computing: Semantic Web |
Robert McGrail
Lab A:
Lab B:
Lab C:
Lab D: |
M . . . . . . W . . . . . Th . . . . . F . . . . F |
10:10 - 11:30 am 10:30 - 12:30 pm 1:10 -3:10 pm 10:30 - 12:30 pm 3:30 -5:30 pm |
RKC 103 RKC 100 RKC 100 RKC 100 RKC 100 |
MATC |
Cross-listed: Cognitive Science This course is an introduction to semantically
intelligent content management for the World Wide Web. Participants in this course will construct
social networking software, similar in scope to weblogs or facebook, using an
advanced content management system.
Strong emphasis will be placed on the development of flexible
applications that efficiently store and process data and metadata. In addition to basic computer programming,
various XML technologies will be introduced and employed. Prerequisite: eligibility
for Q courses. This course has lab options.
91082 |
CMSC 131 Cognitive Science |
Rebecca Thomas Lab: |
. T . Th . . . . . F |
8:30 -9:50 am 8:00 -9:50 am |
RKC 101 RKC 107 |
SSCI |
Cross-listed:
Cognitive Science, Philosophy, Psychology
How do brains make minds? Can computers think? Is
my dog conscious? Cognitive science
assumes that the brain is some sort of computational engine, and, beginning
with that premise, attempts to find answers to such questions. This course will be taught by faculty from
biology, computer science, linguistics, philosophy, and psychology, who will
combine their different approaches to explore how humans and other intelligent
systems feel, perceive, reason, plan, and act.
In particular, the course will focus on the fundamental importance of
language, signaling, and representation at many levels, from the neural to the
organismal. Laboratories will provide
students with hands-on experience analyzing neural and behavioral data as well
as with computational modeling. Prerequisites:
pre-calculus or its equivalent and a willingness to engage a broad
variety of ideas and approaches from the natural, mathematical, and social
sciences.
91076 |
CMSC 143 Object-Oriented Programming with Robots |
Keith O'Hara |
M . W . . . . . . F |
10:10 - 11:30 am 10:30 - 12:30 pm |
RKC 107 |
MATC |
Cross-listed:
Cognitive Science This
course introduces students with prior programming experience to object-oriented
design and programming through the design and implementation of mobile robot
programs. The programs will enable the robot to move around the world, reacting
to sensors such as obstacle detectors and a color camera. Students will
learn how to move from an informal problem statement, through increasingly
precise problem
specifications, to design and implementation of a
solution. Good programming habits will be emphasized. Purchase of a small
personal robot (to be specified by the instructor) is recommended. Prerequisite: any Introduction
to Computing course, or permission of the instructor.
91077 |
CMSC 201 Data Structures |
Rebecca Thomas Lab: |
. T . Th . . . . . F |
3:10 -4:30 pm 1:30 -3:30 pm |
RKC 100 |
MATC |
This
course introduces students to essential principles of program design and
analysis that underlie applications of computation to internet communication, digital media, and artificial
intelligence. Building on basic programming skills, we will focus on the
construction of more sophisticated and reliable computer programs that employ
the most important data structures. Data structures, common ways in which
data is organized and manipulated, are an important aspect of modern programs.
Consequently, throughout the course students will learn to create and use
the most useful data structures, including files, lists, stacks, trees, and graphs. Students will write several programs,
ranging from short lab assignments to larger systems of their own design. Prerequisite: CMSC 141 or 143.
91078 |
CMSC 327 Distributed Systems |
Keith O'Hara |
M . W . . |
1:30 -2:50 pm |
RKC 100 |
|
Computing
systems are increasingly built in a networked, distributed manner. These
systems, often spanning the globe, coordinate to solve problems involving
massive amounts of data in a highly fault tolerant fashion. Students will
study the challenges introduced when extending traditional computing systems
concepts (e.g. shared state, hardware abstraction, scheduling, file systems,
timing, authentication) to a networked setting. In this course, students will
explore the different architectures, algorithms, and technologies used to
design, build, and evaluate distributed computer systems. Prerequisite: Computer Science 201 or permission of the
instructor.