Prasanth Chaduvula

Prasanth Chaduvula

I'm a React, Javascript & Rails full-stack Software Engineer. I have been working remotely for the past two years in a remote village. Before joining as a Software Engineer I founded kwiq - a hyperlocal delivery startup to deliver things in remote villages.
authorImg Prasanth Chaduvula

Rails 7.1 Allows ActiveRecord::Relation#explain To Accept Options

Adding analyze and verbose as ActiveRecord::Relation#explain options give us deeper insight into query performance.
authorImg Prasanth Chaduvula

Rails 7.1 Introduces ActiveRecord regroup Method

With regroup and regroup! methods we can override the group_values
authorImg Prasanth Chaduvula

Rails 7.1 allows resetting singular associations

Query database again to retrieve the associated record by resetting the cache on singular associations.
authorImg Prasanth Chaduvula

Rails 7.1 Introduces Option To Disable All Methods That ActiveRecord.enum Generates

Disable auto generated methods of ActiveRecord.enum with instance_methods by passing false to it.
authorImg Prasanth Chaduvula

Rails 7.1 Adds path_params Option For url_for Helper Method

path_params allows specified params to be used exclusively for named segments under scoped routing without unnecessarily appending parameters to every URL.
authorImg Prasanth Chaduvula

Ruby 3.3 Implements Range#reverse_each Method For Very Large or Beginless Ranges And Error Handling For Endless Ranges

Range#reverse_each can now process beginless ranges with an Integer endpoint and raises TypeError for endless ranges.
authorImg Prasanth Chaduvula

Automate Fly Postgres Database Backup & Store To S3 bucket With GitHub Actions

Discover how GitHub Actions empowers automation to effortlessly backup Fly.io hosted postgres databases, saving backups to a designated S3 bucket.
authorImg Prasanth Chaduvula

Rails 7.1 Allows ActiveRecord reselect Query Method To Accept Hash

Use of hash syntax for specifying columns and aliases with the ActiveRecord::QueryMethods#reselect method makes it easier for querying.
authorImg Prasanth Chaduvula

Ruby 3.3 Introduces Range#overlap? method

Compare two ranges and see if they overlap each other. overlap? returns true if two ranges overlap each other, otherwise false.
authorImg Prasanth Chaduvula

Rails 7.1 Introduces Default Dockerfiles

Dockerfiles facilitate the deployment of Rails applications in production environments using Docker.
authorImg Prasanth Chaduvula

Rails 7.1 Adds ActiveJob#perform_all_later To Enqueue Multiple Jobs At Once

perform_all_later allows us to enqueue multiple jobs that belong to different classes simultaneously within ActiveJob.
authorImg Prasanth Chaduvula

Rails 7.1 Expands ActiveRecord API with Async Query Support

With the Active Record API for general async queries we can efficiently query not so fast queries asynchronously to improve the performance.
authorImg Prasanth Chaduvula

Rails 7.1 Introduces ActiveRecord::Base::generates_token_for

Generate tokens for specific purposes and verify their authenticity.
authorImg Prasanth Chaduvula

Rails 7.1 Introduces ActiveRecord::Base::Normalization

Normalization allows us to define custom normalization rules for attributes in our model. This feature is particularly helpful for ensuring that specific attributes are consistently formatted or transformed before they are saved to the database.
authorImg Prasanth Chaduvula

Rails 7.1 Introduces Autoload Lib and Ignore Sub-Directories with config.autoload_lib(ignore:) Method

Autoloading lib directory isn't always straightforward. In this blog post, we'll delve into the autoloading of the lib directory using config.autoload_lib(ignore:).
authorImg Prasanth Chaduvula

Set And Restore Public Attributes Around a Block Using Object#with

We can use Object#with method as shorthand for the common begin/ensure pattern to save the value of an attribute, setting a new value, and then restoring the previous value.
authorImg Prasanth Chaduvula

React state management - useReducer vs Redux

This blog explores useReducer vs Redux, delving into their definitions, use cases, code samples and when to choose each for efficient state management.
authorImg Prasanth Chaduvula

Open Ranges Are Now Supported By The Object#in? Method In Rails

We can use Object#in? method to check open date ranges i.e. beginless and endless ranges.
authorImg Prasanth Chaduvula

Reduce load times of Rails applications using CloudFront CDN

Delivering static assets and JavaScript files with CDN can significantly improve the performance of our Rails application, resulting in faster load times and a better user experience.
authorImg Prasanth Chaduvula

When to extract code to React custom hooks?

React custom hooks help us to build reusable logic, and make the code more readable. In this blog, we will talk about when and when not to use react custom hooks.
authorImg Prasanth Chaduvula

Rails adds the ability to ignore tables in SQL schema dumps via regular expressions

Ignore tables by configuring regular expressions on ActiveRecord::SchemaDumper.
authorImg Prasanth Chaduvula

Rails now supports routes prefixed with word cable

Rails improved its support for routes which helps us to navigate to routes prefixed with word cable which were throwing 404 errors before.