Recent Posts

  • Kamal App Deployment Tool

    kamal
    deployment
    docker
    rails
    ruby
    Kamal is a simple, dedicated orchestration tool built specifically for deploying containerized applications (mainly Rails). In this blog post, I will take a deep dive into the internal workings of Kamal, exploring its high-level architecture and key deployment phases. read more »
  • Improving Drag in React JS: A Smoother Approach to Draggable Elements

    technology
    javascript
    ReactJS
    When building interactive web components, such as a draggable element, you might run into the problem where the native draggable attribute leaves the original element in place while dragging a semi-transparent copy. This behavior can feel clunky and disrupts the user experience. In this blog, I’ll show you how to build a smooth draggable component where the element itself follows the mouse pointer, rather than a ghost image. read more »
  • Book review: Never let me go - Kazuo Ishiguro

    Kazuo Ishiguro
    Haruki Murakami
    Book Review
    I was recently given 2 books as a gift by a close friend, who is a great fan of Murakami’s. The books in question are “Norwegian woods” by Murakami and “Never Let Me Go” by Kazuo Ishiguro. read more »
  • Mastering Multi Tenant setup with rails - background jobs

    rails
    multi-tenant
    sidekiq
    activejob
    Welcome back to the Rails multi-tenant architecture series! If you’re just joining in, be sure to check out Part 1, where you’ll find an introduction to multi-tenancy and a detailed walkthrough on setting up a multi-tenant Rails application. read more »
  • Mastering Multi Tenant setup with rails part 1

    rails
    multi-tenant
    multi-db
    Multi-tenancy is a software design where a single instance of a software application serves multiple customers or tenants (individual users or organizations). In a multi-tenant architecture, each tenant’s data and configuration are logically isolated from one another, providing a sense of individuality and privacy while sharing the same underlying infrastructure, codebase, and application instance. read more »
  • An in-depth look at Database Indexing

    database
    indexing
    postgres
    mysql
    relational database
    clustered index
    primary key index
    explain
    analyze
    postgres indexing
    In this article, we will explore Database Indexing. We will begin by installing the Docker & running a Postgres container on it. Subsequently, to execute queries and comprehend how the database uses various indexing strategies, we will insert millions of rows into a Postgres table. read more »
  • Building a Collaborative code-editor & Whiteboard: For tech interviews.

    Concurrency Management
    Websockets
    Multifile Navigation
    YJS
    tldraw
    OT Vs CRDT
    CodeMirror 6
    Docker
    AWS
    A Collaborative code-editor and Whiteboard aims to diversify the current interviewing scenario to Live - Coding, Sketching, Crafting, and Conceptualisation of ideas between the Interviewer and Interviewee for better communication which was until now only limited to Video and audio chats. read more »
  • Demystifying Rails 7 System Tests: Configuring CI Pipeline

    Rails 7
    System Tests
    Integration Tests
    CI-CD
    Minitest
    Capybara
    Selenium
    Selenium-webdriver
    webdriver
    webdrivers gem
    chromedriver
    arm64
    amd64
    linux
    docker
    gitlab-runner
    In Rails 5.1 and later versions, system tests were introduced as a new type of test to simulate a user interacting with a web application. These tests use a headless browser, typically powered by Capybara and a WebDriver, to mimic a user’s actions like clicking buttons, filling forms, and navigating through the application. read more »