Articles that I have been reading

Week 2022-38

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
GitHub - derrickreimer/sequenced: Generate scoped sequential IDs for ActiveRecord models

Generate scoped sequential IDs for ActiveRecord models - GitHub - derrickreimer/sequenced: Generate scoped sequential IDs for ActiveRecord models

Added: 26 Aug 2022
Rails adds beginless range support to clusivity

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

Added: 26 Aug 2022
Effective Queries with Rails and PostgreSQL

Getting data *into* your database is easy, but querying large datasets is challenging—especially without the right indexes. Pavel Tkachenko teaches...

Added: 25 Aug 2022
Debugging Ruby on Rails with Visual Studio Code

Rails 7 ships with the new debug gem, here's how to put it to work in VS Code for a...

Added: 25 Aug 2022
How to interrogate unfamiliar code

Readable code is great, but not all code will be immediately readable. That's when you get your interrogation tools.

Added: 25 Aug 2022
Terms and Concepts by Technically - Airtable

Explore the "Terms and Concepts by Technically" view on Airtable.

Added: 23 Aug 2022
addEventListener accepts functions and (!) objects

addEventListener accepts callback functions but also elements that implement the EventListener interface

Added: 23 Aug 2022

Week 2022-33

React vs. Ruby on Rails Components | Mix & Go

What is a Ruby on Rails Component, and how is it different than a Reac one?

Added: 19 Aug 2022
Introduction to Pattern Matching in Ruby

This article will introduce you to the basics of pattern matching in Ruby, a powerful new feature added in Ruby...

Added: 16 Aug 2022
Thinking in Hotwire: Progressive Enhancement

Your mental model for Hotwire should be progressive enhancement: start with the basics and layer on Turbo Frames, Streams, and...

Added: 16 Aug 2022
Reduce ViewComponents complexity using helpers

Yesterday I figured out how to avoid a pattern that we’ve been doing in a project for some time which...

Added: 16 Aug 2022
Interviewing like it's a classroom. In a good way.

Observing some aspects that job interviews and learning and teaching a foreign language have in common, in communication style in...

Added: 15 Aug 2022

Week 2022-32

Michelle Barker | Creative CSS Layout | CSS Day 2022

CSS layout has moved along in leaps and bounds in the past few years. Beyond flexbox and Grid, there is...

Added: 14 Aug 2022
So You’re a (Junior) Developer – Here's How to Learn

The web is littered with advice for Junior, Mid, and up-and-coming Developers, and I’ve found a lot of it to...

Added: 14 Aug 2022
RailsConf 2022 - Leveling Up from Planning to Production by Thomas Countz

The biggest difference between a mid-level engineer and a senior engineer is the scale and scope of the work they're...

Added: 14 Aug 2022
Bearer | The ultimate guide to securing data for Rails developers

Everything you need to know to secure your Ruby on Rails applications. From database connections to encryption. From a team...

Added: 14 Aug 2022
Rails 7.1 returns the Active Storage attachment(s) after saving the attachment

Rails 7 series | Rails 7.1 returns the Active Storage attachment(s) after saving the attachment

Added: 14 Aug 2022
Rails 7.1 adds callbacks for Action Cable commands at the connection level

Rails 7 series | Rails 7.1 adds callbacks for Action Cable commands at the connection level

Added: 13 Aug 2022
RailsConf 2022 - Reflecting on Active Record Associations by Daniel Colson

Active Record associations seem magical—add a has_many here, a belongs_to there, and suddenly your models are loaded with behavior. Could...

Added: 13 Aug 2022
Implementing Impersonation

The ability to log in as one of your users is one of the highest value features you can develop...

Added: 13 Aug 2022
A tech lead’s guide to effective communication

Tips for improving your communication skills as a tech lead

Added: 11 Aug 2022
Naming Things Is Hard - FastRuby.io | Rails Upgrade Service

In the developers’ world, there is a well known quote by Phil Karlton that goes There are only two hard...

Added: 11 Aug 2022

This summarizes my past accepted conference proposals, with some tips or commentary on writing them.

Added: 11 Aug 2022
Announcing Docusaurus 2.0 | Docusaurus

Today we are extremely happy to finally announce Docusaurus 2.0! 🥳️

Added: 11 Aug 2022
Great engineering cultures are built on social learning communities

For a successful Agile and DevOps practice, organizations need to think beyond tooling. Engineering organizations need a strong community of...

Added: 11 Aug 2022
Infinite Auto Scroll using Turbo only ( No Stimulus / No Javascript )

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

Added: 11 Aug 2022
A Comprehensive Guide to Rails Internationalization (i18n)

Internationalization means adapting your application to the language and culture of your users—a difficult task! Luckily, Rails provides the I18n...

Added: 11 Aug 2022
Scaling Sidekiq at Gusto

Over the past year at Gusto, we’ve drastically changed how we approach Sidekiq in our main Rails monolith. This post...

Added: 09 Aug 2022

Week 2022-31

UX/ UI tips: A guide to search inputs | Make It Clear

Search inputs are an essential element of a website. To help you create a fit-for-purpose search input we’ve outlined our...

Added: 05 Aug 2022
LAMBDA — A Serverless Musical

Join the Serverless Revolution!

Added: 05 Aug 2022
Action Policy

Authorization framework for Ruby/Rails application

Added: 04 Aug 2022
Configuring Puma, Unicorn and Passenger for Maximum Efficiency

Application server configuration can make a major impact on the throughput and performance-per-dollar of your Ruby web application. Let's talk...

Added: 04 Aug 2022

Week 2022-30

Using Notion to manage product development: Part 1

The flexibility of Notion is a blessing and a curse. Recently, a client migrated to Notion and together we explored...

Added: 31 Jul 2022
Sidekiq and Request-Specific Context | Mike Perham

Ruby, OSS and the Internet

Added: 31 Jul 2022
thoughtbot helps to scale AWS services with Kubernetes before the school year starts

Scaling AWS services with Kubernetes before the school year

Added: 29 Jul 2022
Tips for Joining an Existing Project 💡

If, like me, you don’t like change (who does?!), here are some tips that I have picked up along the...

Added: 25 Jul 2022

Week 2022-29

How to Take Screenshots with Ruby on Rails

We’ll show you 4 different ways to take website screenshots using Rails. Puppeteer & Goover, Cloudinary + URL2png, html2canvas and...

Added: 24 Jul 2022

Easily find and browse Ruby classes, modules and methods

Added: 23 Jul 2022
Tips & tricks for using GitHub projects for personal productivity | The GitHub Blog

GitHub Issues is a core component of how developers get things done and, as we built more project planning capabilities...

