Articles that I have been reading

Week 2023-13

You Should Write Bad Code

How to embrace absurdity and unlock more creative coding

Added: 27 Mar 2023

Week 2023-12

How to benchmark your ruby gem

With a folder, some scripts, and some tools, you can make your ruby gem/code faster. Measure, improve and repeat.

Added: 26 Mar 2023
One problem that is now solved by CSS Subgrid

How to use CSS Subgrid to solve the problem around aligning content in different columns

Added: 26 Mar 2023
CSS Nesting - Chrome Developers

One of our favorite CSS preprocessor features is now built into the language: nesting style rules.

Added: 26 Mar 2023
Learn how to handle flash messages with Hotwire

Learn to manage flash messages in Rails 7 with Hotwire. We will learn how to handle flash messages in Turbo...

Added: 24 Mar 2023
Understanding the Attribute Assignment API in Rails

In this post, we will explore the `AttributeAssignment` module in Rails, which allows you to set an object's attributes by...

Added: 24 Mar 2023
Modeling business logic with ECS in Ruby | katafrakt's garden

Just my website. Some Elixir, some Ruby, some more exotic languages and general thoughts on tech.

Added: 23 Mar 2023
Time-Series Data With Ruby on Rails and Postgres

Counting things can be tough. It’s a metric you need to show your users, but if you’re not careful at...

Added: 23 Mar 2023
How to use Docker containers for Ruby on Rails development in Visual Studio Code

Introduction It has become common practice to use Docker and Docker compose when building...

Added: 23 Mar 2023
How to not get into trouble with Active Record

Follow good practices with Active Record to make sure that your application's performance is on a good level and the...

Added: 21 Mar 2023
Zero downtime Rails migrations with the PlanetScale Rails gem

Learn about the Ruby on Rails workflow that protects your database and application from accidental downtime and data loss.

Added: 21 Mar 2023

GoodJob is a multithreaded, Postgres-based ActiveJob backend for Ruby on Rails.

Added: 21 Mar 2023
In relentless pursuit of some parts of REST

If we want clients to create small controllers and use resources in their routes, it’s a good idea to know...

Added: 20 Mar 2023

Week 2023-11

We're Building a New Design Sprint Guide

We’ve been running design sprints for over 10 years, it’s time for us to share everything we know about them...

Added: 17 Mar 2023
MRSK vs Fly.io

Comparison of MRSK and Fly.io

Added: 17 Mar 2023
Only Product Management Frameworks You Need | Railsware Blog

Our top picks of the most practical product management frameworks for decision-making, prioritization, product metrics, and agile development

Added: 17 Mar 2023
Working With Markdown in Ruby

This article explores how to use markdown in Ruby. Learn how to use two popular Ruby libraries—Redcarpet and Kramdown—to parse...

Added: 17 Mar 2023
Practicing engineering transparency

Being more transparent as a Staff+ engineer can help build trust and encourage best practice across entire engineering teams.

Added: 16 Mar 2023
Dominant hand respecting design

I’m Kitty Giraudel, a non-binary trans frontend developer based in Berlin, focused on accessibility and inclusivity.

Added: 15 Mar 2023
Why We Need More Women In Tech

Common concerns and solutions... because tech is for anyone who cares about it.

Added: 15 Mar 2023
16 little UI design rules that make a big impact

A UI design case study to redesign an example user interface using logical rules or guidelines

Added: 14 Mar 2023
A journey towards better testing practices

Testing anti-patterns I learned to stay away from over the years.

Added: 14 Mar 2023
Assign a default value to an attribute in Active Record

You’ve probably been using callbacks. Don’t.

Added: 13 Mar 2023
Mastering PostgreSQL Views and CTEs for Rails Developers: A Comprehensive Guide

Introduction Views and Common Table Expression or CTE are two important concept in...

Added: 13 Mar 2023
How to click links in Rails Mailers when writing tests

When writing an integration or system test in Rails, have you ever needed to click a link in an email?...

Added: 13 Mar 2023

Week 2023-10

Understanding the Rails Router: Why, What, and How

The router is the entry point of your Rails application. It acts as the gatekeeper for all incoming HTTP requests,...

Added: 12 Mar 2023
Avoiding UI Regressions With Jest

How can you ensure that a modification on a component won't break the responsiveness on the user...

Added: 11 Mar 2023
Stubbles - Stubbing and Doubles innit. 🧔

Confession: I’ve always struggled to understand the difference between stubbing and doubles…

Added: 10 Mar 2023
Perfect Homepage Design Explained (in 15 minutes)

Join my private training platform for web designers:https://www.paitpro.com🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳🔳Perfect Your Web Designs With Thes...

Added: 10 Mar 2023
Stimulus Nested Forms | Ruby on Rails 7 Tutorial

Today we take a look at a Stimulus implementation for nested forms in Ruby on Rails 7. It's a bit...

Added: 10 Mar 2023
Create a Direction Aware Hover Effect Using CSS :has() Selector

A practical guide on how you can build a pure-CSS direction-aware hover effect for your navigation menu bar using :has()...

Added: 10 Mar 2023
Some simple ways to make content look good - Set Studio

Something non-designers understandably struggle with is how to make things look good. One of those things is long form content...

Added: 10 Mar 2023
Relearn CSS layout

If you find yourself wrestling with CSS layout, it’s likely you’re making decisions for browsers they should be making themselves....

Added: 09 Mar 2023
The Web Needs a Native .visually-hidden

For years, developers have passed around a set of styles like a magic incantation. It's time we made it a...

Added: 09 Mar 2023
How to Find, Debug and Fix N+1 Queries in Rails

Fixing N+1 issues is often the lowest-hanging fruit in optimizing a Rails app performance. However, for non-trivial cases choosing a...

Added: 09 Mar 2023
Merging vs. Rebasing | Atlassian Git Tutorial

Compare git rebase with the related git merge command and identify all of the potential opportunities to incorporate rebasing into...

Added: 07 Mar 2023
A taxonomy for alerts and notifications

Is it an Alert, Toast, Callout, Popup, Snackbar, or Notification?

Added: 06 Mar 2023

Week 2023-9

Configuring Rails Environments

Despite its strong opinions and powerful conventions, Rails is a highly flexible and configurable framework. If you don’t like something,...

Added: 05 Mar 2023
A Guide to PostgreSQL Views

Understanding PostgreSQL views and materialized views is essential to fully grasp one of the most popular features in Timescale that...

Added: 05 Mar 2023
Remote Synthesis | The Price Developers Pay for Loving Their Tools Too Much

Developers are passionate about their tools - sometimes to a fault. There is value in being open to change and...

Added: 04 Mar 2023
Making the Most of Your Logs in Rails | AppSignal Blog

It's easy to get going with logging with Rails, but not so easy to master it. Discover how you can...

Added: 01 Mar 2023
Stop using eager loading in your Rails application; use this instead.

It’s a popular internet recommendation to use eager loading in Ruby on Rails applications to eliminate the N+1 query problem....

Added: 28 Feb 2023

Week 2023-8

Storing Ephemeral UI State with Kredis for Rails | AppSignal Blog

Let's dive into how Kredis works and how you can use it to store short-term UI state.

Added: 26 Feb 2023
Introduction of Rails Engine with basic example.

What is RailsEngine? A Rails engine is a self-contained piece of functionality that can be...

Added: 26 Feb 2023
Questionable new ways of running a retrospective

My team’s Managing Director and advisor on the project I’m working on, Kirsten, has noticed how reluctant I am in...

