# ruby programming language

Published articles for ruby programming language.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Chainguard Releases Ruby 4.0 Packages and Container Images

DevFeed: [Chainguard Releases Ruby 4.0 Packages and Container Images](<https://devfeed.tech/articles/unwrapping-ruby-4-0-chainguard-delivers-a-gem-just-in-time-for-boxing-day-13307.md>)

Original publisher: [Read original article](<https://www.chainguard.dev/unchained/unwrapping-ruby-4-0>)

Published: 2025-12-26T00:00:00Z

Content type: release

Language: en

Sources: [Chainguard: Unchained](<https://devfeed.tech/sources/chainguard-unchained.md>)

Topics: [Ruby](<https://devfeed.tech/topics/ruby.md>), [chainguard](<https://devfeed.tech/topics/chainguard.md>), [chainguard containers](<https://devfeed.tech/topics/chainguard-containers.md>), [Containers](<https://devfeed.tech/topics/containers.md>)

Tags: [architectures](<https://devfeed.tech/tags/architectures.md>), [chainguard](<https://devfeed.tech/tags/chainguard.md>), [chainguard-containers](<https://devfeed.tech/tags/chainguard-containers.md>), [chainguard-ruby-image](<https://devfeed.tech/tags/chainguard-ruby-image.md>), [cmvp](<https://devfeed.tech/tags/cmvp.md>), [container-images](<https://devfeed.tech/tags/container-images.md>), [containers](<https://devfeed.tech/tags/containers.md>), [fedramp](<https://devfeed.tech/tags/fedramp.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [ruby-programming-language](<https://devfeed.tech/tags/ruby-programming-language.md>)

### AI overview

Chainguard announces packages and container images for Ruby 4.0, which includes performance improvements and language refinements. The images support x86_64 and ARM64, include stated hardening and runtime-security features, and are available through Chainguard, Docker Hub, and AWS Public ECR.

### Source excerpt

Chainguard delivers Ruby 4.0 container images: secure, zero-CVE, FIPS-ready, and available free so developers can adopt the latest Ruby safely and fast.

## The Case Against Monkey Patching, From a Rails Core Team Member

DevFeed: [The Case Against Monkey Patching, From a Rails Core Team Member](<https://devfeed.tech/articles/the-case-against-monkey-patching-from-a-rails-core-team-member-1642.md>)

Original publisher: [Read original article](<https://shopify.engineering/the-case-against-monkey-patching>)

Author: Eileen Uchitelle

Published: 2023-02-21T14:00:04Z

Content type: opinion

Language: en

Sources: [Shopify Engineering](<https://devfeed.tech/sources/shopify-engineering.md>), [Shopify Engineering - Shopify Engineering](<https://devfeed.tech/sources/shopify-engineering-shopify-engineering.md>)

Topics: [Rails](<https://devfeed.tech/topics/rails.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [framework](<https://devfeed.tech/tags/framework.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [pull-request](<https://devfeed.tech/tags/pull-request.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [ruby-programming-language](<https://devfeed.tech/tags/ruby-programming-language.md>), [shopify](<https://devfeed.tech/tags/shopify.md>)

### AI overview

This opinion argues that Ruby monkey patches should be used sparingly, if at all, because they are brittle, dangerous, and often unnecessary. It defines monkey patches as dynamic changes to existing code, discusses an Active Record adapter that altered MySQL query-warning behavior, and describes upstreaming that behavior into Rails to remove the patch.

### Source excerpt

Monkey patching is considered one of the more powerful features of the Ruby programming language. However, by the end of this post I'm hoping to convince you that they should be used sparingly, if at all, because they are brittle, dangerous, and often unnecessary. I'll also share tips on how to use them as safely as possible in the rare cases where you do need to monkey patch.

## Using GraphQL with Ruby on Rails

DevFeed: [Using GraphQL with Ruby on Rails](<https://devfeed.tech/articles/using-graphql-with-ruby-on-rails-23563.md>)

Original publisher: [Read original article](<https://www.apollographql.com/blog/using-graphql-with-ruby-on-rails>)

Author: Erin Fox

Published: 2021-11-18T11:00:05Z

Content type: tutorial

Language: en

Sources: [Apollo Blog](<https://devfeed.tech/sources/apollo-blog.md>)

Topics: [GraphQL](<https://devfeed.tech/topics/graphql.md>), [Ruby on Rails](<https://devfeed.tech/topics/ruby-on-rails.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>), [mvc](<https://devfeed.tech/topics/mvc.md>), [API](<https://devfeed.tech/topics/api.md>), [Framework](<https://devfeed.tech/topics/framework.md>), [web applications](<https://devfeed.tech/topics/web-applications.md>), [Programming language](<https://devfeed.tech/topics/programming-language.md>), [Front end](<https://devfeed.tech/topics/frontend.md>), [React](<https://devfeed.tech/topics/react.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [apis](<https://devfeed.tech/tags/apis.md>), [apollo](<https://devfeed.tech/tags/apollo.md>), [applications](<https://devfeed.tech/tags/applications.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [backend](<https://devfeed.tech/tags/backend.md>), [business-logic](<https://devfeed.tech/tags/business-logic.md>), [community](<https://devfeed.tech/tags/community.md>), [declarative](<https://devfeed.tech/tags/declarative.md>), [framework](<https://devfeed.tech/tags/framework.md>), [frontend](<https://devfeed.tech/tags/frontend.md>), [graphql](<https://devfeed.tech/tags/graphql.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [mvc](<https://devfeed.tech/tags/mvc.md>), [programming](<https://devfeed.tech/tags/programming.md>), [rails](<https://devfeed.tech/tags/rails.md>), [react](<https://devfeed.tech/tags/react.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [ruby-on-rails](<https://devfeed.tech/tags/ruby-on-rails.md>), [ruby-programming-language](<https://devfeed.tech/tags/ruby-programming-language.md>), [web-applications](<https://devfeed.tech/tags/web-applications.md>)

### AI overview

A tutorial introducing Ruby on Rails and GraphQL, then demonstrating how to build and query a Rails-GraphQL API with React and Apollo.

### Source excerpt

Objective: Learn how to create a new project with Ruby on Rails and GraphQL while setting it up to use React and Apollo. The focus is on getting the API running and executing a query. Introduction Ruby on Rails is an MVC (model, view, controller) framework that you can use to build web applications using the Ruby programming language. GraphQL is a declarative query language and server-side runtime that makes it easier for frontend developers to perform data fetching.

## Ruby Private Class Methods

DevFeed: [Ruby Private Class Methods](<https://devfeed.tech/articles/ruby-private-class-methods-21060.md>)

Original publisher: [Read original article](<https://jakeyesbeck.com/2016/01/24/ruby-private-class-methods/>)

Published: 2016-01-24T12:00:00Z

Content type: tutorial

Language: en

Sources: [Jake Yesbeck](<https://devfeed.tech/sources/jake-yesbeck.md>)

Topics: [Ruby](<https://devfeed.tech/topics/ruby.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Code](<https://devfeed.tech/topics/code.md>), [Programming language](<https://devfeed.tech/topics/programming-language.md>)

Tags: [code](<https://devfeed.tech/tags/code.md>), [programming](<https://devfeed.tech/tags/programming.md>), [programming-language](<https://devfeed.tech/tags/programming-language.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [ruby-programming-language](<https://devfeed.tech/tags/ruby-programming-language.md>), [syntax](<https://devfeed.tech/tags/syntax.md>)

### AI overview

This tutorial explains Ruby method visibility, focusing on how to define private class methods. It contrasts instance methods, class methods, public, private, and protected visibility, then shows why a direct private declaration can fail for a class method and introduces eigenclass syntax as an alternative.

### Source excerpt

In the Ruby programming language, defined methods come in two variants: instance methods and class methods. Instance methods are available after an object has been initialized, creating an instance. Class methods, on the other hand, are available without creating an instance of the class they are defined upon. Ruby methods can vary in visibility. Public methods are available in any context, while private methods' availability is restricted within the instance of a class and its descendants. A third visibility scope, protected, behaves similarly to private methods, but protected methods can be called by other instances of the same class. For a quick refresher, public and private instance methods look like this: class Dog def do_trick bark end private def bark puts 'woof woof' end end When the public method is called: > dog = Dog.new > dog.do_trick # => woof woof And the private method: > dog = Dog.new > dog.bark # => NoMethodError: private method `bark' called for <Dog> Private class methods might not be as common as private instance methods, but they still have their place. For instance, a class method may require internal helper methods to complete its function. Whatever the reason, defining private class methods has value but is not always intuitive. This example Dog class needs to maintain a list of tricks that will be used within the other public class methods. This list should not be accessible to any callers outside the Dog class. The wrong way A first pass at writing the private tricks method could look like: class Dog private def self.tricks [:bark, :roll_over, :fetch] end end However, when testing the visibility of the tricks method: > Dog.tricks # => [:bark, :roll_over, :fetch] Uh oh, no error was thrown indicating a that a private method was called, this method is completely public. Why? The reason that the above code did not produce a private method has to do with Ruby's object hierarchy, interactions amongst internal classes, instances of those classes,

## Learning Ruby

DevFeed: [Learning Ruby](<https://devfeed.tech/articles/learning-ruby-40707.md>)

Original publisher: [Read original article](<https://radek.io/posts/learning-ruby/>)

Published: 2011-10-28T00:00:00Z

Content type: opinion

Language: en

Sources: [Radek Pazdera](<https://devfeed.tech/sources/radek-pazdera.md>)

Topics: [ruby programming language](<https://devfeed.tech/topics/ruby-programming-language.md>), [Programming](<https://devfeed.tech/topics/programming.md>), [Learning](<https://devfeed.tech/topics/learning.md>)

Tags: [book](<https://devfeed.tech/tags/book.md>), [installation](<https://devfeed.tech/tags/installation.md>), [learning](<https://devfeed.tech/tags/learning.md>), [programming-language](<https://devfeed.tech/tags/programming-language.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [ruby-programming-language](<https://devfeed.tech/tags/ruby-programming-language.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>)

### AI overview

A personal introduction to learning Ruby that reviews online and print resources for beginners, discusses Ruby installation on Linux and Windows, and briefly presents a first Ruby example.

### Source excerpt

My personal take on learning the Ruby programming language