# Computers glossary - part 3 ## I I/O - input/output, a common identifier for most computers since some peripherals serve both purposes IC - integrated circuit, a computer chip built into a circuit board ICR - intelligent character recognition, aka intelligent OCR, a more advanced form of OCR that uses a trained machine learning model to identify text IDE - integrated development environment, an all-in-one solution for programmers to write, debug, test, and compile programs IDF - intermediate distribution frame, a large-scale network hub, often located in another room, designed to assist the MDF Idempotent - a resource that, if used multiple times, will create the same consequence as if it were used once (e.g., submitting data 3 times creates the same result as submitting it once) Identity - in computer science, where the data type isn't swapped out before testing whether two data elements are the same, represented by ≡ Idiom - an algorithmic structure that syntax builds into IDS - intrusion protection system, software that detects that intruders are/were hacking a computer, contrast to IPS If loop - a function that only activates if conditions are met (e.g., if x=1, do something) Implementation - the way a thing gets applied, instead of an abstraction In-band - inside a natural hardware environment, often remotely, contrast to out-of-band Incrementer - a logic gate that adds 1 every time it's activated Indie game - independent game, a game with a modest or nonexistent production and marketing budget Information architecture - a structure that informs people where they are in an interface relative to everywhere else Initialize - to begin with a value, such as a variable Input - anything that goes into a computer, from typing to information from other computers Input mask - database entry constraints for the user typically as either text-only, numbers-only, or a set limit of characters Insertion sort - a sorting algorithm that repeatedly compares each database entry with the previous ones and places them where they fit in the middle of the already-sorted data, takes half the time as bubble sort Integer - a whole number with no decimals Integration - things that are intimately connected with each other Interface - the designed thing that lets a person/computer interact with a computer, called an API if it's for a computer Internet - the world's largest computer network, connecting most of the computers across the world into one complicated super-network Interoperability - different things work together Interpolation - a mathematically established approximation given other multiple known points Interpreter - computer code that converts high-level programming language into assembly or machine code line by line (typically during runtime), contrast to compiler IoT - Internet of things, every device, even special-use ones, has an IP address, creating tremendous opportunities as well as [cybersecurity](computers-cysec.md) risks IP - internet protocol, the standard for networking across the internet, can also refer to [intellectual property](legal-ip.md) IP address - a numerical label a computer needs to communicate on the internet, can be IPv4 or IPv6 or both, can be a public IP address (for the internet) or private IP address (for a local network) IPAM - IP address management, software that tracks and gives updates on IP addresses (usually local network IPs) IPC - inter-process communication, information stored to communicate between various operating system tasks IPMI - intelligent platform management interface, a software designed to track many components across a distributed system, often out-of-band IPS - intrusion protection system, software that stops intruders from hacking a computer, in contrast with IDS ISA - instruction set architecture, an abstraction that involves taking instructions and following them carefully, most popular implementation in the CPU ISP - internet service provider, an [organization](groups-large.md) that provides internet service Iteration - a repeatable, simple task IWR - intelligent word recognition, an advanced form of ICR that can parse entire words instead of simply characters ## J JavaScript - a scripting language that drives the internet alongside HTML and CSS Journaling - file system programming that keeps a record file in long-term memory of tasks the CPU still has to do, very useful if the task is interrupted and can't continue Jumbo frames - frames that exceed the MTU, usually involved with getting faster speeds from virtualization Justified - aligning text by adjusting the kerning to where *both* the left and right sides are aligned ## K Kerning - the space between letters Key - can refer to an associative array's reference, a physical button that corresponds to a character, or a code that encrypts/decrypts data Key/value pair - matching values to a unique number, used in an associative array and in most databases Keyboard - the primary input for most general-purpose computers, typically has a QWERTY layout based on typewriters from the past, sends electrical pulses to memory Keyboard debouncing - using a fix to prevent key bounce Keyboard matrix - a circuit board diagram that maps keyboard keys to corresponding signals Key frame - a method of feeding graphical information on a percentage scale for several states, then the computer seamlessly transitions from one to the next, an easy method for animation in web design Keylogger - software that tracks keystrokes, can be user-installed or malware Keyword - specific words that create language associations for users Key bounce - a situation when a key is registered multiple times with one key press Kill chain - a hacker's necessary sequence to successfully send a payload through an exploit Killer app/feature - software or a feature that is so remarkable that it justifies buying the computer just for that thing alone (e.g., Microsoft Office at one time) Knowledge worker - a person who works with software, typically refers to developers Known good - a diagnostic term referring to something that is proven to have worked recently, since many new parts can be defective and configurations can frequently change KPI - key performance indicator, a measurement that management often uses to define success ## L L2TP - Layer 2 tunneling protocol, a core component of how VPNs work LAN - local area network, smaller computer networks, in contrast with WAN, Ethernet is the only surviving protocol for it Lang - short for "programming language", a defined set of possible instructions a user can pre-define for a computer Latency - delay, usually referring to network speed or memory transfer LCD - liquid crystal display, a type of screen where each pixel's light intensity of all 3 colors is dictated by rotating crystals and backlit by a fluorescent lamp Leaderboard - an internet high score system for games LED - light-emitting diode, a small light, often used for LED screens that are like LCD screens but with LEDs instead of fluorescent tubes Leech - to receive information over a P2P connection, often refers to leeching a torrent LEGO - a fun toy that's been around a while, great to start small children on STEM LGA - land grid array, where the pins for the chip are on the circuit board, meaning the board would need replacing if the pins are bent Library - a collection of computer code that vastly expands the functionality of a high-level language, can be downloaded in entirety or specific classes of it Lidar - light detection and ranging, determining a location and distance using emitted light Line - a line of text up until it hits a return, often refers to a single instruction of code Link-state routing protocol - a protocol that counts the number of bounces between points and picks the route with the fewest bounces, in contrast with distance-vector routing protocol Linked list - a list with references at the end of each list item, an alternative to storing the list in memory Linux - an open-source Unix-like operating system kernel, can also refer to the variety of Linux distros Liquid layout - a ratio determined by a percentage inside an element or screen instead of by pixel size List - Multiple data put together, doesn't have to be the same type LLC - logical link control, a subset of the [Data Link layer](networks-computer.md) that deals with directing information to and from various nodes, moves from media access control (MAC) Load - a logic gate selector to dictate whether a register should hold the old information or overwrite it with the new information Load balancer - an enterprise-grade software that manages processing needs across multiple computes Local - broad concept for something that's nearby, contrast to remote Lock - a GPS device successfully detecting the distance from a GPS satellite Location-based AR - aka position-based AR or geo-based AR, an AR system that requires specific location data to present information Lock file - a file that tracks that another file is getting used Lockstep networking - a P2P networking arrangement where two or more computers are matching the same state, necessary for online video games Logarithm - a mathematical formula where each additional increment is only marginally more than the previous, the opposite of exponents (e.g., log^~2~^(8)=3 while 2^3^=8) Log file - a plaintext output of runtime events, including runtime errors Logic error - a situation where a program runs perfectly fine, but outputs the wrong thing compared to what the programmer actually wanted (e.g., outputting 4 instead of 5) Logic gate - a small logic module, usually transistor-based, that specifies a flow of logic, typically driven by a NAND or NOR gate primitive Logical memory - the amount of memory a computer interprets it has, contrast to physical memory Loop - a cycle that repeats itself a lot in a computer Loot box - a game development strategy to create randomized incentives, tends to extend playtime Low-pass filter - a signal filter that only permits lower audio/video frequencies through, prevents aliasing LSA - link state advertisement, protocol that informs other computers of its linked computers Ludonarrative - the difference in a game between how the game world and the story work ## M MAC - media access control, a subset of the [Data Link layer](https://gainedin.site/networks/) that deals with labeling various nodes, moves to logical link control (LLC) MAC address - media access control address, a unique identifier for network-enabled computer parts, uses hexadecimal and often uses colons for ease of reading (e.g., 0f:4c:3b:a5:a3:d1) Machine code - binary information that computers work with, often directly translates from assembly code from a high-level language Machine learning - an algorithm designed to track a flow of repetitive trained information, then repeat back permutations of that information Magic pixels - the edge pixels of a screen, named because of their relatively easy UX compared to the rest of the screen Magnet link - a hash for a BitTorrent client to open and interpret, contains information about that torrent and its contents Mainframe - an enterprise-grade computer that often has many terminals/endpoints Malvertising - ads that direct to malicious software that are designed to look like legitimate software Malware - malicious software, designed by a hacker to destroy or steal Man-in-the-Middle (MitM) attack - a hack that involves appearing legitimate while standing in the middle of a transaction, the mobile version is Man-in-the-Mobile Managed services - a technology contract with a routine fee to keep technology running, contrast with break-fix Map - to make a link between something and something else, such as mapping a game controller button to a keyboard key Markdown - a lightweight markup language, useful for maintaining formatting elements (e.g., headings, hyperlinks) when storing things as plaintext Marker-based AR - augmented reality that displays content on top of an image Markerless AR - augmented reality that simply needs an empty space Master - aka main (now that [Leftism](politics-leftism.md) has gotten offended at it), a dominant drive or record that has a higher importance than others, contrast to slave Matrix - a grid of data MBR - master boot record, a relatively small record placed at the beginning of a hard drive that indicates what's on that drive and what memory register to start accessing it MDF - main distribution frame, the location for most of a data center's network activity, may connect to an IDF Media - information expressed via a medium, typically refers to audio, video, and image files Media query - a set of CSS styles that activate when a property of a media is activated (e.g., min/max width/height on a screen/printer) Megatransfer - 10^6, or 1,000,000, cycles per second, measured specifically for data transfer, also known as MB/s Memory - stored information, can be short-term (like RAM) and deleted on power-off, or long-term (like HDD) and stored between power cycles Memory hierarchy - the engineering reality that you can't have lots of memory that's also fast, so there's a constant speed/amount tradeoff that visually looks like a pyramid (e.g., 5 kb @ 10,000 writes/sec vs. 5,000 kb @ 1,000 writes/sec) Memory leak - memory in that was heap allocated, but the program wasn't instructed to release it when it was finished, creates stack overflows and other weird issues Memristor - memory resistor, a relatively new component made of electric switches that hold their memory even without electrical charge Merkle tree - aka hash tree, a data structure that converts each element into a hash, then makes hashes off multiple hashes, until there's eventually 1 hash for all of it. Merge - a necessary and complicated procedure of combining code bases together, a core feature of Git Metadata - quick-access information placed in the header of a file meant to make managing the files easier without the computer having to dig through them each time Metrics - measurements Microcomputer - aka mini, an old term for a silicon-based computer, rather than older vacuum tube computers Microcontroller - affordable, cheap computers with a very limited capacity and are designed to do a relatively small set of computing tasks, often to serve a more robust computer elsewhere Microkernel - an operating system kernel architecture that has a minimalist system management that takes up less memory, contrast with monolithic kernel Middleware - software designed to be in the middle of other things MIDI - musical instrument digital interface, a standard that sends musical instrument input to time-mapped data MIDI voice - sounds mapped to MIDI inputs, which permits a musical instrument to play as an entirely different instrument at the user's preference Mining - creating a new block in a blockchain, often is *very* resource-intensive, especially with cryptocurrency MMU - memory management unit, a specialized component that connects virtual and physical memory locations, uses the translation lookaside buffer MNO - mobile network operator, the organization that manages a cell tower, compare to MVNO Modal window - a pop-out context window in design that temporarily locks out interaction with other elements Mode - a state that allows for more varieties or iterations of inputs or outputs Modem - modulator/demodulator, translates information for sending via a network, then translates back for the computer to use, usually built right into the motherboard Modular - components of something are interchangeable Module - aka subsystem, an independent piece of a larger thing Modulo operator - A math calculation represented by % that effectively returns the remainder of a division operation, not to be confused with a modulus (the entire *range* of numbers that fit in that operation's set) Monolithic kernel - an operating system kernel architecture that encompasses almost all aspects of system management at the expense of taking more memory and everything running as superuser, contrast with microkernel Monospaced font - a font that uses the same width for each character, popular in older computers and with ASCII art Motherboard - a specific printed circuit board designed to have at least a CPU, input, memory, and output Motion blur - a camera artifact caused by the aperture being open too long or an object moving too fast, a convenient way to cut down on graphics load Mount - to connect a partition to a computer for accessing, can be a hard drive or external media Mount file - a file used as a placeholder for a temporary file system, such as a virtual machine Mouse/Trackball/Touchpad - a peripheral that sends x/y coordinates into the computer using relative motion, represented by a cursor on the screen Move - either copying computer code and deleting the original, or re-linking an association in memory (such as in a hierarchical file system) MTU - maximum transmission unit, the limit of how large a frame can get, can be subverted by jumbo frames MU-MIMO - multiple-user multiple-input multiple-output, a transceiver configuration that allows the most bandwidth on a network compared to SU-MIMO or SISO MVNO - mobile variable network operator, organizations that rent out the extra bandwidth from MNOs' cell towers Multi-licensing - issuing multiple types of software license for the same software product Multimap - a data structure where the key is designed to grab more than one value Multiplexer - a logic gate where one set of inputs is a selector to determine which of the inputs will go out Multiset - a data structure that's a set, but can store multiple values of the same thing ## N N-key rollover - the maximum number of keys that can be reliably pressed on a mechanical keyboard before noticing ghosting/blocking, requires diodes so higher n-key rollover will cost more Name server - a computer in a DNS that stores a record of domains corresponding with IP addresses Namespace - a system that separates things into groups to allow the same names across multiple areas, very useful for programming Nanosheet - a panel of *tiny* transistors, also known as nanoribbon, nanowire or gate-all-around device, depending on who you ask NAS - network-attached storage, a computer designed to do nothing but keep information available on a network NAT - network address translation, converting IPs into other IPs, necessary for IPv4 when they started running out of IPs but not necessary for IPv6 Netcode - computer code that executes across a network, often refers to internet-based games Nested function - a function inside a function, extremely useful but can get complicated to follow the code (especially if there's a recursion) Network - computers connected where they can send and receive data Network edge - the closest network connection to the endpoint Network interface card - aka NIC, a device that's designed to connect to a network, can be a peripheral or built straight into a motherboard Network sniffing - using software to capture packets, can be used for hacking or for diagnostics/learning Neural network - a mechanism of machine learning that consists of a network of individual rule-defining components NFT - non-fungible token, a unique cryptographic token for something, refers to blockchain Node - very broad word for a place on a network that has connections to other things Noise floor - the minimum amount of white noise that exists throughout a recording Non-diegetic - not naturally part of the established environment, such as lighting or sound Nonce - unimportant code that's used to validate a cryptographic hash Non-validated input - an exploit that involves entering data information in a way that the computer mistakes it for code Non-volatile/Long-term storage - memory that persists in between power cycles (i.e., non-volatile), often is a hard drive or removable media, opposite of volatile storage NOP - an opcode for no operation, which basically tells the computer to wait for a cycle NOP slide - an exploit that slides data into NOP opcodes Normalize - make a database have less memory, but with a longer read time, opposite of denormalize, an alternately mean reducing data into a canonical form NoSQL - any database that isn't strictly a relational database Null - a completely blank value in memory, it's *not* a "zero" value ## O OCR - optical character recognition, software that detects [language](language.md) on scanned media OEM - original equipment manufacturer, the organization that creates the original components of a computer, can often be several organizations removed from the group that actually sells the whole computer OLED - organic light-emitting diode, the next technological evolution of the plasma screen, not at all associated to LED screens despite the name OMR - optical mark recognition, informally called scantron, a method of computer input that involves reading marks on a paper Onboarding - the UX from first initializing software that stores configuration information and starts differently the second time onward On-prem - on-premises, having a computer that you can physically touch One-to-one correspondence - one instruction creates one machine code instruction, the major limitation of low-level languages Opacity - how opaque, or invisible, an element or color is Opcodes - operation codes, control bits of an ALU that determine which logic to run on the inputs Open-core - software that is open source, but has a proprietary implementation or front-end that isn't Open-source - computer code that's free to view and therefore modify, allows for easier debugging at the risk of losing potential profit off it, often contrasts to proprietary software or closed-source Operating system - the large system that runs the basic things in a computer, is most often Windows, Mac, or Linux in most general-purpose computers Oscillator - something that goes back-and-forth to track time, a major component of a clock OSINT - open-source intelligence, any potentially useful information or information-gathering tool OSPF - open shortest path first, a link-state routing protocol Out-of-band - outside a natural hardware environment, often remotely, contrast to in-band Output - any information the computer sends out, which could be anything from a screen to other computers Overclocking - cranking up the speed of the computer beyond the manufacturer specifications, which may make better benchmarks but might melt your processor, opposite of underclocking Overflow - the leftmost carry gets dropped in adding, a huge difference between computer math and algebra (e.g., 1000 plus 1001 makes 0001 instead of 10001) Overhead - a general concept usually referring to maintenance cost, space, electrical use, or processing power Over-provisioning - giving more resources than necessary, can be a good idea or a bad idea depending on whether you want redundancy or efficiency, opposite of under-provisioning