A Tour of 7 Popular Ruby Frameworks in 2020

Ruby may be over 25 years old, but it remains popular in the software community for its focus on programmer happiness. Building software with Ruby often involves leveraging one or more popular frameworks for the purpose of increasing productivity by relying on existing solutions to common problems. Ruby frameworks generally ... Read more

Ruby Garbage Collection: More Exciting than it Sounds

Ruby Garbage Collection: More Exciting than it Sounds Running software uses computer memory for data structures and executable operations. How this memory is accessed and managed depends on the operating system and the programming language. Many modern programming languages manage memory for you, and Ruby is no different. Ruby manages ... Read more

How to Use Lambdas in Ruby

Lambdas are a powerful feature of the Ruby language. They allow you to wrap logic and data into a portable package. In this post, we’ll cover how and when to use lambdas. You’’ll also learn about the difference between lambdas and Procs, and the performance profile of lambda functions. The ... Read more

How to Start Using Counter Caches in Rails

Learn how to use counter cache in your rails app, parent-child associations, counter cache best practice. Read more

A Complete Guide to Rails Caching

A Complete Guide to Rails Caching. Application performance is always a concern when building in the modern, competitive web and mobile space. At Scout, it’s why we created application performance monitoring tools in the first place. That said, there are steps you can take to build a more ... Read more

Python vs. Ruby

In this blog post, we'll be going through two server-side scripting languages; Python and Ruby with focus on comparing the performance and other factors that might help you in deciding which language to pick over the other for your web application. Read more

Exception Handling in Ruby

What is exception handling? Software systems can be quite prone to error conditions. Systems that involve user interaction are more vulnerable to exceptions as they attract errors at multiple fronts. Errors can take many forms - syntactical errors, network errors, form input errors, invalid authentication errors etc. I Read more

Introducing AutoInstruments: zero-effort performance monitoring of custom Ruby code

Instrumenting the performance of custom code (the code you write, not the libraries you require) in web apps has been a thorn in my side for years. Yes, we have a custom instrumentation API , but raise your hand if you enjoy sprinkling your code with this? Anyone? Having a ... Read more

Birds of a Fiber: A look at Falcon, a modern asynchronous web server for Ruby

What is Falcon? The GitHub Readme describes Falcon as, "... *a multi-process, multi-fiber rack-compatible HTTP server ... Each request is executed within a lightweight fiber and can block on up-stream requests without stalling the entire server process."* The gist: Falcon aims to increase throughput of web applications by using Ruby’s Fibers to be able to continue serving requests while other requests are waiting on IO (ActiveRecord queries, network requests, file read/write, etc). Read more

Benchmarking Ruby Code

One of the joys of using the Ruby language is the many different ways that you can solve the same problem, it’s a very expressive language with a rich set of libraries. But how do we know which is the best, most efficient, use of the language? When we are talking about algorithms which are critical to the performance of your application, understanding the most efficient approach to take is essential. Perhaps you’ve been using Scout to hunt down issues, and now that you have found an issue, you want to optimize it. Ruby’s Benchmark module provides a very handy way for you to compare and contrast possible optimizations, and when used in conjunction with a good APM solution it will ensure that you have all bases covered. Let’s take a look at how you can get started with it today! Read more

Get Started with a 14-day, credit-card less trial.

Isolate performance issues without the guesswork. Hunt down N+1, Memory Bloat, Slow Queries and more to the exact line of code faster than ever before.