Unit 2: Coding, Languages, & Networks

0.0(0)
Studied by 3 people
call kaiCall Kai
Locked
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/114

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 6:51 PM on 8/11/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

115 Terms

1
New cards

Database

An organized collection of data made of relations and domains (on the mathematical level) or magnetized microscopic zones (HDD) / electrons on flash memory cells (SSD).

2
New cards

Data

An electronic representation of raw, unorganized facts, information, or instructions.

Abstractly represented by bytes but physically can exist as many different things.

3
New cards

RAM

Random Access Memory. A computer's short term memory of data currently being used or that the system needs.

Often pictured as a giant grid with billions of open data slots.

4
New cards

WAL

Write Ahead Logs. A security measure to keep track of data movement between hardware and software in case of extreme circumstances.

5
New cards

Database Management Systems (DBMS)

Software layers that gatekeep, clean, secure, backup, and organize data allowing users to safely read, write, and update data.

Often times are relational (use rows and columns) and use SQL.

6
New cards

DBMS examples

PostgreSQL, MySQL, MongoDB, Redis

7
New cards

Cartesian Product

Mathematical operation that combines sets to create a new set of all possible ordered pairs.

8
New cards

Compiler

The translator for statically typed coding languages such as Java, C#.

Translates said language to machine code(binary).

9
New cards

Interpreter

The translator for dynamically typed coding languages such as Python, Javascript, Lua.

Translates said language to machine code(binary).

10
New cards

Statically Typed Language

Data types are locked in place before the program is run. Rules are strict and upfront, the system safely takes code because the data type and label is already verified.

11
New cards

Dynamically Typed Language

Allows spontaneous and changing types. Translates code to the system on startup.

12
New cards

Translator

Translates a coding language into machine code (binary) for the computer to be able to understand software.

Made of pure software often written in C or C++

13
New cards

Bootstrapping

For compilers. A compiler is written in its own language.

14
New cards

Self-interpretation

The “bootstrapping” for interpreters. Trying to bootstrap an interpreter would result in an infinite dependency chain.

Also called Cross-implementation

15
New cards

Edge Case

A compiler error where a combination of code never anticipated was built (like incorrect syntax or a forgotten function).

16
New cards

Miscomplication

A compiler error where the system translates broken code but the binary ends up not matching the original code.

Runs seemlessly but breaks. Hard to debug.

17
New cards

Data Serialization

When different coding languages interact via Bridges or APIs by sending JSON files across environments.

18
New cards

JSON

The bare, simple, universal format that every coding language understands.

19
New cards

Network

Digital highway for data. Exists in hardware as cables, routers, servers, and software as protocols.

20
New cards

SQL

Structured Query Language. The coding language used for communication by databases.

21
New cards

ORM

Object Relational Mapping. A programming technique allowing devs to interact with databases instead of writing raw SQL.

A bridge that automatically translates objects in programming languages into tables, rows, and columns for databases.

22
New cards

Query

A request made by or to a database in SQL.

23
New cards

Sequential Migration Scripts

Version-controlled incremental files used to apply database schema or data changes in a strict chronological order.

Ensures consistent deployment of data across environments and standard frameworks.

24
New cards

DML

Data Manipulation Language. SQL scripts written by devs to add, delete, modify, or retrive data in a database to patch structural data anomalies in newly developed apps.

25
New cards

Protocols

In networking they are agreed upon rules for how data should be packaged, sent, and acknowledged.

26
New cards

Packets

In networking they are small formatted units of a larger data sent for delivery.

27
New cards

Data Encapsulation

When packets are assigned it's data piece, the senders address, the destination address, and an order number for delivery.

28
New cards

MAC Address

Media Access Control Address. A devices hardware fingerprint for identification.

29
New cards

IP Address

Internet Protocol Address. A software mailing address assigned to devices by a network.

30
New cards

Router

A specialized computer sitting between networks that sends packets where they need to go.

31
New cards

Fiber-Optic Internet

Transoceanic fiber-optic cables connecting the entirety of the worlds connected networks together.

32
New cards

Internet

A global collection of all localized networks.

33
New cards

Cloud

In networking it refers to remote servers hosted in global data centers that store data, run apps, and deliver services. Exists on the internet.

34
New cards

3 Major Catagories of Cloud Services

Software as a Service (SaaS)

Infrastructure as a Service (IaaS)

Platform as a Service (PaaS)

35
New cards

Modular Compilation

A computer technique of processing large codebases for multi-language projects by breaking down independent files or modules to be compiled separately.

36
New cards

Build System

Software tool used in modular compilation that sorts files based on their coding language and directs files to their respective translators.

37
New cards

Namespace

A container used by the build system to identify a files coding language [Ex. Python.FunctionName()]

38
New cards

Linker

Stitches machine code together after they've been translated by assemblers/compilers into a final package in modular compilation.

