An encryption method in which each letter of the message is shifted by a certain amount, called the key
A physical machine used in WWII that built on the complexity of substitution ciphers.
An encryption method that uses a series of interwoven Caesar ciphers based on the letters of a keyword
Scrambling digital information into an unreadable form. Only those with verified authority (password, key, etc) can unscramble it to read it.
The process of decrypting coded messages without being told the key.
The practice of solving and writing encryptions
Identity theft, stealing money, stealing private information, controlling private computers.
Ransomware is a type cyber attack that threatens to publish the victim's data or block access to it unless a ransom is paid.
The Internet of Things (IoT) is the network of physical devices, vehicles, home appliances, and other items embedded with electronics, software, sensors, actuators, and connectivity which enables these things to connect and exchange data.
Protection of computer systems, networks, and data from digital attacks.
how company's use your data
protecting your data online
secure data transfer protocol when on the internet
Legal document outlining how a company can collect and use your data
attempting to find computer security vulnerabilities and exploit them for personal financial gain or other malicious reasons
a computer security specialist who breaks into protected systems and networks to test and assess their security
The CIA Triad is a widely-accepted security measure that should be guaranteed in every secure system. It stands for Confidentiality, Integrity, and Availability.
The protection of information from people who are not authorized to view it.
Aims at ensuring that information is protected from unauthorized or unintentional alteration.
The assurance that systems and data are accessible by authorized users when and where needed.
The information about a particular person that exists on the Internet as a result of their online activity
the use of electronic communication to bully a person
Information literacy is having the ability to find information, evaluate information credibility, and use information effectively.
A law that grants the creator of an original work exclusive rights to its use, distribution, and sale
Objects in the public domain are not subject to copyright laws, and thus may be freely used by the general public.
Using charts, graphs, or images to visualize complex data.
a set of data that describes and gives information about other data.
Visualizations can be misleading by skewing the axes or labels, or leaving out relevant data.
Not starting the y-axis at zero.
A connection between two things.
`lowerCamelCase` is a naming convention where the first letter is lower case, and each subsequent start of a word is upper case.
Defining a function means to teach the computer a new command and explain what it should do when receiving that command.
Calling a function actually gives the command, so the computer will run the code for that function.
Programs that "Read like a story" have good decomposition and make the code easy to follow.
Breaking down (decomposing) your code is splitting it into more functions.
Indentation is the visual structure of how your code is laid out. It uses tabs to organize code into a hierarchy.
Top down design is a method for breaking our program down into smaller parts.
The way your code is written is the style. It covers the aspects of the code that goes beyond whether or not it just works.
Assumptions we make about what must be true before the function is called.
SuperKarel is like Karel but already knows how to turnRight() and turnAround()
A control structure lets us change the flow of the code.
An if statement lets you ask a question to the program and only run code if the answer is true.
Control structure that lets us run either one section of code or another depending on a test.
A problem when using a while loop where you forget one action at the beginning or the end.
Managing complexity by "abstracting away" information and detail, in order to focus on the relevant concepts.
A philosophy of making information and knowledge open and accessible to all people. A network of networks built on open, agreed upon protocols.
A widely agreed upon set of rules that standardize communication between machines.
Science that harnesses the power of many individuals to solve hard, complex problems.
A protocol that defines the structure of an Internet address and assigns a unique address to every device on the Internet.
Used to translate domain names into IP addresses.
The process of sending data between two computers on the internet. The data is sent through routers that determine the route.
When multiple paths exist between two points. This improves reliability and makes the internet fault tolerable. Makes the routing system scalable.
Packets are the units of data that are sent over the network.
HyperText Transfer Protocol is a protocol that standardizes the language for talking to web servers to send and receive web pages, or HyperText information (HTML pages).
A group of two or more computer systems linked together.
Able to send bits from router to router across long distances, but they are very expensive.
The amount of data (in bits) that can be sent in a fixed amount of time.
The capacity of data transfer in a system. Measured by bitrate.
The latency of a system is the time it takes for a bit to travel from sender to receiver. Fiber optic cables have low latency.
Protocols for encrypting/decrypting information. Most cybersecurity breaches happen due to human error, not software bugs.
Traditionally the very first program you write when learning a programming language, a program that prints "Hello world" to the user.
JavaScript function that prints out a line to the user
Declaring a variable is defining it for the first time.
Initializing a variable is giving it an initial value.
A float, or floating point value, is a numeric value that can have decimal level precision (ex: 3.14)
A number in your code that appears arbitrary. These should all be replaced with calculations or constants.
A coordinate system uses numbers as coordinates to place objects in a geometric space.
JavaScript function that returns the width of the graphics canvas
JavaScript function that returns the height of the graphics canvas
The length between the center and edge of a circle
Used to make logical associations between boolean values
Logical operator that ORs two boolean values. Written as `||`. `a || b` will be true if `a` or `b` is true.
Logical operator that ANDs two boolean values. Written as `&&`. `a && b` will be true if both `a` and `b` are true.
Logical operator that negates a single boolean value. Written as `!`. `!a` will be true if `a` is false, and false if `a` is true.
To flip a boolean value, or take the opposite of a boolean value. If you negate true, you get false. If you negate false, you get true.
Documentation for the syntax and objects in Javascript that we use on CodeHS.
Not actually random, but appears to be random
An edge case is a problem in your code that only occurs in extreme situations.
A variable used to count the number of times an action has been performed
A constant that has the specific purpose of being the value that breaks out of a loop.
A loop, most often set with while(true), that has a break in the loop body.
The `break;` statement breaks out of the current loop, without executing any more code in the loop.
A loop that has no way of stopping, and will keep looping forever.
Don't repeat yourself: try to simplify your code and avoid repeating code unnecessarily.
Also called an array. A data structure that holds a collection of values in a particular order
Also called a list. A data structure that holds a collection of values in a particular order
Showing several still images one after another very quickly, to give the illusion of animated movement.
A function passed as a parameter to another function in order to be called later.
A variable that can be used throughout a program, in every scope
An event is an action (such as clicking the mouse or pressing a key on the keyboard) that a program detects and uses as input.
The value returned from a function when the function is called.
A animated model that represents a real-life thing, process, or situation.
A set of rules for how things interact within a simulation.
An adjective that generally is used to describe a UI that is intuitive to use, easy to navigate, and allows the user to quickly and efficiently complete the desired task
A variable that is restricted to use in a certain scope of a program
Also called a dictionary or map. Lets us store pairs of keys that are matched with a specific value.
Repetition of instructions a specified number of times, or until a condition is met.
A data structure that stores values in no particular order. Each value can only appear once in the set.