Technology

Operating systems

Programming languages

  • Ruby – a high-level programming language designed by Japanese Yukihiro “Matz” Matsumoto in the mid-1990s. Ruby is interpreted and object-oriented, but supports several other programming paradigms (including procedural and functional programming and concurrency), provides dynamic typing, reflection, and automatic garbage collection.

Web and App Server

  • Apache – an open source HTTP server for modern operating systems, including UNIX and Windows NT. The aim of the project is the development of a secure, efficient, and expandable server for providing HTTP services in accordance with current HTTP standards.
  • Passenger – App server typically used to run web applications written in Ruby.

Web Application Framework

  • Ruby on Rails – an open-source web application framework written in the Ruby programming language. Rail is a “full-stack framework”, which means that it enables the developer to get information about the web server, perform database queries, and render new content using templates.

Development tools

  • Git – a free distributed file versioning software originally developed for source control of the Linux kernel.
  • Redmine – a web-based project management tool. It can be used for user and project management, discussion forums, wikis, ticket management, or document storage. Redmine is used in several large projects worldwide, including the issue tracking system for the Ruby programming language and the TYPO3 developer portal.
  • Github – a web-based hosting service for software development projects. It uses the Git version control system, which gives it its name.

Libraries

  • Elasticsearch – Elasticsearch is a search engine based on the Lucene library. It offers a distributed, multi-tenant capable full-text search engine with HTTP web interface and schema-free JSON documents.
  • Nokogiri – Nokogiri (鋸) makes it easy and painless to work with XML and HTML from Ruby.
  • LibXML Ruby – Ruby binding for GNOME’s Libxml2 XML Toolkit.
  • ImageMagick – an open-source collection of programs for viewing, converting, and adjusting raster images. ImageMagick is able to read and write more than 100 file formats.
  • Lingo – a freely available system for the linguistically and statistically based automatic indexing of German and English. Lingo works with a dictionary model that implements a base form identification or reduction with a base form dictionary and an associated simple suffix list. Lingo also has an algorithmic compound decomposition, an algorithmic and lexical multi-word recognition as well as a general lexical relation.

System administration

  • Icinga – an open-source tool for monitoring networks and network resources, which notifies the user of errors and recovery attempts, as well as providing data on runtime behavior. Due to its scalability and flexibility, Icinga is also able to monitor complex applications distributed over many locations.