Systems | Development | Analytics | API | Testing

An Introduction to Solid Queue for Ruby on Rails

One of the most exciting additions to Rails 8 is undoubtedly Solid Queue, a new library for processing background jobs. You might not think it's that big of a deal. After all, there are plenty of other queuing systems out there. If you work with Rails, you'll likely know about Sidekiq and Resque — both are exceptionally performant and reliable. There is also GoodJob and the venerable DelayedJob. With all those options available, do we really need another queuing system? Let's find out together.

Using JWTs in Python Flask REST Framework

JSON Web Tokens (JWTs) secure communication between parties over the internet by authenticating users and transmitting information securely, without requiring a centralized storage system. In this article, we'll explain what JWTs are and give a high-level overview of how they work. We'll also implement a JWT-based authentication system by creating a to-do list API using Flask.

How To Write Unit Tests in Node.js Using Mocha

Increasing the test coverage of a backend application is key to ensuring its reliability, functionality, and robustness. Thanks to its intuitive API and agnostic approach to assertions, Mocha has emerged as one of the most popular choices for unit testing in Node.js. In this guide, you'll learn what Mocha is, understand how it works, explore its features, and see it in action with a complete example. Time to become a Mocha unit testing expert!

Pre-build a Secure Authentication Layer with Authentication Zero for Ruby on Rails

Authentication is a critical element of any web application. The Ruby on Rails ecosystem has no shortage of solutions for this topic, as no authentication layer has been backed into the framework yet. Devise is a crowd favorite. Although it has ended up as the de-facto standard and sports many built-in features and great plugins (such as integrations with NoSQL databases, encryption, roles, and UID support), it works as a separate entity from your application.

An Introduction to JavaScript Bundler Rspack

Webpack has long been the dominant player in the JavaScript web bundler landscape. Over time, many competitors have gradually entered the arena, each offering unique features and improved performance. Among these newcomers, Rspack stands out with its innovative approach to web application bundling. Leveraging a Rust core, it provides high-speed, multithreaded code splitting.

Instrumenting Redis in Python with AppSignal

Using AppSignal, you can monitor the performance of your Redis calls and get insights into how your application uses Redis. The AppSignal Python agent supports instrumenting Redis calls out of the box, so you can start monitoring your usage with just a few lines of code. In this post, we will cover how to instrument Redis in a Python application using AppSignal. We will build a simple URL shortener that stores data in a local Redis instance and uses AppSignal to monitor performance.

An Introduction to Testing in Python Flask

So, you've built a Flask application — congratulations! You've crafted routes, connected databases, and perhaps even deployed it to a server. But have you tested it thoroughly? Testing isn't just a checkbox on a developer's to-do list: it's an essential part of building robust and reliable applications. So, in this article, we'll describe why testing is important for Flask applications and how you can effectively implement tests.

How to Choose Between SQL, Query Builders, and ORMs in Node.js

When building Node.js applications that interact with relational databases, you have a large variety of tools at your disposal to manage and execute queries. The three most common approaches — raw SQL, query builders, and Object-Relational Mappers (ORMs) — offer unique advantages and challenges, making it difficult to decide which is best. In this guide, we will compare the strengths, trade-offs, and use cases of all three approaches.

Generating Tests from Recorded Data in Node.js

Testing is necessary to produce working code, but it can be difficult and takes a lot of time! By reducing the time and cost of testing, we can increase the pace at which we can ship reliable and working features to customers. In this article, we'll explore easy and quick ways to collect and generate data and create schemas for testing.