Skip to content
Write Software, Well
  • Services
  • Books
  • LinkedIn
  • Archive
  • About
Sign in Subscribe
Bearer Token API in Rails

You Can Now Access Bearer Tokens Directly from Request

The new bearer_token method on the Request object is a nice addition to Rails. It removes boilerplate code and simplifies bearer token extraction. All Rails apps can now access bearer tokens the same way without having to write custom token extraction logic every time and worrying about edge cases.

Rails Internals 3 min read

Featured

From a Lorry Driver to Ruby on Rails Developer at 38

From a Lorry Driver to Ruby on Rails Developer at 38

Interview 11 min read
Sustainable Growth

Annual Blog Review: 2023

Annual Review 31 min read
Akshay's Blog -> Write Software, Well

Akshay's Blog is now Write Software, Well

4 min read
Books to learn programming with Ruby and Rails

A List of Books to Learn Programming with Ruby and Rails

9 min read
Combined Credentials in Rails

Combined Credentials in Rails 8.2

Rails 8.2 adds support for combined credentials, a unified API that checks environment variables first, then falls back to encrypted credentials, with consistent behavior for nested keys, defaults, and error handling. It's also possible to use your own combined configuration.

5 min read
How has_one_attached works in Active Storage

Active Storage Internals: How has_one_attached DSL Works

In this post, we'll explore the internals of has_one_attached method in Active Storage. It covers two interesting patterns, i.e. proxy and change objects. We'll trace the control flow from the model DSL to persistence and uploads, and explain how files are created, detached, and purged.

Rails Internals 9 min read
Active Storage Domain Model: Blobs and Attachments

Active Storage Domain Model: Blobs and Attachments

Active Storage uses two main models: blobs and attachments. Blobs store the uploaded file's metadata and a link to the actual file, while attachments link those files to records. Understanding how they work together makes it easier to manage uploads, generate URLs, and process uploaded files.

Rails Internals 7 min read
Rails on Localhost: Secure Context and Local HTTPS with Caddy

Rails on Localhost: Secure Context and Local HTTPS with Caddy

Localhost is treated as a trustworthy origin even without TLS, so all apps on localhost run in a secure context. This allows secure features to work in development. You can also run multiple apps on localhost with subdomains + ports to separate them. When you do need local HTTPS, use Caddy server.

4 min read
Sitemap

Sitemaps: A Quick SEO Win for New Websites

A sitemap lists your site's pages, helping Google crawl it efficiently. It's especially useful for large sites or new sites with zero backlinks. This post shows how you can create one in your Rails site, how to add it to Google Search Console, and how to index new pages as soon as you publish them.

7 min read
Polymorphic URLs with direct Router Helper

Polymorphic URLs with direct Router Helper

The Rails router's direct method lets you create custom url and path helpers, which is especially useful for polymorphic models and delegated types. This post shows how to use a single custom helper to generate URLs for different models, with a practical example from the open source Maybe project.

4 min read
Working Effectively with AI Tools as a Programmer

Working Effectively with AI as a Developer

I started as a sceptic, but now I'm a convert and a heavy user of AI for everyday programming, and wanted to write down some common patterns and prompts for working with AI tools that I’ve found useful in my own development workflow as well as those I learned from other experienced developers.

4 min read
Controller Callback Sequence in Rails

How to Inspect the Sequence of Controller Callbacks in Rails

This post shows how to inspect the sequence of before, after, and around callbacks in Rails controllers by adding a small initializer. Useful for understanding callback order in applications with complex controller hierarchies or shared concerns. I learned this trick while reading the Rails tests.

Rails Internals 3 min read
Thoughts on Freelancing for Web Developers

Thoughts on Freelancing for Web Developers

After three years of freelancing and over a year of running my own software studio, here're some scattered thoughts on freelancing as a software developer, especially around web development.

3 min read
How to extract options from arguments in Rails

Extracting Options from Arguments in Rails

You can safely extract options hash from the end of an argument list using the extract_options! method in Rails. Not only it simplifies the method definition but it keeps the method's API flexible, allowing you to add new options without breaking existing callers.

Rails Internals 5 min read
How to Redirect to Another Location in Rails

Redirects in Rails: Manual, Helper, and Internals

In this post, we’ll explore how redirects work in Rails: what they are, how to redirect manually, and how the redirect_to method simplifies things. We’ll cover common use cases, security considerations, and even dig into the Rails source to see how redirect_to works under the hood.

Controllers 8 min read
Render Method in Rails

Understanding the Render Method in Rails

In this post, we'll learn how Rails' render method works and how to use it effectively. From rendering templates, partials, and inline content to JSON and custom status codes, this post explores the different ways to render views from your controllers.

Controllers 7 min read

Page 1 of 18

Load More Something went wrong with loading more posts
  • Sign up
  • Homepage

© Write Software, Well 2025 - Powered by Ghost