> For the complete documentation index, see [llms.txt](https://smu-seniors.gitbook.io/excel-in-tech/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://smu-seniors.gitbook.io/excel-in-tech/appendix/terminologies.md).

# Terminologies

## Boxes and Arrows

An informal diagram style that uses boxes and arrows to represent relationships. Contrasts with formal methodologies like UML.

## Bottleneck

The main limitation that restricts the performance of a system.

## Buy vs Build

A choice between purchasing software or creating it from scratch.

## Communication Languages

Languages designed primarily for standardization rather than execution.

## Company

A group of people organized to make money.

## Divide and Conquer

A problem-solving technique that breaks a problem down into smaller, more manageable parts.

## Entrepreneur

The initiator of projects.

## Garbage

Memory that's occupied by objects that aren't needed anymore.

## Garbage Collector

A system that recycles garbage memory.

## Heap Allocated

Memory that's freed using a complicated mechanism.

## Hitting the Wall

When a system runs out of a particular resource, resulting in performance degrading sharply.

## Information Hiding

A design principle that seeks to minimize the amount of information exposed in an interface.

## Lingua Franca

A language that's so widely used that it's a de facto standard.

## Logging

Writing a program so that it generates a configurable output log describing its execution.

## Low-Hanging Fruit

Easy improvements that yield big results.

## Master Node

The node at which a unique piece of information that serves as the official definition of cached data is stored.

## Memory Leak

The accumulation of references to objects that prevents garbage collection and increases memory demands over time.

## Mere Work

Work that requires little creativity and entails little risk. Can be estimated easily.

## Object-Oriented Programming

A programming style that emphasizes the management of state within objects.

## Printlining

The temporary insertion of statements into a program to output information for debugging purposes.

## Speculative Programming

Producing a feature before its usefulness is confirmed.

## Strawman

A document used to start a technical discussion that may lead to other documents like stickman, tinman, woodman, ironman, etc.

## Wall Clock

Actual time as measured by a clock on a wall, as opposed to CPU time.

## Whitepaper

An informative document used to explain or sell a product or idea to a non-technical audience.
