Writing your own cron service

In this post, I will be sharing my thoughts on how to implement task scheduling utilities like the ubiquitous cron or the popular Quartz library. Approach 1: We can have a main thread which will monitor the crontab file for any job additions.As soon as there is a new job added, we can fire a … Continue reading Writing your own cron service


The Science of Well-Being

The keys to happiness

Continuing my new-found hobby of summarizing online courses, in this article I will be outlining Yale University's most popular course ever - The Science of Well-BeingTM. Here are some of the thought-provoking insights from the course: This generation is less happier than the older. Anti-depressant usage has gone up by 400%. Happiness is 50% genetic, … Continue reading The Science of Well-Being

Learning How To Learn

In this blog post, I will be summarizing the tremendously enlightening online course Learning How To Learn. This course contains research-backed techniques and insights to improve your learning and thinking prowess, enabling you to understand anything better and faster. Here are the key actionable points that I have summarized from the video lectures and the … Continue reading Learning How To Learn

Editing music using Audacity

This one is for all the people who like music (who doesn't btw?). I will demonstrate how to edit music using a free software called Audacity. Specifically, we will be editing 'mixtape' kind of music, in which there are multiple songs interwined into a single track. The background behind is this - a looonng time … Continue reading Editing music using Audacity

Accidentally removed Linux Swap partition from Windows

So, today I was trying to create a Windows USB installer. 'Now what could go wrong with this simple task', you might ask. But you, my friend, are underestimating me. As soon as I inserted the pen drive, a notification popped up saying that all the drivers have been installed successfully. However, there was one … Continue reading Accidentally removed Linux Swap partition from Windows

Creating video demonstrations for projects

Demo screenshot of gDrive-auto-sync

If you use an online platform like Github to host your project's source code and want to improve its reception, then this post is for you. It is often said that a picture is worth a thousand words. But if a picture is worth a thousand words, a video is worth a million. In a … Continue reading Creating video demonstrations for projects

notify-send in Ubuntu 16 LTS

notify-send notification bubble during the backup process showing the text 'gDrive auto-backup started!'

I recently upgraded to Ubuntu 16 LTS from Ubuntu 14 LTS. Unlike my previous experiences, this time the process was not that smooth. When the 'upgrade' option resulted in more than half of my manually installed software being removed, I thought it's rather better to do a fresh install instead. While the new system looked … Continue reading notify-send in Ubuntu 16 LTS

Deciphering C Gibberish

If you have ever programmed in C or C++, you might have encountered some complex variable declarations like: char *(*(**foo[][8])())[]; or int (*(*foo)(void ))[3] Wouldn't it be great if we could just enter such complex declarations into some program and it could output its meaning in 'plain English' ? For example: Input: char ** const … Continue reading Deciphering C Gibberish

Permanent alias on Windows

If you develop C++ programs on Windows, you might have felt the need to invoke the compiler from the command prompt itself. Its pretty easy to do so; just append the path of the compiler to the PATH environment variable. However, if you decide to invoke it with some compiler/linker options, you'll need to do … Continue reading Permanent alias on Windows