Added: 21 Jul 2022
GitHub - chatwoot/chatwoot: Open-source customer engagement suite, an alternative to Intercom, Zendesk, Salesforce Service Cloud etc. 🔥💬

Open-source customer engagement suite, an alternative to Intercom, Zendesk, Salesforce Service Cloud etc. 🔥💬 - GitHub - chatwoot/chatwoot: Open-source customer...

Added: 21 Jul 2022
A practical guide to changing code so you can understand it

Leveraging automated refactoring tools can help you find a way into understanding code, with confidence.

Added: 21 Jul 2022
Five management anti-patterns and why they happen

The five management styles everyone should avoid

Added: 21 Jul 2022
The roadmap to technical writing

I recently joined a Twitter space hosted by Emy around technical writing. At one stage, a question...

Added: 21 Jul 2022
7 Levels of test coverage

Do you measure your test coverage? Do you know that everything below 80% is irrelevant? Here I list 7 levels...

Added: 21 Jul 2022
It's 1997 and you want to build a website - The History of the Web

You have a few options. How much time you got?

Added: 21 Jul 2022
How Many Meetings Are Too Many?

It's easy for an entire day to feel lost when you open the calendar and have back-to-back remote meetings.

Added: 19 Jul 2022
Value Object Semantics in Ruby

What is the correct behavior of hash, ==, eql? and equal? for value objects?

Added: 19 Jul 2022
Intro to RSpec Mocks

RSpec provides tools that help you test the behavior of your Ruby objects. Join Abiodun Olowode for a tour of...

Added: 18 Jul 2022

Week 2022-28

How we used DesignOps and Figma to scale our team

We looked to better document our designs and project background in a useful and clear way to support a growing...

Added: 14 Jul 2022
Six Amazing Ways to Create Enumerated Types in Rails and Postgres

Join me, friend, as I fall all the way down the rabbit hole exploring all the ways you can implement...

Added: 13 Jul 2022
Shipping to Production

Approaches for shipping code to production reliably, every time.

Added: 12 Jul 2022
Technical Writing for Developers | CSS-Tricks

HTML, CSS, JavaScript, Python, PHP, C++, Dart — there are so many programming languages out there and you may even...

Added: 12 Jul 2022
Adding keyboard shortcuts and hotkeys to StimulusJS

A review of the ecosystem for adding hotkeys to your Stimulus controllers: stimulus-hotkeys, stimulus-use/useHotkeys, HotKey.js, and github/hotkey

Added: 12 Jul 2022

Week 2022-27

Advanced Route Constraints with Rails

A quick look into using advanced routing constraints with Ruby on Rails and how I used them to dynamically whitelist...

Added: 10 Jul 2022
Get Started with Hotwire in Your Ruby on Rails App | AppSignal Blog

Learn the basics of Hotwire and how to use it in your Rails app.

Added: 08 Jul 2022
Three ways to run inclusive meetings

How to build inclusion into your meetings

Added: 07 Jul 2022
Designing for the autistic community

Product design principles that will improve usability for everyone.

Added: 06 Jul 2022
What my father taught me about software development

My father is a construction man. What could he teach me about being a software engineer? Well, quite a lot....

Added: 06 Jul 2022
Learning TDD With RSpec

Checkout Kata

Added: 05 Jul 2022
The One Reason I Moved From Notion To Obsidian As An Engineer

And why you might want to do the same

Added: 04 Jul 2022
Ruby Enumerable Module

The enumerable module is one of the most important modules in Ruby, it includes a wide range of methods that...

Added: 04 Jul 2022

Week 2022-26

Five essential tips for great internal communication

How to improve internal comms in your organization

Added: 02 Jul 2022
Three steps to successfully onboard junior engineers

Effectively onboarding new developers to your team

Added: 30 Jun 2022
Write cleaner, self-documented tests by defining methods in RSpec

Writing methods in RSpec lets us clean up our tests while improving their documentation value and isolation.

Added: 30 Jun 2022
Hotwire in the real world.

Building & scaling a Rails app built using Turbo/Hotwire, what did we learn?

Added: 30 Jun 2022

This website aims to tackle some of the most important accessibility concerns that you'll need to address in a Rails...

Added: 30 Jun 2022
The 4 upcoming CSS features I’m most excited for

Container Queries, Scroll Snap, Object View Box, Scroll Timeline, and more! Check it out!

Added: 30 Jun 2022
Defensive CSS - Minimum Content Size In CSS Flexbox

Practical CSS and design tips that helps in building future-proof user interfaces.

Added: 30 Jun 2022
The most underrated Rails helper: dom_id

One of the oldest helpers in Rails is also the most underrated. dom_id shines for building apps with Hotwire, allowing...

Added: 29 Jun 2022
Building Your Own Rails Form Builders

Learn how to plug in to Rails' form builders to speed up application development and avoid duplication.

Added: 28 Jun 2022
Full-text Search with Elasticsearch in Rails

If you're finding performance bottlenecks with full-text search in your database, it may be time to switch to Elasticsearch. In...

Added: 28 Jun 2022

This article decomposes an interaction with an external dependency into its component parts.

Added: 27 Jun 2022

Week 2022-25

Taking over an existing engineering team? Follow these three tips.

Everything a leader needs to know about inheriting an engineering team

Added: 23 Jun 2022
How engineering, design, and product form the ‘software trinity’

A guide to effective cross-functional collaboration

Added: 23 Jun 2022
HEY Bubble Up: From kickoff to launch — 37signals

At 37signals, we use the Shape Up methodology and work in 6-week cycles. Here’s how we worked on HEY’s Bubble...

Added: 23 Jun 2022
JavaScript Get Current Date – Today's Date in JS

When you're developing web applications, you might need to include the current date on which a particular operation is performed....

Added: 23 Jun 2022
State Machines in Ruby: An Introduction | AppSignal Blog

Let's build a simple state machine in Ruby and use the state machines gem.

Added: 23 Jun 2022
The Rails Configuration File (~/.railsrc)

Did you know that Rails has a ~/.railsrc file? Similar to your ~/.bashrc or ~/.zshrc file, you can...

Added: 23 Jun 2022
One-liner for running queries against CSV files with SQLite

I figured out how to run a SQL query directly against a CSV file using the `sqlite3` command-line utility: sqlite3...

Added: 22 Jun 2022

Week 2022-24

Mobile-First CSS: Is It Time for a Rethink?

Is mobile-first CSS always the best option? Patrick Clancey explores the pros and cons of the classic methodology, as well...

Added: 19 Jun 2022
Scaling Rails web sockets in Kubernetes with AnyCable

