front 1 Bit | back 1 A contraction of "Binary Digit"; the single unit of information in a computer, typically represented as a 0 or 1 |
front 2 Binary | back 2 A way of representing information using only two options |
front 3 Byte | back 3 8 bits |
front 4 Creative Commons | back 4 A collection of public copyright licenses that enable the free distribution of an otherwise copyrighted work, used when an author wants to give people the right to share, use, and build upon a work that they have created |
front 5 Intellectual Property | back 5 A work or invention that is the result of creativity, such as a piece of writing or a design, to which one has rights and for which one may apply for a patent, copyright, trademark, etc. |
front 6 Redundancy | back 6 The inclusion of extra components so that a system can continue to work even if individual components fail, for example by having more than one path between any two connected devices in a network |
front 7 Lossy Compression | back 7 A process for reducing the number of bits needed to represent something in which some information is lost or thrown away. This process is not reversible. |
front 8 Lossless Compression | back 8 A process for reducing the number of bits needed to represent something without losing any information. This process is reversible. |
front 9 Computing Device | back 9 a machine that can run a program, including computers, tablets, servers, routers, and smart sensors |
front 10 Parallel Computing | back 10 a model in which programs are broken into small pieces, some of which are run simultaneously |
front 11 Round | back 11 off Error - Error from attempting to represent a number that is too precise. The value is rounded. |
front 12 Computing System | back 12 a group of computing devices and programs working together for a common purpose |
front 13 Sequential Computing | back 13 a model in which programs run in order, one command at a time |
front 14 Overflow Error | back 14 Error from attempting to represent a number that is too large |
front 15 Distributed Computing | back 15 a model in which programs are run by multiple devices |
front 16 Decimal | back 16 A way of representing information using ten options |
front 17 List | back 17 an ordered collection of elements |
front 18 Data Abstraction | back 18 manage complexity in programs by giving a collection of data a name without referencing the specific details of the representation |
front 19 Element | back 19 an individual value in a list that is assigned a unique index |
front 20 Index | back 20 a common method for referencing the elements in a list or string using numbers |
front 21 Information | back 21 the collection of facts and patterns extracted from data |
front 22 Metadata | back 22 data about data |
front 23 IP Address | back 23 The unique number assigned to each device on the Internet |
front 24 Internet Protocol (IP) | back 24 a protocol for sending data across the Internet that assigns unique numbers (IP addresses) to each connected device |
front 25 Analog Data | back 25 Data with values that change continuously, or smoothly, over time. Some examples of analog data include music, colors of a painting, or position of a sprinter during a race. |
front 26 Digital Data | back 26 Data that changes discretely through a finite set of possible values |
front 27 Sampling | back 27 A process for creating a digital representation of analog data by measuring the analog data at regular intervals called samples. |
front 28 Bandwidth | back 28 the maximum amount of data that can be sent in a fixed amount of time, usually measured in bits per second |
front 29 Computing Network | back 29 a group of interconnected computing devices capable of sending or receiving data. |
front 30 Path | back 30 the series of connections between computing devices on a network starting with a sender and ending with a receiver |
front 31 Protocol | back 31 An agreed-upon set of rules that specify the behavior of some system |
front 32 Fault Tolerant | back 32 Can continue to function even in the event of individual component failures. This is important because elements of complex systems like a computer network fail at unexpected times, often in groups. |
front 33 Router | back 33 A type of computer that forwards data across a network |
front 34 Packet | back 34 A chunk of data sent over a network. Larger messages are divided into packets that may arrive at the destination in order, out-of-order, or not at all |
front 35 Domain Name System (DNS) | back 35 the system responsible for translating domain names like example.com into IP addresses |
front 36 HyperText Transfer Protocol (HTTP) | back 36 the protocol used for transmitting web pages over the Internet |
front 37 World Wide Web | back 37 a system of linked pages, programs, and files |
front 38 Digital Divide | back 38 differing access to computing devices and the Internet, based on socioeconomic, geographic, or demographic characteristics |
front 39 Input | back 39 data that are sent to a computer for processing by a program. Can come in a variety of forms, such as tactile interaction, audio, visuals, or text. |
front 40 Output | back 40 any data that are sent from a program to a device. Can come in a variety of forms, such as tactile interaction, audio, visuals, or text. |
front 41 User Interface | back 41 the inputs and outputs that allow a user to interact with a piece of software. User interfaces can include a variety of forms such as buttons, menus, images, text, and graphics. |
front 42 Event Driven Programming | back 42 some program statements run when triggered by an event, like a mouse click or a key press |
front 43 Program | back 43 a collection of program statements. Programs run (or 'execute') one command at a time. |
front 44 Program Statement | back 44 a command or instruction. Sometimes also referred to as a code statement. |
front 45 Sequential Programming | back 45 program statements run in order, from top to bottom |
front 46 Comment | back 46 form of program documentation written into the program to be read by people and which do not affect how a program runs |
front 47 Debugging | back 47 Finding and fixing problems in an algorithm or program |
front 48 Documentation | back 48 a written description of how a command or piece of code works or was developed |
front 49 Development Process | back 49 the steps or phases used to create a piece of software. Typical phases include investigating, designing, prototyping, and testing. |
front 50 Pair Programming | back 50 a collaborative programming style in which two programmers switch between the roles of writing code and tracking or planning high level progress |
front 51 Assignment Operator | back 51 allows a program to change the value represented by a variable |
front 52 Expression | back 52 a combination of operators and values that evaluates to a single value |
front 53 String | back 53 an ordered sequence of characters |
front 54 Variable | back 54 a named reference to a value that can be used repeatedly throughout a program |
front 55 Boolean Value | back 55 a data type that is either true or false |
front 56 Comparison Operator | back 56 <, >, <=, >=, ==, indicate a Boolean expression |
front 57 Logical Operator | back 57 NOT, AND, and OR, which evaluate to a Boolean value |
front 58 Conditional Statement | back 58 affects the sequential flow of control by executing different statements based on the value of a Boolean expression |
front 59 Logical Operator | back 59 NOT, AND, and OR, which evaluate to a Boolean value |
front 60 Function | back 60 a named group of programming instructions. Also referred to as a 'procedure'. |
front 61 Function Call | back 61 a command that executes the code within a function |
front 62 Cleaning Data | back 62 a process that makes the data uniform without changing its meaning (e.g., replacing all equivalent abbreviations, spellings, and capitalizations with the same word). |
front 63 Data Filtering | back 63 choosing a smaller subset of a data set to use for analysis, for example by eliminating / keeping only certain rows in a table |
front 64 Correlation | back 64 a relationship between two pieces of data, typically referring to the amount that one varies in relation to the other. |
front 65 Citizen Science | back 65 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. |
front 66 Crowdsourcing | back 66 the practice of obtaining input or information from a large number of people via the Internet |
front 67 Data Bias | back 67 data that does not accurately reflect the full population or phenomenon being studied |
front 68 Information | back 68 the collection of facts and patterns extracted from data |
front 69 Data Bias | back 69 data that does not accurately reflect the full population or phenomenon being studied |
front 70 Infinite Loop | back 70 occurs when the ending condition will never evaluate to true |
front 71 Iteration | back 71 a repetitive portion of an algorithm which repeats a specified number of times or until a given condition is met |
front 72 Traversal | back 72 the process of accessing each item in a list one at a time |
front 73 Argument | back 73 the value passed to the parameter |
front 74 Parameter | back 74 a variable in a function definition. Used as a placeholder for values that will be passed through the function |
front 75 Return | back 75 used to return the flow of control to the point where the procedure (also known as a function) was called and to return the value of expressionProcedural Abstraction - a process and allows a procedure to be used only knowing what it does, not how it does it. Procedural abstraction allows a solution to a large problem to be based on the solution of smaller subproblems. This is accomplished by creating procedures to solve each of the subproblems. |
front 76 API | back 76 Application Program Interface - specifications for how functions in a library behave and can be used |
front 77 Library | back 77 a group of functions (procedures) that may be used in creating new programs |
front 78 Modularity | back 78 the subdivision of a computer program into separate subprograms |
front 79 Computing Innovation | back 79 includes a program as an integral part of its function. Can be physical (e.g. self-driving car), non-physical computing software (e.g. picture editing software), or non-physical computing concepts (e.g., e-commerce). |
front 80 Personally Identifiable Information (PII) | back 80 information about an individual that identifies, links, relates, or describes them |
front 81 Keylogging | back 81 the use of a program to record every keystroke made by a computer user in order to gain fraudulent access to passwords and other confidential information |
front 82 Malware | back 82 software intended to damage a computing system or to take partial control over its operation |
front 83 Phishing | back 83 a technique that attempts to trick a user into providing personal information. That personal information can then be used to access sensitive online resources, such as bank accounts and emails |
front 84 Rogue Access Point | back 84 a wireless access point that gives unauthorized access to secure networks |
front 85 Decryption | back 85 a process that reverses encryption, taking a secret message and reproducing the original plain text |
front 86 Encryption | back 86 a process of encoding messages to keep them secret, so only "authorized" parties can read it |
front 87 Public Key Encryption | back 87 pairs a public key for encryption and a private key for decryption. The sender does not need the receiver's private key to encrypt a message, but the receiver's private key is required to decrypt the message |
front 88 Symmetric Key Encryption | back 88 involves one key for both encryption and decryption |
front 89 Computer Virus Scanning Software | back 89 protects a computing system against infection |
front 90 Multi | back 90 factor Authentication - a system that requires at least two steps to unlock protected information; each step adds a new layer of security that must be broken to gain unauthorized access |
front 91 Algorithm | back 91 a finite set of instructions that accomplish a task |
front 92 Iteration | back 92 a repetitive portion of an algorithm which repeats a specified number of times or until a given condition is met |
front 93 Problem | back 93 a general description of a task that can (or cannot) be solved with an algorithm |
front 94 Selection | back 94 deciding which steps to do next |
front 95 Sequencing | back 95 putting steps in an order |
front 96 Binary Search | back 96 a search algorithm that starts at the middle of a sorted set of numbers and removes half of the data; this process repeats until the desired value is found or all elements have been eliminated |
front 97 Efficiency | back 97 a measure of how many steps are needed to complete an algorithm |
front 98 Linear Search | back 98 a search algorithm which checks each element of a list, in order, until the desired value is found or all elements in the list have been checked |
front 99 Reasonable Time | back 99 Algorithms with a polynomial efficiency or lower (constant, linear, square, cube, etc.) are said to run in a reasonable amount of time |
front 100 Unreasonable Time | back 100 Algorithms with exponential or factorial efficiencies are examples of algorithms that run in an unreasonable amount of time |
front 101 Decision Problem | back 101 a problem with a yes/no answer (e.g., is there a path from A to B?) |
front 102 Heuristic | back 102 provides a "good enough" solution to a problem when an actual solution is impractical or impossible |
front 103 Optimization Problem | back 103 a problem with the goal of finding the "best" solution among many (e.g., what is the shortest path from A to B?) |
front 104 Undecidable Problem | back 104 a problem for which no algorithm can be constructed that is always capable of providing a correct yes-or-no answer |
front 105 Speedup | back 105 the time used to complete a task sequentially divided by the time to complete a task in parallel |