1/30
A set of vocabulary flashcards defining primary computer science concepts, algorithm representation tools, computational thinking methods, and programming environments covered in COMP108 Lecture 01.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Programming
The process of designing, writing, testing, debugging, and maintaining instructions (called code) that a computer can follow to perform specific tasks or solve problems.
Coding
A specific part of programming that focuses on expressing instructions (code) in a programming language that a computer can understand and execute.
Algorithm
A precise, step-by-step set of instructions or rules followed to solve a problem or complete a task.
Program
An algorithm expressed in a programming language so that a computer can execute it.
Pseudocode
A simplified, semi-formal way of describing an algorithm to humans (not computers) combining elements resembling a programming language with natural language statements.

Algorithm Flowchart
A visual, diagrammatic representation of an algorithm that uses different shapes for activity types and directional connection lines to show control flow.
Debugging
The systematic process of identifying, analyzing, and removing software bugs from a computer program.
Software Bug
An error in a computer program that causes it to produce incorrect or unexpected results, or to behave in unintended ways.
Computational Thinking
A problem-solving approach in which first the problem and then its solution(s) are expressed in such a way that the solution(s) can be carried out effectively by a computer or a human.
Decomposition
A computational thinking technique that involves breaking down a complex problem or system into smaller, easier-to-manage parts.
Abstraction
A computational thinking technique that focuses only on aspects and information relevant for solving a given problem while ignoring or hiding irrelevant details.
Pattern Recognition
A computational thinking technique that involves identifying similarities and patterns across and within problems and solutions.
Modelling and Simulation
A computational thinking technique that involves creating simplified representations of problems and solutions to study them more easily.
Evaluation
A computational thinking technique focused on determining the effectiveness and efficiency of a solution and how it can be generalized to solve other problems.
Design Thinking
A human-centered problem-solving approach that emphasizes understanding users' needs, creatively generating ideas, prototyping, and testing solutions iteratively.
Systems Thinking
A problem-solving approach that focuses on understanding how different parts of a system interact and influence each other as a whole, rather than considering each part in isolation.
Generative AI (GenAI)
Artificial intelligence tools that produce new content such as text, code, images, music, or video by learning patterns from existing data.
Vibe Coding
The practice where inexperienced programmers attempt to create complex software quickly using Generative AI tools without fully understanding the underlying code.
CS+X
An interdisciplinary concept focused on combining Computer Science (CS) knowledge with expertise from another domain (X) to solve complex real-life problems.
PRIMM Framework
A structured learning methodology representing Predict, Run, Investigate, Modify, and Make, used to reflect on code behavior.
Machine Language
The lowest level of programming languages consisting of binary code that executes directly on hardware; it is hardware-specific and difficult for humans to read.
Assembly Language
A low-level programming language that uses mnemonic codes to represent machine instructions while retaining a one-to-one correspondence with specific hardware.
High-Level Language
A portable programming language that abstracts away hardware details, using English keywords so it is significantly easier for humans to read and write.

Visual Programming Language
A programming language that allows developers to create programs using visual block-based or graphical components rather than typing text code.
General Purpose Programming Language
A flexible, text-based high-level programming language with precise English syntax suitable for building software across wide-ranging domains.
Python Interpreter
A software component that reads a Python script line by line, translates each statement directly into machine code, and executes it immediately without creating an executable file.
Integrated Development Environment (IDE)
A software application that supplies essential developer tools—including code editors, syntax highlighting, debuggers, and testing tools—for building computer programs.
IDLE
The Integrated Development and Learning Environment, a lightweight, Python-specific IDE installed directly alongside the standard Python interpreter.
IDLE Interactive Mode
An execution mode in IDLE where a programmer enters and immediately runs individual Python statements one at a time at the shell prompt.
IDLE Script Mode
An execution mode in IDLE where multiple Python statements are written in an editor window, saved to a .py file, and executed sequentially as a full program.
Grok Academy
An interactive online Australian learning system providing automated coding courses, challenges, and curriculum resources for digital technology education.