Function naming is hard (even PHP-FIG gets it wrong)

Craft, Programming, Uncategorized

There’s a famous saying that two of the hardest problems in computer science are cache invalidation and naming things. When it comes to defining standards, there’s no cache involved, but thereĀ is a lot of naming of things. It should come as no surprise, but I recently was shocked to see that the folks who create […]

October 26, 2018

Simple, lightweight Rust tutorials


So I finally decided to write some tutorials. For Rust. I’ve kept myself from writing any tutorials before, but this time I made an exception. Here’s why. Be advised, though. There’s nothing special in these tutorials. I write them as I learn Rust from the only excellent book online, and the content and structure of […]

November 28, 2017

Learning Rust – One tutorial at a time


I never wrote any programming tutorial before. That’s a paradox for those who know me, because I absolutely love to learn and teach. Why not a tutorial till now, then? To put it briefly, I haven’t been sufficiently excited about a programming language before. Sure, there’s Python, Go, Elixir, Kotlin, and many other elegantly designed […]

November 26, 2017

Enjoy Those Lights!

Showcase, Uncategorized

Today I have taken an important step towards unchaining the designer in me. And it has to do with the choice of color scheme for coding. Now, most developers will agree that color-coding is extremely important in programming (it allows us to quickly discern parts of the code we want, and improves focus and readability) […]

September 18, 2016

Do you *really* understand recursion?

Craft, Uncategorized

Today while writing a program that involved recursion, I got to thinking: Do I really understand recursion? Like, really, really understand recursion? I know recursion; I understand the key concepts involved; I can write algorithms for Binary Search, Trees, Towers of Hanoi, etc., without thinking – but does all that mean I understand recursion? This […]

September 3, 2016

Time wasted is not always time wasted

Life, Uncategorized

There are two ways to waste time. Let’s take an example from my life to understand this concept better. I’m fascinated by programming, computers, math, abstractions, and so forth. So ideally I’d be spending time getting better in these areas. But I don’t, largely because my personality isn’t built for crushing hard work. Plus I […]

August 7, 2016

My first illustration in Inkscape!

Illustrations, Uncategorized

So this is sort of an achievement for me. After spending about a week learning the basics of Inkscape, I gave a tutorial a spin, with the aim of creating a Saturn planet with rings and all. [ Sorry, I lost the image during my website migration :'( ] The output isn’t very detailed, but […]

August 4, 2016

Which is the best NoSQL database?

Tools, Uncategorized

No matter how long you’ve been programming, you have been troubled by the question. The world was a calm, pristine place with only relational databases around (sure, there was some din about object databases, but it could never rear its ugly head); all modeling was done in terms of tables, and joins were everybody’s best […]

August 2, 2016

Excited about programming!

Craft, Uncategorized

It’s been eight years since I was last this excited about programming. The last time it was when I had finally gotten a handle on C programming in my college days, and was happily burning hours making text-based games using rudimentary colors and random number generators. Today I feel the same joy. And the reason […]

July 26, 2016