Nirav's Blog

  • |
  • About
  • |
  • Projects
  • |
  • |

The TMS website sucks so I made a captcha autofiller

May 22, 2021

In keeping with the spirit of the times, I’ve started playing in the Nepali Stock Exchange playground. It is a strange, distorted world for someone like me who’s used to the determinism of the computer realm. And so far, it has just proved to be a more fashionable way of losing money. But it’s addictive! If you’ve ever had to use Nepal Stock Exchange’s Trade Management System (often called just TMS), you probably hate it.
Read full post...

An Octopus and a Game Engine

September 14, 2020

I started making this thing as a one-day experiment: a fun little browser-game I could craft before committing to the everlooming neverending self-judo one-man-deathwrestle called exams. But it instead ended up spreading out sparse as intense hour-long coding sessions throughout the Quarantine months.
Read full post...
पर्खीर'न्छु

पर्खीर'न्छु

September 5, 2020

Read full post...
 Flappy Millennial: An HTML5 Canvas Game

Flappy Millennial: An HTML5 Canvas Game

June 9, 2020

Meet Flappy Millennial. He’s an average guy in his mid 20’s and the future looks bleak for him. With the threats of climate change, mass-extinctions, rising authoritarianism, economic depression, unprecedented wildfires and so much more ever-looming, nihilism has become his background music. But worry not. For he has an antidote—well, not so much an antidote as a sedative. He has his phone! Come help this Flappy Millennial ignore reality while he scrolls through Instagram or something. You should play this game not because it’s good or anything, but simply so you too can pretend that things are okay for a while.
Read full post...
Making मनसा: a Nepali Programming Language v0.1

Making मनसा: a Nepali Programming Language v0.1

February 9, 2020

I’ve been working on and off on a Nepali programming language with my friends for the last few months. It’s called मनसा (IAST: mansā) and I think it’s ready for an alpha release. If you’d like to try the language out, visit mnsa.cc - the official website. You can play around with the language right in the browser without having to download anything, not even a Devanagari keyboard layout. This post is a collection of random things I want to say about the language, including how the idea came about, the interesting things I learnt making the project, and the problems faced.
Read full post...

An easier Nepali keyboard layout

February 7, 2020

As I wrote in my (excruciatingly long and boring) article on the Nepali language and Unicode, typing in Nepali doesn’t have to be a pain. You are absolutely free to make your own keyboard layout to type in Nepali Unicode (which, by the way, has much better fonts than Preeti and Sagarmatha). In fact, a few months ago, I made my own keyboard layout because there’s no way I’m going to be able to cram the random key mappings of the traditional Nepali typing layout. Sorry dad, your son has renounced ancestral typing for good.
Read full post...

Visualize C++ Data Structures using Graphviz and the DOT language

December 8, 2019

Data structures help structure and organize data effectively, and provide several abstracted operations on the data. They are elegant and convenient, and computer scientists love to use them. Implementing these data structures in the computer require the programmer to flatten the structure into a one-dimensional model using pointers or references because the memory is actually arranged as a one-dimensional run of data elements. It is often necessary to inspect the data structure in debugging and program verification phases. But some data structures happen to be particularly graphical, in that they have multiple associations and elaborate hierarchies or layers. Think of a Rope or a Graph. Due to many associations between nodes, it’s not possible to properly display the graph on the terminal.
Read full post...
How to Daydream

How to Daydream

November 4, 2019

In the classroom, the teacher drones on and on in his maroon colored t-shirt that doesn’t suit him. His empty vibrations ripple through out the room, bouncing off the glass windows shut tight against the summer breeze, mixing with the clickety-clack of the ceiling fan to create a subtle dissonance, and stretching indefinitely and interminably in time and in space.
Read full post...
On the Nepali Language and Unicode

On the Nepali Language and Unicode

October 16, 2019

The Nepali language gets very little representation on the internet. Take, for example, the Nepali Wikipedia which has about 33 thousand articles. The Esperanto Wikipedia boasts 8 times that number (at around two hundred thousand articles), which is kind of sad, because Esperanto is an artificial language created by _one _person in the 19th century. It is spoken by a meager 2 million people worldwide. Compare this to the Nepali language, which has more than 25 million speakers.
Read full post...

Sandboxing Unsafe Executables on Linux for an Online Compiler with Minijail

October 8, 2019

I wrote a toy compiler few months back. I wanted people to see it, so I put the code up on Github. But as it turns out, not everyone is willing or capable of going through the convoluted process of cloning the repository, compiling the program, installing a Nepali language keyboard and learning an obscure half-baked programming language just because some idiot put it on Github. So, I started to write a web app to make the program easily accessible.
Read full post...

Animating WALL-E on a LED dot-matrix display with AVR

June 12, 2019

I was asked to animate a dot-matrix display for the robotics club recently. They wanted something that said “Robotics Club” to hang over their door. We had some old P10(1r) DMDs which I had worked on in the past to make a little scoreboard for a robot football match. And, even though I am not very good at it, I really love animating things. So I decided to give it a shot. I ended up writing an animation software for the DMD in JavaScript which is unfortunately only as functional as a flipbook. But I had fun animating little person carrying a balloon, ugly gear trains and a little pixel Wall-E blinking.
Read full post...

Animating a Skeleton in Pixel Art

April 6, 2019

I animated this a while back. I remember it took me days. First I had to learn how to actually draw the human skeleton (The Atlas of Human Anatomy for the Artist by Stephen Peck is an amazing resource). Then I had to distill the ideas into the bare minimum required to get the picture across. Finally I drew and animated the whole thing in piskel. The animation process was quite tedious, at least in part because this was my first try.
Read full post...

A Downpour, then a Rainbow

March 5, 2019

It was a strange afternoon, no doubt. The sun grinned from the west, making shadows in strange corners and bouncing off whitewashed walls, while the eastern sky was dark and premonitory with a sinister turbulence. I was walking home contemplating this contrast and hoping for a rainbow. First an apprehensive drop hit my earlobe. I continued to walk. The next landed on my cheek. The women coming out of the shop held out their palm and lightheartedly exclaimed, “Hurry! It’s starting to rain!”. I continued to walk. I felt a drop on my eyebrow, then on my nose, then two drops at once and before I could register that I had lost count, it had started to rain.
Read full post...

Implementing the Huffman Compression Algorithm in C++

February 14, 2019

The final code is in GitHub here. Da Vinci is quoted saying, “Art is never finished, only abandoned”. I don’t see why it should be any different for code. With that said, I’d like to declare my latest project: an implementation of the huffman’s algorithm, abandoned. It works well as it is, but it can be made a lot better.
Read full post...

A Drizzle in Pokhara

February 4, 2019

If you think being madly in love with your best friend’s girlfriend is unfortunate, try sitting next to him during a Microprocessor lecture having to listen to him describe the sex they had the day before. What’s more, Microprocessor is one of the few subjects I actually enjoy. My friend is normally a level-headed person who doesn’t speak much. But it seems that the excitement of the first time is grand enough for him to break character. Needless to say, I’m miserable.
Read full post...

Love blossoms in Winter

December 22, 2018

I’ll continue to be lost in my incessant thoughts of you. In rainbow dreams. In lively conversations. In the loneliest of winter afternoons, when the sun is bright and the breeze cool, and the only flower that blooms is you, on your first floor balcony eating tangerines.
Read full post...

© Nirav Nikhil. About me.