“R” – IT Outsourcing Vocabulary

  • R Programming Language – The R programming language, sometimes described as “GNU S”, is a programming language and software environment for statistical computing and graphics. It was originally created by Ross Ihaka and Robert Gentleman (hence the name R) at the University of Auckland, New Zealand, and is now developed by the R core team. R is considered by its developers to be an implementation of the S programming language, with semantics derived from Scheme.
  • Racter: Raconteur – Racter, short from raconteur, was an artificial intelligence computer program that generated English language prose at random. Its existence was revealed to the world in 1984. The great sophistication claimed for the program was, however, a hoax, as could be seen by investigation of the template system of text generation.
  • Rainlender – Rainlendar is an open-source computer application that displays a calendar on the desktop. It also can maintain events and a to-do list. It is popular because it uses few system resources when running, and supports “skins” or GUI changes. Because of the ability to be skinned, it has become a mainstay on many shell replacement themes (such as Litestep and Aston). The name Rainlendar is a combination of ‘Rainy’ and calendar.
  • RAR: Roshal Archive – In computing, RAR, short of Roshal ARchive, is a proprietary file format for data compression and archiving, which was developed by Eugene Roshal (hence the name RAR: Roshal ARchive). He also developed programs for packing and unpacking RAR files, originally for DOS, and later ported to other platforms. The encoder (the main Windows version known as WinRAR) is distributed as shareware, but Roshal has released the decoder’s source code under a license that allows free distribution and modification, on condition that it is not used to build a compatible encoder. The encoding method is held to be proprietary, but compatible programs for decompression are available for several platforms, such as the open-source 7-Zip.
  • RDBMS: Relational Database Management System – A relational database management system (RDBMS) is a database management system (DBMS) that is based on the relational model as introduced by Edgar F. Codd. However commercial RDBMSs also tend to diverge from the relational model in significant ways. The qualify as a RDBMS, the system must satisfy the following minimum criteria: 1) presented the data to the user as relations (a presentation in tabular form, i.e. as a collection of tables with each table consisting of a set of rows and columns, can satisfy this property); 2) provided relational operators to manipulate the data in tabular form.
  • RealSky – RealSky is a digital photographic sky atlas, which is a subset of the Digitized Sky Survey (DSS) published in 1996 by the Astronomical Society of the Pacific. RealSky is composed of the “RealSky” product, covering the northern sky, and “RealSky South,” published slightly later and covering the southern sky.
  • Recursive – Recursive in computer programming refers to software that calls itself. Recursion should generally be avoided in an embedded system, since it frequently requires a large stack.
  • Redundant Code – Redundant code, also known as duplicate code, refers to the code in a computer program that is executed but has no effect on the output of a program, because this piece of code is the second and subsequent copies of functionaly the same code executed somewhere else.
  • Reentrant – Reentrant refers to software that can be executed multiple times simultaneously. A reentrant function can be safely called recursively or from multiple tasks. The key to making code reentrant is to ensure mutual exclusion whenever accessing global variables or shared registers.
  • Refactoring – Refactoring is the process of rewriting a computer program or other material to improve its structure or readability, while explicitly preserving its meaning or behavior. For example, if a programmer wants to add new functionality to a program, he may decide to refactor the program first to simplify the addition of new functionality in order to prevent software entropy.
  • Register Allocation – In compiler optimization, register allocation is the process of multiplexing a large number of target program variables onto a small number of CPU registers.Most computer programs need to process large amounts of different data items. However, most CPUs can only perform operations on a small fixed number of “slots” called registers. Even on machines that support memory operands, register access is considerably faster than memory access.
  • Register Spilling – Register spilling occurs during a program compilation where there are more live variables than the register can hold. When a compiler is generating machine code and there are more live variables than the machine has registers, it has to transfer or “spill” some variables from registers to memory. This incurrs at certain cost, as access from memory is typically slower than access from a register.
  • Regression Testing – Regression testing is any type of software testing which seeks to uncover regression bugs. Regression bugs occur whenever software functionality that previously worked as desired stops working or no longer works in the same way that was previously planned. Typically regression bugs occur as an unintended consequence of program changes. Common methods of regression testing include re-running previously run tests and checking whether previously fixed faults have reemerged.
  • Relational Database – A relational database is a database structured in accordance with the relational model. Strictly speaking the term refers to a specific collection of data but it is invariably employed together with the software used to manage that collection of data. That software is more correctly called a relational database management system (RDBMS). Relational database management systems incorporate many features from the relational model, but commercial RDBMSs also tend to diverge from the relational model in significant ways.
  • Relational Model – The relational model, a mathematical model invented by Edgar Codd, is a data model for database management based on predicate logic and set theory. The fundamental assumption of the relational model is that all data is represented as mathematical n-ary relations, an n-ary relation being a subset of the Cartesian product of n domains. In the mathematical model, reasoning about such data is done in two-valued predicate logic, meaning there are two possible evaluations for each proposition: either true or false (and in particular, no third value such as unknown, or not applicable, either of which is often associated with the concept of NULL). Some think that logic (which is inherently two-valued) is an important part of the relational model, where others think that a system that uses a form of three-valued logic can still be considered relational.
  • Rematerialization – Rematerialization is a compiler optimization method which saves time by recomputing a value instead of loading it from memory. It is typically tightly integrated with register allocation, where it is used as an alternative to spilling registers to memory.
  • Remote Control Software – Remote control software is a type of software used in remote administration to allow use of computers or other hardware at a separate location. A typical use is to control a server or desktop computer from another desktop computer. The remote control software consists of two separate computer programs, a “host version” that is installed on the computer to be controlled, and a “remote version” that is installed on the controlling computer. Remote control operation is used to take control of an unattended desktop personal computer from a remote locationas well as to provide instruction and technical support to remote users.
  • Renegade BBS – Renegade is a bulletin board system (BBS) written for IBM PC-compatible computers running MS-DOS. It was written in Pascal by Cott Lang and gained popularity in the early 1990s. Renegade is based on the source code to Telegard, and was available free of charge. This was one of the reasons it became the most popular BBS software in use at the time.
  • Report Writer – Report writer , also called a report generator, is a program, usually part of a database management system, that extracts information from one or more files and presents the information in a specified format. Most report writers allow user to select records that meet certain conditions and to display selected fields in rows and columns, pie charts, bar charts, and other diagrams.
  • Repository Open Service Interface Definition – The Repository Open Service Interface Definition (OSID) is an O.K.I. specification which defines the storing and retrieving of digital content, referred to as Assets. OSIDs are programmtic interfaces which comprise a Service Oriented Architecture for designing and building reusable and interoperable software. Assets may contain metadata and reside in Repositories which support one or more Asset Types. Multiple repositories can be managed or searched through the use of OSID adapter patterns where underneath a single Repository OSID can exist multiple Repository OSIDs forming a federation of repositories, where each implementation may be using a distinct incompatible technology and the OSID integrates them.
  • Revision Control – Revision control, also known as version control or source control, is the management of multiple revisions of the same unit of information and information systems. It is most commonly used in engineering and software development to manage ongoing development of digital documents like application source code, art resources such as blueprints or electronic models and other critical information that may be worked on by a team of people. Changes to these documents are identified by incrementing an associated number or letter code, termed the “revision number”, “revision level”, or simply “revision” and associated historically with the person making the change. A simple form of revision control, for example, has the initial issue of a drawing assigned the revision number “1”. When the first change is made, the revision number is incremented to “2” and so on.
  • Revision Control System – Revision control system manages multiple revisions to a single unit of information, typically a digital document containing source code. It is most commonly used in engineering and software development to manage ongoing development of digital documents like application source code, art resources such as blueprints or electronic models and other critical information that may be worked on by a team of people. Changes to these documents are identified by incrementing an associated number or letter code, termed the “revision number”, “revision level”, or simply “revision” and associated historically with the person making the change.
  • Rewind – Rewind is an open source project to implement a compatibility layer for the Microsoft Windows API on UNIX with X11. It supports FreeBSD, Solaris and Linux. It grew out of the original MIT Licensed WINE project after WINE changed its license to the GNU LGPL in March 2002.
  • RISC iX – RISC iX was a Unix-like operating system designed to run on the Acorn Archimedes R140, R225 and R260 models. These are fundamentally similar to the A440 (later A440/1) and A540 models. It was based on 4.3 BSD and had a number of innovative features, including a transparent file compression mechanism and a console text copying mechanism more familiar to microcomputer owners than to Unix people.
  • RISC OS: Reduced Instruction Set Computer Operating System – Reduced Instruction Set Computer Operating System(RISC OS) is a Graphical user interface-based operating system for ARM-processor based computers or similar devices. RISC OS replaced the Arthur operating system used on the first Archimedeses. It is written in ARM assembly code and distributed on ROM so it takes up no disk space and takes no time to load. It supports cooperative multitasking with memory management and includes a graphical user interface or “WIMP”.
  • RKWard – RKWard is an easy to use, transparent frontend to the R programming language, a very powerful, yet hard-to-get-into scripting-language with a strong focus on statistic functions. RKWard tries to combine the power of the R-language with the ease of use of commercial statistical packages.
  • ROBODoc – ROBODoc is a documentation tool similar to javadoc. It is used to extract API documentation from source code. It can be used with any language that supports remarks and works by extracting specially formated headers. These are then reformatted into HTML, DocBook, TROFF, ASCII, LaTeX, PDF, or RTF.
  • Robustness – In the context of computer software, robustness is the resilience of the system, especially when under stress or when confronted with invalid input. For example, an operating system is considered robust if it operates correctly when it is starved of memory or storage space, or when confronted with an application that has bugs or is behaving in an illegal fashion – such as trying to access memory or storage belonging to other tasks in a multitasking system.
  • ROFUG: Romanian FreeBSD Users Group – Romanian FreeBSD Users Group(ROFUG), also known as Romanian Free Unix Group, is a FreeBSD user group with the main objective to form a Romanian user community centered around FreeBSD and the open source concept.
  • RosAsm – RosAsm is a 32-bit Win32 x86 assembler released under the GNU General Public License. The name stands for ReactOS ASseMbler, however is unrelated to that project. RosAsm is an IDE with full integration of assembler, linker, resource editor, debugger and disassembler. RosAsm packages the source code from which an executable was compiled directly within the portable executable files. Note: although RosAsm contains a linker for internal operation, it does not allow linking in external object modules other than DLLs, nor does it support the ability to produce object modules that can be linked with other programs.
  • Rosegarden – Rosegarden is an open source digital audio workstation program developed for Linux with ALSA and KDE. It acts as an audio and MIDI sequencer, scorewriter and musical composition and editing tool. It is intended to be a free replacement for such applications as Cubase. Rosegarden does not include a software synthesizer, but works with soft synthesizers such as IIWU Synth and Timidity.
  • Routine – In computer programming, a routine, also called subroutine or function or procedure, is a section of a program that performs a particular task. Programs consist of modules, each of which contains one or more routines.
  • Rpcdump – Rpcdump is a Windows 2000 Resource Kit tool for displaying services registered with the remote procedure call (RPC) endpoint mapper.
  • rsh: Remote Shell Protocol – Remote Shell Protocol (rsh) is a protocol that allows a user to execute commands on a remote system without having to log in to the system. For example, rsh can be used to remotely examine the status of a number of access servers without connecting to each communication server, executing the command, and then disconnecting from the communication server. rsh originated as part of the BSD Unix operating system as part of the rlogin package on 4.2BSD in 1983. rsh has since been ported to other operating systems. rsh is mostly replaced by a more secured protocol called Secure Shell protocol(SSH) in today’s environment.
  • RTM: Release to Manufacturing – Release to manufacturing (RTM), in software industry, refers to the process of providing the version of a software product to manufacturers to bundle into future versions of their hardware products. RTM versions are typically released to manufacturers before they are released to the general public so that the manufacturers can conduct integration and work out any bugs the software may encounter with hardware devices. The release of an RTM version does not necessarily mean that the creators have worked out all the problems with the software; there still may be more versions of the product before it is released to the general public.
  • Rtorrent – rTorrent is a command line ncurses BitTorrent client written in C++, based on the libTorrent libraries. for Unices, with a focus on high performance and good code. The library differentiates itself from other implementations by transfering directly from file pages to the network stack. On high-bandwidth connections it is able to seed at 3 times the speed of the official client. rTorrent packages are available for Arch Linux, Debian, FreeBSD, Gentoo Linux and Mandriva Linux; of course, rTorrent will compile on nearly every POSIX-compliant OS.
  • RTOS: Real-Time Operating System – Real-time operating system (RTOS) is an operating system designed specifically for use in real-time systems and applications. Examples include embedded applications (programmable thermostats, household appliance controllers, mobile telephones), industrial robots, industrial control, and scientific research equipment. A real-time operating system does not necessarily have high throughput the specialized scheduling algorithm and a high clock-interrupt rate can both interfere with throughput. That is to say, RTOS are valued more for how quickly they can respond to input than for the total amount of work they can do.
  • RTSC: Read the Source Code – Read the Source Code (RTSC) is an acronym often used when a software developer asks a question about undocumented code.
  • Ruby Programming Language – Ruby Programming Language is a reflective, object-oriented programming language. It combines syntax inspired by Perl with Smalltalk-like object-oriented features, and also shares some features with Python, Lisp, Dylan and CLU. Ruby is a single-pass interpreted language. Its main implementation is free software distributed under an open-source license.
  • Runtime – In computer science, runtime or run time describes the operation of a computer program, the duration of its execution, from beginning to termination (compare compile time).
  • Runtime Environment – A runtime environment, in computer science, is a virtual machine state which provides software services for processes or programs while a computer is running. It may pertain to the operating system itself, or the software that runs beneath it.
  • Runtime Error – Runtime error is a type of program errors that exposed when the program is running. Logical errors and array bounds checking are examples. For this reason, some programming bugs are not discovered until the program is tested in a “live” environment with real data, despite sophisticated compile-time checking and pre-release testing. In this case, the end user may encounter a runtime error message.
  • Runtime Library – A runtime library, in computer science, refers to a collection of utility functions which support a program while it is running, working with the operating system to provide facilities such as mathematical functions, input and output. These make it unnecessary for programmers to continually rewrite basic capabilities specified in a programming language or provided by an operating system.
  • RUP: Rational Unified Process – Rational Unified Process(RUP) is a software development methodology from Rational. Based on UML, RUP organizes the development of software into four phases, each consisting of one or more executable iterations of the software at that stage of development.
  • Rzip – rzip is a data compression program based on bzip2. rzip operates in two stages. The first stage finds and encodes large chunks of duplicated data over potentially very long distances (up to nearly a gigabyte) in the input file. The second stage is to use a standard compression algorithm (bzip2) to compress the output of the first stage.