Why Rails 5+ uses ApplicationRecord instead of ActiveRecord::Base?

To allow ApplicationRecord to be a single point of entry for all the customizations and extensions needed for an application, instead of monkey patching ActiveRecord::Base. Consider the following example: If you to add some extra functionality to Active Record, this is what you would do in Rails 4.2. 

module CustomFeature 
   def interpolate_string
     puts "Do string interpolation"
   end 
end 
ActiveRecord::Base.include(CustomFeature) 

But now, ActiveRecord::Base forever includes CustomFeature and any class inheriting from it also includes CustomFeature even if they don't want it. This is especially true if you are using plugins and engines where monkey patching to ActiveRecord::Base can leak into engine or plugin code. But with ApplicationRecord, they will be localized to only those models which are inheriting from ApplicationRecord, effectively only to your application. 

class ApplicationRecord < ActiveRecord::Base
  include CustomFeature
  self.abstract_class = true
end

What are before, after, around filters/actions in Ruby on Rails? How is it used? Provide relevant examples.

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Log In or Sign Up in a few seconds to view this answer.

What are the different types of caching in Ruby on Rails?

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Log In or Sign Up in a few seconds to view this answer.

What is GIL and how is it related to concurrency in Ruby?

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Log In or Sign Up in a few seconds to view this answer.

Please explain the concept of ActionCable with respect to Ruby on Rails with examples. How does it contribute to real-time application features? 

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Log In or Sign Up in a few seconds to view this answer.

What are rubygems? Any favorites not including rails? Any that you''ve worked on personally?

rubygems is package manager software for ruby libraries (i.e. gems). The package manager has basic CRUD operations, dependency trees, and supports asynchronous communication between multiple gem servers.

What is ActiveSupport Concern and how is it different from using modules?

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Log In or Sign Up in a few seconds to view this answer.

Difference between Preload, Include, Eager Load and Joins in Rails?

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Log In or Sign Up in a few seconds to view this answer.