procedure
-named group of programming instructions that may have parameters/return values
-referred to by different names (method or function) depending on the programming language.
for-each counting loop
block that repeatedly processes one or more instructions until some condition is met
repeat until loop
-Block that repeats its code until the boolean condition evaluates to true.
-If the condition evaluates to true initially, the code is not executed at all
-There can be an infinite loop if the ending condition never evaluates to true.
Logo
-programming language invented in the 1960s by Seymour Papert
-used to draw simple and complex geometric shapes.
iterative thinking
thinking process of repeatedly processing a limited number of steps
step-wise refinement
thinking process of moving one small step at a time when developing a program
design thinking
-iterative process
-consists of understanding the user; challenging assumptions; & redefining problems to identify strategies/solutions that might not be instantly apparent
-empathize, define, ideate, prototype, test
step 1 of design thinking (empathize)
investigating & understanding users to identify the program requirements through surveys, user testing, or interviews
step 2 of design thinking (define)
analyzing the problem & determining the program specifications
step 3 of design thinking (ideate)
brainstorming possible solutions through paper prototypes or making a list of ideas
step 4 of design thinking (prototype)
Creatively build simple solutions
step 5 of design thinking(test)
Evaluate the solutions
hypothesis
explanation that can be tested by experimentation written in if/then format
simulation
-Mimics real-world events with the purpose of drawing inferences
-Involves removing specific details/simplifying functionality.
-Facilitates the formulation & refinement of hypotheses related to the objects/phenomena under consideration.
-Computer simulations usually make some simplifying assumptions about the real-world object being modeled.
randomness
-lack of pattern/regularity
-sequence of events has no order
deterministic
process that is completely predictable
pseudo random number generator (PRNG)
-Algorithm that generates a series of numbers that appear to be random but are determined by it -Simulation (abstraction) of real randomness
seed
tells the PRNG where to begin in the sequence
pseudo random numbers
requires seed, mod, & formula
linear congruential generator (LCG)
-PRNG that uses a linear function -Does not require much memory
random event
-event that cannot be predicted with certainty -i.e. flipping a fair coin, rolling a die, picking a card from a well shuffled deck.
random block
block that gets pseudo-random numbers
random fraction block
block that only generates values between 0 & 0.99
model
abstraction that provides a simplified representation of some object/phenomenon
fair coin
flipped coin that would come up heads 50% of the time over a large number of coin flips
modular arithmetic
-system of arithmetic for whole numbers in which the numbers “wrap around” upon reaching a certain value (the modulus) -i.e. a 12-hour clock "wraps around" to 1 after 12
mod operator
returns the remainder when a number is divided by another
computing innovation
-executes a program as a fundamental part of its function
-i.e. picture editing software, self-driving car
data
-information formatted in a certain way -i.e. text on paper, bytes stored electronically
computing innovations w/ data
-input
-processing
-storage
-output
data privacy
assures that personal/corporate confidential information is collected, used, protected & destroyed legally & fairly
data security
controls access to personal information, protecting against its unauthorized use & acquisition
data storage
-archives data
-2 types of storage (hard data & remote data)
hard data
-RAM
-Hard Drive
-flash drives
-solid state
remote data
cloud computing
personally identifiable information (PII)
-information about an individual that identifies, links, relates, is unique to, or describes them.
-i.e. social security number, age, race, phone number(s)
cookies
-Small files or bits of data that are stored on your computer.
-Placed when you access a site