input
Data that is sent to a computer for processing by a program. Can come in a variety of forms, such as tactile interaction, audio, visuals, or text
output
Any data that is sent from a program to a device. Can come in a variety of forms, such as tactile interaction, audio, visuals, or text
user interface
The inputs and outputs that allow a user to interact with a piece of software. Can include a variety of forms such as buttons, menus, images, text, and graphics
event driven programming
Some program statements run when triggered by an event, like a mouse click or a key press
program
A collection of statements which run (or “execute”) one command at a time
program statement
A command or instruction, sometimes also referred to as a code statement
sequential programming
Program statements run in order, from top to bottom
comment
Form of program documentation written into the program to be read by people and which do not affect how a program runs
debugging
Finding and fixing problems in an algorithm or program
documentation
A written description of how a command or piece of code works or was developed, NOT the same as a comment!
development process
The steps or phases used to create a piece of software. Typical phases include investigating, designing, prototyping, and testing
pair programming
A collaborative programming style in which two programmers switch between the roles of writing code and tracking or planning high level progress
binary
A way of representing information using only 0s and 1s
bit
A contraction of "Binary Digit," the single unit of information in a computer, typically represented as a 0 or 1
byte
8 bits
decimal
Represents values using place value, with each digit having a specific position
overflow error
Error from attempting to represent a number that is too large
round-off error
Error from attempting to represent a number that is too precise
analog data
Data with values that change continuously, or smoothly, over time. Some examples include music, colors of a painting, or position of a sprinter during a race
digital data
Data that changes discreetly through a finite set of possible values
sampling
A process for creating a digital representation of analog data by measuring the analog data at regular intervals called samples
losless compression
A reversible process for reducing the number of bits needed to represent something without losing any information
lossy compression
An irreversible process for reducing the number of bits needed to represent something in which some information is lost or thrown away
information
The collection of facts and patterns extracted from data
metadata
Data about data
cleaning data
A process that makes the data uniform without changing its meaning (ex: replacing all equivalent abbreviations, spellings, and capitalizations with the same word)
data filtering
Choosing a smaller subset of a data set to use for analysis, for example by eliminating / keeping only certain rows in a table
correlation
A positive, negative, or neutral relationship between two pieces of data, typically referring to the amount that one varies in relation to the other
assignment operator
Assigns a value to a variable, == in javascript and
—> in psuedocode
expression
A combination of operators and values that evaluates to a single value
string
An ordered sequence of characters
variable
A named reference to a value that can be used repeatedly throughout a program
boolean value
A data type that can be evaluated to either true or false
comparison operator
<, >, <=, >=, ==, != indicate a Boolean expression
logical operator
NOT, AND, and OR, which evaluate to a Boolean value
conditional statement
Allows the program to execute different blocks of code depending on whether a condition is true or false. It typically consists of an if statement followed else if or else statements
data abstraction
Manages complexity in programs by giving a collection of data a name without referencing the specific details of the representation
element
An individual value in a list that is assigned a unique index
index
A common method for referencing the elements in a list or string using numbers (starts at 0 in javascript, 1 in psuedocode)
list
An ordered collection of elements
infinite loop
Occurs when the ending condition will never evaluate to true
iteration
A repetitive portion of an algorithm which repeats a specified number of times or until a given condition is met
traversal
The process of accessing each item in a list one at a time
function
A named group of programming instructions, also referred to as a “procedure”
function call
A command that executes the code within a function
argument
The value passed to the parameter
parameter
A variable in a function definition, used as a placeholder for values that will be passed through the function
return
Used to return a result or data from a function to the code that called 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
API (Application Program Interface)
Specifications for how functions in a library behave and can be used
library
A group of functions (aka procedures) that may be used in creating new programs
modularity
The subdivision of a computer program into separate subprograms