39
New cards

Merging Sections

When a linker combines same files into a mega section.

40
New cards

Global Symbol Table

A table built by linkers that contains all function and variable names across all object files and their relative offsets. Each symbol gains a new memory address.

41
New cards

Relocation Records

Addresses left by the assembler/compiler for each file that are overwritten with real addresses when linkage is complete. In case data gets lost.

42
New cards

Dynamic Linkers

Linkers that build an import directory containing symbols the operating system will connect on runtime.

Normal linkers bake code with libraries straight into the executable file.

43
New cards

Global Offset Tables

Table of memory addresses referencing an external library function locations.

Used in dynamic linking.

44
New cards

Procedure Linkage Table

A block of executable code that acts as a stub triggering the address resolver.

Used during dynamic linking.

45
New cards

Executable

The final package or application. The end result of modular compilation.

46
New cards

Memory Isolation

When a computers RAM is divided into seperate cubicles so code doesn’t overpower other files.

Each language has its own cubicle and cannot communicate with other cubicles unless it has access to a bridge or API.

47
New cards

Cubicle

In memory isolation a cubicle is a digital fence.

48
New cards

3 Main Elements of Cubicles

Virtual Memory (RAM)

Operating Systems (OS)

Computer Processing Unit (CPU)

49
New cards

OS

Operating Systems. Manages hardware, acting as a bridge between the user, application, and hardware components.

In memory isolation it creates a list of rules (page tables) that maps out where each languages cubicle exists in the RAM.

50
New cards

Kernel Space

The main core of the OS. Interacts directly with hardware and contains components such as the process manager, memory manager, file manager, and I/O manager.

“Creates processes, efficiently schedules them, and manages how processes are terminated.”

51
New cards

SegFault

Segmentation Fault. When a program attempts to access memory location it’s not allowed to access and so the CPU orders the OS to terminates the program.

Termed by Linux, macOS, and Unix-like systems.

52
New cards

Memory Access Violation

When a program attempts to execute, read, or write a restricted memory address and the CPU orders the OS to terminate the program. Results in a crash, an error message, or a segfault.

Termed by Microsoft Windows.

53
New cards

Localization

When a developer includes human language JSON files for translation of in-app text to avoid creating multiple copies of an app. The distributor of the app uses the users established preferences to load the correct human language JSON file.

54
New cards

API

Application Programming Interface. A digital universe adapter that allows separated softwares to communicate safely by requesting data and checking verification and authenticity. A software-level OS that prevents data encroachment and chaos.

Used mainly for softwares that share data between systems. Unnecessary for software using exclusively external data.

55
New cards

URL

Uniform Resource Locator. A unique address for external data on the internet. Used by APIs as an endpoint to recieve or send requests.

56
New cards

HTTP Methods

HyperText Transfer Protocol. HTTP alone is a foundational set of rules that allows web browsers and servers to communicate.

HTTP Methods determine requested actions from APIs (GET, POST, PUT, DELETE, etc). Usually formatted in JSON or XML.

57
New cards

IDE

Integrated Development Environment. A supercharged text editor designed for writing code. Combines all tools a developer needs into a digital workshop.

Choosing a good IDE includes understanding the language and framework ecosystems, resource consumption, project type, used integrations, and available features.

58
New cards

3 Main Components of a Good IDE

A syntax highlighter

Auto-Completion for generic code

Debugger

59
New cards

Common IDEs

JetBrains IDE: used for language specific projects

VS: mainly for web development

Xcode: Apple integrations

Android Studio: Android integrations

60
New cards

Ecosystem

In programming, ecosystems are massive interconnected webs of programming languages, tools, databases, and libraries designed to work together with the means of efficiently making a program.

Includes packages, documentation, IDEs, frameworks surrounding a programing language.

61
New cards

Software Distributions/Frameworks/Toolkits

Pre-organized downloadable ecosystem bundles.

62
New cards

Library

In programming, it is a collection of reusable functions made by engineers to solve and make more efficient recurring code functions.

63
New cards

Included Information for Libraries

Configuration file

Name

Version

Dependencies

64
New cards

Registry

Local public directory of created libraries for users.

65
New cards

Package Manager

Connects a program to the global registry to download packages/libraries.

66
New cards

Libraries for ML & Their Functions

NumPy: Increases math efficiency for raw memory.

Pandas: Allows real data to quickly be cleaned, filtered, and restructured.

SciKitLearn: Trains ML models with a pre-made prediction algorithm.

PyTorch: Increases speed in translating code running on massive parallel graphic hardware.

ASP.Net: Listens for network requests, routing them to the correct database.

ML.NET: Trains ML models

Blazor: Makes reusable UI components.

67
New cards

Essential Programming Tools

Git/Hub: Uses repositories to track code changes.

Venv/Coda: Quarantine chambers/Version Control to prevent project versions from clashing.