Added: 26 Feb 2023
5 super useful CSS properties that don't get enough attention

🎓 Start writing CSS with more confidence with one of my courses: https://kevinpowell.co/courses🔗 Links✅ Full list of filter effects: https://developer.mozi......

Added: 23 Feb 2023

Calling freeze on an object may not provide the immutability you expect. Here we dig into some of freeze's nuances...

Added: 21 Feb 2023
Hotwire: Asynchronously loaded tooltips

Learn how to effectively render tooltips in Rails without writing any JavaScript.

Added: 20 Feb 2023

Week 2023-7

How Rails Authenticity Tokens Protect Against CSRF Vulnerability

Rails protects your web application from CSRF attack by including an authenticity token in the HTML forms. This token is...

Added: 19 Feb 2023
Rails Console Magic Tricks

7 techniques to increase the developer’s experience during a Rails console session

Added: 18 Feb 2023
Bringing Card Table to the small screen

A close look at the process we used to make our version of Kanban nice and useful on mobile devices....

Added: 18 Feb 2023
Rails ActiveRecord: create_with, where for new records

More 'things I forgot' - using create_with and where in making new records. We can make use of the resulting...

Added: 17 Feb 2023
If adding more engineers doesn’t speed up our development, what does?

The idea that hiring more developers will lead to faster time-to-market, is a common misconception.

Added: 17 Feb 2023
CSS Tips For Better Web Development

CSS has been around for 25+ years, gaining tons of features and selectors to create great websites and apps. In...

Added: 16 Feb 2023
Web Push for Web Apps on iOS and iPadOS

With iOS and iPadOS 16.4 beta 1 comes support for Web Push for Home Screen web apps, Badging API, Manifest...

Added: 16 Feb 2023
A method's gravity

#small #methods #code #design #ruby

Added: 16 Feb 2023
Escaping/encoding URI components in ruby 3.2

Thanks to zverok_kha’s awesome writeup of Ruby changes, I noticed a new method released in ruby 3.2: CGI.escapeURIComponent This is...

Added: 16 Feb 2023
What's New in Rails 7.1 | AppSignal Blog

Let's take a look at what we can expect from the upcoming Rails 7.1 release.

Added: 15 Feb 2023
Adding Sorbet to a Rails project

Nithin Bekal's blog about programming - Ruby, Rails, Vim, Elixir.

Added: 15 Feb 2023
button elements offer attributes to change form behavior

Use formaction, formenctype, formmethod and formnovalidate to change form configuration with button attributes

Added: 13 Feb 2023
Try not to loop through associations inside jobs

Your local data isn’t the same as in production

Added: 13 Feb 2023

Week 2023-6

Ruby Adds Support for WebAssembly: What is WebAssembly and how it benefits Ruby devs?

Photo by Joshua Fuller on Unsplash Ruby has joined the ranks of languages capable of targeting...

Added: 12 Feb 2023
ActiveRecord: finally understand transactions | Younes.codes

How to use ActiveRecord transactions, handle errors and avoid pitfalls.

Added: 11 Feb 2023
Rails Concerns: To Concern Or Not To Concern | AppSignal Blog

Should you be concerned about Rails concerns?

Added: 10 Feb 2023
Everything You Need to know about Serialization in Rails - Part III

We had previously talked about the Serialization formats and How Serialization is implemented for storing objects in the relational database...

Added: 10 Feb 2023
Top 5 Famous Ruby on Rails Features in Today's Programing 2023

Although Ruby on Rails is the oldest framework, and some claim that it is no longer in use, developers still...

Added: 10 Feb 2023
The easiest improvement you can make to your CSS

Outlines are important for keyboard navigation, but maybe you've come up with a replacement and decide to do an outline:...

Added: 10 Feb 2023
RubyConf Mini 2022: Empathetic Pair Programming with Nonviolent Communication by Stephanie Minn

Pair programming is intimate. It’s the closest collaboration we do as software developers. When it goes well, it feels great!...

Added: 10 Feb 2023
How to send slack notifications from Rails app using sidekiq

It can be helpful in a Rails application to send notifications to a Slack channel, for example, when...

Added: 10 Feb 2023
Psychological Safety — The Single Most Important Thing That Makes a High-Performing Team

What is psychological safety, and why is it so important? Tips on how to improve your team

Added: 09 Feb 2023
Is software getting worse?

With all the advancements in software development, apps could be much better. Why aren't they?

Added: 09 Feb 2023
Rails initializers you don't know about - Inflections

Ruby on Rails and ReactJS consulting company. We also build mobile applications using React Native

Added: 08 Feb 2023
Three attributes for better web forms

Better UX through better HTML: inputmode, enterkeyhint, and autocomplete.

Added: 08 Feb 2023

All the best things about VS Code that nobody ever bothered to tell you

Added: 08 Feb 2023
How to write Semantic CSS

Most people know about semantic HTML, but when it comes to CSS, things are a little more wishy-washy most of...

Added: 07 Feb 2023
How to stub Feature Flags with RSpec

Are your feature flags states leaking between your test cases? Stub them all to make your test suite more reliable....

Added: 06 Feb 2023

Week 2023-5

The Decree Design Pattern

The Decree pattern helps developers write single-purpose service objects that have a predictable API contract, are composable, are easily tested,...

Added: 04 Feb 2023
How Rails sessions work

What if your Rails app couldn’t tell who was visiting it? If you had no idea that the same person...

Added: 03 Feb 2023
Build a Table Editor with Trix and Turbo Frames in Rails | AppSignal Blog

Let's build a table editor in a Rails application using ActionText's Trix editor, and use Turbo Frames to customize your...

Added: 02 Feb 2023
How to bundle assets in a Rails engine

Load, parse, compile, and serve assets efficiently in a Rails Engine.

Added: 02 Feb 2023
Business Intelligence on Rails With Blazer

Business Intelligence transforms raw data into actionable insights that support business decisions through reports, dashboards, and charts. You can use...

Added: 02 Feb 2023
Creating an AI email parser using Ruby and OpenAI (GPT-3)

You may frequently need to extract crucial information from emails in your role as a developer. This...

Added: 02 Feb 2023
Optimizing Images - Part 3 - FastRuby.io | Rails Upgrade Service

When we allow users to upload images, they usually upload files without any optimization for the web. It’s up to...

Added: 02 Feb 2023
Ransacking your password reset tokens | Positive Security

We demonstrate how the popular "Ransack" library (Ruby on Rails) can be abused to exfiltrate sensitive data via character by...

Added: 02 Feb 2023
A Guide to Rails View Helpers | AppSignal Blog

Find out how you can keep your Rails views readable using helpers.

Added: 01 Feb 2023
Seven Shipping Principles

Core fundamentals that inform how we go about building — and shipping — great software at a sustainable pace.

Added: 01 Feb 2023
Intro to Building a Ruby on Rails Back End

Follow along with my example repo, which has a solution branch. So, you wanna be a Ruby on Rails...

Added: 01 Feb 2023
Building Custom RSpec Matchers with Regular Objects

RSpec custom matchers can be written using plain old objects.

Added: 01 Feb 2023
Unlock the Potential of VS Code for Ruby Programming

A guide to a free Ruby development environment

Added: 01 Feb 2023
How Coda builds product

Lane Shackleton, CPO at Coda, shares his team’s actual templates, processes, and many lessons learned

Added: 31 Jan 2023
Companies Using RFCs or Design Docs and Examples of These

What companies follow an RFC-like process, and what are templates and examples to get inspiration from?

Added: 31 Jan 2023

