Jeremy Brown
Senior Lecturer
Department of Computer Science
Golisano College of Computing and Information Sciences
585-475-4523
Office Location
Office Mailing Address
Computer Science Depr 102 Lomb Memorial Dr Rochester, NY 14623
Jeremy Brown
Senior Lecturer
Department of Computer Science
Golisano College of Computing and Information Sciences
Education
BS in Computer Science, RIT; MS in Information Technology Management, Florida Institute of Technology
585-475-4523
Areas of Expertise
Computer networks
Databases (relational and noSQL)
Operating systems
Computer languages
Computer Science education
Currently Teaching
CSCI-251
Concepts of Parallel and Distributed Systems
3 Credits
This course is an introduction to the organization and programming of systems comprising multiple computers. Topics include the organization of multi-core computers, parallel computer clusters, computing grids, client-server systems, and peer-to-peer systems; computer networks and network protocols; network security; multi-threaded programming; and network programming. Programming projects will be required.
CSCI-320
Principles of Data Management
3 Credits
This course provides a broad introduction to the principles and practice of modern data management, with an emphasis on the relational database model. Topics in relational database systems include data modeling; the relational model; relational algebra; Structured Query Language (SQL); and data quality, transactions, integrity and security. Students will also learn approaches to building relational database application programs. Additional topics include object-oriented and object-relational databases; semi-structured databases (such as XML); and information retrieval. A database project is required.
CSCI-351
Data Communications and Networks
3 Credits
This course is an in-depth study of data communications and networks. The course covers design of, and algorithms and protocols used in, the physical, data link, network, transport, and application layers in the Internet; methods for modeling and analyzing networks, including graphs, graph algorithms, and discrete event simulation; and an introduction to network science. Programming projects will be required.
CSCI-420
Principles of Data Mining
3 Credits
This course provides an introduction to the major concepts and techniques used in data mining of large databases. Topics include the knowledge discovery process; data exploration and cleaning; data mining algorithms; and ethical issues underlying data preparation and mining. Data mining projects, presentations, and a term paper are required.
CSCI-472
Historical & Current Perspectives in Computer Science
3 Credits
Students who have a background in Computer Science theories, algorithms, and data structures will be provided a look at the history of Computer Science from historical and current perspectives. Topics include an early history of Computer Science, a study of the people who shaped Computer Science, and a discussion of major milestones in Computer Science. Additionally, students will study current issues in Computer Science, including legal, ethical, diversity, equity, inclusion, accessibility and privacy issues, and how past issues affect modern designs and decision making by computer scientists. Students will be required to work in teams on several assignments. Papers, presentations, and oral presentations are required. Students cannot take and receive credit for this course if they have credit for CSCI-471.
CSCI-541
Programming Skills
3 Credits
The goal of this course is to introduce the students to a programming paradigm and an appropriate programming language chosen from those that are currently important or that show high promise of becoming important. A significant portion of the learning curve occurs through programming assignments with exemplary solutions discussed later in class. The instructor will post specifics prior to registration. With the approval of the program coordinator, the course can be taken for credit more than once, provided each instance deals with a different paradigm and language.
CSCI-641
Advanced Programming Skills
3 Credits
The goal of this course is to introduce the students to a programming paradigm and an appropriate programming language chosen from those that are currently important or that show high promise of becoming important. A significant portion of the learning curve occurs through programming assignments with exemplary solutions discussed later in class. The instructor will post specifics prior to registration. With the approval of the program coordinator, the course can be taken for credit more than once, provided each instance deals with a different paradigm and language. A term project involving independent investigation is also required. Note: students who complete CSCI-541 may not take CSCI-641 for credit.
In the News
-
October 11, 2022
RIT faculty prepare to teach large classes in SHED using scaled-up classroom
A room in Slaughter Hall seats 150 students and is meant to simulate the learning spaces in the Student Hall for Exploration and Development (SHED) that will hold classes next fall. The Slaughter classroom, dubbed the “betaSHED,” combines three rooms to give professors and students a preview of the large-scale learning environment.