In this post I describe how I switched our backend from ActionCable to AnyCable to for more scalable and better...

Added: 19 Jun 2022
Using Terraform to Manage Infrastructure

Large applications are often a mix of code your team has written and third-party applications your team needs to manage....

Added: 18 Jun 2022
How to estimate and communicate timelines when building software

Your guide to becoming a better estimator

Added: 18 Jun 2022
Code I like (I): Domain-driven boldness

One of the first things I did when I started working at 37signals almost three years ago was cloning the...

Added: 16 Jun 2022
Better scrolling through modern CSS

There's more to scrollbars than you might expect

Added: 16 Jun 2022
The End of Localhost

All the Cloud's A Staging Env, and All the Laptops Merely Clients

Added: 16 Jun 2022
What Makes a Great Developer Experience? – Lee Robinson

Tools that keep developers in the flow state have a magnetic force. An often unexplainable, invisible pull that attracts and...

Added: 15 Jun 2022
Your Phone Belongs to You, You Don't Belong to It

Sometimes we can become addicted to the fast-paced nature of our industry. It doesn’t have to be this way. You...

Added: 14 Jun 2022
Self-destructing StimulusJS controllers

Add sprinkles of Javascript behavior with Stimulus controllers that run a few lines of code and then remove themselves from...

Added: 14 Jun 2022

Week 2022-23

Best Frameworks for Startup Launch and Growth | Railsware Blog

From hundreds of startup frameworks, we selected the most useful tools to help you knock it out of the park...

Added: 10 Jun 2022
Simplify Your Color Palette With CSS Color-Mix() — Smashing Magazine

CSS color-mix is an experimental function that blends two colors and can be used to simplify color palettes. You can...

Added: 10 Jun 2022
Episode 352 - Roles from Scratch

In this episode, we look at different authorization approaches from the most simple to more complex scenarios.

Added: 09 Jun 2022
Rails now provides pattern matching support for ActiveModel

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

Added: 09 Jun 2022
Rails 7.1 adds authenticate_by with has_secure_password

Rails 7.1 introduces a method authenticate_by, used with has_secure_password to prevent timing-based enumeration attacks.

Added: 08 Jun 2022
Query by Duration in Active Record

How do you even save a “duration”, let alone query for records by that value? It’s actually easier than you...

Added: 07 Jun 2022

Week 2022-22

The science of interviewing developers

All those CEOs on LinkedIn claiming they can find the right candidate in a five-minute conversation? Wrong. Science shows us...

Added: 02 Jun 2022
Five must-reads for Staff+ engineers

Our top articles for Staff+ readers

Added: 01 Jun 2022

Week 2022-21

2022 Ruby on Rails Community Survey Results

Over 2,600 members of the Rails community from 92 countries kindly contributed their thoughts on tools, frameworks, and workflows in...

Added: 26 May 2022
Four ways to invest in junior engineers

Setting junior developers up for success

Added: 26 May 2022
Rolis Blog - Custom turbo stream actions

Turbo Hotwire is neat, I really like the simplicity of Turbo frames. But after having used CableReady the turbo streams...

Added: 26 May 2022
reveal.js

Are you from India, 日本, Mexico, 香港, Україна, or any African nation? Use one of these codes intead:

Added: 26 May 2022

Thankfully guard-rspec has been developed to allow us to integrate rspec with guard seamlessly and there are only a few...

Added: 26 May 2022

A playlist of our blog posts about development practices.

Added: 24 May 2022
What is Debounce in JavaScript?

In this article, I will cover one of the interesting topics of JavaScript Debounce Function and share with you how...

Added: 24 May 2022
Rails 8 : unreleased features

Rails 8 has not yet a release date at this time of writing. What kind of feature could be fun...

Added: 24 May 2022
Event Streaming in Rails with Kafka

Do you need to process a lot of data in real time? Event streaming is a pattern that could help....

Added: 24 May 2022
Lesser-Known And Underused CSS Features In 2022 — Smashing Magazine

CSS is constantly evolving, and some cool and useful properties either go completely unnoticed or are not talked about as...

Added: 24 May 2022
How to add a Command Palette to your Ruby on Rails app (Example) | GoRails - GoRails

A command palette is a common feature for power users. Learn how to add a command palette to your Ruby...

Added: 23 May 2022
Understanding Ruby blocks - Code with Jason

Blocks are a fundamental concept in Ruby. Many common Ruby methods use blocks. Blocks are also an integral part of...

Added: 23 May 2022
Understanding ViewComponent concepts by building a button

The ViewComponent library from GitHub is becoming a popular answer to building design systems in server-rendered Rails applications. Let’s understand...

Added: 23 May 2022

Week 2022-20

Scraping Buy: Scripting for a Purchase

I wrote a small script to scrape a website to tell me when guitars were in stock.

Added: 22 May 2022
Building a Design System from scratch - Maxime Heckel's Blog

A deep dive into my experience building my own design system that documents my process of defining tokens, creating efficient...

Added: 22 May 2022
State of CSS 2022

Web styling features of today and tomorrow, as seen at Google IO 2022, plus some extras.

Added: 22 May 2022
How to build and scale a Staff+ engineering community

What’s the value of a Staff+ community, and how can you get one off the ground?

Added: 20 May 2022
How to run a great retrospective

Accelerating your team with regular, productive retrospectives

Added: 20 May 2022
How to Mock ActionMailer

Using RSpec custom matchers to make clean ActionMailer mocks

Added: 20 May 2022
How to feel engaged at work: a software engineer's guide | Jason Tu

On fighting the feeling of "blah".

Added: 20 May 2022
Soft deletion with PostgreSQL: but with logic on the database! — Martian Chronicles

Rubyists might take special pleasure here, but every SQL and PostgreSQL dev can learn this unorthodox approach: putting soft delete...

Added: 20 May 2022
Using Scientist to Refactor Critical Ruby on Rails Code | AppSignal Blog

Migrate, refactor, and change critical Ruby production code with confidence using the Scientist gem.

Added: 20 May 2022
Scaling Engineering Teams via  RFCs: Writing Things Down

I have recently been talking at small and mid-size companies, sharing engineering best practices I see us use at Uber,...

Added: 20 May 2022

Maybe you have heard about the counter cache feature. A counter cache makes finding the number of belonging objects more...

Added: 18 May 2022
What are the best ways to scale Ruby on Rails app?

We present proven ways to scale Ruby on Rails applications. Find out how to prepare your app's architecture to meet...

Added: 18 May 2022
Try Infrastructure as Code eBook Series | Linode