Week 2023-4

Deploying Ruby on Rails with AnyCable using Docker & ECS

This is a guide for setting up AnyCable locally using Docker Compose, and deploying it on Amazon Web Services (AWS)...

Added: 29 Jan 2023
Benchmarking Ruby 3.2 with YJIT

Ruby 3.2.0 was released today! This is a perfect moment to check it out and see how YJIT behaves. I...

Added: 27 Jan 2023
Database Views & Rails Active Record: defining new Model classes out of views

Database Views & Rails Active Record: defining new Model classes out of views Learn...

Added: 25 Jan 2023
5 most annoying website features I face as a blind person every single day - Scope for business

Holly, a blind screenreader user, explains the main accessibility barriers she faces every day. Bad heading structure, alt-text, links, forms...

Added: 24 Jan 2023
How to stay motivated as a developer, build a habit system and stop procrastinating

Do you ever find it challenging to work on your project, side hustle, or even your hobby? Have you ever...

Added: 24 Jan 2023
Only use locals in view partials

It helps keep your state manageable

Added: 23 Jan 2023

Week 2023-3

How to Use Lambdas in Ruby | Scout APM Blog

Lambdas are a powerful feature of the Ruby language. Learn all about Lambdas and how best to leverage them in...

Added: 22 Jan 2023
Top Front-End Tools Of 2022 — Smashing Magazine

Useful front-end tools for CSS and JavaScript developers that were most popular last year and will help you speed up...

Added: 21 Jan 2023
Rails on Docker

Rails 7.1 will include a Dockerfile to help ease production deployments

Added: 21 Jan 2023
Refactoring instance variables to local variables in Rails controllers

An example of refactoring a controller to use local variable and shorthand hash syntax

Added: 20 Jan 2023
Gemfile of dreams: the libraries we use to build Rails apps—Martian Chronicles, Evil Martians’ team blog

We unveil the toolbox of the Martian Rails engineer; we begin constructing a Gemfile from the universe of Martian gems...

Added: 19 Jan 2023
JSONB PostgreSQL: How To Store & Index JSON Data

In this post, we are going to show you tips and techniques on how to effectively store and index JSON...

Added: 19 Jan 2023
Server-Side Request Forgery in Rails

What is Server-Side Request Forgery (SSRF), and why is it a concern for web security?

Added: 19 Jan 2023
Rails 7: ActiveStorage::Streaming improves file streaming

Once we include ActiveStorage::Streaming in a controller, we get access to the #send_blob_stream method which takes care of everything, from...

Added: 18 Jan 2023
Writing better Action Mailers: Revisiting a core Rails concept

Mailers are used in literally every Rails application, but often an after thought where we throw out the rules of...

Added: 17 Jan 2023
How Litestream Eliminated My Database Server for $0.03/month

I've always hated maintaining database servers. Litestream offers a simple alternative without sacrificing reliability or security.

Added: 17 Jan 2023
What is ActiveRecord becomes from Rails

Have you heard about the ActiveRecord becomes method from Rails? Maybe it’ll come handy one day.

Added: 16 Jan 2023

Week 2023-2

📖 Understanding the Instrumentation API in Rails

The instrumentation API in ActiveSupport serves a dual purpose. You can use it to implement the publish-subscribe pattern, as well...

Added: 14 Jan 2023
Rails Hotwire: mastering techniques for streamlining inline editing in your user interface

Originally posted on ahmednadar.com Recently, the inline editing capabilities demand has...

Added: 12 Jan 2023
Ruby on Rails Interview Questions

Check out our downloadable Ruby on Rails Interview Questions Template, and learn how can you get the most honest responses...

Added: 11 Jan 2023
Create a Business Language for a Rails Application | AppSignal Blog

Build and parse a programming language to extend your Rails application's functionality.

Added: 11 Jan 2023
Don't just do it

Understanding the need behind a change is important to build better software. Here’s why.

Added: 11 Jan 2023
Integration Testing Ruby on Rails with Minitest and Capybara - Semaphore

Capybara is an acceptance test framework for web applications. Learn how to use it with Minitest for integration testing of...

Added: 09 Jan 2023
Versioning a Rails API

Rails developers can add versioning to their APIs with relatively little effort. This article explains why you need to add...

Added: 09 Jan 2023
Rails development, SSL, service workers and self-signed certs

There are several motivations for running your local web application over SSL; making use of service workers being a prime...

Added: 09 Jan 2023
Cheaply running ruby on rails apps (for side projects)

With Heroku's free tier gone, this is my work-in-progress configuration for a new ruby on rails apps...

Added: 09 Jan 2023

Week 2023-1

Rails 7 adds disable_joins for associations

Rails 7 series | Ruby 7.0 adds disable_joins for associations

Added: 08 Jan 2023
It is not what you expect, but it is what you want: how Data#initialize is designed

A description of a curios core class design decision made for happier coding

Added: 06 Jan 2023
Metaprogramming in Ruby: Beginner Level - The Gnar Company

Metaprogramming in Ruby: Beginner Level This post is the first in a series focused on the application of Ruby metaprogramming....

Added: 03 Jan 2023
The Rails Config File

You must have used a ~/.bashrc or ~/.zshrc file to configure your environment. Did you know Ruby on Rails has...

Added: 03 Jan 2023

Week 2022-52

A medior dev's take on Test Driven Development

How, Why and When I TDD

Added: 31 Dec 2022
Creating Ruby objects with keyword arguments and merge

Reading through Sandi Metz’s book Practical Object-Oritented Design in Ruby (POODR), I found myself yet again hit with several epiphanies…...

Added: 31 Dec 2022
Materialized View: SQL Queries on Steroids

I have been working with a client with close to 600k images on their home page. The photos are tagged...

Added: 31 Dec 2022
Document.elementFromPoint

Reacting to events with JavaScript is the foundation of a dynamic experiences on the web. Whether it's a click event...

Added: 31 Dec 2022
Time management for makers

As makers, software engineers should adopt these 7 essential habits.

Added: 31 Dec 2022
Why Web Design Still Matters in 2023 | Webdesigner Depot

As we move into 2023, there are an increasing number of ways companies can engage with their customers. And as...

Added: 29 Dec 2022
Run different ActiveRecord validations based on context

Sometimes want to skip certain validations on your database models. Maybe you have a multi-step wizard or want admins to...

Added: 28 Dec 2022
How to use FilePond with Rails' Active Storage

Learn how to integrate the FilePond upload library with Ruby on Rails' Active Storage framework.

Added: 26 Dec 2022

Week 2022-51

Rails 7.1 supports password challenge via has_secure_password

From Rails 7.1 has_secure_password now includes a password_challenge accessor to validate it against the currently persisted password.

Added: 25 Dec 2022
Creating a career progression framework for engineers

How to build a clear and transparent process for supporting engineering career progression.

Added: 22 Dec 2022
A Cheatsheet for User Interview and Follow Ups Questions by Stéphanie Walter - UX Researcher & Designer.

