← sandakelum.me

writing

Articles and thoughts from my Medium blog.

The Value of Being a Polymath Developer in the AI Era

Photo by Igor Omilaev on UnsplashFirst, who is a polymath developer? A polymath developer is someone who doesn’t only focus on coding. They also understand different areas like product, users, design, …

How I Save System Stat Data in PostgreSQL Using TimescaleDB

These days, I’m working on a personal project — a server monitoring dashboard. I’ve built a TCP server as the dashboard backend, and created an agent that can be installed on any server (node). Once …

Introducing Linodsync: A Simple Backup Tool for Linode Object Storage

If you’ve ever needed a reliable and easy way to back up your project directories and databases to Linode Object Storage, let me introduce Linodsync. It’s a lightweight tool built with Go, designed to …

My Freelance Journey on Fiverr: From Zero to $4,000+

I started my freelancing journey on Fiverr in August 2021, specializing in programming gigs. My expertise includes Golang backend development, Chrome extension creation, and web scraping and …

I Created ChatPin: A Simple Tool to Save and Search ChatGPT Chats

Do you use ChatGPT and find it hard to keep track of important chats? I had the same problem, so I created ChatPin, a Chrome extension that lets you pin, unpin, and search your ChatGPT chats quickly …

How to Use SQL Joins Effectively: A Guide with Multi-Table Examples

SQL joins are fundamental when working with relational databases, allowing you to combine rows from multiple tables based on a related column. While simple two-table joins are common, real-world …

How I Implemented an Audit Log System in Go Using GORM Plugins (Step-by-Step Guide)

Audit logging is a critical aspect of many applications, especially those that require tracking user activities for compliance, debugging, or analytics. This article explores a simple yet effective …

Higher-Order Functions in Go

What are Higher-Order Functions?In programming, a higher-order function is a function that can take other functions as arguments or return a function as its result. This concept is commonly used in …

Building a GraphQL API in Go with gqlgen: Step-by-Step Guide

GraphQL is a powerful query language and runtime for APIs, enabling clients to request exactly the data they need. In this guide, we’ll dive into what GraphQL is, why it’s important, and how to …

How I Converted My Laravel App to Use a Database Per User

IntroductionManaging multi-tenant applications in Laravel often involves isolating data for each user. One effective approach is the “database-per-user” model. This setup is especially beneficial for …