, Category Tree
, Crop Ratio
, Programmer Teacher
, Chain Link
, Read First Line
, Read Write Execute
, Numbers to Text
, Date Transform
, Log Patch
Ruby is a dynamic, reflective, object-oriented, general-purpose programming language. Having a basic familiarity with the programming language used on the job is a prerequisite for quickly getting up to speed.
Everyone makes mistakes. A good programmer should be able to find and fix a bug in their or someone else's code.
A programmer should use a language as a tool, always taking advantage of language-specific data types and built-in functions.
Choosing the right data structure to solve a problem can have huge implications on the performance of an application. Knowing when to use a specific data structure is one of the most important skills for a programmer.
Object-oriented programming is a paradigm based on encapsulating logic and data into objects, which may then contain fields and procedures. Many of the most widely used programming languages are based on OOP, making it a very important concept in modern programming.
Exceptions exist in most modern programming languages, making it important for a programmer to understand them and know how to handle them.
Arithmetic is a fundamental branch of mathematics. An understanding of arithmetic concepts, and their application, is important for every candidate.
The string data structure is used to represent text. It is one of the most commonly used data structures. Therefore, every programmer should be skilled at string manipulation.
A stream is a sequence of data elements made available over time. It is particularly useful for tasks that may benefit from being asynchronous, including tasks such as I/O processing or reading from a file, and as such is important for developers to understand.
Familiarity with data serialization to and from formats such as XML and JSON is important as it is commonly used for interprocess communication
Every programmer should be familiar with data-sorting methods, as sorting is very common in data-analysis processes.
An array is a container of a fixed number of objects of a similar type. It is a fundamental component of most programming languages.
Iteration is the act of repeating a process, or cycling through a collection. Iteration is one of the fundamental flow control tools available to developers.
A range is an immutable sequence of numbers between the start and end. As a core data structure used for flow control in many programming languages, it's important for all developers to be familiar with.
Monkey Patching is a method of either adding new or overriding existing functionality without the creation of a new type. As such it's an important tool for developers to be familiar with.