{
  "id": "ruby",
  "name": "Ruby",
  "appeared": 1995,
  "creators": [
    "Yukihiro Matsumoto"
  ],
  "type": "web",
  "status": "alive",
  "tagline": "Object-oriented scripting language, best known for the Rails web framework.",
  "born_from": "Yukihiro Matsumoto, known as Matz, began Ruby in 1993 and released it publicly in 1995. He wanted a scripting language more capable than Perl and more object-oriented than Python, and he designed it so that programmers would be happy using it.",
  "reacts_to": [
    "perl",
    "python",
    "smalltalk",
    "lisp"
  ],
  "tradeoffs": {
    "memory": "gc",
    "types": "dynamic",
    "run": "interpreted",
    "concurrency": [
      "threads",
      "green"
    ],
    "cost": "Code can change at run time, which makes programs easy to bend and harder for tools to check, and the interpreter runs one thread of Ruby code at a time."
  },
  "slots": [
    {
      "slot": "server",
      "fit": "strong",
      "note": "Rails is the main framework; GitHub and Shopify run on it."
    },
    {
      "slot": "scripts",
      "fit": "ok"
    },
    {
      "slot": "cli",
      "fit": "ok",
      "note": "Homebrew package definitions are Ruby files."
    },
    {
      "slot": "data",
      "fit": "weak",
      "note": "Python dominates data work."
    },
    {
      "slot": "browser",
      "fit": "none",
      "note": "The browser never runs Ruby; Rails sends HTML and JavaScript to it."
    }
  ],
  "won_where": [
    {
      "what": "GitHub's main application moved to Rails 5.2.1 on August 15, 2018",
      "source": "https://github.blog/engineering/upgrading-github-from-rails-3-2-to-5-2/"
    },
    {
      "what": "Shopify, which calls itself one of the largest Ruby on Rails codebases in existence",
      "source": "https://shopify.engineering/deconstructing-monolith-designing-software-maximizes-developer-productivity"
    },
    {
      "what": "Homebrew, whose package definitions (formulae) are Ruby files",
      "source": "https://docs.brew.sh/Formula-Cookbook"
    }
  ],
  "alternatives": [
    "python",
    "php",
    "javascript"
  ],
  "timeline": [
    {
      "year": 1993,
      "what": "Matsumoto begins work on Ruby",
      "source": "https://www.artima.com/intv/ruby.html"
    },
    {
      "year": 1995,
      "what": "Ruby is released publicly",
      "source": "https://www.ruby-lang.org/en/about/"
    },
    {
      "year": 2004,
      "what": "David Heinemeier Hansson releases Rails as open source in July",
      "source": "https://en.wikipedia.org/wiki/Ruby_on_Rails"
    },
    {
      "year": 2018,
      "what": "GitHub's main application runs on Rails 5.2.1 from August 15",
      "source": "https://github.blog/engineering/upgrading-github-from-rails-3-2-to-5-2/"
    },
    {
      "year": 2020,
      "what": "Ruby 3.0.0 is released on December 25",
      "source": "https://www.ruby-lang.org/en/news/2020/12/"
    },
    {
      "year": 2025,
      "what": "Ruby 4.0.0 is released on December 25",
      "source": "https://www.ruby-lang.org/en/news/2025/12"
    }
  ],
  "links": {
    "website": "https://www.ruby-lang.org/en/about/",
    "repo": "https://github.com/ruby/ruby",
    "docs": "https://docs.ruby-lang.org/en/"
  },
  "pldb": "ruby",
  "sources": [
    "https://www.artima.com/intv/ruby.html",
    "https://www.ruby-lang.org/en/about/",
    "https://en.wikipedia.org/wiki/Ruby_on_Rails",
    "https://github.blog/engineering/upgrading-github-from-rails-3-2-to-5-2/",
    "https://shopify.engineering/deconstructing-monolith-designing-software-maximizes-developer-productivity",
    "https://docs.brew.sh/Formula-Cookbook",
    "https://www.infoworld.com/article/3687219/whatever-happened-to-ruby.html",
    "https://www.ruby-lang.org/en/news/2020/12/",
    "https://www.ruby-lang.org/en/news/2025/12",
    "https://survey.stackoverflow.co/2025/technology/"
  ],
  "verified": false,
  "last_reviewed": "2026-10-30",
  "prose": "## Why it exists\n\nYukihiro Matsumoto, known as Matz, began Ruby in 1993 and released it publicly in 1995 ([Artima interview, 2003](https://www.artima.com/intv/ruby.html); [ruby-lang.org](https://www.ruby-lang.org/en/about/)). He wanted a scripting language that was more capable than Perl and more object-oriented than Python. Along the way he borrowed from Smalltalk, Eiffel, Ada and Lisp ([ruby-lang.org](https://www.ruby-lang.org/en/about/)). His goal was programmer happiness: \"So Ruby is designed to make programmers happy\" ([Artima interview](https://www.artima.com/intv/ruby.html)). The web framework that made the language famous, Rails, came later, released as open source in July 2004 ([Wikipedia](https://en.wikipedia.org/wiki/Ruby_on_Rails)).\n\n## What it trades away\n\nRuby favors the programmer over the machine. Classes can be reopened and methods changed while the program runs, which makes code pleasant to bend and harder for tools to check. Matz describes the aim as \"natural, not simple\" ([ruby-lang.org](https://www.ruby-lang.org/en/about/)). The interpreter runs one thread of Ruby code at a time, so CPU-heavy work scales by adding processes rather than threads. Type mistakes also surface only when the code runs, because nothing checks them before that.\n\n## Where it won\n\nRails is the win that made Ruby famous. Hansson extracted it from his work on Basecamp ([Wikipedia](https://en.wikipedia.org/wiki/Ruby_on_Rails)). GitHub's main application moved to Rails 5.2.1 on August 15, 2018, after an upgrade that used dual booting, which let changes for the next version ship without disrupting production ([GitHub Engineering](https://github.blog/engineering/upgrading-github-from-rails-3-2-to-5-2/)). Shopify calls itself one of the largest Ruby on Rails codebases in existence ([Shopify Engineering](https://shopify.engineering/deconstructing-monolith-designing-software-maximizes-developer-productivity)). Homebrew package definitions, called formulae, are Ruby files ([Homebrew docs](https://docs.brew.sh/Formula-Cookbook)). Ruby has also declined: a 2023 InfoWorld column said JavaScript now dominates the spaces where Ruby used to rule ([InfoWorld](https://www.infoworld.com/article/3687219/whatever-happened-to-ruby.html)). In the 2025 Stack Overflow survey, 6.4 % of respondents used Ruby ([Stack Overflow](https://survey.stackoverflow.co/2025/technology/)).",
  "url": "https://langwhy.dev/lang/ruby/",
  "markdown": "https://langwhy.dev/lang/ruby.md",
  "license": "CC0-1.0"
}