apcsp midterm Flashcards
digital divide
the disparity between those with access to digital technologies and those without
-the “digital divide” refers to differing access to computing devices and the
internet, based on socioeconomic, geographic, or demographic
characteristics
crowdsourcing
the practice of obtaining input or information from a large number of people via the internet
citizen science
scientific research conducted in whole or part by distributed individuals, many of whom may not be scientists, who contribute relevant data to research using their own computing devices
creative commons
a public copyright license that enables the free distribution of an otherwise copyrighted work. this is used when the content creator wants to give others the right to share, use, and build upon the work they have created
personally identifiable information (PII)
information about an
individual that identifies, links, relates, or describes them
multifactor authentication
a method of computer access control in which a user is only granted access after successfully presenting several separate pieces of evidence to an authentication mechanism, typically in at least two of the
following categories: knowledge (something they know), possession (something they have), and inherence (something they are)
encryption
the process of encoding data to prevent unauthorized access. decryption is the process of decoding the data
computer virus
a malicious program that can copy itself and gain access to a computer in an unauthorized way; they often attach themselves to legitimate programs and start running independently on a computer
phishing
technique that attempts to trick a user into providing person information that can then be used to access sensitive online resources, such as bank accounts and emails
beneficial effects of computing
-advances in computing have generated and increased creativity in other fields, such as medicine, engineering, communications, and
the arts
-rapid sharing of a program or running a program with a large number
of users can result in significant impacts beyond the intended
purpose or control of the programmer
harmful effects of computing
-targeted advertising is used to help businesses, but it can be misused at both individual and aggregate levels.
-machine learning and data mining have enabled innovation in medicine, business, and science, but information discovered in this way has also been used to discriminate against groups of individuals
legal and ethical concerns of computing
-development of software that allows access to digital media downloads and streaming
-the development of algorithms that include bias
-the existence of computing devices that collect and analyze data by continuously monitoring activities
define a function
teach the computer a new command and explain what it should do when receiving that command
call a function
actually gives the command, so the computer will run the code for that function
decomposition
breaking your program into smaller parts
comment
a message in your code that explains what is going on
abstraction
managing complexity by taking away information and detail, in order to focus on the relevant concepts
documentation
written instruction detailing the functions, methods, and variables available and how to use them
for loops
repeats code a fixed number of time
if statement
executes nested code only if condition is true
if else statement
control structure that runs either one section of code or another depending on a test
while loop
repeat code as long as something is true
bug
a problem in the code
debugging
fixing a problem in the code
algorithim
a set of steps or rules to follow to solve a particular problem
sequencing
step by step execution of instructions in the order they are given
iteration
repetition of instructions a specified number of times, or until a condition is met
selection
using a condition to determine which part of an algorithm is executed
program
a collection of program statements that performs a specific task when run by a computer. it is often referred to as a software
program inputs
date sent to a computer for processing by a program
program outputs
data sent from a program to a device
syntax error
a mistake in the program where the rules of the programming language are not followed
logic error
a mistake in the algorithm or program that causes it to behave incorrectly or unexpectedly
computing innovations
the creation and development of new technologies, systems, or applications that improve or revolutionize the way we use computers
bias in computing
computing innovations can reflect existing human biases because of biases written into the algorithms or biases in the data used by the innovation
-biases can be embedded at all levels of software development
effective collaborative teams
emphasizes the importance of teamwork and effective communication in solving complex problems and creating computational artifacts. it involves working with others to share ideas, divide tasks, and enhance project quality through diverse perspectives
-no bias
bandwith
the capacity to transmit a fixed number of bits in a given time frame (measured in mbps)
computer network
an interconnected group of computing devices working together towards a shared goal
redundancy
a measure put in place to ensure uninterrupted network services in case of connection failures
fault tolerance
the capability to manage issues that arise within the network
computing device
a physical artifact capable of running a program
protocol
the established rules governing the connection and communication of computing devices on the internet
scalability
the ability to expand network infrastructure without the need for rewiring
sequential computing
processing data one instruction at a time
parallel computing
processing data by having multiple processors work on a task simultaneously
distributed computing
processing data by distributing tasks across multiple networks or servers
speed up time
the measurement of how much faster a task can be completed by using a parallel processing approach compared to a sequential approach
packets
units of binary information derived from digital data
fault tolerance concept
the internet is fault tolerant- it had the ability to handle issues that arise in the network
-if a server, router, or tower goes offline, there are different paths your data packets can take,
making it a reliable service.
-this redundancy makes the Internet more reliable and also helps the Internet grow to scale, accommodating new devices as they are connected to the system
the internet
the internet works by connecting networks through routers which directs packets to their intended destination, which then allows for communication with each other and the access of information
the world wide web
-a system comprising linked pages, programs, and files
-a way to share documents and information with pictures and links
-made the internet easy to use and understand for everyone, not just tech experts
-what we often think of as the “internet”
sequential, parallel, and distributed computing
sequential: operations are performed in order one at a time
distributed: multiple devices are used to run a program
parallel: operations are performed in smaller, sequential, and simultaneously
TCP, IP, HTTP
TCP/IP (transmission control protocol/internet protocol): main building blocks of the internet; they help computers find each other and make sure data gets delivered correctly
HTTP (hypertext transfer protocol): protocol for your web pages; it’s how your computer asks a web server to send a webpage so you can see it in your browser
TCP
-transmission control protocol
-breaks down the information you wish to send into packets, those packets are then forwarded across the internet, once they are received by the IP address they were sent to, their TCP reassembles the packets in correct order
IP
-internet protocol
-an IP address is a unique number given to EVERY device when it connects to the internet
HTTP
like a set of rules that computers use to communicate with each other on the web. it’s the protocol that makes the world wide web work