Glossary

A

APIs (Application Program Interfaces)

Criticality: 3

Sets of rules and specifications that define how software components should interact, acting as an instruction manual for using libraries and services.

Example:

A mobile weather application uses a weather service's API to request and display current temperature and forecast data.

Algorithm Design

Criticality: 3

The systematic process of breaking down a problem into smaller, manageable steps and planning a systematic procedure to solve it, often using pseudocode or flowcharts.

Example:

Before writing code for a search engine, you would engage in algorithm design to determine the most efficient way to find relevant results from a large dataset.

B

Basic Data Types

Criticality: 3

Fundamental categories for classifying data in programming, such as integers (whole numbers), floats (decimal numbers), strings (text), and booleans (true/false values).

Example:

In a game, a player's score might be an integer, their health a float, their username a string, and whether they are alive a boolean.

C

Collaboration

Criticality: 2

A benefit of using libraries and APIs, enabling multiple developers to share and build upon each other's work, fostering collective progress and innovation.

Example:

Open-source libraries promote collaboration by allowing developers worldwide to contribute to and improve shared codebases.

Computing Innovations

Criticality: 3

New or improved computing artifacts that have significant positive and/or negative impacts on society, culture, or the economy.

Example:

The development of smartphones is a computing innovation that has profoundly changed global communication and access to information.

Control Structures

Criticality: 3

Programming constructs that determine the order in which instructions are executed, guiding the flow of a program.

Example:

An if/else statement is a control structure that allows a program to make decisions and execute different blocks of code based on a condition.

Cybersecurity

Criticality: 2

The practice of protecting computer systems, networks, and data from digital attacks, damage, or unauthorized access.

Example:

Using strong, unique passwords and two-factor authentication are basic practices in cybersecurity to protect your online accounts from hackers.

D

Data Abstraction

Criticality: 3

The process of hiding complex implementation details and showing only the essential information or functionality to the user, simplifying interaction.

Example:

When you use a remote control to change channels on a TV, you are benefiting from data abstraction because you don't need to know the complex electronic signals being sent.

Data Representation

Criticality: 1

How data, such as numbers, text, or images, is encoded and stored within a computer system, typically in binary format.

Example:

A specific color, like red, can be stored using data representation as a hexadecimal code like #FF0000 in a computer's memory.

Data Structures

Criticality: 2

Ways of organizing and storing data in a computer so that it can be accessed and modified efficiently.

Example:

A list is a common data structure used to store an ordered collection of items, such as a list of student names or test scores.

Debugging

Criticality: 2

The systematic process of finding and fixing errors (bugs) in a computer program, often involving tools to trace program execution.

Example:

Using a debugger to step through your code line by line to locate why your loop isn't terminating correctly is an example of debugging.

Digital Divide

Criticality: 3

The unequal access to computing technology and the internet, often based on socioeconomic status, geographic location, or other demographic factors.

Example:

The lack of reliable internet access in rural areas compared to urban centers illustrates the digital divide in many countries.

E

Efficiency

Criticality: 2

A key benefit of code reuse, referring to the ability to accomplish tasks quickly and with minimal waste of resources by leveraging existing, optimized code.

Example:

Using a pre-built sorting algorithm from a library significantly increases the efficiency of your program compared to writing one from scratch.

I

Importing Modules

Criticality: 3

The process of bringing pre-written code, known as modules, into your program to utilize their functions and procedures.

Example:

To use a function that calculates square roots, you would import the math module at the beginning of your Python script.

Iteration (Control Structure)

Criticality: 3

A control structure that allows a block of code to be repeated multiple times, often using `for` or `while` loops.

Example:

A for loop is an iteration structure that can be used to process each item in a list, such as calculating the sum of all numbers in a given list.

M

Modules

Criticality: 3

Files containing pre-written code, procedures, or functions that can be reused in other programs, acting as toolboxes of useful functionalities.

Example:

The random module in Python provides functions like randint to generate random numbers for games or simulations.

P

Program Testing

Criticality: 2

The process of executing a program with various inputs to identify and confirm that it functions as intended and to discover any errors or unexpected behaviors.

Example:

Running your calculator program with inputs like zero, negative numbers, and very large numbers is part of thorough program testing to ensure its robustness.

R

Reliability

Criticality: 2

A benefit of using libraries and APIs, indicating that the pre-written code is often well-tested and less prone to errors or bugs, leading to more stable programs.

Example:

Relying on a widely used encryption library ensures the reliability of your data security, as it has been rigorously tested by many developers.

S

Selection (Control Structure)

Criticality: 3

A control structure that allows a program to choose which block of code to execute based on whether a certain condition is true or false, typically using `if`, `else`, or `elif` statements.

Example:

Using a selection statement, a program can check if a user's age is greater than 18 and display a different message if they are old enough to vote.

Sequence (Control Structure)

Criticality: 3

A control structure where instructions are executed one after another in the exact order they appear in the code.

Example:

A program that first reads user input, then performs a calculation, and finally prints the result follows a sequence of operations.

Software Libraries

Criticality: 3

Collections of pre-built procedures and functions designed to perform specific tasks, saving developers significant time and effort.

Example:

The Pillow software library is commonly used in Python for image manipulation tasks, such as resizing or applying filters to photos.