Introduction to Data Analytics and R
Programming |
||||||||||
|
Professor:
|
Jordan Ayala |
||||||||
|
Course
Number: |
CMSC 121 |
CRN Number: |
10024 |
Class cap: |
18 |
Credits: |
4 |
||
|
Schedule/Location:
|
Tue Thurs 1:30 PM
- 2:50 PM Reem Kayden Center 107 |
||||||||
|
|
Mon 1:30 PM
- 3:30 PM Reem Kayden Center 107 |
||||||||
|
Distributional Area: |
MC Mathematics and Computing |
||||||||
|
Crosslists: Environmental Studies |
|||||||||
Data analytics, the process of analyzing, revealing,
interpreting and visualizing information concealed inside big data, is
revolutionizing daily life, as used by companies such as Amazon, Google and
Facebook, for the diagnosis of medical conditions or the way medical claims
are handled, for investment strategies and real estate pricing, and in
academia, with the analysis of historical texts, understanding the
deliberations of the Supreme Court or the European Commission, or processing
large amounts of genomics data. In this class, students will be introduced to
techniques, implemented via programming in R, to manipulate and pre-process
data into manageable forms, perform analyses from a descriptive and
predictive standpoint, and learn the basics of visualizing the result, all
with a focus on story telling through data, enhancing data literacy. |
||||||||||
Object-Oriented Programming |
||||||||||
|
Professor:
|
Theresa Law |
||||||||
|
Course
Number: |
CMSC 141 |
CRN Number: |
10025 |
Class cap: |
18 |
Credits: |
4 |
||
|
Schedule/Location:
|
Tue Thurs 10:10 AM
- 11:30 AM Reem Kayden Center 107 |
||||||||
|
|
Fri 10:00 AM
- 12:00 PM Reem Kayden Center 107 |
||||||||
|
Distributional Area: |
MC Mathematics and Computing |
||||||||
|
Crosslists: Experimental Humanities; Mind, Brain, Behavior |
|||||||||
This course introduces students to the methodologies of
object-oriented design and programming, which are used throughout the Computer
Science curriculum. Students will learn how to move from informal problem
statement, through increasingly precise problem specifications, to design and
implementation of a solution for problems drawn from areas such as graphics,
animation, simulation. Good programming and documentation habits are
emphasized. |
||||||||||
Discrete Math |
||||||||||
|
Professor:
|
Kerri-Ann Norton
|
||||||||
|
Course
Number: |
CMSC 145 |
CRN Number: |
10026 |
Class cap: |
18 |
Credits: |
4 |
||
|
Schedule/Location:
|
Tue Thurs
3:00 PM - 4:20 PM Reem Kayden Center 100 |
||||||||
|
Distributional Area: |
MC Mathematics and Computing |
||||||||
|
Crosslists: Mathematics |
|||||||||
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. |
||||||||||
Data Structures |
||||||||||
|
Professor:
|
Kerri-Ann Norton
|
||||||||
|
Course
Number: |
CMSC 201 |
CRN Number: |
10027 |
Class cap: |
18 |
Credits: |
4 |
||
|
Schedule/Location:
|
Tue Thurs 10:10 AM
- 11:30 AM Reem Kayden Center 100 |
||||||||
|
|
Fri 10:00 AM
- 12:00 PM Reem Kayden Center 100 |
||||||||
|
Distributional Area: |
MC Mathematics and Computing |
||||||||
|
Crosslists: Mind, Brain, Behavior |
|||||||||
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, or permission of the instructor. |
||||||||||
Algorithmic Bias and Data Ethics |
||||||||||
|
Professor:
|
Valerie Barr |
||||||||
|
Course
Number: |
CMSC 205 |
CRN Number: |
10028 |
Class cap: |
18 |
Credits: |
2 |
||
|
Schedule/Location:
|
Tue Thurs 10:10 AM
- 11:30 AM Reem Kayden Center 101 (March 25 –
May 20) |
||||||||
|
Distributional Area: |
MC Mathematics and Computing |
||||||||
|
Crosslists: Human Rights |
|||||||||
Increasingly, algorithms are being used to automate
decisions about many aspects of our lives. These algorithms are usually
derived by applying machine learning techniques to enormous data sets. We expect these algorithms to be fair, but
in reality they replicate many social biases.
This course will explore the existing biases of data, of programmers,
and in the decisions made as these systems are constructed. Through readings, discussion,
presentations, we will examine the
complexities of data-driven algorithmic decision making. Students who
co-enroll in BLC 220 Digital Literacies and Scholarship can count the
combination as a 4-credit elective for the Data Analytics Second Focus.
Prerequisites: CMSC 121 or CMSC 141 or CMSC 143 or permission of the instructor. |
||||||||||
Principles:Computing Systems |
||||||||||
|
Professor:
|
Sven Anderson
|
||||||||
|
Course
Number: |
CMSC 226 |
CRN Number: |
10029 |
Class cap: |
18 |
Credits: |
4 |
||
|
Schedule/Location:
|
Mon Wed 10:10 AM
- 11:30 AM Reem Kayden Center 107 |
||||||||
|
Distributional Area: |
MC Mathematics and Computing |
||||||||
|
Crosslists: Experimental Humanities |
|||||||||
This course takes a systems perspective to the study of
computers. As our programs scale up from
a single author, user, and computer to programs designed, written,
maintained, and used by multiple people that run on many computers (sometimes
at the same time), considerations beyond algorithms alone are magnified.
Design principles and engineering practices help us cope with this
complexity: version control for multiple authors, input validation for
multiple (adversarial) users, build automation tools for multiple platforms,
process and thread models for parallelism.
From how numbers are represented in hardware to how instruction-level
parallelism and speculation can lead to bugs: the design, implementation,
evaluation, safety and security of computing systems will be stressed.
Students will explore computers from the ground up, using a variety of programming
languages (including assembly) and tools like the command line, debuggers,
and version control. Pre-requisites:
Object-Oriented Programming or permission of instructor. |
||||||||||
Algorithms |
||||||||||
|
Professor: |
Sven Anderson |
||||||||
|
Course Number: |
CMSC 301 |
CRN Number: |
10030 |
Class cap: |
18 |
Credits: |
4 |
||
|
Schedule/Location: |
Mon Wed Fri 8:50 AM - 9:50 AM Reem
Kayden Center 100 |
||||||||
|
Distributional Area: |
MC Mathematics and Computing |
||||||||
|
Crosslists: Mathematics;
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 and
either CMSC 145 or Math 261. |
||||||||||
Software Development |
||||||||||
|
Professor:
|
Valerie Barr |
||||||||
|
Course
Number: |
CMSC 375 |
CRN Number: |
10031 |
Class cap: |
18 |
Credits: |
4 |
||
|
Schedule/Location:
|
Tue Thurs 1:30 PM
- 2:50 PM Reem Kayden Center 100 |
||||||||
|
Distributional Area: |
MC Mathematics and Computing |
||||||||
The building of large software systems introduces new challenges
for software development. Appropriate design decisions and programming
methodology can make a major difference in developing software that is
correct and maintainable. This course will cover strategies for the
systematic design, implementation, and testing of large software systems,
including design notations, tools, and techniques that are used to build
correct and maintainable software.
These strategies will help students improve their skills in designing,
writing, debugging, and testing software. This course is programming
intensive and will include both individual and team software development
projects. Prerequisites: CMSC 201 Data Structures |
||||||||||
Cross-losted Courses:
Topics in Music Software: Introduction
to Max/Msp |
||||||||||
|
Professor:
|
Matthew Sargent
|
||||||||
|
Course
Number: |
MUS 262 |
CRN Number: |
10497 |
Class cap: |
15 |
Credits: |
4 |
||
|
Schedule/Location:
|
Mon Wed 10:10 AM
- 11:30 AM Blum Music Center N119 |
||||||||
|
Distributional Area: |
PA Practicing Arts |
||||||||
|
Crosslists: Computer Science; Experimental Humanities |
|||||||||