A collection of tech essays and notes.

notes

Software gardening and death

18 August 2025

I have came across the following article recently.

Software is a bit like this house plant: its wellbeing depends on the folks who constantly tend it. Without us around, it gradually erodes.

I used Google Orkut in the past and I loved it at that time. It was fun to send messages in the scrapbook, cool usernames, and enjoy all the other social media features that felt cool back then. But after the rise of Facebook and other giants, Google shut down Orkut. They sent us an email with a link to download our data archive and said goodbye. I still have those emails from Orkut, and when I read them recently, they gave me a nostalgic happiness.

What I realize now is that everything eventually comes to an end when the gardeners stop tending their gardens. We cannot take it for granted forever. Today we have access to some of the most amazing things in human history. We need to be grateful and enjoy the beauty of it. So keep on gardening, and cherish your fellow gardeners.

Article link

essay

Lightbi Version 2

4 August 2025
Last week I released version 2 of Lightbi. I had been planning it for a very long time, but the time didn’t permit me until now.
notes

The Recurring Cycle of 'Developer Replacement' Hype

28 July 2025

This is an interesting read in the middle of AI era.

The pattern of technological transformation remains consistent—sysadmins became DevOps engineers, backend developers became cloud architects—but AI accelerates everything. The skill that survives and thrives isn’t writing code. It’s architecting systems. And that’s the one thing AI can’t do.

Article link

essay

macOS and iOS 20 public beta impressions

26 July 2025
I installed macOS and iOS 26 public beta today. The main attraction in this update is the design change called Liquid Glass...
essay

Useful PL/SQL queries

20 July 2025
In this post, I’m sharing some handy PL/SQL queries that help with monitoring and maintaining Oracle databases...
notes

No More Boring Apps

12 July 2025

Sometimes we all are tired of boring apps and this is letter to all boring apps.

Perhaps it’s part of maturing, but I’m at a point in my life where I don’t want more—I want better. When I use your app, I don’t want to see your company’s KPI. I want to see your point of view. The world should know that you made it. People should feel your passion vibrating off the screen.

Article link

notes

The Curse of Knowing How, or; Fixing Everything

4 July 2025

The below line is so true and I can vouch with my life:

We write a new tool or a script because we are in a desperate need for a small victory. We write a new tool because we are overwhelmed. Refactor it, not because the code is messy, but your life is.

Article link

notes

NOT IN vs NOT EXISTS in PL/SQL

19 June 2025
SELECT *
FROM TABLE1 
WHERE ID NOT IN (
    SELECT ID
    FROM TABLE2
)

When I ran the above query I know the condition will give me the results, because the data exists in the TABLE1 which is not in TABLE2. But I didn’t go any results. I got surprised. After I a while I found out the issue.

So the reason is that ID column in the TABLE2 have null values. If any value of ID in the subquery is NULL, then the entire NOT IN clause fails to match anything. This is standard SQL behavior because NULL makes the whole comparison unknown.

Solution:

  1. You can use NOT NULL condition in the sub-query as below:
SELECT *
FROM TABLE1 
WHERE ID NOT IN (
    SELECT ID
    FROM TABLE2
    WHERE ID IS NOT NULL
)
  1. Use NOT EXISTS:
SELECT *
FROM TABLE1 T1
WHERE NOT EXISTS (
    SELECT 1
    FROM TABLE2 T2
    WHERE T1.ID = T2.ID
)

The NOT EXISTS will automatically handle null values and safer to use.

References

StackOverflow, Geeks for geeks

essay

Difference between React and ReactDOM

13 June 2025
React is a JavaScript library for building user interfaces. ReactDOM, on the other hand, is a library that provides an interface between React and the DOM...