Jupyter Notebooks: Allows code to run in small blocks for ML testing.

68
New cards

3 Musts for Good Code

Readability: Easily readable

Predictability: Does what its supposed to efficiently

Modularity: Built of independent pieces that work together so code structures do not collapse if one piece breaks.

69
New cards

Clean Script Blueprint

Commented Header

Imports/Libraries/Packages

Configurations/Variables

Helper/Functions

Main Execution

70
New cards

Computer

A device that stores and processes data by performing calculations.

71
New cards

Punch Cards

First early form of binary for computers.

72
New cards

Algorithm

A series of steps that solves specific problems. These steps are precise and follow a logical order.

73
New cards

Cryptography

The art of writing and solving codes.

74
New cards

Tape Drive

An early data storage device that read and wrote data on magnetic tape.

When data would need to be stored, the writer would generate a powerful localized magnetic field, where the fields forced the domains within particles to rotate. Once oriented, the particles locked in place due to rhe natural magnetic alignment of the material, representing binary

75
New cards

Vacuum Tubes

Early computer electronic switches for processing data.

They controlled electrical current in a vacuum they represented binary and built logic gates. Later the industry switched to transitioners because vacuum tubes were bulky, burned out quickly, and generated massive amounts of heat

76
New cards

Transistors

Work as vacuum tubes, but are more compact and efficient.

77
New cards

Open Source

Anyone can modify and share it.

78
New cards

Linux

An open source operating system used by most global servers and cloud-native apps.

Uses powerful command-line interfaces allowing programmers to automate repetitive tasks, manage server files remotely, and execute scripts efficiently.

79
New cards

CLI

Command-Line Interface. A text based UI used to view, manage, and interact with computer software.

80
New cards

PDA

Personal Digital Assitant. A handheld electronic device acting as a calender, organizer, and address book. Acted as a personal info manager. An early phone.

81
New cards

Binary

The communication system a computer uses. AKA Base-2 Numeral System.

82
New cards

Byte

A group of 8 bits used to represent data in software, which hardware interprets and processes.

83
New cards

Character Encoding

When your computer connects humam characters with binary code to decipher what means what.

Specifically ASCII.

84
New cards

ASCII

American Standard Code for Information Interchange.

The most oldest used binary dictionary for all English alphabet, digits, and punctuation.

85
New cards

UTF-8

The most prevalent character encoder used today. Uses the ASCII table, along with allowing byte variables to make emojis.

86
New cards

RGB

Red-Green-Blue. Used alongside binary represents color in bytes.

Each pixel on a screen holds 3 bytes for each color(Red/Green/Blue)

87
New cards

Logic Gates

Electrical switches on a computers chip that tell the computer how to perform binary calculations.

Although logic gates are hardware, you can use software to simulate or design one.

88
New cards

NOT Gate

A logic gate that outputs the opposite charge sent.

<p>A logic gate that outputs the opposite charge sent.</p>
89
New cards

AND Gate

A logic gate containing two inputs. For the output to be “on” both inputs must be so, otherwise the AND gate will output “off”.

<p>A logic gate containing two inputs. For the output to be “on” both inputs must be so, otherwise the AND gate will output “off”.</p>
90
New cards

OR Gate

The opposite of the AND gate. If both inputs are “off”, this it will be so, otherwise the output will be “on”.

<p>The opposite of the AND gate. If both inputs are “off”, this it will be so, otherwise the output will be “on”.</p>
91
New cards

XOR Gate

A logic gate that outputs “on” whenever only one signal is “on”. Otherwise the output will be “off”.

<p>A logic gate that outputs “on” whenever only one signal is “on”. Otherwise the output will be “off”.</p>
92
New cards

NAND Gate

A logic gate with two inputs that outputs “off” only when both inputs are “on”.

<p>A logic gate with two inputs that outputs “off” only when both inputs are “on”.</p>
93
New cards

XNOR Gate

A logic gate with two inputs that outputs an “on” only when both the inputs are the same.

<p>A logic gate with two inputs that outputs an “on” only when both the inputs are the same.</p>
94
New cards

Circuits

A continuous closed loop or pathway allowing electrical current to travel from a power source and back.

95
New cards

Binary Conversion Numbers

These numbers represent the decimal values of each bit in an 8-bit binary. These values are used to convert between binary and decimal.

0, 1, 2, 4, 8, 16, 32, 64, 128

96
New cards

Abstraction

The process of hiding complex or low-level implementation details to focus solely on essential features.

In other words users do not need to worry about the underlying process or code behind something because it is already proven it can work.

97
New cards

JPG

A file type that stores compressed photo files into smaller sizes for the web.

98
New cards

PNG

A clear image file that supports see-through backgrounds.

99
New cards

TXT

A plain text file.

100
New cards

PDF

Adobe Acrobat files that lock text and images in place so they look the same on any device.