Justin Mitchel provides a step-by-step IaC guide for Terraform, Ansible, Puppet, Chef, and Salt.

Added: 16 May 2022
Fly.io: the Reclaimer of Heroku's Magic

Fly.io: the Reclaimer of Heroku's Magic - Xe's Blog

Added: 16 May 2022

Week 2022-19

Dockerizing a Ruby on Rails Application - Semaphore Tutorial

Read about the advantages of using Docker and learn how to build and dockerize a Ruby on Rails application that...

Added: 14 May 2022
A Case for Query Objects in Rails

When is it best to reach for query objects and how can we best structure them?

Added: 14 May 2022
How to Add Custom Fonts to your Rails Application

A quick guide to the 4-step process of loading a custom font file into your Rails application.

Added: 13 May 2022
GitHub - ankane/searchjoy: Search analytics made easy

Search analytics made easy. Contribute to ankane/searchjoy development by creating an account on GitHub.

Added: 13 May 2022
How to Sell a One-time Purchase in Rails With Stripe

Have you ever wanted to accept payments in Rails? With Stripe Checkout, it's never been easier. Jeffrey Morhous shows us...

Added: 13 May 2022
How to redesign your architecture to reduce technical debt

Building the system architecture your teams need

Added: 13 May 2022
It's About Time (Zones)

An overview of time zones in Rails.

Added: 12 May 2022
4 Lesser-Known Emmet Tricks To Speed Up Your Coding

And why coding speed matters

Added: 10 May 2022

Week 2022-18

You Don’t Need A UI Framework — Smashing Magazine

Developers often reach for UI frameworks like Bootstrap or Material UI, hoping that they’ll save a bunch of time and...

Added: 07 May 2022
The Large, Small, and Dynamic Viewports

There are some changes being proposed regarding viewport units, finally solving that "100vh in Safari on iOS" issue …

Added: 07 May 2022
What is a Rails model? - Code with Jason

In the model-view-controller pattern that Rails is built on, it’s pretty clear what views and controllers are, but models are...

Added: 06 May 2022
How to gather helpful insight from your peers

Getting the feedback you need from colleagues and friends

Added: 06 May 2022
Breaking the Monolith at Twitch: Part One | Twitch Blog

This is Part One (of two) of our story chronicling Twitch’s journey from monolithic architecture to microservices. In Part One,...

Added: 05 May 2022
Heroku admits that customer credentials were stolen in cyberattack

Heroku has now revealed that the stolen GitHub integration OAuth tokens from last month further led to the compromise of an internal...

Added: 05 May 2022
Empathy for the Dev: Avoiding common pitfalls when communicating with developers

All too often, developers go deep on the wrong things, when writing documentation. A little bit of empathy can get...

Added: 05 May 2022
Starting a blank Jekyll site with Tailwind CSS in 2022

Most websites I build start off as a blank Jekyll site with Tailwind CSS on top.

Added: 05 May 2022
Bootstrapping with Ruby on Rails Generators and Templates | AppSignal Blog

Let's explore the basics of Rails generators and templates, then examine how to customize your Rails app with templates.

Added: 04 May 2022
Designing a good MVP means thinking outside of the box – TechCrunch

MVP is such a profound misnomer; a good MVP is not viable, and it is certainly not a product. Chances...

Added: 04 May 2022
Integrating Stripe’s Product API Into Your Rails API

A hands-on guide on Stripe’s Product API Integration

Added: 04 May 2022
Steal this interview script

A boilerplate script for 1:1 remote user interviews.

Added: 03 May 2022
How to Avoid Race Conditions in Rails

Race conditions are hard to debug—especially when you don't know it's a race condition! This article looks at some common...

Added: 03 May 2022

Week 2022-17

21 Tips to Write Better Posts for Developers - Semaphore

You can write for fun, to learn, or make a living too. Check out our 21 tips to write posts...

Added: 30 Apr 2022
Turbocharged realtime search with Ruby on Rails 7

Adding basic search functionality to a Ruby on Rails app is not the toughest task in the book but when...

Added: 29 Apr 2022
Ruby on Rails Flash Messages With Hotwire

In this video, we're going to take a look at Rails' flash messages, how they work, and what changed since...

Added: 29 Apr 2022
Taking out the guesswork: How to set clear expectations as a manager

The importance of communicating your expectations with your team

Added: 29 Apr 2022
The four phases of a test - Code with Jason

When writing tests, or reading other people’s tests, it can be helpful to understand that tests are often structured in...

Added: 29 Apr 2022
How to avoid sleep in Rails system tests

Writing system tests can be sometimes tricky because we want to assert a reality that’s not yet rendered. Ad-hoc sleeping...

Added: 29 Apr 2022

Kevin Newton

Added: 29 Apr 2022
My sane approach to test fixtures in Rails

My approach on how I keep my test fixtures manageable, sane, and obvious. Not hard and fast rules, but guidelines...

Added: 28 Apr 2022
Tips for Using FactoryBot Without an ORM

Exploring how to use FactoryBot effectively with models backed by plain Ruby objects.

Added: 28 Apr 2022
deploy.yml

GitHub Gist: instantly share code, notes, and snippets.

Added: 27 Apr 2022
How to spot high-potential junior talent during interviews

Strategies for identifying top engineering talent

Added: 25 Apr 2022
A naming convention for ActionMailer emails

A Ruby on Rails email naming convention for clear and easy communication of purpose

Added: 25 Apr 2022
4 ways we use GitHub Actions to build GitHub | The GitHub Blog

From automating builds and releases to taking care of large-scale regression testing, here are a few ways we use GitHub...

Added: 25 Apr 2022

Week 2022-16

What are the Different Layers and Parts of a Design System?

What is a successful design system made of? Learn about the four layers of a design system and the parts...

Added: 22 Apr 2022
The key to managing a global remote team

Building inclusivity and alignment in distributed teams

Added: 22 Apr 2022
Let's play design patterns: Form Objects – Nimble

Form Objects are a great addition to the toolbox provided by Rails. Follow our step-by-step guide to start building better...

Added: 22 Apr 2022
Testing Techniques: The I/O Table

Leverage the power of the I/O table mindset to make your tests as maintainable and readable as possible.

Added: 21 Apr 2022
The Future of CSS: CSS Toggles

Late last week, I was very delighted to see that Chromium will start prototyping with CSS Toggles, a proposal currently...

Added: 20 Apr 2022

Week 2022-15

Where do I put my business logic in Rails?

Using the Command Pattern to achieve slimmer controllers

Added: 17 Apr 2022

A few years ago, Matt Swanson wrote a great post on setting up Rails CI on GitHub Actions. It quickly...

