Guide

3 Steps To Think Like A Software Developer

Three steps to better approach the problem given at hand, find the solution and level up your problem-solving skills as a software developer/engineer. These steps help you achieve a developer mindset. The first step to understand what’s going on is to understand it on a granular level. Given a complex problem, try to dissect it into smaller parts. [...]

Mac Setup For Developers [2025]

Setting up a new Mac for development can be a daunting task, especially if you are new to MacOS or don't know where to start. In this guide, I'll tell you about some tools, apps and tips which are essential for a decent developer experience on a Mac. To keep it simple, I will break them down into categories such as terminals, editors, and other developer tools. [...]

Server Sent Events 101

Server Sent Events (SSE), as the name suggests, are a way to communicate with the client by keeping a persistent connection in which the server sends text messages to the client whenever they are available. [...]

"this" Keyword in Arrow Functions

The "this" keyword in javascript is probably one of the most misunderstood concepts of javascript. In this article, you will see how the "this" reference is different in arrow functions introduced in ES6 as compared to regular function expressions. [...]

Integrate Pagefind's Search with Astro: A Complete Setup Guide

Pagefind's take on search is quite simple - index your site at build time and host it alongside your static site. The search index sits right alongside the files of your site and it doesn't load all the data upfront. [...]

Quokka in VS Code — JavaScript Debugging Made Simpler

Quokka.js is an awesome tool for prototyping your javascript code with the power of an instant inline output. It lets you code and see the output as you type and is really beneficial if you want to quickly test something out. [...]

Issue With Watching File Changes in Docker

The fix to watching file changes (hot reloading) in docker (Windows) is to use polling. Polling is a way to periodically check for changes. If you want to avoid polling, docker provides a way to watch file changes with the help of "docker compose watch". [...]

Sharing Localhost From VS Code - Port Forwarding

Showing off what you built locally has never been easy. Now, the feature of port forwarding is directly built into VS Code. Does this mean all other services which provide port forwarding or remote tunneling will be obsolete? [...]

WebSockets 101

WebSockets implement a full-duplex, bi-directional, TCP-based protocol, denoted by ws(s)://, which enables a persistent connection between the client and the server. Back when websockets weren't a thing. [...]

Why I love Markdown

I was introduced to it when I started using github for hosting my projects. That was my first encounter with markdown and since then, I never looked back. Here's why. [...]

Optional Chaining in JavaScript

Optional Chaining in JavaScript is used to return undefined for accessing an object property that doesn't exist and whose parent property is nullish (null or undefined). [...]

IIFE in JavaScript

You might be familiar with functions in JavaScript. An IIFE is a special type of function which is invoked implicitly. [...]