Systems | Development | Analytics | API | Testing

October 2022

Build a Table Editor with Trix and Turbo Frames in Rails

In this post, we will implement a basic ActionText table editor for your Rails application. We'll learn how: This article draws inspiration from the excellent 'Adding Tables to ActionText With Stimulus.js' blog post from 2020. That was written before the advent of Turbo though, which we can expect to simplify matters quite a bit. Let's get going!

AWS Lambdas with TypeScript: Improve the Dev Experience

In part one of this series, we successfully built a TypeScript Lambda on the AWS cloud. But we left a lot of room for improvement in terms of the developer experience. For starters, the Lambda didn’t run on a local machine, which is cumbersome. The code we wrote is also not testable, which makes refactoring hard or, at least, dangerous. In this take, let’s focus on improving the developer experience. The goal is to make the code more robust and easier to work with. Ready?

Improve Code in Your Ruby Application with RubyCritic

RubyCritic provides visual reports highlighting code smells, code structure, ease of testing, and test coverage in your Ruby application. It's in active development, with new code analysis tools often being introduced as new features. It's well worth keeping track of RubyCritic's releases. This article will touch on some of RubyCritic's benefits, its dependencies, and how to read its code reports. Let's get going!

Parser Combinators in Elixir: Taming Semi-Structured Text

The need to manipulate strings comes up quite often, whether it's to validate user-provided values or transform text into structured data that can be used programmatically. Most often, we'll reach for regular expressions to accomplish this task, but sometimes there's a better solution to the problem: parser combinators. In this two-part article, we'll explore how they work. Before moving on, let's define what 'parsing' is: Source: Wikipedia.

Phoenix LiveView 0.18: New Special HTML Attributes

Phoenix LiveView 0.18 just shipped, with lots of new goodies to make developing LiveView an even better experience. In this post, I'll take you through a lesser-known new feature - LiveView's new special HTML attributes - and show you how to write cleaner HTML with :if, :for, and :let. When we're done, you'll have an eloquent, ergonomic, and dynamic function component you can use to render a list anywhere in your LiveView app. Let's dive in!

Security Best Practices for Your Rails Application

Alongside performance and usability, you should always focus on security when creating any web application. Keep in mind that hacking techniques are constantly evolving, just as fast as technology is. So you must know how to secure your users and their data. This article will show you how to create a secure Rails application. The framework is known to be secure by default, but the default configuration is not enough to let you sleep well at night.

Faster XML Parsing with Elixir

The XML data format has been around since 1996. It was first envisioned as a lingua franca (bridging language) for data to be serialized and read into completely disparate systems (with different programming languages, operating systems, and even hardware). It has been wildly successful in that goal. In software, though, 26 years is like a lifetime — and in hardware, it's an eternity.