Classes and Instances: Types and objects. If we have a class (type) called Car, then Peugeot 406 and Fiat Ritmo will be instances (objects) of this class. There may also be other instances unique to Peugeot 406, differentiated by, for example, their Model number.
Command Line Interface (or Console / Terminal): Allows you to interact with your computer (add, delete, modify files and much more) solely by typing instructions (commands).
Function: Code that can be re-used; if a formula has to change, you only need to change it in one place.
Git: A type of Version Control Software (VCS).
Github: A site that hosts git repositories. Github also adds a number of tools that aid interaction between developers collaborating on software.
Grouping: Indents and whitespaces are used for grouping code together and simplify readability. Ruby also uses do … end to group.
Heroku: A site that allows you to host your Ruby on Rails applications. Heroku also supports other languages and frameworks.
Home directory: On a OS X or Linux computer, this is where the files and settings belonging to your user are stored.
Loop: While something is true, do this. When something becomes not true then break the loop / stop.
Markdown: A lightweight markup language that allows you to write using an easy-to-read, easy-to-write plain text format, and then convert it to structurally valid XHTML (or HTML).
Rake: A Ruby application that can be used to perform a number of custom tasks. It is often used to carry out maintenance or ad-hoc jobs.
Repository (or Repo): A grouping of files within Version Control Software. When using Git, you will need to have access to a particular repository before you can start making changes to the source code.
Ruby: A programming language.
Ruby on Rails: A web framework written in Ruby. It has been designed in such a way as to make web development as fast and as easy as possible.
RubyGem: A package manager for the Ruby programming language that provides a standard format for distributing Ruby programs and libraries (in a self-contained format called a "gem"), a tool designed to easily manage the installation of gems and a server for distributing them.
RVM: The Ruby Version Manager. An application that makes it easy to have multiple versions of Ruby on your computer at once.
Script: A term often used to describe a text file containing a series of instructions, written in Ruby, that will be used to produce the output visible in a browser.
Shell: The software that interprets your commandline instructions. Often used as a synonym for the Command Line Interface.
SSH: Secure Shell. A way to securely connect to a remote computer.
String: Text only, typed between inverted commas.
Text editor: A program that allows you to create and modify the text files that will be used by Ruby on Rails to run your command. Some text editors are optimised for software development and provide tools that increase productivity.
Variable: A storage location and an associated symbolic name (an identifier) which contains some known or unknown quantity or information (a value). The variable name is the usual way to reference the stored value; this separation of name and content allows the name to be used independently of the exact information it represents.
Version Control Software: Software that tracks changes to your source code and also allows you to undo or combine changes.