Skip to content

Latest commit

 

History

History
778 lines (541 loc) · 19.5 KB

gloss.md

File metadata and controls

778 lines (541 loc) · 19.5 KB

Glossary {#glossary}

Abandonware : FIXME

Absolute error : FIXME

Absolute import : FIXME

Absolute path : Refers to the complete listing of folders between the [root][root-directory] folder to the last folder, if the path points to a folder, or to the parent folder, if the path points to a file.

Actual result : FIXME

Agile development : FIXME

Ally : FIXME

Append mode : FIXME

Assertion : FIXME

Authentic task : A task which contains important elements of things that learners would do in real (non-classroom situations). To be authentic, a task should require learners to construct their own answers rather than choose between provided answers, and to work with the same tools and data they would use in real life.

Auto-completion : Is a feature that allows the user to finish a word or code quickly through the use of hitting the TAB key to list possible words or code that the user can select from.

Automatic variable (in Make) : FIXME

Boilerplate : FIXME

Branch-per-feature workflow : FIXME https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow

Bug report : Is a collection of files, logs, or related information that adequately describes either an unexpected output of some code or program or an unexpected error or warning. This information is used to help find and fix a bug in the program or code.

Bug tracker : Is a system that tracks and manages [reported bugs][bug-report] for a software program, to make it easier to address and fix the bugs.

Build manager : FIXME https://en.wikipedia.org/wiki/List_of_build_automation_software

Byte code : FIXME

Call stack : FIXME

Camel case : A style of writing code that involves naming variables and objects with no space, underscore (_), dot (.), or dash (-), with each word being capitalized. Some examples would be: CalculateSum, findPattern, SearchFiles, or objectNumber.

Catch (an exception) : FIXME

Checking-driven development (CDD) : FIXME

Checklist : FIXME

Code review : FIXME

Cognitive load : FIXME

Command argument : FIXME

Command flag : FIXME

Command history : FIXME

Command option : FIXME

Command shell : FIXME

Command switch : FIXME

Command-line interface (CLI) : FIXME

Comment : Is text written in a script that is not treated as code to be run, but rather as text that describes what the code is doing. These are usually short notes, often beginning with a # (in many programming languages).

Commit : FIXME: define both noun and verb.

Commit message : FIXME

Commons : FIXME

Competent practitioner : Someone who can do normal tasks with normal effort under normal circumstances. See also [novice][novice] and [expert][novice].

Compiled language : FIXME

Compiler : FIXME

Computational notebook : FIXME

Conditional expression : FIXME

Confirmation bias : Is the tendency to seek out or interpret information that re-affirms or supports one's pre-existing knowledge, beliefs, or values.

Continuation prompt : FIXME

Continuous integration : FIXME

Coverage : FIXME

Creative Commons - Attribution License (CC-BY) : FIXME

Current working directory : The folder or directory location that the program is operating in. Any action taken by the program occurs relative to this directory.

Data package : A software package that, mostly, contains only data. Is used to make it simpler to disseminate data for easier use.

Default target (in Make) : FIXME

Defensive programming : FIXME

Destructuring : FIXME

Dictionary : FIXME

Digital Object Identifier (DOI) : FIXME

Docstring : FIXME

Documentation generator : FIXME

Down-vote : FIXME

Entry point : FIXME

Exception : FIXME

Expected result : FIXME

Expert : Someone who can diagnose and handle unusual situations, knows when the usual rules do not apply, and tends to recognize solutions rather than reasoning to them. See also [competent practitioner][competent-practitioner] and [novice][novice].

Explicit relative import : FIXME

Exploratory programming : FIXME

Export a variable : FIXME

External error : FIXME

False beginner : Someone who has studied a language before but is learning it again. False beginners start at the same point as true beginners (i.e., a pre-test will show the same proficiency) but can move much more quickly.

Feature request : Is a request to the maintainers or developers of a software program to add a specific functionality (a feature) to that program.

Filename extension : FIXME

Filename stem : FIXME

Filesystem : Controls how files are stored and retrieved on disk by an operating system. Also used to refer to the disk that is used to store the files or the type of the filesystem.

Filter : FIXME

Fixture : FIXME

Flag variable : FIXME

Folder : Is a computer storage and organization concept that allows files to be organized in a common location, which is the folder or directory. A folder can store both files and other folders.

Forge : FIXME

Frequently Asked Questions (FAQ) : FIXME

Full identifier (in Git) : FIXME

Function (in Make) : FIXME

GNU Public License (GPL) : FIXME

Git : Is a software program that formally tracks changes made to a collection of files within a specific [folder][folder] (and its subfolders). Technically, Git is a "distributed version control system", meaning that each user who has a [repository][repository] on their computer also has the entire history of changes made to that repository, so that technically there is no central repository (e.g. that is only accessible on a server).

Git branch : FIXME

Git clone : Copies, and usually downloads, a Git [remote repository][remote-repository] onto the local computer.

Git conflict : FIXME

Git fork : Is a concept in GitHub that indicates a GitHub [repository][repository] has been [cloned][git-clone] into a new GitHub repository.

Git merge : FIXME

Git pull : Downloads and synchronizes changes between a [remote repository][remote-repository] and a local [repository][repository].

Git push : Uploads and synchronizes changes between a local [repository][repository] and a [remote repository][remote-repository].

Git stage : FIXME

Git : FIXME

Graphical user interface (GUI) : FIXME

Hitchhiker : FIXME

Home directory : FIXME

Governance : FIXME

ISO date format : FIXME

Impact/effort matrix : FIXME

Implicit relative import : FIXME

Impostor syndrome : FIXME

In-place operator : FIXME

Internal error : FIXME

Interpeter : FIXME

Interpreted language : FIXME

Interruption bingo : FIXME

Integration testing : FIXME

Invariant : FIXME

Issue tracking system : Is similar to a [bug tracking system][bug-tracker] in that it tracks "issues" made to a [repository][repository], usually in the form of [feature requests][feature-request], [bug reports][bug-report], or some other todo item.

Issue : FIXME

JSON : FIXME

Kebab case : FIXME

Label (in issue tracker) : FIXME

Label (in issue tracker) : FIXME

LaTeX : FIXME

Linter : FIXME

List comprehension : FIXME

Logging framework : FIXME

Long option : FIXME

Loop body : FIXME

Loop (in Unix) : FIXME

Milestone : FIXME

MIT License : Is a legal license that places very limited restrictions on the re-use of software, making it a very permissive license that encourages using, modifying, and distributing the software widely.

Magic number : FIXME

Makefile : FIXME

Martha's Rules : FIXME

Maximum likelihood extimation : FIXME

Mental model : A simplified representation of the key elements and relationships of some problem domain that is good enough to support problem solving.

Nano : FIXME

Ngo : FIXME

Novice : Someone who has not yet built a usable mental model of a domain. See also [competent practitioner][competent-practitioner] and [expert][expert].

Object-oriented programming : FIXME

Open license : Is a legal license that encourages, rather than restricts, the use, re-use, modification, and distribution of a copyrighted material, such as with software or written text.

Open science : FIXME

Operating system : FIXME

Oppression : FIXME

Optional argument : FIXME

Orthogonality : FIXME

Overlay configuration : FIXME

Pager : FIXME

Parent directory : FIXME

Patch : FIXME

Path coverage : FIXME

Path : FIXME

Pattern rule : FIXME

Phony target : FIXME

Pipe (in Unix) : FIXME

Positional argument : FIXME

Postcondition : FIXME

Pothole case : FIXME

Power law : FIXME

Precondition : FIXME

Prerequisite (in Make) : FIXME

Privilege : FIXME

Procedural programming : FIXME

Process : FIXME

Product manager : FIXME

Project manager : FIXME

Prompt : FIXME

Provenance : FIXME

Public domain license (CC-0) : FIXME

Pull request : FIXME

Python : FIXME

Raise : FIXME

Raster image : FIXME

Recursion : FIXME

Redirection : FIXME

Refactoring : FIXME

Regression testing : FIXME

Regression : FIXME

Regular expression : a sequence of characters that define a pattern that can be used to find matching strings

Relative error : FIXME

Relative path : Is a reference to a folder or file that begins at the [current working directory][current-working-directory], unlike an [absolute path][absolute-path] that starts with the [root directory][root-directory].

Remote login : FIXME

Remote login server : FIXME

Remote repository : FIXME

Repl : FIXME

Repository : FIXME

Reproducible example (reprex) : A way of showing a code example that demonstrates the usage of the code or to highlight an error or bug that easily allows another user to re-create ("reproduce") the same output or error.

Reproducible research : A central pillar of rigorous research that involves describing and documenting the research results in such a way that another researcher or person can re-run the analysis code on the exact data to obtain the same result, to "reproduce" the findings.

Research software engineer (RSE) : FIXME

Restructured Text (reST) : A plain text markup language used by much Python documentation and documentation tooling.

Revision : FIXME

Root directory : The root folder is the folder that contains all folders and files on the computer. It is the starting point to all files and is essentially referring to the hard drive itself. An analogy to the root directory would be that it is the trunk of a tree and all other folders are branches from that trunk.

Rotating file : FIXME

Rule (in Make) : FIXME

Secure Shell (SSH) : FIXME

SSH daemon : FIXME

SSH key : FIXME

SSH protocol : FIXME

Script : FIXME

Search path : FIXME

Semantic versioning : FIXME https://semver.org/

Sense vote : FIXME

Shebang : FIXME

Shell script : FIXME

Short circuit test : FIXME

Short identifier (in Git) : FIXME

Short option : FIXME

Snake case : FIXME

Source distribution : FIXME

Sprint : FIXME

Standard error : FIXME

Standard input : FIXME

Standard input : FIXME

Standard output : FIXME

Standard output : FIXME

Stop word : FIXME

Subcommand : FIXME

Subdirectory : FIXME

Sustainable software : FIXME

Tab completion : FIXME

Tag : FIXME

Target : FIXME

Target (in Make) : FIXME

Ternary expression : FIXME

Test framework : FIXME

Test runner : FIXME

Test-driven development : FIXME

Three stickies : FIXME

Ticket : FIXME

Ticketing system : FIXME

Tidy data : As defined in @Wick2014, tabular data is tidy if (1) each variable is in one column, (2) each different observation of that variable is in a different row, (3) there is one table for each kind of variable, and (4) if there are multiple tables, each includes a key so that related data can be linked.

Timestamp (on a file) : FIXME

Tolerance : FIXME

Transitive dependency : FIXME

Triage : FIXME

Tuple : FIXME

Unit test : FIXME

Unix shell : FIXME

Up-vote : FIXME

Update operator : See [in-place operator][in-place-operator].

Validation : FIXME

Variable (in Make) : FIXME

Verification : FIXME

Version control system : FIXME

Virtual environment : In Python, the virtualenv package allows you to create virtual, disposable, Python software environments containing only the packages and versions of packages you want to use for a particular project or task, and to install new packages into the environment without affecting other virtual environments or the system-wide default environment.

Virtual machine : A program that pretends to be a computer. This may seem a bit redundant, but VMs are quick to create and start up, and changes made inside the virtual machine are contained within that VM so we can install new packages or run a completely different operating system without affecting the underlying computer.

Whitespace : FIXME

Wildcard : FIXME

Working memory : FIXME

Wrap code : FIXME