RSSAmplifier

Blog

Nithin Bekal

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

nithinbekal.comRSS feed ↗10 posts

Latest posts

Migrate from Devise to Rails authentication generator

Although Devise is a fantastic authentication library, I’ve been reaching for Rails’s built in authentication generator since it was introduced in Rails 8. Almost all of my hobby apps are for a single user (me!) so I don’t really need all the features of devise.

Minimal Sorbet setup with inline RBS comments

I’ve been working through the fantastic Crafting Interpreters book, and implementing the Lox interpreter in Ruby. I wanted a minimal type checking setup for the code, so I decided to configure sorbet with RBS comment syntax.

Google Antigravity: First Impressions

For the past few weeks, I’ve been playing around with Antigravity, Google’s new AI powered code editor. It has a free tier, so I wanted to see how well it worked for hobby projects. At work, I primarily use Cursor and Claude Code with Opus. I also have a Cursor Pro subscription for personal use, and wanted to see if Antigravity could replace it.

Favorite books of 2025

35 books, 17,000 pages. That fell short of the 50 books target I set for myself, but there were quite a few great books in there. Most of my “reading” this year was through audiobooks, so I ended up listening to 240 hours (that’s 10 whole days!) worth of books.

What’s new in Ruby 4.0

Ruby 4.0 will be released next week on Christmas day. This release brings a new JIT compiler, improvements to Ractors, a new mechanism to define namespaces called Ruby::Box, and a whole lot of other changes.

Review: Airpods Pro 2 with Android

I’ve been using the Airpods Pro 2 with an Android phone for the past few months. Recently, I came across the Librepods project, which aims to unlock Apple exclusive features available for Android users. This requires rooting the phone, so I’m too keen on installing it, but I was curious about what I’m missing, which prompted this post.

Obsidian Bases: Formula for star ratings with half stars

I recently started using Obsidian and have been enjoying the Bases feature, which lets you create database-like views using structured notes.

Moving form Logseq to Obsidian

I switched to Obsidian for note taking this week, after over 3 years of using Logseq. Despite loving Logseq’s outliner format, I’ve found the app, especially the mobile app, to be slow and frustrating to use. If you’re looking to choose between the two, I hope the notes below help you see some of the tradeoffs.

Stop memoizing Hash lookups in Ruby

When a method performs a slow operation, memoizing the result using instance variables is a useful optimization. However, I’ve often seen people (including myself, sometimes!) reaching for memoization for things that don’t need to be optimized.

Migrating Postgres to SQLite using the Sequel gem

In my previous post, I wrote about exporting the postgres database for devlibrary from fly.io to a local file. Now, I want to convert that into a sqlite database, so I can get rid of the dependency on a separate database server.