Systems | Development | Analytics | API | Testing

AppSignal

An Introduction to LiteStack for Ruby on Rails

In this series of posts, we will look at LiteStack, a one-stop-shop solution that hosts and processes all your production data on a single machine. LiteStack (as the name suggests) makes use of SQLite to provide: In this first post, we'll introduce the basics of LiteStack and set up an example Rails application. Let's begin!

An Introduction to Exceptions in Elixir

Exceptions are a core aspect of programming, and a way to signal when something goes wrong with a program. An exception could result from a simple error, or your program might crash because of underlying constraints. Exceptions are not necessarily bad, though — they are fundamental to any working application. Let’s see what our options are for handling exceptions in Elixir.

When to Use Playwright Over Puppeteer in Node.js

Playwright and Puppeteer have emerged as two of the most powerful end-to-end testing Node.js libraries. Their robust APIs make it easier to test the UI and workflows of sites and web applications. Although they are similar tools that offer comparable features, there are circumstances in which one is better to use than the other. In this article, we'll look at scenarios where it's better to use Playwright than Puppeteer for functionality and performance reasons.

An Introduction to Sidekiq for Ruby on Rails

Sidekiq allows Ruby developers to maintain fast and responsive web applications by moving time-consuming tasks into the background. With multithreading at its core, Sidekiq can process many jobs at once. This makes Sidekiq an important part of Ruby or Rails applications that handle heavy loads or perform tasks like sending emails or processing files.

An Introduction to RuboCop for Ruby on Rails

Good code has a lot to do with how readable it is. As developers, we more often read code than write it. As my Perl teacher told us many times: the flexibility of Perl's syntax was its best and worst trait at the same time. Ruby's syntax was influenced partly by Perl and is also quite flexible. Whatever language you pick, set some guidelines to avoid overusing a language's flexibility. Style guides for Ruby abound on the web, and it's not difficult to pick a style nowadays.

Writing a Custom Credo Check in Elixir

Static code analysis is an important tool to ensure a project meets the right code standards and quality. In Elixir, the most popular package for this is Credo. Not only does it offer dozens of pre-made checks, but it also allows you to create your own. In this article, we will walk you through creating a Credo check. We will see how to write the code, enable the check in the Credo config, and make it nice to use. Let’s start!

Secure Your Ruby App with JSON Web Tokens

If a web application involves users, as a matter of course, their data should be protected and secured. Securing a web application can mean several things. In this post, we'll discuss a subset of web security that involves authentication using JSON Web Tokens (JWTs) and the Ruby on Rails web application framework. Let's get started!

Pitfalls to Avoid in Playwright for Node.js

Automation testing has become a fundamental part of web development, and Playwright has emerged as one of the most powerful end-to-end testing tools. Thanks to its robust API and multi-browser support, it's easy to test sites and web apps. At the same time, Playwright can present some challenges if not approached correctly. Several pitfalls can compromise the effectiveness and performance of your tests, potentially leading to inaccurate results.