College Board: AP Classroom Notes
Q: What does effective collaboration in computing innovation reflect?
A: It reflects the diversity of talents and perspectives of those who designed it.
Q: How does collaboration with diverse perspectives benefit computing innovation?
A: It helps avoid bias in the development of computing innovations.
Q: What are key aspects of computing innovation development?
A: Consultation and communication.
Q: What interpersonal skills are learned through collaboration?
A: Communication, consensus building, conflict resolution, and negotiation.
Q: How do online tools support collaboration?
A: They allow programmers to share and provide feedback.
Q: What is pair programming?
A: A collaboration method where one programmer (driver) writes the code while the other (navigator) reviews it.
Q: What is Think-Pair-Share?
A: A collaboration method where individuals think through a problem alone, pair up to discuss, and then share with a larger group.
Q: Why is documentation important in collaboration?
A: It facilitates communication between partners and acknowledges contributions.
Q: What is a computing innovation?
A: It includes a program as an integral part of its function and can be physical, nonphysical software, or a nonphysical concept.
1.2: Program Function and Purpose
Q: What is the purpose of computing innovations?
A: To solve problems or pursue interests through creative expression.
Q: Why is understanding the purpose of a computing innovation important?
A: It enables better development of the innovation.
Q: What are the three main categories of computing innovations?
A: Applications, physical devices, and systems.
Q: How can a program be described?
A: Vaguely (its function) or in detail (its function and how it achieves it).
Q: What is event-driven programming?
A: A programming style where statements execute when triggered rather than in sequential order.
Q: What is a program?
A: A collection of program statements that perform a specific task when run by a computer.
Q: What is a code segment?
A: A collection of program statements that is part of a program.
Q: What describes the behavior of a program?
A: How it functions during execution, often based on user interaction.
Q: What is program input?
A: Data sent to a computer for processing by a program, which affects the output.
Q: What are examples of program input?
A: Tactile, audio, visual, and text inputs.
Q: Where does program input come from?
A: A user or other programs.
Q: What is an event in computing?
A: An action that supplies input data to a program and affects execution flow.
Q: What are examples of events in computing?
A: Key presses, mouse clicks, program starts, or other defined actions.
Q: What is program output?
A: Any data sent from a program to a device.
Q: What determines a program's output?
A: The program input or its prior state.
1.3: Program Design and Development
Q: What are the two approaches to a development process?
A: Ordered and intentional or exploratory (curiosity vs. order).
Q: What are the phases of development?
A: Investigating and reflecting, designing, prototyping, and testing.
Q: Why is investigation important in program design?
A: It helps determine requirements and identify constraints.
Q: What are examples of investigation methods?
A: Surveys, user testing, interviews, and direct observation.
Q: What occurs in the design phase?
A: Brainstorming, planning, storyboarding, organizing modules, creating UI diagrams, and developing a testing strategy.
Q: Why is programming documentation important?
A: It helps in developing and maintaining correct programs in individual and collaborative environments.
Q: Do all programming environments support comments?
A: No, not all programming environments support comments.
Q: How should code segments developed collaboratively be acknowledged?
A: With program documentation that includes the origin and author’s name.
Q: What is an iterative development process?
A: A process that involves refinement and revision based on feedback, testing, or reflection.
Q: What is an incremental development process?
A: A process that breaks the problem into smaller parts, ensuring each works before combining them.
Q: What is the purpose of investigation in development?
A: To understand and identify user requirements.
Q: What are program requirements?
A: They describe the function of a program and user interactions.
Q: What is a program specification?
A: A definition of the requirements for the program.
Q: What is the design phase in a development process?
A: It outlines how to accomplish the program specification.
Q: What is program documentation?
A: A written description of the function and development of a program, event, or procedure.
Q: What are comments in programming?
A: A form of program documentation meant for humans that do not affect execution.
1.4: Identifying and Correcting Errors
Q: What are effective ways to solve programming errors?
A: Test cases, hand tracing, visualization, debuggers, and extra output statements.
Q: What should defined inputs demonstrate when testing a program?
A: Different expected outcomes with a range of input magnitudes.
Q: Why are program requirements important in testing?
A: They help identify appropriate test inputs.
Q: What is a logic error?
A: A mistake in the algorithm or program that causes unexpected behavior.
Q: What is a syntax error?
A: A mistake in the program where the rules of the programming language are not followed.
Q: What is a run-time error?
A: A mistake in the program that occurs during execution.
Q: What determines run-time errors?
A: The programming language being used.
Q: What is an overflow error?
A: An error that occurs when a number is outside the defined range of values.
Q: What is the purpose of testing in the development process?
A: To ensure an algorithm or program produces the expected outcome and allows for revision and reflection.
Big Idea 2
Q1: What does a computer use to represent data differently internally and externally for the user? A1: A computer represents data differently through internal processing mechanisms and external displays or outputs, often using abstraction to simplify data for human understanding.
Q2: What is the role of programs in data representation? A2: Programs translate data into a form that is more easily understood by people, allowing them to interpret and interact with the data.
Q3: How can data values be stored in a computer system? A3: Data values can be stored in variables, lists, or constants and passed as input to procedures for processing.
Q4: What is the lowest-level unit of data in computing devices? A4: The lowest-level unit of data in computing devices is a bit (binary digit), which can be either 0 or 1.
Q5: How are bits grouped to represent abstractions like numbers and characters? A5: Bits are grouped together to form higher-level abstractions like numbers, characters, and colors, with each group representing different types of data.
Q6: What is the purpose of digital data? A6: The purpose of digital data is to approximate real-world analog data, serving as an abstraction of continuous values.
Q7: What limitation is associated with representing integers in a computer? A7: Integers are represented by a fixed number of bits, which limits their range of values and can cause overflow or errors during mathematical operations.
Q8: What happens when the size of possible integers is not limited? A8: When integer sizes are not limited, round-off and similar errors may occur, leading to approximations of specific numbers.
Q9: What are number bases used in data representation? A9: Binary (base 2) and decimal (base 10) are the number bases used to represent data in computers.
Q10: What is a bit? A10: A bit (binary digit) is the smallest unit of data, represented by either a 0 or a 1.
Q11: What is a byte? A11: A byte is a group of 8 bits used to represent data.
Q12: What is abstraction in the context of data? A12: Abstraction is the process of reducing complexity by focusing on essential details and ignoring irrelevant ones.
Q13: What is analog data? A13: Analog data refers to values that change smoothly over time, such as pitch, volume, or colors.
Q14: What is the sampling technique? A14: The sampling technique measures values of an analog signal at regular intervals to approximate the original data in digital form.
Q15: What are samples in digital data processing? A15: Samples are the values of an analog signal at regular intervals, which are used to approximate the original continuous data.
Chapter 2.2: Data Compression
Q1: Does fewer bits always mean less information in data compression? A1: No, fewer bits do not necessarily mean less information. It depends on the redundancy of the original data and the compression algorithm applied.
Q2: What is the difference between lossy and lossless data compression? A2: Lossless compression reduces data size without losing any information, while lossy compression sacrifices some data quality for greater size reduction.
Q3: When is lossless data compression preferred? A3: Lossless compression is preferred when it is essential to preserve the original quality and accuracy of the data.
Q4: When is lossy data compression preferred? A4: Lossy compression is preferred when minimizing data size or ensuring faster transmission is more important than maintaining perfect data quality.
Q5: What is data compression? A5: Data compression is the process of reducing the size (number of bits) of data stored or transmitted without significantly losing important information.
Q6: What is a lossless data compression algorithm? A6: A lossless data compression algorithm reduces the size of data while guaranteeing the complete preservation of the original data.
Q7: What is a lossy data compression algorithm? A7: A lossy data compression algorithm reduces the size of data but only allows for the reconstruction of an approximation of the original data.
Chapter 2.3: Extracting Information from Data
Q1: How can data help identify trends and address problems? A1: Data can help identify trends, make connections, and address problems by providing insights into patterns and correlations.
Q2: What does it mean that correlation does not imply causation in data? A2: Correlation indicates a relationship between variables, but it does not mean that one variable causes the other. Further research is required to establish causality.
Q3: Why is it important to use multiple data sources when drawing conclusions? A3: Using multiple data sources ensures more reliable and valid conclusions, as a single source may not provide a complete or accurate picture.
Q4: What is metadata? A4: Metadata is data that describes other data, such as the date, size, and location of a file, helping organize and manage information.
Q5: What does cleaning data involve? A5: Cleaning data involves making the data uniform without changing its meaning, such as standardizing abbreviations, spellings, and capitalizations.
Q6: What are some challenges of working with data sets? A6: Challenges include cleaning incomplete or invalid data, combining data from different sources, and dealing with biases in the data.
Q7: What is the effect of data size on information extraction? A7: Larger data sets can provide more information, but they also pose challenges in processing and require more computational resources.
Q8: How does the scalability of systems affect data processing? A8: The scalability of systems is crucial for handling large data sets efficiently, ensuring they can process and store data as needed.
Q9: What is bias in data collection? A9: Bias occurs when the type or source of data being collected influences the results, leading to inaccurate conclusions.
Chapter 2.4: Using Programs with Data
Q1: How can programs be used to process data? A1: Programs process data to acquire information, organize it, communicate insights, and identify trends and patterns.
Q2: What visual tools can be used to organize and communicate insights from data? A2: Tables, diagrams, text, and other visual tools help organize and communicate insights from data.
Q3: How do search tools and data filtering systems help find information? A3: Search tools efficiently find specific information, while data filtering systems help recognize patterns and focus on relevant data.
Q4: What is the role of programs in data visualization? A4: Programs are used to visualize data through charts, graphs, and other visual representations to provide insights and knowledge.
Q5: How can programs transform data? A5: Programs can transform data by applying operations like filtering, combining, comparing, or modifying data to extract meaningful insights.
Q6: How does data filtering work in data processing? A6: Data filtering involves selecting specific subsets of data, such as keeping only positive numbers or filtering by specific categories.
Q7: What is the importance of combining data sources in data processing? A7: Combining data sources helps to create a more complete and comprehensive view of the data, leading to more accurate conclusions.
Q8: What is the iterative and interactive nature of using programs with data? A8: Using programs with data is often iterative and interactive, involving repeated cycles of filtering, cleaning, and analyzing data to refine insights.
Q9: How do patterns emerge when transforming data using programs? A9: When data is transformed using programs, patterns may emerge that help identify relationships and insights within the data.
3.1: Variables and Assignments
Q: Why are meaningful variable names important?
A: They improve readability and make programs easier to understand.Q: What is a variable?
A: A symbolic name representing a value stored in memory.Q: How can variables be assigned values?
A: Using the assignment operator (←).Q: What are some common data types in programming?
A: Numbers, booleans, lists, and strings.Q: Can variables change value?
A: Yes, variables can be reassigned new values during execution.Q: What happens when a new value is assigned to a variable?
A: The old value is replaced by the new one.
3.2: Data Abstraction
Q: What is data abstraction?
A: The process of managing complexity by handling data at a higher level.Q: How does data abstraction help programmers?
A: It makes code easier to manage, reuse, and modify.Q: What is a list?
A: An ordered collection of elements.Q: What is an index in a list?
A: A numerical position assigned to each element.Q: What index do lists start at in AP CSP pseudocode?
A: 1.Q: What happens if you try to access an index that doesn’t exist?
A: It results in an error.Q: What is a string?
A: A sequence of characters treated as a single value.
3.3: Mathematical Expressions
Q: What are the three fundamental control structures in algorithms?
A: Sequencing, selection, and iteration.Q: What is sequencing?
A: Executing instructions in order, one after another.Q: What is an algorithm?
A: A step-by-step procedure to solve a problem.Q: What is an arithmetic expression?
A: A combination of variables, values, and operators that evaluate to a number.Q: What does the MOD operator do?
A: It returns the remainder of a division.Q: What is integer division?
A: A division operation that discards the decimal portion, keeping only the whole number.
3.4: Strings
Q: What is string concatenation?
A: Joining two or more strings together.Q: What is a substring?
A: A smaller portion of a string extracted from a larger string.Q: How do you determine the length of a string?
A: Use a length function to count the number of characters.Q: Can strings be indexed like lists?
A: Yes, each character has a position in the string.
3.5: Boolean Expressions
Q: What is a boolean value?
A: A value that is eithertrueorfalse.Q: What are relational operators?
A: Operators that compare two values (e.g.,>,<,>=,<=,==,!=).Q: What do logical operators do?
A: They combine boolean values (AND, OR, NOT).Q: When does
Condition1 AND Condition2return true?
A: Only when both conditions are true.Q: When does
Condition1 OR Condition2return false?
A: Only when both conditions are false.Q: What does the NOT operator do?
A: It negates a boolean value (true becomes false, and vice versa).
3.6: Conditionals
Q: What is selection in programming?
A: The process of deciding which instructions to execute based on a condition.Q: What is an if-statement?
A: A control structure that runs a block of code if a condition is true.Q: What happens if an if-statement condition is false?
A: The code inside the if-statement is skipped.Q: What is an if-else statement?
A: A conditional structure that runs one block of code if true, and another if false.
3.7: Nested Conditionals
Q: What is a nested conditional?
A: A conditional statement inside another conditional statement.Q: Why use nested conditionals?
A: To check multiple conditions in a structured way.Q: What is a common mistake with nested conditionals?
A: Forgetting proper indentation, which makes code hard to read.
3.8: Iteration
Q: What is iteration?
A: Repeating a set of instructions until a condition is met.Q: What is a loop?
A: A programming structure that repeats instructions.Q: What happens if the condition in a
REPEAT UNTILloop never becomes true?
A: The loop runs indefinitely (infinite loop).Q: What is the difference between
REPEAT n TIMESandREPEAT UNTIL (condition)?
A:REPEAT n TIMESruns a fixed number of times, whileREPEAT UNTILruns until a condition is met.
3.9: Developing Algorithms
Q: Can different algorithms produce the same result?
A: Yes, even if they use different steps.Q: Why reuse existing algorithms?
A: It saves time and reduces errors.Q: What is an example of a common algorithm task?
A: Finding the maximum value in a list.Q: Why is debugging important in algorithm development?
A: It helps find and fix errors in logic or implementation.
3.10: Lists
Q: How do you access an element in a list?
A: Using its index (e.g.,list[i]).Q: How do you insert an element at a specific index in a list?
A:INSERT(list, index, value).Q: How do you add an element to the end of a list?
A:APPEND(list, value).Q: How do you remove an element from a list?
A:REMOVE(list, index).Q: How do you determine the length of a list?
A:LENGTH(list).Q: What happens if you try to remove an index that doesn’t exist?
A: It results in an error.Q: What is a complete traversal of a list?
A: Accessing every element in the list.
Binary Search (3.11)
Flashcard 9
Q: When is binary search more efficient than linear search?
A: When applied to sorted data.
Flashcard 10
Q: What does a binary search algorithm do?
A: It starts at the middle of a sorted dataset and eliminates half of the data based on a conditional, repeating until the value is found or all elements are eliminated.
Flashcard 11
Q: What must be true about data for binary search to work?
A: The data must be sorted.
Calling Procedures (3.12)
Flashcard 12
Q: What happens when a procedure is called?
A: The program execution is interrupted to execute the procedure’s statements before continuing.
Flashcard 13
Q: What happens when a procedure’s return statement executes?
A: The program resumes execution immediately after the procedure call.
Flashcard 14
Q: What is a procedure (method, function)?
A: A named group of programming instructions that may have parameters and return values.
Flashcard 15
Q: What are parameters in a procedure?
A: Input variables of a procedure.
Flashcard 16
Q: What are arguments in a procedure call?
A: The values that specify the parameters when calling a procedure.
Flashcard 17
Q: How do you define a procedure in code?
A: PROCEDURE my_procedure(parameter1, parameter2)
Flashcard 18
Q: How do you call a procedure in code?
A: my_procedure(arg1, arg2)
Flashcard 19
Q: How do you display an expression in code?
A: DISPLAY(expression)
Flashcard 20
Q: How do you return an expression in code?
A: RETURN(expression)
Flashcard 21
Q: How do you get user input in code?
A: INPUT(value)
Developing Procedures (3.13)
Flashcard 22
Q: What is procedural abstraction?
A: It allows solutions to large problems to be based on solving smaller subproblems using multiple procedures.
Flashcard 23
Q: How does procedural abstraction improve efficiency?
A: It extracts shared features for reusability instead of duplicating code.
Flashcard 24
Q: Why are parameters important in procedural abstraction?
A: They help generalize a procedure for different inputs.
Flashcard 25
Q: How does procedural abstraction allow modifications without affecting users?
A: The internals of a procedure can be changed without altering how it is used.
Flashcard 26
Q: What is modularity in programming?
A: The subdivision of a program into separate subprograms.
Libraries (3.14)
Flashcard 27
Q: Where do existing code segments come from?
A: Internal or external sources, including libraries.
Flashcard 28
Q: Why are libraries useful?
A: They simplify the task of creating complex code.
Flashcard 29
Q: Why is documentation important in APIs and libraries?
A: It helps understand how the provided procedures behave and how to use them.
Flashcard 30
Q: What is a software library?
A: A collection of procedures that can be used to create new programs.
Flashcard 31
Q: What are Application Programming Interfaces (APIs)?
A: Specifications for how the procedures in a library behave and can be used.
Random Values (3.15)
Flashcard 32
Q: What happens when using random number generation in a program?
A: Each execution may vary.
Flashcard 33
Q: How do you generate a random integer in code?
A: RANDOM(a, b) generates an integer from a to b, inclusive.
Simulations (3.16)
Flashcard 34
Q: Why are simulations useful?
A: They are used when real-world experiments are impractical or dangerous.
Flashcard 35
Q: How do simulations help refine hypotheses?
A: They allow variations in values to model real-world events.
Flashcard 36
Q: What is a simulation?
A: A representation that reflects the changing state of a phenomenon using varying values.
Flashcard 37
Q: How do simulations handle complexity?
A: They abstract real-world details to focus on specific elements.
Algorithm Efficiency (3.17)
Flashcard 38
Q: How is algorithm efficiency determined?
A: Through mathematical reasoning and by counting statement executions.
Flashcard 39
Q: What is a problem in computing?
A: A general description of a task that may or may not be solvable algorithmically.
Flashcard 40
Q: What is an instance of a problem?
A: A specific input for a problem.
Flashcard 41
Q: What is a decision problem?
A: A problem with a yes/no answer.
Flashcard 42
Q: What is an optimization problem?
A: A problem where the goal is to find the best solution among many.
Flashcard 43
Q: What is efficiency in computing?
A: An estimate of computational resources used by an algorithm.
Flashcard 44
Q: What is considered a reasonable amount of time for an algorithm?
A: Algorithms with polynomial efficiency or slower.
Flashcard 45
Q: What is an unreasonable amount of time for an algorithm?
A: Algorithms with exponential or factorial efficiency.
Flashcard 46
Q: What is a heuristic approach?
A: A method that provides a solution that may not be optimal but is practical.
Undecidable Problems (3.18)
Flashcard 47
Q: What is an undecidable problem?
A: A problem that has some solvable instances but no algorithm that solves all instances.
Flashcard 48
Q: What is a decidable problem?
A: A problem where an algorithm can always produce the correct output.
Flashcard 49
Q: What is an example of a decidable problem?
A: Checking if a number is even.
Flashcard 50
Q: What is an example of an undecidable problem?
A: Determining if a given algorithm will halt on all inputs.
Flashcard 51Q: How do undecidable problems impact computer science?A: They highlight the limitations of algorithmic problem-solving and emphasize the need for approximations or heuristics in certain cases.
4.1: The Internet
Q: What is a computer network?
A: A group of interconnected computing devices capable of sending or receiving data.Q: What determines access to the Internet?
A: The ability to connect a computing device to an Internet-connected device.Q: Why are Internet protocols open?
A: To allow users to easily connect additional computing devices to the Internet.Q: Is routing on the Internet predetermined?
A: No, routing on the Internet is usually dynamic and not specified in advance.Q: What is a key design principle of the Internet?
A: Scalability.Q: How is data transmitted over the Internet?
A: As a data stream containing packets of data.Q: In what order do packets arrive at their destination?
A: Packets may arrive in order, out of order, or not at all.Q: Name three common Internet protocols.
A: IP, TCP, and UDP.Q: What does the World Wide Web use?
A: The Internet.Q: Define a computing device.
A: A physical artifact that can run a program (e.g., computers, tablets, routers, smart sensors).Q: What is a computing system?
A: A group of computing devices and programs working together for a common purpose.Q: What is routing?
A: The process of finding a path from sender to receiver.Q: Define bandwidth.
A: The maximum amount of data that can be sent in a fixed amount of time, measured in bits per second.Q: What is a protocol?
A: An agreed-upon set of rules that specify the behavior of a system.Q: What is the scalability of a system?
A: The ability of a system to change in size and scale to meet new demands.Q: Define a packet.
A: A chunk of data with metadata used for routing and reassembly of information on the Internet.Q: What is HTTP?
A: A protocol used by the World Wide Web.
4.1: Fault Tolerance
Q: What makes the Internet fault tolerant?
A: It has abstractions for routing and transmitting data.Q: Why is network redundancy important?
A: It ensures there is more than one path between connected devices, allowing data to be rerouted if a failure occurs.Q: What happens if a device or connection on the Internet fails?
A: Data is sent via a different route, if possible.Q: What does fault tolerance allow for in the network?
A: Continuance of operation even when failures occur unexpectedly.Q: What is the downside of redundancy in a system?
A: It requires additional resources.Q: How does redundancy benefit the Internet?
A: It increases reliability and scalability.Q: Define fault tolerance.
A: The ability of a system to continue functioning despite failures.Q: What is redundancy?
A: The inclusion of extra components that can be used to mitigate failure.
4.3: Parallel and Distributed Computing
Q: How can you compare the efficiency of computing solutions?
A: By comparing the time it takes to complete the same task.Q: How long does a sequential solution take?
A: The sum of all its steps.Q: How long does a parallel solution take?
A: The sum of its sequential steps plus the longest parallel task.Q: What two parts does a parallel computing solution consist of?
A: A parallel portion and a sequential portion.Q: Why is parallel computing more scalable than sequential computing?
A: It allows tasks to be divided and executed simultaneously.Q: Why is distributed computing useful?
A: It allows large problems to be solved across multiple devices, reducing processing time and storage constraints.Q: What is a limitation of increasing parallelism?
A: At some point, efficiency gains level off due to the sequential portion of the task.Q: Define sequential computing.
A: A model where operations are performed one at a time in order.Q: Define parallel computing.
A: A model where a program is broken into smaller sequential operations, some of which run simultaneously.Q: Define distributed computing.
A: A model where multiple devices work together to run a program.Q: What is speedup in parallel computing?
A: The time taken sequentially divided by the time taken in parallel.
5.1: Random Values
Q: What is a computing innovation?
A: A new technological development that impacts society, economy, or culture.
Q: Can every effect of a computing innovation be anticipated?
A: No, some effects are unforeseen and can be beneficial or harmful.
Q: How can an innovation or its effects be perceived differently?
A: The same innovation or effect can be viewed as beneficial or harmful depending on the person or context.
Q: How has computing contributed to other fields?
A: Advances in computing have increased creativity in medicine, engineering, communication, and the arts.
Q: What is an example of an innovation being used in unintended ways?
A: The World Wide Web was originally intended for scientific exchange but is now widely used for commerce, entertainment, and social networking.
Q: How can targeted advertising be both helpful and harmful?
A: It helps businesses reach customers but can be misused to manipulate or invade privacy.
Q: What is an example of machine learning having both positive and negative impacts?
A: It has enabled medical advancements but has also been used to discriminate against groups based on data patterns.
Q: What should responsible programmers consider when developing innovations?
A: They should consider all possible uses and impacts of their technology.
Q: How can rapid sharing of a program cause unintended effects?
A: A widely adopted program may have societal or economic impacts beyond the control of its creator.
5.2: Digital Divide
Q: What factors influence internet access?
A: Socioeconomic, geographic, and demographic characteristics, as well as country-level differences.
Q: What is the digital divide?
A: The gap in access to computing devices and the internet due to socioeconomic and demographic factors.
Q: How does the digital divide impact individuals and groups?
A: It creates issues of equity, access, and influence, affecting education, job opportunities, and communication.
Q: Who influences the digital divide?
A: Individuals, organizations, and governments play a role in either widening or bridging the gap.
5.3: Computing Bias
Q: How can computing innovations reflect human biases?
A: Bias can be embedded in algorithms or the data used to train them.
Q: What should programmers do to combat bias in computing?
A: Take action to reduce biases in algorithms and data sets.
Q: At what levels of software development does bias occur?
A: Bias can appear in all levels of software development, from design to implementation.
5.4: Crowdsourcing
Q: How does widespread access to information benefit society?
A: It helps identify problems, develop solutions, and share results.
Q: What is citizen science?
A: Scientific research conducted by individuals who contribute data using their own computing devices.
Q: How does crowdsourcing enhance human capabilities?
A: It enables collaboration, allowing individuals to contribute to business, science, and social causes.
Q: What is an example of crowdsourcing in business?
A: Companies use crowdfunding platforms to raise money for new products.
5.5: Legal and Ethical Concerns
Q: What is intellectual property?
A: Material created on a computer that belongs to the creator or organization.
Q: Why does digitized information raise intellectual property concerns?
A: Its ease of access and distribution makes unauthorized use more common.
Q: What is plagiarism?
A: Using someone else's work without permission and presenting it as your own.
Q: What is Creative Commons?
A: A public copyright license allowing free distribution of copyrighted work with conditions.
Q: What is open-source software?
A: Software that is freely available to modify and redistribute.
Q: What is open access?
A: Free online research output with minimal copyright restrictions.
Q: How can computing raise ethical and legal concerns?
A: Through biased algorithms, surveillance technologies, and software that enables unauthorized access to content.
5.6: Safe Computing
Q: What personal information can websites collect about users?
A: Search history, browsing behavior, and location data.
Q: How can search engines use search history?
A: To suggest websites or for targeted marketing.
Q: What is Personally Identifiable Information (PII)?
A: Data that can identify or relate to an individual, such as Social Security numbers, phone numbers, and biometric data.
Q: What are some risks of storing PII online?
A: Identity theft, stalking, and unauthorized use of personal information.
Q: Why is information online difficult to delete?
A: Social media posts, search history, and shared content can persist indefinitely.
Q: How can users protect their privacy online?
A: By adjusting program permissions and reviewing security settings.
Q: What is encryption?
A: The process of encoding data to prevent unauthorized access.
Q: What is public key encryption?
A: A system where encryption uses a public key and decryption requires a private key.
Q: What is a computer virus?
A: A malicious program that copies itself and gains unauthorized access to a system.
Q: What is malware?
A: Software designed to damage or control a computing system.
Q: What is phishing?
A: A fraudulent attempt to trick users into providing personal information.
Q: What is keylogging?
A: A technique that records keystrokes to steal passwords and sensitive data.
Q: What is a rogue access point?
A: An unauthorized wireless access point that allows attackers to intercept network traffic.
Q: How can users protect their accounts?
A: By using strong passwords and multi-factor authentication.