How I test Stimulus controllers

A theoretical, then practical look at how to test under-tested parts of Rails applications

Dealing with flaky tests

Flaky tests waste your team’s time. Have a process for quarantining them and debugging them.

Service objects are poorly-named models

Reframe business logic in terms of domain objects for a better object-oriented design

Have we moved past contempt culture?

I think we still live in a contempt culture. Here is how I avoid it personally.

Helvetic Ruby 2023: a personal retrospective

This first edition of a Swiss Ruby conference was a resounding success

3 ways to model an associated collection in Rails

A look at the Postgres array type and good old join tables, each with their advantages and disadvantages.

Turn off notifications

Reduce stress by focusing on what matters

GitHub pull request merge strategies

An overview of what the options provided by the pull request merge button on GitHub do and how to make the best out of each strategy

Rails developers write some Rust: a review of Axum 0.6

Is Rust Web yet? We used our Rails knowledge to try writing a Web application in Axum in two days

Trying to prevent errors is good, being able to recover from errors is better

Accept the inevitability of errors so that you can fix them efficiently

Thoughts on onboarding and offboarding

Musings about what I expect when joining and leaving projects and companies

SVG icon sizing and alignment

Tips for making icons look right alongside multi line text or within buttons

Working with constant interruptions

It feels like I don't have time for anything, but I still manage to get things done

Clean your backlog

The problem with big backlogs in software projects and how to keep the backlog small

Tips for applying to a job at a small company

Advice and encouragement for job applicants reflecting the Simplificator hiring process back in 2021

How to connect to an Apple Thunderbolt display from Linux

The key is BIOS Thunderbolt Assist Mode and boltctl

A subtle change in PDF output

A debugging story of rendering differences in PDFs after changing application hosting infrastructure

The trade-offs of two feature flag implementations

How ease of change impacts testability and where meta-programming can help

Broken video in Safari after DOM change

A workaround for a Safari bug with dynamically created video elements

Github OAuth authorization with serverless functions

I was curious about serverless and ended up learning about cross-site forgery in Oauth and in communication between browser windows

A tale of flaky Cypress tests

I wrote some flaky Cypress tests and learned how to make them deterministic

Setting up Cypress with Rails

Tips for integrating the Cypress testing framework into a Ruby on Rails application

Decoding disparate JSON fields into a custom Elm type

Define a nice-to-use internal model and leave the clunky API data structures at the program boundaries

Long-lived background Ruby processes

Daemon processes, signal handlers and process identifiers

Keeping Elm JSON decoders in sync with your Rails API

Using JSON Schema and automated tests to ensure that your Elm frontend and Rails backend will understand each other

A Self-Testing Test Library

An exploration of test library fundamentals and self-testing code

Elm Single Page Application Setup

A Makefile for production-ready builds of single page Elm apps and live reloading during development

API Response Serialization with Plain Old Ruby Objects and ActiveSupport

A simple way of serializing JSON in Rails apps