Principles of Computing Immersion

Overview for Principles of Computing Immersion

The principles of computing immersion introduces students from interdisciplinary backgrounds (for majors outside of computing, mathematics, or informatics) to the central ideas of computing. In this immersion, you will understand how computing impacts and changes your world; establish the foundational concepts and best practices of computational thinking, use of computing technology, and data to solve real-world problems; and learn basic programming skills and develop programming techniques to solve problems, and become familiar with the effects that computing has on society and culture. This immersion is intended for students with no prior computing background as a bridge to expand their understandings of the computing domain.

Notes about this immersion:

The plan code for Principles of Computing Immersion is COMPUTE-IM.

Curriculum for 2023-2024 for Principles of Computing Immersion

Current Students: See Curriculum Requirements

Course
Required Courses
ISCH-110
Principles of Computing
This course is designed to introduce students to the central ideas of computing. Students will engage in activities that show how computing changes the world and impacts daily lives. Students will develop step-by-step written solutions to basic problems and implement their solutions using a programming language. Assignments will be completed both individually and in small teams. Students will be required to demonstrate oral and written communication skills through such assignments as short papers, homework, group discussions and debates, and development of a term paper. Computer Science majors may take this course only with department approval, and may not apply these credits toward their degree requirements. Lec/Lab 3 (Fall, Spring).
ISCH-370
Principles Of Data Science
This course builds on the principles of computing to introduce students to data analytics techniques commonly performed on digital data sets, using a variety of software tools. Students will learn what constitutes data and its associated social, ethical, and privacy concerns, common data acquisition and preparation techniques, and how to perform exploratory data analysis on real-world datasets from several domains. Common statistical and machine learning techniques, including regression, classification, clustering, and association rule mining will be covered. In addition, students will learn the importance of applying visualization for presenting and analyzing data. Students will be required to demonstrate oral and written communication skills through critical thinking homework assignments and both presenting and writing a detailed report for a project to analyze a data set of their choice. GCCIS majors may take this course only with the students’ home department approval, and may not apply these credits toward their degree requirements. (Prerequisites: CSCI-101 or ISCH-110 or equivalent course. Students in the B. Thomas Golisano College for Computing and Information Sciences are not eligible to take this class.) Lec/Lab 3 (Fall, Spring).
Electives
Choose one of the following:
   ISCH-201
   Computing, Culture, and Society
This course is designed to introduce students to the social impacts of computing technology. The course will provide a brief introduction to ethics and to the history of computing and the Internet. It will focus on a number of areas in which computers and information technology are having an impact on society including privacy, freedom of speech, intellectual property, work, distribution of wealth, algorithmic bias and the environment. Current issues that will be discussed include electronic voting, spyware, spam, and intellectual property issues associated with digital content distribution. Students will be required to demonstrate oral and written communication skills through assignments such as short papers, homework, group discussions, and debates. Computing majors may take this course only with department approval. Lecture 3 (Fall).
   IGME-386
   Spatial Algorithms and Problem Solving
This course is targeted to students with a serious interest in geographical problem solving via underlying spatial algorithms. Students will learn how to compare and contrast different specific spatial algorithms for solving specific geographic problems and develop proficiency with encoding and implementing spatial algorithms in computer programs. Students taking this course will gain a broad interdisciplinary skill set in how to think spatially and computationally through critical engagement of geographical problem solving. (This class is restricted to undergraduate students with at least 2nd year standing.) Lecture 3 (Fall).
   PUBL-363
   Cyber Security Policy and Law
Why are we still so bad at protecting computer systems? Is it because we don’t have good enough technology? Or because we lack sufficient economic incentives to implement that technology? Or because we implement technologies but then fail to use them correctly? Or because the laws governing computer security are so outdated? Or because our legal frameworks are ill-equipped to deal with an international threat landscape? All these reasons—and others— have been offered to explain why we seem to see more and more large-scale cybersecurity incidents and show no signs of getting better at preventing them. This course will examine the non-technical dimensions of this problem—the laws and other policy measures that govern computer security threats and incidents. We will focus primarily on U.S. policy but will also discuss relevant policies in the E.U. and China, as well as international tensions and norms. The central themes of the course will be the ways in which technical challenges in security can be influenced by the social, political, economic, and legal landscapes, and what it means to protect against cybersecurity threats not just by writing better code but also by writing better policies and laws. Lecture 3 (Fall, Spring).