Welcome to my home on the web. This is a dumping-ground for all my endeavours.
(def me (author "Huzaifa Shaikh") (email shk.huz@gmail.com) (github @shkhuz) (projects ( Aria Abascia Hed Mental Math Trainer Starfield Literal Sandbox)) (interests ( low-level programming compilers osdev gamedev piano webdesign)) (journal journal/))
Blog
C Macros as a Poor Man’s std::vector
Nov 19, 2025 C is pretty cool. What's not cool about it is the lack of a good standard library. And what's the most important data structure a library can offer? Of course, the vector/buffer/arraylist! C's apparent lack of type-safe generics is another thing to be bummed out about, but that doesn't stop us from writing a buffer implementation that doesn't perform half as bad as some other C implementations. Read more
Nix and Electron
Nov 5, 2025 TL;DR: I hate Javascript. Or anything to do with Javascript for that matter. So when a friend asked me to do some stuff for him on his Electron project, I hesitated. But me being me, kept my feelings for Javascript aside, and agreed to "take a look". Read more
An android app from scratch
Sep 27, 2025 "To understand any system, you must be able to build it yourself." I intend to capture the same spirit for building an Android app. Today's developers think it's cool to use the latest build systems, CI tools, agile development, etc. But it's just a facade, waiting for something wrong to happen. How can you fix errors with your app if you don't even know how it's being built? Read more
The Java .properties file fiasco
Sep 6, 2025 I needed to integrate a Git library into my blog app. But upon building, it just didn't work. Lack of experience on working with Java/Android was pretty apparent, but at the end I got it to work. Read more
Simplest OpenGL program
May 20, 2024 Whenever I revisit OpenGL after a few years to write something arcane, because of the shitty API I always forget that one function whose name I can't remember, or that parameter whose value must always be NULL. This file serves as a "reference" or a starting-point where the boilerplate stuff is taken care of. Read more