12294

CMSC 116   Intro to  Computing: Semantic Web

Robert McGrail

                 LAB:

. T . . .

. . . Th .

10:10 - 11:30 am

10:30 - 12:30 pm

RKC 100

RKC 100

MATC

This course is an introduction to content deployment for the World Wide Web.  Participants in this course will construct social networking software, similar in scope to blogs or FaceBook, using a dynamic web programming 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: Passing score on Part I of the Mathematics Diagnostic.  Class size: 15

 

12297

CMSC 117   Intro to Computing: Interactive

Keith O'Hara

M . W . .

3:10 -4:30 pm

RKC 100

MATC

This course introduces students to computing through the construction of interactive computing systems. Students will explore computing by programming graphics, perception, and robotics systems; learning how computers can manipulate the physical world as well as calculate in the virtual world.  Programming projects include creating 2D and 3D pieces of art, automatically analyzing photos and video from digital cameras, and making machines walk and talk. No prior knowledge of computer programming is required. Prerequisite: passing score on part 1 of the Mathematics Diagnostics. Class size: 20

 

12606

CMSC 143   Object Oriented Programming

With Robots

Keith O'Hara

                    LAB:

M . W .

. . . . F.

10:10 - 11:30 am

10:30 - 12:30 pm

RKC 107

RKC 107

MATC

Cross-listed:  Mind, Brain & Behavior   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.  Class size: 20

 

12292

CMSC 145   Discrete Math

Sven Anderson

. T . Th .

10:10 - 11:30 am

RKC 101

MATC

Discrete mathematics includes those areas of mathematics that are essential to computer science, information theory, combinatorics, and genetics.  This course emphasizes creative problem solving, linking language to logic, and learning to read and write proofs.  The topics covered include propositional logic, predicate logic, inductive proof, sets, relations, functions, introductory combinatorics and discrete probability.  Applications drawn from computation will motivate most topics.  Prerequisite: Mathematics 141 or programming experience. Class size: 20

 

12298

CMSC 201   Data Structures

Rebecca Thomas

                       LAB:

M . W . .

. . . . F

10:10 - 11:30 am

10:10 - 12:10 pm

RKC 100

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.  Class size: 20

 

12295

CMSC 301   Algorithms

Robert McGrail

. T . Th .

1:30 -2:50 pm

RKC 100

MATC

Cross-listed:  Mind, Brain & Behavior  The course discusses design and analysis of correct and efficient computer algorithms. Topics include sorting, greedy algorithms, divide-and-conquer algorithms, dynamic programming algorithms, and graph algorithms. Advanced topics in algorithms may be selected from specialized areas of the mathematical and empirical sciences. Prerequisites: CMSC 201, MATH 141, and Discrete Mathematics (CMSC 145/235/242).  Students may substitute MATH 231 for Discrete Mathematics.  Class size: 20

 

12299

CMSC 308   Seminar: Cognitive Science Research

Rebecca Thomas

. . W . .

6:30 -8:00 pm

RKC 101

MATC

2 credits This seminar, required of all juniors and seniors in Mind, Brain, and Behavior/Cognitive Science, explores the primary literature relevant to a particular question about cognition. Students are responsible for selecting papers, presenting material, and leading discussion. Prerequisite: Moderated status or permission of the instructor.  Class size: 20

 

12293

CMSC 326   Operating Systems

Sven Anderson

                       LAB:

M . . . F

. . W . .

1:30 -2:50 pm

1:30 -3:30 pm

RKC 107

RKC 107

MATC

Cross-listed: Mind, Brain & Behavior  Covers traditional topics of operating systems, including interprocess communication, semaphores, monitors, scheduling algorithms, deadlocks, virtual memory, and file system design. In addition, discussion may include issues in distributed systems such as the client-server model, remote procedure call, distributed synchronization, transactions, threads, and file servers. Prerequisite:  CMSC 201.  Class size: 20