Added: 17 Apr 2022
Understanding Rails secrets/credentials - Code with Jason

What this feature is for The credentials feature is a way of storing secrets that you don’t want to keep...

Added: 16 Apr 2022
Custom Ranges in Ruby

How can we create ranges out of custom objects?

Added: 15 Apr 2022
Managing Heroku's Review Apps From the GitHub's Pull Request - The Lean Software Boutique

At OmbuLabs, we have some projects where multiple teams work at the same time on different features or fixes. We...

Added: 15 Apr 2022
How to get a Google Sheet as JSON

Google Sheets can be a great place to store content for a website, since it’s structured and easy to update...

Added: 14 Apr 2022
CSS Parent Selector - Ahmad Shadeed

A deep-dive into the CSS :has parent selector with some use-cases and examples.

Added: 14 Apr 2022
Custom Error Pages in Ruby on Rails

Ruby on Rails ships with default error pages for more popular requests you might encounter including `404`, `500`, and `422`....

Added: 13 Apr 2022
SCQA: What is it, how does it work, and how can it help me? - Analytic Storytelling

Need a structure for your story? We show you what the SCQA method is and how you can start using...

Added: 11 Apr 2022
Database Seeds

Bullet Train introduces a new, slightly different expectation for Rails seed data: It should be possible to run rake db:seed...

Added: 11 Apr 2022
A Generic 'Image' Wrapper for Active Storage in Rails 7

Staying DRY while storing descriptions in a not-model-specific way

Added: 11 Apr 2022
Personal Knowledge Graphs

A new generation of note-taking tools helps us quickly organize thoughts as knowledge graphs

Added: 11 Apr 2022

Week 2022-14

Staff engineer communities — No Idea Blog

There haven’t been a lot of community structures or resources for Staff+ engineers. That’s changing.

Added: 07 Apr 2022
RSpec.describe vs. describe

RSpec’s block has two common syntaxes. Which should you use? Disclaimer: they both work. But I’m assuming since you’re here,...

Added: 07 Apr 2022

Feature flags are an effective method for developing and introducing large changes to an existing codebase without large interruptions to...

Added: 07 Apr 2022
Authorization in Rails controllers: Pundit versus CanCan

Securing controller endpoints is an important aspect of most non-trivial web applications. For Rails applications there are a number of...

Added: 07 Apr 2022
8 amazing CSS techniques to use right now

Explore the most exciting CSS that's now in a browser near you.

Added: 07 Apr 2022
Meta Tries to Break the End-to-End Encryption Deadlock

A new report Meta commissioned aims to redefine comprehensive encryption as essential to protecting human rights.

Added: 07 Apr 2022
Picture perfect images with the modern <img> element

You may not think about images as part of your web dev work, but they can affect your web app's...

Added: 07 Apr 2022
How to clear up obscure Rails tests using Page Objects - Code with Jason

The challenge of keeping test code clean The hardest part of a programmer’s job isn’t usually figuring out super hard...

Added: 04 Apr 2022

Week 2022-13

How GitHub does take home technical interviews | The GitHub Blog

We want to evaluate how well candidates can code, and we also want to ensure candidates can show their talents...

Added: 01 Apr 2022
How To Build a Powerful Search Form With Hotwire

In this video, we're going to look at how to create a search form using Hotwire. Namely, we're going to...

Added: 01 Apr 2022
Hotwire Handbook Part 1

Recently I’ve been playing with Rails 7 and Hotwire.

Added: 01 Apr 2022
Toggling page content with Turbo Frames and Kredis

Wanting to show/hide content on a page is an incredibly common task, and we're probably all familiar...

Added: 01 Apr 2022
User notifications with Rails, Noticed, and Hotwire

Using the Noticed gem, Turbo Streams, and Turbo Frames to buld a real-time, in-app user notification system in Ruby on...

Added: 01 Apr 2022
5 Tips to Design Ruby on Rails Transactions the Right Way | AppSignal Blog

Check out these 5 tips to ensure your transactions are readable and well-designed in your Ruby on Rails app.

Added: 01 Apr 2022
Rails 7 adds support for deferrable foreign key constraints in PostgreSQL

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

Added: 01 Apr 2022
Design Patterns: Memento

The memento design pattern provides us the very useful functionality of reverting to a previous state of an object when...

Added: 30 Mar 2022
10 Books Shopify’s Tech Talent Think You Should Read

Shopify software engineers, developers and development managers name the books they think everyone in tech and engineering should read.

Added: 30 Mar 2022
Architecture Decision Records help you, your team, and future teams

Architecture Decision Records (ADRs) can be a huge help to your team. Whether facilitating discussion or recording the Why, ADRs...

Added: 30 Mar 2022
Reducing Leaky Abstractions Introduced by ActiveRecord

ActiveRecord provides a comprehensive interface for querying the database, but at what cost?

Added: 30 Mar 2022
GitHub - peterhellberg/hashids.rb: A small Ruby gem to generate YouTube-like hashes from one or many numbers. Use hashids when you do not want to expose your database ids to the user.

A small Ruby gem to generate YouTube-like hashes from one or many numbers. Use hashids when you do not want...

Added: 30 Mar 2022
GitHub - hotwired/turbo-ios: iOS framework for making Turbo native apps

iOS framework for making Turbo native apps. Contribute to hotwired/turbo-ios development by creating an account on GitHub.

Added: 30 Mar 2022
GitHub - excid3/noticed: Notifications for Ruby on Rails applications

Notifications for Ruby on Rails applications. Contribute to excid3/noticed development by creating an account on GitHub.

Added: 30 Mar 2022
GitHub - jondot/hygen: The simple, fast, and scalable code generator that lives in your project.

The simple, fast, and scalable code generator that lives in your project. - GitHub - jondot/hygen: The simple, fast, and...

Added: 30 Mar 2022
GitHub - pay-rails/pay: Payments for Ruby on Rails apps

Payments for Ruby on Rails apps. Contribute to pay-rails/pay development by creating an account on GitHub.

Added: 30 Mar 2022
The Easy Way to Host Google Fonts Locally

If you are looking to host Google Fonts locally, we'll introduce you to a quick and easy way to implement...

Added: 30 Mar 2022
The Best Video Transition Is Often... No Transition | Better Dev Screencasts

When cutting from Scene A to Scene B, it's often tempting to use one of the built-in transitions provided by...

Added: 29 Mar 2022
How to Lint FactoryBot Factories with RSpec

Invalid factories are the worst. Here is a script I normally drop into my rails projects to help spot them....

Added: 29 Mar 2022
Switching from ENV files to Rails Credentials