A cheat sheet to help you write interview and follow ups questions for user research and usability test protocols (also...

Added: 22 Dec 2022
Testing Ruby Gems with GitHub Actions – Prioritized.net

Let's walk through how you can use GitHub Actions to test a Ruby gem, or any other Library, against an...

Added: 22 Dec 2022
Quick Start | Lamby - Simple Rails & AWS Lambda Integration using Rack

Deploy a new Rails APP to Lambda in 5 minutes!

Added: 20 Dec 2022

Week 2022-50

On technical debt

If you ask any developer what is technical debt they will probably tell you something along the lines of: Cutting...

Added: 18 Dec 2022
HTML5 Canvas on Rails? Part 1

Why this approach?

Added: 18 Dec 2022
Directing Turbo Native apps from the server

This post was extracted and adapted from The Rails and Hotwire Codex. It also assumes some...

Added: 18 Dec 2022
Making Hotwire and Devise play nicely

I wanted to mix Hotwire (both Turbo and Stimulus) and View Components together but use it with my normal go-to...

Added: 18 Dec 2022
How to use Polymorphic Associations in Ruby on Rails ?

In Ruby on Rails, a polymorphic association allows a model to belong to more than one other model on a...

Added: 17 Dec 2022
Rails Generator Cheat Sheet

In this article is for newer developers looking to learn strategy and commands on Rails. When I...

Added: 17 Dec 2022
Inside the mind of a frontend developer: Article layout - Ahmad Shadeed

An exploration of how a frontend developer thinks while building an article layout.

Added: 16 Dec 2022
Agile Projects Have Become Waterfall Projects With Sprints

All the agility has been sucked out of agile projects

Added: 16 Dec 2022
Advanced Forms (No JavaScript!) - The Lean Software Boutique

When working with complex forms, it's really easy to immediately start adding JavaScript to implement non-common behaviors. But there are...

Added: 16 Dec 2022
Modeling your public static pages as resources in Ruby on Rails

So we checked 2 major ways already of creating public (more or less) static pages: 1. brute force drop your...

Added: 16 Dec 2022
Read This Post 'Unless' You're Not A Ruby Developer

Disclaimer: prepare for hair-splitting and nitpicking

Added: 16 Dec 2022
In Praise of the Current Pattern

The "current pattern" or "current context" is a technique that allows you to access some per-request data easily without having...

Added: 16 Dec 2022
Embedding on a team as a Staff+ engineer

A four-step guide to leveling up your team from the staff plus position.

Added: 15 Dec 2022
Encouraging autonomy within engineering teams

Autonomy is a wonderful thing. Here’s how to relinquish control and empower your engineering teams to deliver more impact.

Added: 15 Dec 2022
Setting up a screen reader testing environment on your computer

Published on 24 Nov, 2022  |   Takes approximately 8 min to read

Added: 13 Dec 2022
Hostile Patterns in Error Messages

Premature error messages, aggressively styled fields, and unnecessarily disruptive system-status messages feel bad-mannered and increase cognitive load for users during...

Added: 13 Dec 2022
This week in #dev (Pilot)

Highlights of what happened in our #dev channel on Slack this week.

Added: 13 Dec 2022
Rails’ safety mechanisms

A comprehensive overview of Rails’ many safety features that can help you prevent painful mistakes.

Added: 13 Dec 2022
Amazing CTO

Startups use too much technology. My advice: Use Postgres for everyting

Added: 12 Dec 2022
Figma UI Starter Kit

New Figma resource, a lightweight UI design starter kit to save you time.

Added: 12 Dec 2022

Although Hotwire does not currently provide animations out of the box, it does give us hooks to add in our...

Added: 12 Dec 2022
HTMHell Advent Calendar 2022 - HTMHell

An article, talk, or tool that focuses on HTML every day until Christmas.

Added: 12 Dec 2022

Week 2022-49

Scrum Has Failed the Developers

But there’s a way out of the misery

Added: 10 Dec 2022
CSS Infinite Slider Flipping Through Polaroid Images | CSS-Tricks

In the last article, we made a pretty cool little slider (or "carousel" if that’s what you prefer) that rotates...

Added: 10 Dec 2022
I Automated Daily Standups for Developers

It's time for a standup! These are the words that always put me in total panic mode. I don't even......

Added: 10 Dec 2022
A Journey into Site Reliability Engineering

While Rails gained a lot of popularity among companies to develop products quickly, technical debt and scalability issues were challenges...

Added: 09 Dec 2022
What I learned from pairing by default

I never used to pair program, and then I spent four months on a pair-by-default team. Here's what I learned....

Added: 08 Dec 2022
Detecting if the user is online with JavaScript

Sometimes you might want to enhance your application to notify users they might have lost their...

Added: 08 Dec 2022
Your flaky tests might be time dependent

Time dependent tests are difficult to diagnose, and the symptoms don’t present themselves until it’s too late. This article will...

Added: 07 Dec 2022
From Paperclip to Active Storage at scale

My experience of migrating from Paperclip to Active Storage on a production site.

Added: 06 Dec 2022
SOLID Principles Explained by GPT-3 with Analogies and Ruby Code

Ever struggled to grasp what the Liskov Substitution Principle really mean?

Added: 06 Dec 2022
Percent notation in Ruby - DeepSource

Ruby provides a number of methods which make it very simple to read and write strings, arrays, shell commands etc....

Added: 05 Dec 2022
Find out what callbacks are defined on an Active Record model in the console

Sometimes it's hard to know what is defined where

Added: 05 Dec 2022

Week 2022-48

EP35: What is Kubernetes

This week’s system design refresher: RPC vs. gRPC (Youtube video) Monolithic vs. Microservice Architecture What is k8s ChatGPT RPC vs....

Added: 03 Dec 2022
Ruby multithreaded crawler

A Ruby multithreaded crawler is a type of web crawler that is built using the Ruby programming...

Added: 03 Dec 2022
Using Server Sent Events to Simplify Real-time Streaming at Scale

We walk through how we implemented an SSE server that's scalable and load-balanced to simplify and improve a real-time data...

Added: 01 Dec 2022
Vanilla Rails authentication with Authentication Zero

Learn how to build a robust authentication quickly in Rails without using a library like Devise.

Added: 30 Nov 2022
How to implement Query Object pattern in Ruby on Rails?

In simple terms, Query Object allows you to encapsulate complex database queries. Why do we need it...

Added: 29 Nov 2022
6 Tips to Overcome Scaling Challenges Like Design Decisions, Tech Debt, and Developer Satisfaction | alphalist

Scaling isn’t easy. You will need to set up processes on how things are going to work now that you...

Added: 29 Nov 2022
Why (and How) I Write Code With Pencil and Paper | CSS-Tricks

If the thought of handwriting code seems silly, it might surprise you to know that it's inevitable. If you're unsure,...

Added: 29 Nov 2022
Questions for our first 1:1 | Lara HoganTwitter_Logo_Blue

In the last few years, I’ve had the pleasure of kicking off lots of new reporting relationships with both engineers...

Added: 29 Nov 2022
Ten reasons engineers choose to stay with an organization

Retaining great developers can be hard. Here are the ten company habits that make employees choose to stay, even when...

Added: 29 Nov 2022
Newer Things to Know About Good Ol’ HTML Lists | CSS-Tricks

HTML lists are boring. They don’t do much, so we don’t really think about them despite how widely used they...

Added: 29 Nov 2022
To infinity and beyond: enabling the future of GitHub's REST API with API versioning | The GitHub Blog

We’re introducing calendar-based versioning for our REST API, so we can keep evolving our API, whilst still giving integrators a...

Added: 29 Nov 2022
Testing Thor Ruby Required Options

There are lots of tutorials for building a CLI with Thor from scratch, but there aren't a lot of them...

Added: 29 Nov 2022
The Seven Levels of Busy

Level 1: NOT BUSY My schedule is wide open. I can choose infinite paths. Zero commitments. The weekend. I sleep...

Added: 28 Nov 2022
Dialogs, modality and popovers seem similar. How are they different?

A deep dive into the semantics, behaviours and characteristics of some of the most common user interface elements of websites...

Added: 28 Nov 2022
Elements can be visible even though their parent has set

Nested HTML elements with different `visibility` properties (`visible` / `hidden`) can be visible even though their parent is hidden.

Added: 28 Nov 2022

Week 2022-47

Ruby memoization - Code with Jason

What is memoization? Memoization is a performance optimization technique. The idea with memoization is: “When a method invokes an expensive...

Added: 24 Nov 2022
You can add biometric authentication to your webpage. Here's how.

Prompting for a username and password is so 2005. Today, you can just prompt for a fingerprint.

Added: 24 Nov 2022
Best Practices for Estimating Work - Story Points

This path gives an overview of how the Shortcut team estimates work and how the Shortcut tool effectively supports that...

Added: 23 Nov 2022
Day 38: vh, svh, lvh, and dvh

It’s time to get me up to speed with modern CSS. There’s so much new in CSS that I know...

Added: 22 Nov 2022
Learning good habits by watching a staff software consultant

What is good software consulting? Watching a staff level engineer is a great way to learn good habits.

Added: 21 Nov 2022
Handling third-party webhooks with Rails Event Store

Handling third-party webhooks with Rails Event Store Lately, one of our clients asked us to review his Rails Event Store-based...

Added: 21 Nov 2022

Week 2022-46

Solo: Building Successful Web Apps By Your Lonesome

Whether by choice or by circumstance, you may find yourself developing a web application alone. Congratulations! You've got the house...

Added: 19 Nov 2022
Site-wide configuration with Administrate

Adding site-wide configuration with a Rails model can be quite easy to do with Administrate.

Added: 19 Nov 2022
Building an Alexa Skill in Arabic with Ruby

More detail on how the thoughtbot team built one of the first Alexa skills in Arabic, and what we learned...

Added: 18 Nov 2022
Turbo Streams meets Action Cable

This post was extracted and adapted from The Rails and Hotwire Codex. Turbo Streams are a great...

Added: 16 Nov 2022
Railsware Guide Into Types of MVPs | Railsware Blog

We break down 13 different types of MVPs with examples, discuss the pros and cons of each type, and suggest...

Added: 16 Nov 2022
How we got struck by 5–year–old implementation

How we got struck by 5–year–old implementation Recently we discovered that we were wrong on computing lock key for acquiring...

Added: 16 Nov 2022
For each loops with LATERAL Joins - Database Tip

A join can normally only link two static result sets together, but with LATERAL joins an efficient for-each loop with...

Added: 16 Nov 2022
How To Create Advanced Animations With CSS — Smashing Magazine

In this article, Yosra Emad explains how to create a rollercoaster path that a ball follows using cubic beziers and...

Added: 16 Nov 2022

Making a DNS query in Ruby from scratch

Added: 16 Nov 2022
aria-label is a code smell

If it is important enough to need words, it is important enough to use text content.…

Added: 15 Nov 2022
Your Accessibility Claims Are Wrong, Unless…

Now that it is a market differentiator to talk about accessibility in projects, that’s all many do — talk about...

Added: 15 Nov 2022
Automate manual deployments with Git and binstubs

Your team’s manual deployment process doesn’t have to be so manual. Here’s how we automated our team’s deployment process with...

Added: 15 Nov 2022
How to deploy Rails and Sidekiq to Fly.io

A Ruby on Rails SaaS starter kit with two-factor authentication, teams spaces, and administration.

Added: 14 Nov 2022

Week 2022-45

Ryan Bigg - A replacement for strong parameters

A replacement for strong parameters

Added: 13 Nov 2022
How to Extend Rails Associations - FastRuby.io | Rails Upgrade Service

You might have extended classes or instances in Rails, but do you know you can also extend Rails associations? class...

Added: 12 Nov 2022
How to Split Rails Routes? - FastRuby.io | Rails Upgrade Service

In this article I’ll discuss a strategy for different readability: a simple way to split your routes file on a...

Added: 11 Nov 2022
How to create an interview rubric that actually works

Interview rubrics are a great way to reduce bias. Here's how to build a rubric for any technical role.

Added: 10 Nov 2022
On extending Ruby on Rails knowledge: part 1.

I've been working with Ruby on Rails for about 17 months now and I feel I've learned a lot so...

Added: 10 Nov 2022
How to reduce memory usage in Ruby – AbstractBrain Answers

Sidekiq workers consume a lot of memory: how can I fix that?

Added: 10 Nov 2022
From Node to Ruby on Rails | DUNK

I learned to code in the Javascript stack [1] and am building a Javascript based product [2]. I never questioned...

Added: 10 Nov 2022
Unlearn programming to learn Ruby

Why the Ruby philosophy is the exact opposite of other programming languages?

Added: 10 Nov 2022
What You Need in a Code Review Checklist (& What You Don't)

Discover what your team needs in their code review checklist, what they don't, and how you can automate code review...

Added: 09 Nov 2022
Why and how GitHub encrypts sensitive database columns using ActiveRecord::Encryption | The GitHub Blog

You may know that GitHub encrypts your source code at rest, but you may not have known that we encrypt...

Added: 09 Nov 2022
Food Waste — Information is Beautiful

A big climate problem we can actually solve

Added: 09 Nov 2022
Vanilla Rails is plenty

A common critique of Rails is that it encourages a poor separation of concerns. That when things get serious, you...

Added: 08 Nov 2022
Feeling Overwhelmed? You Need an MVD—That’s Minimum Viable Day

A Minimum Viable Product is a lean, simple version of your product which delivers value early. What if we could...

Added: 08 Nov 2022
Premature generalization - Code with Jason

Most programmers are familiar with the concept of premature optimization and the reasons why it’s bad. As a reminder, the...

Added: 08 Nov 2022
Deep Work: A Better Way to Measure Developer Velocity 

Velocity is best measured by looking at how much uninterrupted focus time your developer teams have (capacity) and how effective...

Added: 07 Nov 2022

Week 2022-44

I am a web developer from Germany, mostly working with Ruby on Rails, but also like to do Frontend Javascript...

Added: 06 Nov 2022
Product Management Ask Me Anything - Event recap

Summarizing all the gems shared by our PM team on product strategy and great teamwork.

Added: 05 Nov 2022
Drag & Drop UX Design Best Practices - Pencil & Paper

A comprehensive guide on drag and drop UI/UX design, including pattern UX examples and UI demos.

Added: 05 Nov 2022
Postgres Insider Terminology

If you've ever wondered - What is a tuple? What is a Postgres page? What's the difference between a record...

Added: 04 Nov 2022
Securing Rails applications with Content Security Policy - kukicola.io

Nowadays web application security is a crucial and unfortunately sometimes a bit neglected matter. Today, I'll focus on Content Security...

Added: 03 Nov 2022
Wrap Third Party APIs in Service Wrappers to Simplify Your Code

Wrap Third Party APIs in Service Wrappers to Simplify Your Code

Added: 03 Nov 2022
Making changes safely at scale

Move fast but don’t break things.

Added: 03 Nov 2022
Dependent drop-down selects with Rails and Hotwire

This article will teach you how to create drop-down selects with Rails and Hotwire. I want to add country and...

Added: 03 Nov 2022
Lessons Learned From 5 Years of Scaling PostgreSQL

Learn about the challenges we’ve encountered while scaling on PostgreSQL and the solutions we've put in place.

Added: 02 Nov 2022
Event Bubbling in JavaScript – How Event Propagation Works with Examples

HTML elements receive different types of events, from click, to blur, to scroll, and so on. One behavior these events...

Added: 02 Nov 2022
Use zero? for comparison of numerics like Integer, Float and BigDecimal

Other languages don't have this

Added: 01 Nov 2022
Deploy Rails applications from Git to AWS with Cloud 66

Guide to deploying Rails apps to AWS with Cloud 66. We'll briefly explore PaaS options like Heroku, before moving to...

Added: 01 Nov 2022
Motion Controls In The Browser — Smashing Magazine

If you've ever wanted to build a web app that you can control with hand gestures as if by magic,...

Added: 31 Oct 2022
Verify a Ruby Class Method is Called with Arguments in Rspec, Without Doubles or Mocks · Jamie Tanna | Software Engineer

Rspec code to verify that a Ruby Class Method is called from another method, without needing to mock anything.

Added: 31 Oct 2022

Week 2022-43

The wasted potential of CSS attribute selectors

Developer and interaction designer.

Added: 30 Oct 2022
Setting goals with your engineers that don’t completely suck

Now that I’ve transitioned from being an IC to being an engineering manager, I’ve found myself becoming a person I...

Added: 30 Oct 2022
EP30: Why is PostgreSQL the most loved database

This week’s system design refresher: ByteByteGo talent collective Why PostgreSQL is the most loved database What is a proxy? What...

Added: 29 Oct 2022
GitHub - adzap/validates_timeliness: Date and time validation plugin for ActiveModel and Rails.  Supports multiple ORMs and allows custom date/time formats.

Date and time validation plugin for ActiveModel and Rails. Supports multiple ORMs and allows custom date/time formats. - GitHub -...

Added: 28 Oct 2022
Building Passwordless Email Auth in Rails

Adding authentication to your Rails app but don't want to store passwords or rely on third-party OAuth? Let's build a...

Added: 28 Oct 2022
Four ways to protect yourself from burnout

You don’t have to set yourself on fire to keep others warm. Here are some preventative steps you can take...

Added: 27 Oct 2022
Combined Mentions with ActionText (Part 1)

This past weekend on a side project (RelationKit) I implemented a combined mentions feature to let my users do multiple...

Added: 27 Oct 2022
Build a Table Editor with Trix and Turbo Frames in Rails | AppSignal Blog

Let's build a table editor in a Rails application using ActionText's Trix editor, and use Turbo Frames to customize your...

Added: 26 Oct 2022
How to Redirect a Rails Application to a new Domain Name | reinteractive

reinteractive: How to Redirect a Rails Application to a new Domain Name

Added: 26 Oct 2022
How to Use the Payment Request API in JavaScript

The Payment Request API provides a cross-browser standard that lets you collect payments, addresses, and contact information from your customers....

Added: 26 Oct 2022
Interactive Elements That You Can Build with HTML & CSS

We share a handful of code snippets that you can use for creating common interactive elements using just simple HTML...

Added: 26 Oct 2022
How to add markdown support to Ruby on Rails

I was recently asked to give an overview of how to add markdown support to a Ruby on Rails application....

Added: 26 Oct 2022
Crisp boundaries - Code with Jason

If you’re going to make a change to an area, you have to understand that area. If you don’t understand...

Added: 26 Oct 2022
Cleaning up old Rails migrations

After working on a Rails project for months, it’s not unusual to have hundreds of migration files in the db/migrate...

Added: 24 Oct 2022

Josh Clayton

Added: 24 Oct 2022

Week 2022-42

Puma vs Unicorn vs Passenger: Ruby App Servers Compared | Scout APM Blog

The Ruby app server ecosystem has consolidated around three app servers: Unicorn, Puma, and Passenger 5.

Added: 23 Oct 2022
How to tell browsers that your site supports color-schemes

A detailed look at the color-scheme property that allows developers to define which color chemes are defined in a website...

Added: 23 Oct 2022
Time Ranges are Clearer When Querying Databases

Avoid text input to Active Record queries where you can

Added: 22 Oct 2022
All the ways to render an ActionText Attachment

There's so many ways to render an ActionText attachment, we can change the...

Added: 21 Oct 2022
Organizing Rails files by meaning - Code with Jason

Every once in a while I come across the question “Where should I put my POROs in Rails?” In order...

Added: 20 Oct 2022
Improve Code in Your Ruby Application with RubyCritic | AppSignal Blog

Let's take a look at RubyCritic and dig into RubyCritic's reports.

Added: 20 Oct 2022
Validation: The best tool to de-risk and inspire

Validation is our go-to tool for de-risking a product. This article outlines why skipping validation introduces a risk to your...

Added: 20 Oct 2022
Understanding Polymorphic Associations in Rails

The Ruby on Rails documentation defines polymorphic associations (PA) as: "A slightly more advanced...

Added: 19 Oct 2022
The Trimodal Nature of Software Engineering Salaries in the Netherlands and Europe

Update: dozens of hiring managers confirmed this trimodal model applies to all global markets: from the US, through Asia to...

Added: 19 Oct 2022
Why we're leaving the cloud

Basecamp has had one foot in the cloud for well over a decade, and HEY has been running there exclusively...

Added: 19 Oct 2022
Checklist Design - A collection of the best design practices.

Checklist Design is a curated list of checklists ranging from website pages, to UI components, all the way to branding...

Added: 19 Oct 2022
The Three Tech Projects You Meet in Hell

“One must imagine the senior engineer happy.”

Added: 19 Oct 2022
How to Build Your Own Rails Generator

Generators are a powerful feature you can use to automate routine tasks in Rails—but do you know how to make...

Added: 18 Oct 2022
Enumerating Musical Notes

This post utilizes a score of Array and Enumerable methods to model music notes.

Added: 18 Oct 2022
ViewComponent in the Wild II: supercharging your components—Martian Chronicles, Evil Martians’ team blog

Learn how to supercharge your ViewComponent-based code with various techniques that we use in our projects at Evil Martians.

Added: 18 Oct 2022
API Integrations: Building Client Classes

Calling third-party APIs is associated with inherent complexity that’s not going to disappear. It needs to be tamed and confined....

Added: 18 Oct 2022

Week 2022-41

Predict Wine Quality using MindsDB

Introduction MindsDB, undoubtedly, brings in the best-in-class machine learning...

Added: 16 Oct 2022
Building an OCR service with Amazon Textract and AWS Lambda

Optical Character Recognition (OCR) automates extracting text from visual assets such as PDFs and images. This tutorial teaches how to...

Added: 14 Oct 2022
How to find and become a great engineering mentor

Mentoring is a great way to boost your career. Here's everything you need to know about getting a mentor, and...

Added: 13 Oct 2022
On the Importance of Pull Request Discipline

Unorganized pull requests are the bane of large codebases. Follow Yash's tips to prevent your PRs from getting roasted in...

Added: 13 Oct 2022
What Things Should You Break Out Into Services?

After a previous post I was asked for some examples: what types of things do you take out of your...

Added: 13 Oct 2022
How to Create Custom Scaffold Templates in Ruby on Rails

Ruby on Rails is such a powerful framework. It has its own CLI of which harnesses what are known as...

Added: 13 Oct 2022
Rendering External API Data in WordPress Blocks on the Front End | CSS-Tricks

There’ve been some new tutorials popping here on CSS-Tricks for working with WordPress blocks. One of them is an introduction...

Added: 12 Oct 2022
Atomic commits - Code with Jason

Ruined soup Let’s say I’m making a pot of tortilla soup. I’ve made tortilla soup before and it has always...

Added: 12 Oct 2022
Fun Emoji Hacks

Being part of Unicode, emoji characters are very flexible. With a little bit of imagination, here's some fun emoji ideas...

Added: 12 Oct 2022
Use before? and after? Methods When Comparing Dates and Times in Rails

I can’t remember which is greater than or less than either.

Added: 12 Oct 2022
How Do You Run a Coding Workshop?

A fellow recently asked me for advice about running a Ruby workshop. And folks, I had forgotten I knew so...

Added: 11 Oct 2022
Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.

A new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team...

Added: 11 Oct 2022
When New CSS Features Collide: Possibility and Complexity at the Intersections by Rachel Andrew

We finally got a proper layout system for the web, and each browser release seems to bring with it another...

Added: 11 Oct 2022
The Definitive Guide to Rack for Rails Developers

This article explains pretty much everything you need to know about Rack as a Ruby and Rails developer. We will...

Added: 11 Oct 2022
Kill Your Dependencies | Mike Perham

Ruby, OSS and the Internet

Added: 11 Oct 2022
Fly Reactive Rails 🛫

This post is proudly sponsored by Code & Co. Disclaimer: I’m not affiliated to fly.io at all, this is just...

Added: 10 Oct 2022
How we built user queueing system for platform issuing COVID-19 passports - Rails, Sidekiq, Redis

Building a platform issuing COVID-19 passports is a very diffcult task especially in terms of security and performance. I am...

Added: 10 Oct 2022

Week 2022-40

The impact of app development on the bakery and confectionery industry

How can apps help improve the food service industry? We decided to find out using the bakery and confectionery sector...

Added: 08 Oct 2022
7 Cool HTML Elements Nobody Uses

Searching for cool HTML elements, especially if you don't know what you're looking for, is often like...

Added: 08 Oct 2022
Turbo 7.2: A guide to Custom Turbo Stream Actions

Marco Roth - marcoroth.dev

Added: 07 Oct 2022
New in Ruby 3.2 - Data.define

Victor Shepelev (Zverok) has just landed an extremely useful feature in Ruby, Data.define. You can...

Added: 06 Oct 2022
The trifecta model: Bringing together engineering, product, and design

Having accountability over different responsibilities is key to cross-functional work. Here's how the trifecta team structure can help.

Added: 06 Oct 2022
Run multiple Rails apps with Puma-dev

Before joining 37signals I hadn't encountered Puma-dev. This post is a message to past-me who would have benefited from using...

Added: 06 Oct 2022
Security Best Practices for Your Rails Application | AppSignal Blog

Ensure your Rails application stays secure by following some best practices and habits.

Added: 06 Oct 2022
The 2022 Web Almanac

The Web Almanac is an annual state of the web report combining the expertise of the web community with the...

Added: 06 Oct 2022
Dynamic forms with Turbo

Fetch fresh fields from your servers with Turbo Frames.

Added: 06 Oct 2022

Blocks of code in blog posts and articles often contain errors.I see it frequently, in other people’s writing and my...

Added: 05 Oct 2022
How To Architect A Complex Web Table — Smashing Magazine

Tables frequently appear on the web but aren’t easy to design and code. This illustrated guide explains the table anatomy...

Added: 05 Oct 2022
Prove Me Wrong (A Reminder to Myself)

Maybe the real treasure was the mistakes I made along the way.

Added: 05 Oct 2022
Postgres: a better message queue than Kafka? | Dagster Blog

When lots of event logs must be stored and indexed, Kafka is the obvious choice. Naturally, our queue runs on...

Added: 05 Oct 2022
Factory pattern: the key information on the factory method pattern

A factory method pattern (also known as a factory pattern) offers developers a good alternative to subclass management. What’s behind...

Added: 05 Oct 2022
Event Streaming in Rails with Kafka

Original post

Added: 04 Oct 2022
Rendering Collections in Rails

Partials are a great way to break down complex view into more manageable...

Added: 04 Oct 2022
Everyone GET in here! Infinite scroll with Rails, Turbo Streams, and Stimulus

Building filterable, instantly updated interactive charts with Ruby on Rails 7, ApexCharts, and StimulusReflex

Added: 04 Oct 2022
Delightful UI Animations With Shared Element Transitions API (Part 1) — Smashing Magazine

Shared Element Transitions API is a game-changing feature that will enable us to create impressive and elaborate UI animations easily....

Added: 04 Oct 2022
Ruby-on-Rails authentication tutorial with Devise

Ruby-on-Rails has no built-in authentication mechanism. So let's pick the well-known gem Devise in this tutorial.

Added: 03 Oct 2022
How To Setup Default Values For Attributes In Ruby On Rails

Have you ever thought that setting default values for attributes in Ruby on Rails could be a problem?

Added: 03 Oct 2022
Simple View Presenter Pattern in Rails without using Gems

What's the size of user.rb file in your current project? The default Rails way model-view-controller architecture often leads to a...

Added: 03 Oct 2022

Get your work recognized: write a brag document

Added: 03 Oct 2022
Using a Dependency Graph to Visualize RSpec let

A visual answer to the question “what data is created when I execute this test?”.

Added: 03 Oct 2022
Time extensions are an unsung hero of Active Support

Is the end of the quarter of Tuesday, a week from now, a Sunday? There’s a method for that.

Added: 03 Oct 2022
Rails Generators: Model or Resource?

Rails is a powerful tool for a developer, you can do so much with just a few keystrokes in the......

Added: 03 Oct 2022

Week 2022-39

Automate React Native App deployments

Use Fastlane and continuous integration to automate building React Native apps.

Added: 30 Sep 2022
GitHub - kamui/retriable: Retriable is an simple DSL to retry failed code blocks with randomized exponential backoff.

Retriable is an simple DSL to retry failed code blocks with randomized exponential backoff. - GitHub - kamui/retriable: Retriable is...

Added: 29 Sep 2022
Creating continuous aggregates with Ruby and Timescale

I created the timescale gem and wrote an introductory post on how using the timescale gem with ruby.

Added: 29 Sep 2022
Detect anomalies in user behavior using Rails and PostgreSQL

You probably use some type of error monitoring software to notify you when an exception is raised in your application,...

Added: 29 Sep 2022
How we reduced our annual server costs by 80% — from $1M to $200k — by moving away from AWS

An interview with Zsolt Varga, the tech lead and general manager at Prerender

Added: 28 Sep 2022
A Flexible Framework for Effective Pair Programming

Pair programming is one of the most important tools we use while mentoring early talent in the Dev Degree program....

Added: 28 Sep 2022
Build Twitter Bot With Ruby - The Dev Post

How to make a bot for Twitter? The purpose of this Twitter bot is to retweet all hashtags related to...

Added: 26 Sep 2022

Week 2022-38

Writing a TodoMVC App With Vanilla JS in 2022

In just over an hour, I coded a TodoMVC App with modern (ES6+) vanilla JavaScript. The comparison to the previous...

Added: 25 Sep 2022
ULIDs and Primary Keys

Not all non-sequential primary keys are created equal, the ULID format is a fantastic substitute for the typical UUIDv4 choice....

Added: 25 Sep 2022
ActiveModel::Serializer and You

    Today I thought I'd run through a few of the powerful things that the ActiveModel::Serializer gem...

Added: 25 Sep 2022
Building a modal form with Turbo Stream GET requests and custom stream actions

Using Ruby on Rails, Turbo Streams, and Stimulus to build server-rendered modal forms

Added: 25 Sep 2022
Aging programmer

Back in college, they told me that I would start my career writing code, but eventually, I would move to...

Added: 25 Sep 2022
The Ultimate Ruby on Rails Cheatsheet

The Ultimate Ruby on Rails Cheat Sheet & Code Snippets General ...

Added: 23 Sep 2022
How To Scale Your Web Applications With Heroku

Building a web application is an exciting journey. This is even more so when users start signing up for your...

Added: 23 Sep 2022
Rails 7.1 Optimizes AR batching for whole table iteration

Rails 7.1 - in_batches implementation has improved to give optimized results for whole table iterations using range queries instead of...

Added: 22 Sep 2022
GitHub - holidays/holidays: A collection of Ruby methods to deal with statutory and other holidays.  You deserve a holiday!

A collection of Ruby methods to deal with statutory and other holidays. You deserve a holiday! - GitHub - holidays/holidays:...

Added: 22 Sep 2022
OAuth2 explained with cute shapes

We’re currently refurbishing 🙃 our authentication stack at Back Market, and we need to onboard our developers and teams to...

Added: 22 Sep 2022
Deploying Rails with Docker and AWS Fargate

Want to deploy a Rails app with Docker and AWS, but not sure where to start? AWS Fargate simplifies the...

Added: 22 Sep 2022
My Hybrid Docker & Ruby Development Environment

After fucking up my install of MySQL last year by trying to move from MariaDB to MySQL as I wanted...

Added: 22 Sep 2022
6 Simple and Useful PostgreSQL Features that I wish I knew when I started

I use PostgreSql a lot in my working time. So recently, I spent some time refreshing and deepening my knowledge...

Added: 22 Sep 2022
Don’t Overwrite Visual Labels With `aria-label` | Ashlee M Boyer

Users suffer when the accessible name of an element doesn’t match its visual label.

Added: 22 Sep 2022
Why the number input is the worst input

Think that web form has got your number? If you used input type="number", you may be surprised to find that...

Added: 22 Sep 2022
The many problems with implementing Single Sign-On

Without SSO and other enterprise features, a product can only go so far.

Added: 22 Sep 2022
Buggy Rails Code: The 10 Most Common Mistakes That Rails Developers Make

There are many Ruby on Rails best practices that can help you avoid these common Rails programming mistakes. Read on...

Added: 21 Sep 2022
JavaScript APIs You Don’t Know About — Smashing Magazine

In this article, Juan Diego covers the least known yet extremely useful APIs, such as the Page Visibility API, Web...

Added: 20 Sep 2022

Week 2022-37

Action View Overview — Ruby on Rails Guides

Action View OverviewAfter reading this guide, you will know: What Action View is and how to use it with Rails....

Added: 18 Sep 2022

Easily write fluent integration tests.

Added: 18 Sep 2022
Turning a Quick Ruby Prototype Into the Real Thing

If you’re going to throw your app away because there are no customers, it doesn’t matter how solidly you build...

Added: 17 Sep 2022
Working Iteratively

Working in small chunks is one of the most impactful things we can do as developers.

Added: 16 Sep 2022
Using the Timescale gem with Ruby

I’d like to teach you how to use the gem with Ruby. Not Rails. Only plain Ruby and some ActiveRecord...

Added: 15 Sep 2022
The leader’s journal: Become an inspiring leader in ten minutes a day

Want to become an outstanding engineering leader? Keep a daily journal.

Added: 15 Sep 2022
Designing APIs for humans: Error messages

Good error message, bad error message Error messages are like letters from the tax...

Added: 15 Sep 2022
Let's Not

How using this popular RSpec technique can sometimes do more harm than good.

Added: 15 Sep 2022

What is Hotwired ATS? What are we building? Plus practical tips of using this book and a sermon on taking...

Added: 13 Sep 2022
Calendar component using ViewComponent and Hotwire

One possible way of rendering a simple calendar control

Added: 13 Sep 2022
Taking off the Heroku training wheels: the Rails preflight checklist—Martian Chronicles, Evil Martians’ team blog

An opinionated guide for small teams on setting up Heroku to deploy Rails applications—with pleasure.

Added: 13 Sep 2022
Making Sense of Rails Assets

Demystify the complexity of the Rails 7 asset pipeline and navigate its wide menu of options.

Added: 13 Sep 2022
eagerworks Blog | How to use Import Maps in Rails 7 (with examples)

Import Maps is a new feature in Rails 7 that allows us to load third-party Javascript libraries in a default...

Added: 12 Sep 2022
TIL: You Can Access A User's Camera with Just HTML

So that's the HTML capture attribute. It's a pretty cool way to add a nicer user experience if you know...

Added: 12 Sep 2022

Week 2022-36

Why Use MongoDB with Ruby

Before discovering Ruby and Ruby on Rails I was a .NET developer. At that time I’d make ad-hoc changes to...

Added: 11 Sep 2022
The What, the Why, and the How of Bloom Filter - The Lean Software Boutique

Have you ever wondered how does Medium recommend blogs to read or how does a platform with millions of users...

Added: 11 Sep 2022
Sign your Git commits with 1Password | 1Password

Developers can now use 1Password to set up and use SSH keys to sign Git commits, building on 1Password’s already...

Added: 09 Sep 2022
🎓 Delegated Types

Delegated Types don’t work the way I thought they did

Added: 09 Sep 2022

As I’ve previously mentioned, I’m building a brand-new business from scratch on top of Rails. Reversing key architectural decisions is...

Added: 09 Sep 2022
ruby/debug cheatsheet

This cheatsheet can help you get started with ruby/debug as well as use it in your daily development. It's not...

Added: 09 Sep 2022
What’s New With Forms in 2022? | CSS-Tricks

Browsers are constantly adding new HTML, JavaScript and CSS features. Here are some useful additions to working with forms that...

Added: 08 Sep 2022
Bring Focus to the First Form Field with an Error  ::  Aaron Gustafson

While filling out a long form the other day, I couldn’t figure out why it wasn’t submitting. Turns out I’d...

Added: 05 Sep 2022

Week 2022-35

13 tips to write better Rails code | Guillaume Briday

Writing clean code is the key for maintainable and sustainable code. Here's some of my favorite tips I could give...

Added: 04 Sep 2022
Data migrations with Rails

Data migration is a common part of working with databases, and Ruby on Rails developers have many...

Added: 03 Sep 2022
RailsConf 2022 - Open the gate a little: strategies to protect and share data by Fernando Petrales

Open the gate a little: strategies to protect and share dataCan you name a more terrifying set of three words...

Added: 03 Sep 2022
Ditching Active Record Callbacks

If you've done development on a Ruby on Rails application before you're probably familiar with Active Record callbacks. For those...

Added: 01 Sep 2022
Rails is Fast: Optimize Your View Performance | AppSignal Blog

You'll learn some effective performance and optimization techniques that you can use to speed up your Rails app.

Added: 30 Aug 2022
Stateless Forms with the Rails Attributes API

Building a form in Rails that ISN'T driven by an ActiveRecord model? Here's how to use the Attributes API to...

Added: 30 Aug 2022
Using Rails Service Objects to Keep Code Clean

In this article, we’ll find out what are Rails Service Objects and how you can use them to make your...

Added: 29 Aug 2022
Style Queries

Thoughts about front-end development and design. And probably other ramblings by Una Kravets.

Added: 29 Aug 2022

Week 2022-34

Using Grid Named Areas to Visualize (and Reference) Your Layout | CSS-Tricks

Whenever we build simple or complex layouts using CSS Grid, we're usually positioning items with line numbers. Grid layouts contain...

Added: 27 Aug 2022