AP CSP - Vocabulary

The Internet is a network of autonomous systems - it consists of layers of abstraction (protocols) that relay on the one below it

  • Abstraction: complexity made simple - a general idea or term used to represent much more detailed information, Abstraction is used to remove unnecessary details. For example, after you create a procedure or function and test it, you can call it without having to think about how it works. In levels of the Internet is means that you don't need to worry or understand details about each layer doing its job - you can assume it will work
  • Aggregation: A computation in which rows from a data set are grouped together and used to compute a single value of more significant meaning or measurement. Common aggregations include: Average, Count, Sum, Max, Median, etc.
  • Algorithms: Complex sequences of instructions that transform data or generate useful conclusions.
  • Anti-Virus - software that will prevent, detect, and sometimes repair, infections on individual computing devices and larger IT systems
  • API -(Application Programming Interface) - a collection of commands made available to a programmer - A good API makes it easier to develop a program by providing building blocks - or libraries, that you can call
  • Append - To append means to combine two strings with the characters from the second string following right after the characters in the first string. You can also append two lists which means that the items in the second list are added in order to the end of the first list. This is also called concatenation.
  • Array - a block of memory - this block is broken up into boxes and used to store data (of the same type) that is related in some way - for example: a list of names - starts from an index of zero (this is why we start from 0 when using our loops....) by the same token the very last value is whatever the number is minus 1 (n-1) - for example: an array of three has indexes of 0,1,2
  • ASCII  - American Standard Code for Information Interchange - ASCII is the universally recognized raw text format that any computer can understand - it takes one byte of data to store a single character
  • Assistive Technology - anything created to help disabled people become more independent
  • AttributeError: An error occurs when we ask for information about a variable that doesn't make sense, like the happiness of a potato or the GPA of a turnip.
  • asymmetric encryption - used in public key encryption, it is scheme in which the key to encrypt data is different from the key to decrypt
  • Backdoor - An entry point into a program without all the normal, built-in security checks
  • Bandwidth - Transmission capacity measure by bit rate - how much data can be transmitted at once (in best case scenario)
  • Big Data: a term describing the storage and analysis of large and or complex data sets using a series of techniques
  • Big O Notation: the formal notation in computer science for "on the order of". Big O notation takes the leading term of the expression used to calculate time, in terms of the size, n, of the array without the coefficient.
  • Binary - a number system that only uses two numbers (0 and 1) - computers operate in binary (this is how information is processed and stored)
  • Binary Search - assuming the data is in sorted order, the list can be divided into two each time by starting the middle - increasing the size of the data set will not increase the steps needed by all that much
  • Bit - a single digit of a binary number - a bit can contain only a 0 or 1
  • Bit rate - (sometimes written bitrate) the number of bits that are conveyed or processed per unit of time. e.g. 8 bits/sec.
  • Blacklist: A list of email addresses or IP addresses that are origination with known spammers
  • Botnet - a collection of compromised computers (zombies) under the control of an attacker
  • bps - bits per second - the use of a lowercase b indicates bits
  • Brute force cracking - testing every possible combination of letters, numbers, and characters until the password is found
  • Byte - a collection of 8 bits - data storage is measured in Bytes - generally an uppercase B indicates Bytes
    • KB (kilo) = approximately 1,000 bytes (thousands)
    • MB (mega) = approximately 1,000,000 bytes (millions)
    • GB (giga) = approximately 1,000,000,000 bytes (billions)
    • TB (tera) - approximately 1,000,000,000,000 bytes (trillions)
  • Caesar's Cipher - an encryption that shifts each letter by a certain number of characters
  • CamelCase: it is a convention where each letter that starts a word is capitalized,
  • Character: Any symbol that requires one byte of storage, i.e. "a" or "+"
  • Cipher - the generic term for a technique (or algorithm) that performs encryption
  • Citizen Science - gathering lots of people to help with a scientific project - example is counting butterflies around the world
  • Cleaning Data: a process of editing raw data so that all inaccuracies, inconsistencies, and irrelevant data is either removed or corrected
  • Client: A computer that requests data stored on a server
  • Cloud Computing - storing data or using web applications from a server vs the local computer
  • code - (v) to write code, or to write instructions for a computer
  • Collision - in cryptography, a collision attack on a cryptographic hash tries to find two inputs producing the same hash value, i.e. a hash collision
  • Conditional - A conditional allows for code to be executed when a condition is true.
  • Control Structures: The general idea of lines of code that can control other lines of code.
  • Compile - to convert a program from souce code (human readable) to object (machine) code the computer can execute
  • Compilation Errors: Errors that occur during the computer’s read through of the code.
  • Compress: to decrease the number of bits used to represent a piece of information
  • Computationally hard: the only known way to find an answer would take a computer an unreasonable amount of time
  • Computer: A computer is a device that accepts data or input, and processes it in some way to automatically produce a result
  • Computer Hardware: the parts of a computer that you can actually touch
    • Motherboard - the main circuit board - it connects all the other parts
    • CPU - the "brain" responsible for interpreting and executing commands from hardware and software
    • Chipset - a group of microchips designed to work as a unit in performing one or more related functions
    • Memory is the name for the electronic holding place for instructions and data that a computer's microprocessor can reach quickly
      • RAM - Random Access Memory - the temporary or "working" memory that allows multitasking
      • Hard Drive - the main data storage for a computer - HDD drives have spinning platters while SDD drives use a solid state flash memory
    • Video/Graphic Card - sends images to the screen/monitor
    • Drives - hardware devices that allow data to be read/written on some type of media (examples: optical, zip/thumb)
      *note: optical is often know more commonly as a CD/DVD/BluRayDVD
    • Monitor/Screen - displays the signals from the graphics/video card
    • Peripherals - a device that can connect to the main computer (examples: keyboard, mouse, speakers, printer)
    • Ports - serves as the interface between the computer and a peripheral (examples: USB, Thunderbolt, PS/2, VGA)
  • Computer Software - instructions for the computer and data
    • BIOS (Basic Input/Output System) is the program a computer's microprocessor uses to get the computer system started after its turned on
    • Operating system (sometimes abbreviated as "OS") is the program that manages all the other programs in a computer
  • Computing: the basic principles of working with computers.
  • Conditionals: Lines of code (called if statements) that check logical expressions to see if certain code blocks should run
  • Console: An output medium for a program to show exclusively text-based output.
  • Constant (or Literal) - a fixed value that cannot be altered during the execution of the program
  • Control Structures - lines of code that control other lines of code
  • Creative Commons - A CC license is used when an author wants to give people the right to share, use, and build upon a work that they have created - there are six different levels of permissions available in the licenses
  • Crowdsourcing - individuals or organizations use contributions from Internet users to obtain needed services or ideas
  • CSV: Abbreviation of "comma-separated values," this is a widely-used format for storing data - often used in spreadsheets - a csv file can also be used as input to a computer program
  • Cyberspace: The non-physical terrain created by computer systems
  • Data: Distinct information that is formatted in a special way. Data exists in a variety of forms, like text on paper or bytes stored in electronic memory
  • Data Center: Physical or virtual infrastructures used by enterprises to house computer, server and networking systems and components for the company's IT (information technology) needs
  • Data Mining - searching large stores of data to discover patterns and trends that go beyond simple analysis
  • Data Network: A telecommunications network which allows computers to exchange data
  • Data Structures: The general idea of data types more complex than individual letters and numbers
  • Data Type - All values in a programming language have a "type" - such as a Number, Boolean, or String - that dictates how the computer will interpret it. For example 7+5 is interpreted differently from "7"+"5"
  • Debugging: the process of finding and fixing errors in your programs.
  • Denary - another name for a base 10 system (decimal)
  • DDoS Attack: distributed denial-of-service (DDoS) is a type of computer attack that uses a number of hosts to overwhelm a server, causing a website to experience a complete system crash
  • Declaration - When you declare a variable, a function, or even a class all you are doing is saying: there is something with this name, and it has this type
  • Decryption - reversing encryption - taking the alterered message and turning it into the original tex
  • Dictionaries, or Hash Tables: Pairs of keys and values collected under one variable name, like lists with non-numeric indices.
  • Dictionary cracking - testing words and combinations of words found in the dictionary or from a slightly shorter list of words known to be commonly used in passwords
  • Digital Divide: the gap between demographics and regions that have access to modern information and communications technology, and those that don't or have restricted access
  • Disk Drive: A randomly addressable and rewritable storage device.
  • Do - While Loop- to repeat a section of code while a certain condition is true - this type of loop will execute at least once before checking the condition
  • Domain Name System (DNS): maps internet domain names to the internet protocol network addresses they represent and allows websites to use names, rather than difficult-to-remember IP addresses
  • Dynamic IP Address: a temporary IP address that is assigned to a computing device or node when it’s connected to a network
  • Dynamic Web Page: contains information that changes, depending on the viewer, the time of the day, the time zone, the viewers native language, and other factors
  • Dynamically-type language - at runtime, the program figures out the type of all the variables in the program - such as JavaScript, Python, PHP, Ruby
  • Encoding - the process of applying a specific code, such as letters, symbols and numbers, to data (so that the bits have a specific meaning - in real life think of fast food menu #'s, zip codes, state abbreviations, DNA)
  • Encryption - a process of encoding messages to that the original text is hidden from anyone who is not the inteded recipient
  • Event-Driven Programming: A type of programming where the program generally awaits and reacts to events rather than running code linearly.
  • Event handling - an overarching term for the coding tasks involved in making your app respond to events by triggering functions.
    • Event listener - a command (onEvent in App Lab) that can be set up to trigger a function when a particular type of event occurs on a particular UI element.
    • Callback function - a function specified as part of an event listener; it is written by the programmer but called by the system as the result of an event trigger.
  • Exception Handling: Lines of code that instruct the computer how to fail gracefully when errors are encountered.
  • Expression - Any valid unit of code that resolves to a single value. (Variables can be assigned values that are the result of an expression.)
  • File Input/Output: Writing a program's data to a file so it can later be re-loaded after the program is closed and reopened
  • Firewall - acts as a barrier between a trusted network and and an untrusted network by applying a set of rules to control access
  • For Loop - A for loop is a programming statement that tells the computer to repeat a statement or a set of statements (which are the body of the loop). It will repeat a specific number of times.
  • Frequency Analysis: (in cryptography)  is the study of letters or groups of letters contained in a ciphertext in an attempt to partially reveal the message
  • Method: A function that is part of a class in object-oriented programming (but colloquially, often used interchangeably with function).
  • Function: A segment of code that performs a specific task, sometimes taking some input and sometimes returning some output.
  • Gateway: a network device that provides an interface to another network that uses a different protocol and that all data must pass through to use its routing paths
  • Hash Table - a data structure for storing key/value pairs
  • Halting Problem - Alan Turing proved that it is not possible to decide algorithmically whether a given Turing machine will ever halt.
  • Heuristic: a specific type of algorithm, usually used when exact solutions are difficult or impossible. Heuristics are generally simple to use and are designed to provide reasonably good results without guaranteeing a perfect solution
  • High level programming language: A programming language with many commands and features designed to make common tasks easier to program. Any high level functionality is encapsulated as combinations of low level commands
  • HTTP: Hypertext Transfer Protocol (HTTP) is the protocol used by the World Wide Web. It describes how messages are formatted and interchanged, and how web servers respond to commands
  • Hypothesis: A proposed explanation for some phenomenon used as the basis for further investigation
  • Huffman Coding - a data compression technique (lossless) - the more often a series is repeated - the shorter the binary code to represent it is (efficiency)
  • IDE - integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of a source code editor, build automation tools and a debugger
  • IETF  (Internet Engineering Task Force) -  A large open international community of network designers, operators, vendors, and researchers concerned with the evolution of the Internet architecture and the smooth operation of the Internet. Mission: To make the Internet work betterfrom an engineering point of view
  • Index - The index is the position of the item in a list, string or array. The first item is at index 0.
  • Input - Data that is sent in to a program
  • Integer - a data type that can be positive whole numbers, negative whole numbers, or
    zero (but not fractions or decimals)
  • Integrated Circuit: An electronic circuit formed on a small piece of semiconducting material, performing the same function as a larger circuit made from discrete components.
  • Intellectual Property: Refers to any property that is created using original thought. Traditional intellectual property include patents, copyrights, and trademarks.
  • Internet Protocol (IP) Address: a unique string of numbers separated by periods that identifies each computer/device using the Internet Protocol to communicate over a network.
    - IPV4 was a 32-bit address and allows for up to 4.3 billion addresses
    - newer IPV6 is 128-bit address and allows for up to 3.4×1038 =  (340 undecillion addresses)
  • ISOC (Internet Society) -  International nonprofit organization that handles Internet standards, education and policy development - Mission: To promote the open development, evolution, and use of the Internet for the benefit of all people throughout the world
  • Iteration is the repetition of part of an algorithm until a condition is met or for a specified number of times - a looping mechanism
  • Latency - Time it takes for a bit to travel from its sender to its receiver - a high latency number is known as lag - latency is measured in bitrate
  • Lists: Ordered series of other kinds of data, collected under one variable name and accessed via numeric indices.
  • Logical Operators: Establishing the truth or falsehood of relationships among variables in our programs.
  • Linear Search - proceding one by one through a list from start until the condition or end it met - not terribly efficient
  • Logic/time bomb - Malware designed to lie dormant until a specific logical condition is met
  • Low level programming language: A programming language that captures only the most primitive operations available to a machine. Anything that a computer can do can be represented with combinations of low level command
  • Library - A library is a named group of related procedures and functions. An example is the Turtle library in Python
  • Line of Code: A single instruction for the computer to perform.
  • List - A list is a collection of items, that is stored in a variable.
  • Loops - Loops allow for the repetition of code until a condition is met.
    • For Loop _ to start the variables are initialized and the condition is evaluated
      If the condition is true, the code in the loop's body runs, variables are updated, and the condition is reevaluated.
      If the condition is false, the loop terminates
    • While Loop - to start the condition is evaluated
      If the condition is true, the code in the loop's body runs, and the condition is reevaluated
      If the condition is false, the loop terminates
    • Do -While Loop - to start the code in the loop's body runs once - then condition is evaluated
      If the condition is true, the code in the loop's body runs again, and the condition is reevaluated.
      If the condition is false, the loop terminates
  • Lossy Compression - some data gets thrown away meaning you cannot recreate the original file later - this is used in jpg and mp3 files
  • Lossless Compression - data is compressed in a way that the preserves all data and allows full recovery - gif, wav and png files use this method
  • LZ77 compression algorithm: replaces repeated occurrences of data with references to a single copy of that data existing earlier in the data stream
  • Mantissa: (in computing) : the part of a floating-point number that represents the significant digits of that number, and that is multiplied by the base raised to the exponent to give the actual value of the number
  • Mathematical Operators: Using arithmetic operators (addition, multiplication, etc.) to modify the values of variables in our programs.
  • Metadata: Data that describes other data. For example, a digital image may include metadata that describe the size of the image, number of colors, and resolution, among other things
  • Method: A function that is part of a class in object-oriented programming (but colloquially, often used interchangeably with function).
  • Modulo - a mathematical operation - modulo or "mod", is a remainder operator, %, returns the remainder after you divide one value by another. For example the remainder of 3 % 2 is 1 since 2 goes into 3 one time with a remainder of 1. Any number mod 2 is going to be either 0 or 1'
  • Moore's Law: the observation that computing power roughly doubles every two years
  • Most Significant Bit (MSB or high-order bit) - is the bit in the position furthest to the left in a binary number - therefore it has the greatest value - this is also used as a sign bit in one's or two's complement notations - where 1 means negative, and 0 means positive.
  • NameError: An error that usually occurs when you use a variable name that doesn't yet exist. When you encounter these, check first for misspellings; you very likely might have misspelled a variable name, causing the computer to see it as a completely different variable! If that doesn't work, try to find where you first defined the variable.
  • Native Data Types - in C these are the data types built into the programming language - such as int, char, float, double
  • Nested Loop - A nested loop has one loop inside the body of another loop
  • Net Neutrality - the principle that all Internet traffic should be treated equally by Internet Service Providers
  • Network: A group of two or more computer systems linked together
  • Nodes: A node is a basic unit used in computer science. Nodes are devices or data points on a larger network. Devices such as a personal computer, cell phone, or printer are nodes
  • Null: The “value” a variable has when it doesn’t actually have a value.
  • Objects: Creating and using custom data types so our programs can reason about the world the way we do.
  • Object Code (or Machine Code) - the result of compiling and assembling source code - this is the binary representation of a program that the computer can run
  • One-pager: A business/corporate term for a one-page document that summarizes a large issue, topic or plan. The purpose is to distill and highlight the most important pieces of information in a digestible manner so that the reader can be quickly acquainted with the relevant details of the "big picture."
  • OOP - Object Oriented Programming - focuses on building reusable blocks of code called classes. When you want to use a class in one of your programs, you make an object from that class, which is where the phrase "object-oriented" comes from
  • Open Access - a policy that allows people to have read access to certain data (online libraries, data sets)
  • Output - What the program provides as a result of running code and the type of input
  • Out of Bounds Index - when you try to access an index in an array that goes beyond the size initially set - this will take something from the next spot of memory and you do not know what that may be... often your program will crash with a "segementation fault" message
  • Overflow Error- results when the number of bits is not enough to represent the actual number - one example is a car's odometer rolling over, or what happened when YouTube hit over 2 billion views for Gangam Style forcing the 32 bit counter to be changed to 64 bit - the value cycles from the highest number back to the lowest one available
  • Packets - Small chunks of information that have been carefully formed from larger chunks of information.
  • Parameter - An extra piece of information that you pass to the function to customize it for a specific need
  • Peer-to-Peer Network - a system where one computer connects through the internet to another computer with using a central computer to manage the connection
  • Phishing - a fraudulent email from a cybercriminal that is pretending to be a trustworthy person or business requesting your information OR a fake website that records your login information when you enter it
  • Ping - testing how long it takes data to travel from your computer, go across the various Internet connections and nodes, reach the computer on the other side, and get back to you (response is called pong)
  • Pixel - A pixel is one small part (element) of a picture. Pixels are stored in a grid and have both a x (horizontal) and y (vertical) value. A pixel has a color which can be defined by an amount of red, green, and blue with values from 0 to 255.
  • Pivot Table: The tool used by most spreadsheet programs to create a summary table - it uses filters to select particular fields and their data
  • Procedure - A procedure is a named set of instructions that does not return a result, but can cause something to happen like the turtle forward(amount) procedure in Python - this can also be called a sub-routine or function
  • Procedural Programming - the basic approach to code, writing sequences of commands that are run by the computer in a specified order
  • Processor: an integrated circuit that contains all the functions of a central processing unit of a computer.
  • Program: An independent collection of lines of code that serves one or more overall functions.
  • Programming: Writing code through an iterative process of writing lines of code, attempting to execute them, and evaluating the results
  • Protocol - A set of rules governing the exchange or transmission of data between devices
  • Protype - a preliminary sketch or model of something new. In C, it is defining a function name at the top of a program, while the bulk of the code is included later - this notifies the compiler that a function of that name will be showing up later
  • Pseudocode - an informal language used for creating an outline or a rough draft of a program
  • Public Key Encryption - Used prevalently on the web, it allows for secure messages to be sent between parties without having to agree on, or share, a secret key. It uses an asymmetric encryption scheme in which the encryption key is made public, but the decryption key is kept private.
  • Qualifiers - in C, are keywords that can be added in front of type names to cause changes to the type - for example unsigned int
  • Random generator - most programming languages have a defined procedure that will select a random number or element from a specificed range
  • Random Substituion Cipher - an encoding technique that randomly assigns each letter to differenct characters or letters
  • Raw Data - the orginal data as it was collected - (before cleaning any irrelevant entries)
  • Recursion - functions that call themselves
  • RFC (Request for Comments) - formal document from the Internet Engineering Task Force (IETF) that is drafted and reviewed - Some RFC's are just informational, while others end up being Internet Standards
  • Round Off error - results when the number of bits is not enough to represent the actual number - example: 3.14 for pi
  • Router: a computer which receives messages travelling across a network and redirects them towards their intended destinations based on the addressing information included with the message.
  • Rubber Duck Debugging: A form of debugging where the programmer explains the logic, goals, and operations to an inanimate listener to methodically step through the code.
  • Runtime Errors: Errors that arise when trying to actually execute the code.
  • Selection - uses a Boolean condition (a TRUE/FALSE condition) to determine which of two parts of an algorithm is used
  • Sensor Networks - small nodes are used to gather data which is stored on a computer. These networks are commonly used for monitoring traffic, weather conditions, or body functions.
  • Sequencing is the application of each step of an algorithm in the order in which the statements are given - code flows line by line
  • Server: A computer that awaits and responds to requests for data
  • Side Effect - when a function changes the value of a variable that is outside of its own scope
  • Scope - dictates what portions of the code can "see" or use a variable, typically derived from where the variable was first created.
    • Global Variable - A variable whose scope is "global" to the program, it can be used and updated by any part of the code. Its global scope is typically derived from the variable being declared (created) outside of any function, object, or method.
    • Local Variable - A variable with local scope is one that can only be seen, used and updated by code within the same scope. Typically this means the variable was declared (created) inside a function -- includes function parameter variables.
  • Scripting Mode - in a programming language (like Python) when code is executed all at once - rather than being first compiled or run line-by-line
  • Smart Grid - an electricity network that uses two-way communication to integrate the actions of all users connected to it – generators, consumers and those that do both – in order to efficiently deliver sustainable, economic and secure electricity supplies
  • Social Networking: A social structure made of nodes that are generally individuals or organizations. A social network represents relationships and flows between people, groups, organizations, animals, computers, or other information/knowledge processing entities I.E. Facebook
  • Source Code - a program written in a language that a human can understand - it it the original code of a program before it is compiled and assembled into Object or Machine Code
  • Spreadsheets:
    - Scatter Chart: useful for finding relationships between two types of data
    - Line Chart: helpful for showing the progression of values over time
    - Bar Chart: useful for viewing data grouped by different categories
  • Spyware - Collects information about you, without your knowledge or consent
  • SSL/TLS - (Secure Sockets Layer/Transport Layer Security) - uses a combination of public key and symmetric key encryption to secure a connection between two machines
  • Static Webpage: a page that is exactly as coded - it looks the same to everyone who requests it
  • Statically-typed language - requires that every time you declare a variable, that you specify the data type: languages such as C
  • Strings: Ordered series of characters that often represent natural human language.
  • Summary Table: A table that summarizes information about some larger dataset. It typically consists of performing computations like sums, averages, and counts on higher level groupings of information. The intent is to summarize lots of data into a form that is more useful, and easier to "see"
  • Syntax: a set of rules in programming languages that determines how symbols and special characters are used
  • SyntaxError: An error that occurs when the line of code we've written can't be read by the computer because it doesn't match the computer's expectation for the programming language's grammar.
  • TCP: Transmission Control Protocol - provides reliable, ordered, and error-checked delivery of a stream of packets on the internet. TCP is tightly linked with IP and usually seen as TCP/IP in writing
  • Time Complexity - the amount of time an algorithm takes to run, in particular considering the theoretical worst-case and best-case scenarios when running programs.
  • Throughput - how much data actually does travel in a channel (bandwith is the capacity measurement - actual data transfer can be effected by lag, transfer protocols)
  • Top Down Design - a problem solving strategy in which you break down a large problem by naming its sub-tasks and then breaking down the sub-tasks further and so on until you're down to primitive operations
  • Top Level Domain (TLD) - the last segment of the domain name - the letters immediately following the final dot in an Internet address (.org, .com. net., .au, etc)
  • Transistor: A semiconductor device used to amplify or switch electronic signals and electrical power. It is composed of semiconductor material usually with at least three terminals for connection to an external circuit
  • Trust Model - when downloading/installing sofware the user must "trust" that there is no malicious intent
  • Tuples - Tuples are basically lists that can never be changed.
  • Turing Machine - A Turing machine is a theoretical computer that can read instructions from a tape and write results to the tape
  • Turing Test - A test for intelligence in a computer, requiring that a human being should be unable to distinguish the machine from another human being by using the replies to questions put to both
  • TypeError: An error that occurs when we try to perform an operation on an object that doesn't make sense with the operation, like calculating the length of a number or to print an omelette.
  • User Interface (UI) - The "User Interface" or UI of an app refers to how a person (user) interacts with the computer or app.
    • UI Elements or objects, like buttons, images, text boxes, pull down menus, screens and so on.
    • UI Events or controls, like click, scroll, move mouse, type keyboard key, etc.
  • Unary Operator: takes only one value for its operation. The plus operator (++) increments a given value by one. For instance, to increment the variable x by 1, you could express this as: x++
    The opposite is the minus operator (--) which decreases a given value by one. To decrement the variable x by 1, you could use: x--
  • Undecidable or Unsolvable Problem - an algorithm that will run in some instances, but will not always lead to a correct "yes" or "no" answer - computers can’t do everything, and never will be able to. Such tasks, are called unsolvable problems because the design of a computer prevents it from arriving definitively at a solution
  • URL - An easy-to-remember address for calling a web page (like www.google.com)
  • Value: The content of some variable. The variable myAge might hold the value 29. The variable yourName might hold the value “Adelene”.
  • Variable - a storage container (assigned memory) for data that is capable of holding different values - these may change or update as programs execute
  • Vinton “Vint” Cerf - regarded widely as one of the fathers of the Internet
  • Virus - a type of malicious code or program written to alter the way a computer operates and that is designed to spread from one computer to another
  • while loop - A while loop is a programming statement that tells the computer to repeat a statement or a set of statements. It repeats the body of the loop while a logical expression is true.
  • Whitelist: A list of email address or IP addresses that are considered to be spam free, the opposite of a blacklist.
  • Zombies (a.k.a bots): compromised computers under the control of an attacker - Make it possible for someone else to control your computer from
    anywhere in the world