A little bit of my struggles with ENV files throughout the years, and hopefully a better solution.

Added: 29 Mar 2022
Getting to Know the Broadcast Channel API in JavaScript

Communicate Across Browser Tabs in Realtime

Added: 29 Mar 2022
A DRY Approach to Color Themes in CSS | CSS-Tricks

The other day, Florens Verschelde asked about defining dark mode styles for both a class and a media query, without...

Added: 28 Mar 2022
Rails Server Side Analytics From Scratch

Learn how to track user events without sacrificing privacy and performance.

Added: 28 Mar 2022

Week 2022-12

Teams should be an MVP feature!

Last updated on February 21, 2021. One of the most valuable features Bullet Train provides for Rails developers is the...

Added: 26 Mar 2022
GitHub - fatkodima/online_migrations: Catch unsafe PostgreSQL migrations in development and run them easier in production (code helpers for table/column renaming, changing column type, adding columns with default, background migrations, etc).

Catch unsafe PostgreSQL migrations in development and run them easier in production (code helpers for table/column renaming, changing column type,...

Added: 24 Mar 2022
Complete Guide To Managing User Permissions In Rails Apps

There are many excellent authorization libraries for Rails, but did you know it's not that hard to build this functionality...

Added: 24 Mar 2022
Those HTML Attributes You Never Use — Smashing Magazine

In this article, Louis Lazaris describes and demonstrates some interesting HTML attributes that you may or may not have heard...

Added: 24 Mar 2022
Intro to Thread-Safety in Ruby on Rails

Ensuring thread safety is critical if you want to build a performant Rails app. Unfortunately, threading-related bugs are often sneaky...

Added: 23 Mar 2022
A look at the CUBE CSS methodology in action

There are a lot of different approaches to writing CSS, with CUBE CSS by Andy Bell being one of the...

Added: 23 Mar 2022
Please stop writing shell scripts

It is quite difficult to write correct shell scripts; you’re much better off just using Python.

Added: 23 Mar 2022
User notifications with Rails, Noticed, and Hotwire

A nearly-universal need in web applications is user notifications. An event happens in the...

Added: 22 Mar 2022
Rails analytics made simple

Analytics (i.e. stats about your visitors) is nowadays not cheap. Let's see why, and let's see how Rails could help....

Added: 22 Mar 2022

Week 2022-11

How to Test Rails Models with RSpec - Semaphore

Learn how to test your Rails models using RSpec and the Behaviour-driven Development approach.

Added: 17 Mar 2022
5 JetBrains Plugins To Boost Your Productivity!

As you code, search, and collaborate

Added: 17 Mar 2022
Escaping the traditional Rails form

Theres been a pattern I've seen creeping in Rails apps. The pattern is that there are cases where...

Added: 14 Mar 2022
Distributed Systems with Rails

How to build distributed systems with Ruby on Rails

Added: 14 Mar 2022

Week 2022-10

Rails 6 adds support for multi environment credentials

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

Added: 11 Mar 2022
Appeal to Ruby community from Kharkiv Rubyist

I write to Ruby community in days of war Russia leads against my country.

Added: 11 Mar 2022
Abstraction in Rails - Code with Jason

If we wanted to, we could, of course, write web applications in assembly code. Computers can understand assembly code just...

Added: 11 Mar 2022
Inline documentation - the secret habit of successful devs. | Hanami Mastery - a knowledge base to hanami framework

Everyone would love to have a secret power. A skill that makes you a hero. There is no one such...

Added: 11 Mar 2022
git config – How to Configure Git Settings to Improve Your Development Workflow

git config is a powerful command in Git. You can use the Git configuration file to customize how Git works....

Added: 10 Mar 2022

Remote is the new normal. It brought with it some benefits, some challenges, and some frustrations. Now that our team...

Added: 10 Mar 2022
How we optimized PostgreSQL queries 100x

Some of the tricks we used to speed up SELECT-s in PostgreSQL: LEFT JOIN with redundant conditions, VALUES, extended statistics,...

Added: 09 Mar 2022
What's new in ES2022? 🤔

Soon the new version of ECMA Script will become standard in few months. So let's take a glimpse at...

Added: 07 Mar 2022

Week 2022-9

What We Loved from ProductCon 2022

This February, a handful of thoughtbotters attended the virtual ProductCon event. Here are a few of the team’s takeaways from...

Added: 04 Mar 2022
The selectmenu HTML Tag | CSS-Tricks

I want to introduce you to a new, experimental form control called selectmenu, including how much easier it is to...

Added: 04 Mar 2022
Building Web Layouts For Dual-Screen And Foldable Devices — Smashing Magazine

Dual-screen devices are just the next evolution in responsive design. If you have a PWA or website, the APIs available...

Added: 03 Mar 2022
Adding Super Fast Frontend Search in Rails with Lunr

Let's build a command palette for the Tickerizer application, using Rails 7, ESBuild, View Components, and all the goodness of...

Added: 03 Mar 2022
Ruby Fibers 101

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

Added: 03 Mar 2022
Import Maps Under the Hood in Rails 7 | AppSignal Blog

Learn how to install JavaScript libraries with import maps and how import maps work under the hood in Rails 7....

Added: 03 Mar 2022
Don't waste your time on assets compilation on Heroku

Don’t waste your time on assets compilation on Heroku At some point, you may want or be forced to use...

Added: 03 Mar 2022
A Recipe For A Good Design System — Smashing Magazine

Maintaining a design system is a lot of work. In this article, Atila Fassina shares his lessons learned and how...

Added: 03 Mar 2022

A playlist of our blog posts about css.

Added: 03 Mar 2022
5 Modern Bash Scripting Techniques That Only A Few Programmers Know

Make your Bash scripts more interactive and futuristic with these tips.

Added: 03 Mar 2022
How a searchable knowledge management system helped Dropbox reuse knowledge and work more effectively

Founded in 2007, Dropbox offers secure, flexible cloud storage and file sharing for individuals, teams, and enterprise customers.

Added: 03 Mar 2022
What you give up when moving into engineering management

Moving into a management role may be a rewarding step in your career, but you should know about the things...

Added: 03 Mar 2022
Rails administrate : big tutorial, bits of philosophy

administrate gem is often qualified as DSL-less admin builder, i.e. every file your admin dashboard rely on, can be fully...

Added: 28 Feb 2022
Free Ngrok alternative with Cloudflare Tunnels

Cloudflare Tunnel is an awesome feature of Cloudflare that allows you to expose some local services to the Internet with...

Added: 28 Feb 2022

Week 2022-8

Sharing Secrets with GPG | 8th Light

As software developers, we're often given access to various pieces of sensitive information in order to do our job. This...

Added: 25 Feb 2022
Future CSS: Level 4 Selectors

CSS does a lot with its selectors, but there's still a lot more it could do to make things easier...

Added: 25 Feb 2022
Introduction to Domain Events

What is a Domain Event? Introduction and definition.

Added: 25 Feb 2022
The Economics of TDD - Semaphore

TDD can help you accelerate development and reduce costs over a project’s lifecycle.

Added: 25 Feb 2022
Ruby - attr_accessor, attr_writer, and attr_reader

In Ruby, object methods are public by default, while data is private. To access data, we use the accessor method....

Added: 25 Feb 2022
10 Free Courses to Learn Terraform

Here see what I have curated based on my experience and personal notes.

Added: 25 Feb 2022
The new GitHub Issues - February 23rd update | GitHub Changelog

The new GitHub Issues - February 23rd update

Added: 24 Feb 2022
10 JetBrains Extensions to Fight Technical Debt🥷

My last article on 10 VS Code Extensions to Fight Technical Debt got over 50.000 views and 500...

Added: 24 Feb 2022
The Stimulus Trigger Pattern

I walk you through a real-world implementation of triggering HTTP requests as a side-effect of an action taken by a...

Added: 24 Feb 2022
Implementing CodePush in React Native - LogRocket Blog

Learn how to deploy app updates to end users with react-native-code-push, a CodePush module for React Native.

Added: 24 Feb 2022
What makes writing more readable?

Looking at how to make writing easier to read

Added: 24 Feb 2022
Rails adds support for Fiber-safe ActiveRecord ConnectionPools

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

Added: 23 Feb 2022
An Introduction to the ViewComponent Gem

Modern web UIs are complex. Traditional layout/template/partial techniques are not always the best fit. ViewComponent seeks to provide a better...

Added: 23 Feb 2022
Sidekiq In Rails: Native Worker & ActiveJob, Who’s The Winner? - 5 min read

Learnings from setting up a cron job in Rails using Sidekiq.

Added: 23 Feb 2022
How To Develop A Text Editor For The Web — Smashing Magazine

How do text typing and editing work on the web? Although this process might seem straightforward, there is a lot...

Added: 23 Feb 2022
Integration Testing with Capybara

Blend the speed of Rack::Test-driven Integration Tests with the power and utility of Capybara finders and assertions.

Added: 23 Feb 2022
Hotrails - Learn modern Ruby on Rails with Hotwire

Hotwire is the default front-end framework for new Ruby on Rails applications. Learn how to craft reactive single-page applications with...

Added: 21 Feb 2022

Week 2022-7

Modern Front-End Magic With Rails 7: A Visual  Editor For Markdown (Part 1)

In this article series, we build a reactive WYSIWYG editor for Markdown content using the brand new Alpha 2 release...

Added: 19 Feb 2022
The Importance of Vision as a Developer

Fixer Upper. We all love it. Even if you hate it… you still kinda love it. If you are unfamiliar......

Added: 19 Feb 2022
bliki: DesignStaminaHypothesis

The value of good software design is economic: you can continue to add new functionality quickly even as the code-base...

Added: 19 Feb 2022
GitHub - Shopify/maintenance_tasks: A Rails engine for queueing and managing maintenance tasks for data migrations and backfills.

A Rails engine for queueing and managing maintenance tasks for data migrations and backfills. - GitHub - Shopify/maintenance_tasks: A Rails...

Added: 19 Feb 2022
Deconstructing the Monolith: Designing Software that Maximizes Developer Productivity

Designing Software that Maximizes Developer Productivity. Learn how Shopify took its code base from monolith to modular monolith.

Added: 19 Feb 2022
Changing a polymorphic_type in Rails

How my team redefined the way we store one of the polymorphic associations in the Shopify codebase. This post is...

Added: 19 Feb 2022
Understanding RBS, Ruby's new Type Annotation System

Ruby's flexibility has always been both its greatest strength and its greatest weakness. You can write amazingly expressive programs. You...

Added: 18 Feb 2022
ErgoServ | Command Objects - a.k.a Service Objects in Ruby on Rails - The Ergonomic Way

Reliable custom software development and consultancy. Dedicated software development teams. Ruby on Rails experts.

Added: 18 Feb 2022
When I do TDD and when I don't - Code with Jason

Some developers advocate doing test-driven development 100% of the time. Other developers think TDD is for the birds and don’t...

Added: 17 Feb 2022
Create a Nested Form in Rails from Scratch

The Rails Guides give a great example of how to create nested forms. However, Rails does not support adding fields...

Added: 17 Feb 2022
Knowledge playlists are now available in our playbook

A breakdown of our best-of blog posts for consulting.

Added: 17 Feb 2022
Where do you put spacing on design system components?

While creating mature components in Sketch and Figma both take a lot of upfront work, the way a designer interacts...

Added: 15 Feb 2022
The React Cheatsheet for 2022

Do you want to get up to speed with React as quickly as possible? I’ve put together a super helpful...

Added: 15 Feb 2022

Markdownish syntax for generating flowcharts, sequence diagrams, class diagrams, gantt charts and git graphs.

Added: 14 Feb 2022

Week 2022-6

8 new JavaScript features you might have missed

It’s not easy keeping up with all the new features the ECMAScript spec brings us every year. Let’s catch up...

Added: 12 Feb 2022
Getting started with project planning on GitHub | The GitHub Blog

GitHub's new project experience is built with flexibility in mind. Here's how to get started with GitHub Issues and project...

Added: 12 Feb 2022
Introducing Propshaft

It's an exciting time in web development. After a decade's worth of front-end progress kept demanding ever more complicated setups,...

Added: 12 Feb 2022
Rails Authentication From Scratch

If you're like me then you probably take Devise for granted because you're too intimidated to roll your own authentication...

Added: 10 Feb 2022
How to migrate from webpacker to jsbundling-rails (esbuild)

Install jsbundling-rails Swap pack_tag for include_tag Import stimulus controllers Migrate JS...

Added: 10 Feb 2022

WebAssembly is at an inflection point. Over the next few years, I expect to see increased adoption of WebAssembly across...

Added: 10 Feb 2022
Are Retrospectives Crucial to a Project's Success?

Is there value in focusing time to reflect on our recent work?

Added: 10 Feb 2022
Bearer | How to build modals with Hotwire (Turbo Frames + StimulusJS)

Modals are a great use case for showing the power of Turbo frames and Hotwire. Here's an example of how...

Added: 09 Feb 2022
CSS { In Real Life } | Aspect Ratio is Great

Tips, tricks and tutorials on the web’s most beautiful language.

Added: 09 Feb 2022
Custom esbuild for Rails

Inside Rails 7 apps, esbuild is wrapped into jsbundling. But what if you want to customize this build ?

Added: 08 Feb 2022
Using AWS S3 For File Storage in Rails Apps

S3 is an excellent way to store files scalably and reliably. This article by Jeff Morhous will show you how...

Added: 08 Feb 2022
Hotwire: Turbo-Streaming ViewComponents

Learn how to Turbo-Stream ViewComponents by building a message board.

Added: 08 Feb 2022

Week 2022-5

Pagination and infinite scrolling with Rails and the Hotwire stack

Nearly every web application will eventually need to add pagination to improve page load times and...

Added: 06 Feb 2022
A React Developer Chooses Rails, Igniting JavaScript Debate - The New Stack

A developer relates his experience choosing Ruby on Rails instead of using his normal go-to, a React-based single-page application framework....

Added: 06 Feb 2022
Data anonymization with Postgres

This post describes a simple and fast method to anonymize data in a Postgres database, useful for reporting or in...

Added: 04 Feb 2022
How I got Ruby snippets to run browser side in less than a day

Over the last year I've been working on Runno, an open source library and tool for embedding code...

Added: 04 Feb 2022

After recently discovering RSpec’s --next-failure option I’ve just happened upon the have_attributes matcher which can help turn many expectations into...

Added: 01 Feb 2022
How to Introduce Investment Time at Your Company

A client of ours plans to introduce a day of improvement each week. Here is my best advice for how...

Added: 31 Jan 2022
Getting Up and Running Quickly When Joining a Project

Joining an existing project as a developer comes with loads of challenges. If you need some inspiration on how to...

Added: 31 Jan 2022

Week 2022-4

GitHub - rpush/rpush: The push notification service for Ruby.

The push notification service for Ruby. Contribute to rpush/rpush development by creating an account on GitHub.

Added: 28 Jan 2022
Using entropy for user-friendly strong passwords

When implementing user authentication with passwords, throw out the password rules you know.

Added: 28 Jan 2022
GraphQL APIs in Rails

GraphQL is a flexible, strongly-typed query language. It's useful because it gives front-end developers the ability to query the database...

Added: 28 Jan 2022
Why we choose to teach Ruby on Rails in 2020 | Le Wagon

Is it worth making it the core framework of our web development Bootcamp, considering that most of our students are...

Added: 27 Jan 2022
What's new in Ruby 3.1?

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

Added: 25 Jan 2022
Git Organized: A Better Git Flow | Render

Development is rarely a linear process, and our commits tend to reflect this. Here you'll learn about a git flow...

Added: 24 Jan 2022

Week 2022-3

Feature flags (or feature toggles) are a neat way to hide in-progress features from your users. For those who need...

Added: 22 Jan 2022
Stop paying tech debts, start maintaining code

Stop paying down tech debt and start doing software maintenance. The real term we should all be talking about is...

Added: 22 Jan 2022
Maintainable Rails system tests with page objects

Rails system tests often depend on input and CSS selectors. To make our tests more maintainable, we can isolate layout...

Added: 22 Jan 2022
How to Simplify Asynchronous JavaScript using the Result-Error Pattern

The Result-Error Pattern helps you hide try-catch blocks, simplify error handling, and encapsulate cleanup operations.

Added: 20 Jan 2022
CSS in 2022

With 2021 coming to an end, let's take a look at which CSS language features we can expect to land...

Added: 18 Jan 2022
Ruby Splat Operator 🌟

The Ruby splat operator is confusing and here is why…

Added: 17 Jan 2022
Migrating From Turbolinks To Turbo

Turbolinks is no longer being developed. It's been superceeded by Turbo, which is part of Hotwire. In this article, Julio...

Added: 17 Jan 2022
Single attribute in-place editing with Rails and Turbo

Turbo can largely simplify our front-end needs to achieve a single-page application feel. If you have ever wondered how to...

Added: 17 Jan 2022

Week 2022-2

3 React Component Design Patterns You Should Know About

Top 3 design patterns used to create React.JS components that you should know about

Added: 12 Jan 2022
Eight Habits of Expert Software Designers: An Illustrated Guide

The best designers employ specific habits, learned practices, and observed principles when they work. Here are a few of them....

Added: 12 Jan 2022
Reframing tech debt – Increment: Planning

If we bake addressing tech debt into our plans, could it become an opportunity to build abundance into our systems?...

Added: 10 Jan 2022

Week 2022-1

4 tips for GitHub Actions usability (+2 debugging)

These tips can help save time and money while getting the most value from GitHub Actions.

Added: 04 Jan 2022

Week 2021-51

Ruby is Still a Diamond

Matz is nice and so we are nice.  — Ruby Community Motto

Added: 23 Dec 2021
RBS: A New Ruby 3 Typing Language in Action | AppSignal Blog

Let's discover the differences and similarities between Sorbet and the recently released RBS through some practical examples.

Added: 23 Dec 2021
Ruby on Rails Controller Patterns and Anti-patterns | AppSignal Blog

In this part of the series on Rails patterns and anti-patterns, we are going to analyze the final part of...

Added: 23 Dec 2021

Week 2021-50

Thoughts and learnings on writing better software

Added: 19 Dec 2021
Replacing Select2 with Tom Select + Stimulus · Cool Request

A blog about Ruby, Rails, Software, the Universe and Everything

Added: 19 Dec 2021
My Experience with Ruby for Good

Erin shared his first-hand experience of participating in Ruby for Good.

Added: 19 Dec 2021
Tidy Up Your Routes with Only

Tidy routes are happy routes

Added: 19 Dec 2021
Action Cable Rails ChatApp with React hooks

If you came across this article, you either have heard of Action Cable before or you are looking to dive...

Added: 19 Dec 2021
HTML Sanitizer API

Three cheers for (draft stage) progress on a Sanitizer API! It’s gospel that you can’t trust user input. And indeed,...

Added: 17 Dec 2021
Don’t start with microservices – monoliths are your friend – Arnold Galovics

I’ve been having this thought on the back of my mind for a long time to write about why it’s...

Added: 16 Dec 2021
When Memoization met DRY 💕 | Sami Birnbaum

Let’s go on a journey into the world of memoization through the medium of dance Rails…

Added: 16 Dec 2021
Rails 7.0: Fulfilling a vision

This version of Rails has been years in the conceptual making. It’s the fulfillment of a vision to present a...

Added: 16 Dec 2021